This feels like I'm committing a despicable crime to get around an uninitialized section, but is this OK or a big no-no? I am only using sram3 for various buffers (Ethernet and I2C4), the linker is set up to only use AXISRAM for the rest of it, so it would only be for specfically marked and linked sections: ```rust // External symbols for the start and end of the sram3 section declared in linker extern "C" { static _sram3_start: u8; static _sram3_end: u8; } // Function to zero-initialize the sram3 section fn zero_initialize_sram3() { unsafe { let start = &_sram3_start as *const u8 as usize; let end = &_sram3_end as *const u8 as usize; let size = end - start; core::ptr::write_bytes(start as *mut u8, 0, size); } } ``` I have checked that it works ( `info!("Address of EthernetBuffer: {:#X}", &PACKETS as *const _);`) and would probably put this in the `#[preinit]` function