Skip to main content

AesEcbRegistersManager

Struct AesEcbRegistersManager 

Source
pub struct AesEcbRegistersManager {
    pub registers: StaticRef<AesEcbRegisters>,
    /* private fields */
}
Expand description

Wrapper for managing MMIO for the AES ECB peripheral.

Fields§

§registers: StaticRef<AesEcbRegisters>

MMIO registers for the AES ECB peripheral.

Implementations§

Source§

impl AesEcbRegistersManager

Source

pub unsafe fn new(regs: StaticRef<AesEcbRegisters>) -> AesEcbRegistersManager

Create a new AES registers manager.

§Safety

This is only valid on an nrf5x-based MCU. This must only be called once as having multiple interfaces to DMA registers is not safe. This must be the only way the AES DMA registers are controlled.

Source

pub fn start_ecb_dma(&self, buf: &'static mut [u8]) -> Result<(), ()>

Start an ECB encryption with DMA.

The buffer must cover the full 48-byte ECB data block: bytes 0–15 = key, bytes 16–31 = plaintext/counter, bytes 32–47 = ciphertext output.

§Return

Ok(()) on successfully starting the DMA operation. Err(()) if DMA is already busy.

Source

pub fn finish_ecb_dma(&self) -> Option<&'static mut [u8]>

Source

pub fn dma_pending(&self) -> bool

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.