pub struct BootLoaderConfig<ACTIVE, DFU, STATE> {
pub active: ACTIVE,
pub dfu: DFU,
pub state: STATE,
}Expand description
Bootloader flash configuration holding the three flashes used by the bootloader
If only a single flash is actually used, then that flash should be partitioned into three partitions before use.
The easiest way to do this is to use BootLoaderConfig::from_linkerfile_blocking which will partition
the provided flash according to symbols defined in the linkerfile.
Fields§
§active: ACTIVEFlash type used for the active partition - the partition which will be booted from.
dfu: DFUFlash type used for the dfu partition - the partition which will be swapped in when requested.
state: STATEFlash type used for the state partition.
Implementations§
Source§impl<'a, FLASH> BootLoaderConfig<BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>>where
FLASH: NorFlash,
impl<'a, FLASH> BootLoaderConfig<BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>>where
FLASH: NorFlash,
Sourcepub fn from_linkerfile_blocking(
flash: &'a Mutex<NoopRawMutex, RefCell<FLASH>>,
) -> BootLoaderConfig<BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>>
pub fn from_linkerfile_blocking( flash: &'a Mutex<NoopRawMutex, RefCell<FLASH>>, ) -> BootLoaderConfig<BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>, BlockingPartition<'a, NoopRawMutex, FLASH>>
Create a bootloader config from the flash and address symbols defined in the linkerfile
Auto Trait Implementations§
impl<ACTIVE, DFU, STATE> Freeze for BootLoaderConfig<ACTIVE, DFU, STATE>
impl<ACTIVE, DFU, STATE> RefUnwindSafe for BootLoaderConfig<ACTIVE, DFU, STATE>
impl<ACTIVE, DFU, STATE> Send for BootLoaderConfig<ACTIVE, DFU, STATE>
impl<ACTIVE, DFU, STATE> Sync for BootLoaderConfig<ACTIVE, DFU, STATE>
impl<ACTIVE, DFU, STATE> Unpin for BootLoaderConfig<ACTIVE, DFU, STATE>
impl<ACTIVE, DFU, STATE> UnwindSafe for BootLoaderConfig<ACTIVE, DFU, STATE>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more