pub struct SHA { /* private fields */ }
Expand description
SHA (Secure Hash Algorithm) Accelerator
Implementations§
source§impl SHA
impl SHA
sourcepub const PTR: *const RegisterBlock = {0x3ff03000 as *const sha::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x3ff03000 as *const sha::RegisterBlock}
Pointer to the register block
sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
sourcepub unsafe fn steal() -> Self
pub unsafe fn steal() -> Self
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
sourcepub fn sha1_start(&self) -> &SHA1_START
pub fn sha1_start(&self) -> &SHA1_START
0x80 -
sourcepub fn sha1_continue(&self) -> &SHA1_CONTINUE
pub fn sha1_continue(&self) -> &SHA1_CONTINUE
0x84 -
sourcepub fn sha256_start(&self) -> &SHA256_START
pub fn sha256_start(&self) -> &SHA256_START
0x90 -
sourcepub fn sha256_continue(&self) -> &SHA256_CONTINUE
pub fn sha256_continue(&self) -> &SHA256_CONTINUE
0x94 -
sourcepub fn sha256_load(&self) -> &SHA256_LOAD
pub fn sha256_load(&self) -> &SHA256_LOAD
0x98 -
sourcepub fn sha256_busy(&self) -> &SHA256_BUSY
pub fn sha256_busy(&self) -> &SHA256_BUSY
0x9c -
sourcepub fn sha384_start(&self) -> &SHA384_START
pub fn sha384_start(&self) -> &SHA384_START
0xa0 -
sourcepub fn sha384_continue(&self) -> &SHA384_CONTINUE
pub fn sha384_continue(&self) -> &SHA384_CONTINUE
0xa4 -
sourcepub fn sha384_load(&self) -> &SHA384_LOAD
pub fn sha384_load(&self) -> &SHA384_LOAD
0xa8 -
sourcepub fn sha384_busy(&self) -> &SHA384_BUSY
pub fn sha384_busy(&self) -> &SHA384_BUSY
0xac -
sourcepub fn sha512_start(&self) -> &SHA512_START
pub fn sha512_start(&self) -> &SHA512_START
0xb0 -
sourcepub fn sha512_continue(&self) -> &SHA512_CONTINUE
pub fn sha512_continue(&self) -> &SHA512_CONTINUE
0xb4 -
sourcepub fn sha512_load(&self) -> &SHA512_LOAD
pub fn sha512_load(&self) -> &SHA512_LOAD
0xb8 -
sourcepub fn sha512_busy(&self) -> &SHA512_BUSY
pub fn sha512_busy(&self) -> &SHA512_BUSY
0xbc -
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SHA
impl RefUnwindSafe for SHA
impl !Sync for SHA
impl Unpin for SHA
impl UnwindSafe for SHA
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