#[repr(transparent)]pub struct Status(pub u32);Expand description
Indicates status of Hash peripheral.
Tuple Fields§
§0: u32Implementations§
Source§impl Status
impl Status
Sourcepub const fn set_waiting(&mut self, val: bool)
pub const fn set_waiting(&mut self, val: bool)
If 1, the block is waiting for more data to process.
Sourcepub const fn digest(&self) -> bool
pub const fn digest(&self) -> bool
For Hash, if 1 then a DIGEST is ready and waiting and there is no active next block already started. For Cryptographic uses, this will be set for each block processed, indicating OUTDATA (and OUTDATA2 if larger output) contains the next value to read out. This is cleared when any data is written, when New is written, for Cryptographic uses when the last word is read out, or when the block is disabled.
Sourcepub const fn set_digest(&mut self, val: bool)
pub const fn set_digest(&mut self, val: bool)
For Hash, if 1 then a DIGEST is ready and waiting and there is no active next block already started. For Cryptographic uses, this will be set for each block processed, indicating OUTDATA (and OUTDATA2 if larger output) contains the next value to read out. This is cleared when any data is written, when New is written, for Cryptographic uses when the last word is read out, or when the block is disabled.
Sourcepub const fn error(&self) -> bool
pub const fn error(&self) -> bool
If 1, an error occurred. For normal uses, this is due to an attempted overrun: INDATA was written when it was not appropriate. For Master cases, this is an AHB bus error; the COUNT field will indicate which block it was on.
Sourcepub const fn set_error(&mut self, val: bool)
pub const fn set_error(&mut self, val: bool)
If 1, an error occurred. For normal uses, this is due to an attempted overrun: INDATA was written when it was not appropriate. For Master cases, this is an AHB bus error; the COUNT field will indicate which block it was on.
Sourcepub const fn needkey(&self) -> bool
pub const fn needkey(&self) -> bool
Indicates the block wants the key to be written in (set along with WAITING)
Sourcepub const fn set_needkey(&mut self, val: bool)
pub const fn set_needkey(&mut self, val: bool)
Indicates the block wants the key to be written in (set along with WAITING)
Sourcepub const fn neediv(&self) -> bool
pub const fn neediv(&self) -> bool
Indicates the block wants an IV/NONE to be written in (set along with WAITING)
Sourcepub const fn set_neediv(&mut self, val: bool)
pub const fn set_neediv(&mut self, val: bool)
Indicates the block wants an IV/NONE to be written in (set along with WAITING)
Sourcepub const fn icbidx(&self) -> u8
pub const fn icbidx(&self) -> u8
If ICB-AES is selected, then reads as the ICB index count based on ICBSTRM (from CRYPTCFG). That is, if 3 bits of ICBSTRM, then this will count from 0 to 7 and then back to 0. On 0, it has to compute the full ICB, quicker when not 0.
Sourcepub const fn set_icbidx(&mut self, val: u8)
pub const fn set_icbidx(&mut self, val: u8)
If ICB-AES is selected, then reads as the ICB index count based on ICBSTRM (from CRYPTCFG). That is, if 3 bits of ICBSTRM, then this will count from 0 to 7 and then back to 0. On 0, it has to compute the full ICB, quicker when not 0.