#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - control register"]
pub cr: CR,
#[doc = "0x04 - data input register"]
pub din: DIN,
#[doc = "0x08 - start register"]
pub str: STR,
#[doc = "0x0c - digest registers"]
pub hr: [HR; 5],
#[doc = "0x20 - interrupt enable register"]
pub imr: IMR,
#[doc = "0x24 - status register"]
pub sr: SR,
_reserved6: [u8; 208usize],
#[doc = "0xf8 - context swap registers"]
pub csr: [CSR; 51],
}
#[doc = "control register"]
pub struct CR {
register: vcell::VolatileCell<u32>,
}
#[doc = "control register"]
pub mod cr;
#[doc = "data input register"]
pub struct DIN {
register: vcell::VolatileCell<u32>,
}
#[doc = "data input register"]
pub mod din;
#[doc = "start register"]
pub struct STR {
register: vcell::VolatileCell<u32>,
}
#[doc = "start register"]
pub mod str;
#[doc = "digest registers"]
pub struct HR {
register: vcell::VolatileCell<u32>,
}
#[doc = "digest registers"]
pub mod hr;
#[doc = "interrupt enable register"]
pub struct IMR {
register: vcell::VolatileCell<u32>,
}
#[doc = "interrupt enable register"]
pub mod imr;
#[doc = "status register"]
pub struct SR {
register: vcell::VolatileCell<u32>,
}
#[doc = "status register"]
pub mod sr;
#[doc = "context swap registers"]
pub struct CSR {
register: vcell::VolatileCell<u32>,
}
#[doc = "context swap registers"]
pub mod csr;