Struct esp32::SHA

source ·
pub struct SHA { /* private fields */ }
Expand description

SHA (Secure Hash Algorithm) Accelerator

Implementations§

source§

impl SHA

source

pub const PTR: *const RegisterBlock = {0x3ff03000 as *const sha::RegisterBlock}

Pointer to the register block

source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

source

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>§

source

pub fn text(&self, n: usize) -> &TEXT

0x00..0x80 -

source

pub fn text_iter(&self) -> impl Iterator<Item = &TEXT>

Iterator for array of: 0x00..0x80 -

source

pub fn sha1_start(&self) -> &SHA1_START

0x80 -

source

pub fn sha1_continue(&self) -> &SHA1_CONTINUE

0x84 -

source

pub fn sha1_load(&self) -> &SHA1_LOAD

0x88 -

source

pub fn sha1_busy(&self) -> &SHA1_BUSY

0x8c -

source

pub fn sha256_start(&self) -> &SHA256_START

0x90 -

source

pub fn sha256_continue(&self) -> &SHA256_CONTINUE

0x94 -

source

pub fn sha256_load(&self) -> &SHA256_LOAD

0x98 -

source

pub fn sha256_busy(&self) -> &SHA256_BUSY

0x9c -

source

pub fn sha384_start(&self) -> &SHA384_START

0xa0 -

source

pub fn sha384_continue(&self) -> &SHA384_CONTINUE

0xa4 -

source

pub fn sha384_load(&self) -> &SHA384_LOAD

0xa8 -

source

pub fn sha384_busy(&self) -> &SHA384_BUSY

0xac -

source

pub fn sha512_start(&self) -> &SHA512_START

0xb0 -

source

pub fn sha512_continue(&self) -> &SHA512_CONTINUE

0xb4 -

source

pub fn sha512_load(&self) -> &SHA512_LOAD

0xb8 -

source

pub fn sha512_busy(&self) -> &SHA512_BUSY

0xbc -

Trait Implementations§

source§

impl Debug for SHA

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for SHA

source§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Send for SHA

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> 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.