nrf-pac

Crates

git

Versions

nrf52840

Flavors

nrf_pac::cc_aes::regs

Struct AesHwFlags

Source
#[repr(transparent)]
pub struct AesHwFlags(pub u32);
Expand description

Hardware configuration of the AES engine. Reset value holds the supported features.

Tuple Fields§

§0: u32

Implementations§

Source§

impl AesHwFlags

Source

pub const fn support_256_192_key(&self) -> bool

If this flag is set, the engine support 192 bits and 256 bits key size.

Source

pub fn set_support_256_192_key(&mut self, val: bool)

If this flag is set, the engine support 192 bits and 256 bits key size.

Source

pub const fn aes_large_rkek(&self) -> bool

If this flag is set, the engine support AES_LARGE_RKEK.

Source

pub fn set_aes_large_rkek(&mut self, val: bool)

If this flag is set, the engine support AES_LARGE_RKEK.

Source

pub const fn dpa_cntrmsr_exist(&self) -> bool

If this flag is set, the engine support DPA countermeasures.

Source

pub fn set_dpa_cntrmsr_exist(&mut self, val: bool)

If this flag is set, the engine support DPA countermeasures.

Source

pub const fn ctr_exist(&self) -> bool

If this flag is set, the engine support AES CTR mode.

Source

pub fn set_ctr_exist(&mut self, val: bool)

If this flag is set, the engine support AES CTR mode.

Source

pub const fn only_encrypt(&self) -> bool

If this flag is set, the engine only support encrypt operations.

Source

pub fn set_only_encrypt(&mut self, val: bool)

If this flag is set, the engine only support encrypt operations.

Source

pub const fn use_sbox_table(&self) -> bool

If this flag is set, the engine uses SBOX tables.

Source

pub fn set_use_sbox_table(&mut self, val: bool)

If this flag is set, the engine uses SBOX tables.

Source

pub const fn use_5_sboxes(&self) -> bool

If this flag is set, the engine uses 5 SBOX where each AES round takes 4 cycles.

Source

pub fn set_use_5_sboxes(&mut self, val: bool)

If this flag is set, the engine uses 5 SBOX where each AES round takes 4 cycles.

Source

pub const fn aes_support_prev_iv(&self) -> bool

If this flag is set, the engine contains the PREV_IV register for faster AES XCBC MAC calculation.

Source

pub fn set_aes_support_prev_iv(&mut self, val: bool)

If this flag is set, the engine contains the PREV_IV register for faster AES XCBC MAC calculation.

Source

pub const fn aes_tunnel_exist(&self) -> bool

If this flag is set, the engine support tunneling operations.

Source

pub fn set_aes_tunnel_exist(&mut self, val: bool)

If this flag is set, the engine support tunneling operations.

Source

pub const fn second_regs_set_exist(&self) -> bool

If this flag is set, the engine support a second register set for tunneling operations.

Source

pub fn set_second_regs_set_exist(&mut self, val: bool)

If this flag is set, the engine support a second register set for tunneling operations.

Source

pub const fn dfa_cntrmsr_exist(&self) -> bool

If this flag is set, the engine support DFA countermeasures.

Source

pub fn set_dfa_cntrmsr_exist(&mut self, val: bool)

If this flag is set, the engine support DFA countermeasures.

Trait Implementations§

Source§

impl Clone for AesHwFlags

Source§

fn clone(&self) -> AesHwFlags

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for AesHwFlags

Source§

fn default() -> AesHwFlags

Returns the “default value” for a type. Read more
Source§

impl PartialEq for AesHwFlags

Source§

fn eq(&self, other: &AesHwFlags) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for AesHwFlags

Source§

impl Eq for AesHwFlags

Source§

impl StructuralPartialEq for AesHwFlags

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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.