diff --git a/src/cpu.rs b/src/cpu.rs index b46b2001a..8fb6fdf2a 100644 --- a/src/cpu.rs +++ b/src/cpu.rs @@ -18,7 +18,6 @@ pub enum Core { impl Core { #[inline(always)] - #[link_section = ".iram1.cpu_core"] pub fn is_active(&self) -> bool { *self == core() } diff --git a/src/interrupt.rs b/src/interrupt.rs index fe9888a9d..efdaba3d8 100644 --- a/src/interrupt.rs +++ b/src/interrupt.rs @@ -208,7 +208,6 @@ fn exit(cs: &IsrCriticalSection) { impl IsrCriticalSection { /// Constructs a new `IsrCriticalSection` instance #[inline(always)] - #[link_section = ".iram1.interrupt_cs_new"] pub const fn new() -> Self { #[cfg(any(esp32, esp32s2, esp32s3, esp32p4))] let mux = core::cell::UnsafeCell::new(portMUX_TYPE { @@ -241,7 +240,6 @@ impl IsrCriticalSection { /// /// For more information, refer to https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/freertos-smp.html#critical-sections #[inline(always)] - #[link_section = ".iram1.interrupt_cs_enter"] pub fn enter(&self) -> IsrCriticalSectionGuard<'_> { enter(self); @@ -251,7 +249,6 @@ impl IsrCriticalSection { impl Default for IsrCriticalSection { #[inline(always)] - #[link_section = ".iram1.interrupt_cs_default"] fn default() -> Self { Self::new() } @@ -271,7 +268,6 @@ impl Drop for IsrCriticalSectionGuard<'_> { /// interrupts for the core will be re-enabled only when the last guard that /// disabled interrupts for the concrete core is dropped. #[inline(always)] - #[link_section = ".iram1.interrupt_csg_drop"] fn drop(&mut self) { exit(self.0); } diff --git a/src/task.rs b/src/task.rs index 83ea629e6..cf91deda9 100644 --- a/src/task.rs +++ b/src/task.rs @@ -523,13 +523,11 @@ fn exit(cs: &CriticalSection) { impl CriticalSection { /// Constructs a new `CriticalSection` instance #[inline(always)] - #[link_section = ".iram1.cs_new"] pub const fn new() -> Self { Self(Cell::new(None), AtomicBool::new(false)) } #[inline(always)] - #[link_section = ".iram1.cs_enter"] pub fn enter(&self) -> CriticalSectionGuard<'_> { enter(self); @@ -549,7 +547,6 @@ impl Drop for CriticalSection { impl Default for CriticalSection { #[inline(always)] - #[link_section = ".iram1.cs_default"] fn default() -> Self { Self::new() } @@ -562,7 +559,6 @@ pub struct CriticalSectionGuard<'a>(&'a CriticalSection); impl Drop for CriticalSectionGuard<'_> { #[inline(always)] - #[link_section = ".iram1.csg_drop"] fn drop(&mut self) { exit(self.0); } @@ -1035,7 +1031,6 @@ pub mod queue { /// Retrieves the underlying FreeRTOS handle. #[inline] - #[link_section = "iram1.queue_as_raw"] pub fn as_raw(&self) -> sys::QueueHandle_t { self.ptr } @@ -1059,7 +1054,6 @@ pub mod queue { /// In non-ISR contexts, the function will always return `false`. /// In this case the interrupt should call [`crate::task::do_yield`]. #[inline] - #[link_section = "iram1.queue_send_back"] pub fn send_back(&self, item: T, timeout: TickType_t) -> Result { self.send_generic(item, timeout, 0) } @@ -1085,7 +1079,6 @@ pub mod queue { /// In non-ISR contexts, the function will always return `false`. /// In this case the interrupt should call [`crate::task::do_yield`]. #[inline] - #[link_section = "iram1.queue_send_front"] pub fn send_front(&self, item: T, timeout: TickType_t) -> Result { self.send_generic(item, timeout, 1) } @@ -1110,7 +1103,6 @@ pub mod queue { /// In non-ISR contexts, the function will always return `false`. /// In this case the interrupt should call [`crate::task::do_yield`]. #[inline] - #[link_section = "iram1.queue_send_generic"] fn send_generic( &self, item: T, @@ -1163,7 +1155,6 @@ pub mod queue { /// In this case the interrupt should call [`crate::task::do_yield`]. /// In non-ISR contexts, the function will always return `false`. #[inline] - #[link_section = "iram1.queue_recv_front"] pub fn recv_front(&self, timeout: TickType_t) -> Option<(T, bool)> { let mut buf = MaybeUninit::uninit(); let mut hp_task_awoken = false as i32; @@ -1205,7 +1196,6 @@ pub mod queue { /// a higher priority task was awoken since we don't free /// up space in the queue and thus cannot unblock anyone. #[inline] - #[link_section = "iram1.queue_peek_front"] pub fn peek_front(&self, timeout: TickType_t) -> Option { let mut buf = MaybeUninit::uninit();