pub struct AesDriverComponent<K: AESKeySize, A: AES<'static, K> + AESCCM<'static, K> + 'static, CAP: MemoryAllocationCapability + 'static> { /* private fields */ }Implementations§
Source§impl<K: AESKeySize, A: AES<'static, K> + AESCCM<'static, K> + 'static, CAP: MemoryAllocationCapability + 'static> AesDriverComponent<K, A, CAP>
impl<K: AESKeySize, A: AES<'static, K> + AESCCM<'static, K> + 'static, CAP: MemoryAllocationCapability + 'static> AesDriverComponent<K, A, CAP>
pub fn new( board_kernel: &'static Kernel, driver_num: usize, aes: &'static A, mem_cap: CAP, ) -> AesDriverComponent<K, A, CAP>
Trait Implementations§
Source§impl<K: AESKeySize + 'static, A: AES<'static, K> + AESCtr + AESCBC + AESECB + AESCCM<'static, K> + AESGCM<'static, K>, CAP: MemoryAllocationCapability + 'static> Component for AesDriverComponent<K, A, CAP>
impl<K: AESKeySize + 'static, A: AES<'static, K> + AESCtr + AESCBC + AESECB + AESCCM<'static, K> + AESGCM<'static, K>, CAP: MemoryAllocationCapability + 'static> Component for AesDriverComponent<K, A, CAP>
Source§type StaticInput = (&'static mut MaybeUninit<AesDriver<'static, A, K>>, &'static mut MaybeUninit<[u8; 32]>, &'static mut MaybeUninit<[u8; 112]>)
type StaticInput = (&'static mut MaybeUninit<AesDriver<'static, A, K>>, &'static mut MaybeUninit<[u8; 32]>, &'static mut MaybeUninit<[u8; 112]>)
An optional type to specify the chip or board specific static memory
that a component needs to setup the output object(s). This is the memory
that
crate::static_buf!() would normally setup, but generic
components cannot setup static buffers for types which are
chip-dependent, so those buffers have to be passed in manually, and the
Component::StaticInput type makes this possible.Source§type Output = &'static AesDriver<'static, A, K>
type Output = &'static AesDriver<'static, A, K>
The type (e.g., capsule, peripheral) that this implementation of
Component produces via Component::finalize(). This is typically
a static reference (&'static).Source§fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
Auto Trait Implementations§
impl<K, A, CAP> !RefUnwindSafe for AesDriverComponent<K, A, CAP>
impl<K, A, CAP> !Send for AesDriverComponent<K, A, CAP>
impl<K, A, CAP> !Sync for AesDriverComponent<K, A, CAP>
impl<K, A, CAP> !UnwindSafe for AesDriverComponent<K, A, CAP>
impl<K, A, CAP> Freeze for AesDriverComponent<K, A, CAP>where
CAP: Freeze,
impl<K, A, CAP> Unpin for AesDriverComponent<K, A, CAP>
impl<K, A, CAP> UnsafeUnpin for AesDriverComponent<K, A, CAP>where
CAP: UnsafeUnpin,
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