#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - control register"]
pub cr: CR,
#[doc = "0x04 - status register"]
pub sr: SR,
#[doc = "0x08 - data input register"]
pub din: DIN,
#[doc = "0x0c - data output register"]
pub dout: DOUT,
#[doc = "0x10 - DMA control register"]
pub dmacr: DMACR,
#[doc = "0x14 - interrupt mask set/clear register"]
pub imscr: IMSCR,
#[doc = "0x18 - raw interrupt status register"]
pub risr: RISR,
#[doc = "0x1c - masked interrupt status register"]
pub misr: MISR,
#[doc = "0x20 - Cluster KEY%s, containing K?LR, K?RR"]
pub key: [KEY; 4],
#[doc = "0x40 - Cluster INIT%s, containing IV?LR, IV?RR"]
pub init: [INIT; 2],
}
#[doc = r"Register block"]
#[repr(C)]
pub struct KEY {
#[doc = "0x00 - key registers"]
pub klr: self::key::KLR,
#[doc = "0x04 - key registers"]
pub krr: self::key::KRR,
}
#[doc = r"Register block"]
#[doc = "Cluster KEY%s, containing K?LR, K?RR"]
pub mod key;
#[doc = r"Register block"]
#[repr(C)]
pub struct INIT {
#[doc = "0x00 - initialization vector registers"]
pub ivlr: self::init::IVLR,
#[doc = "0x04 - initialization vector registers"]
pub ivrr: self::init::IVRR,
}
#[doc = r"Register block"]
#[doc = "Cluster INIT%s, containing IV?LR, IV?RR"]
pub mod init;
#[doc = "control register"]
pub struct CR {
register: vcell::VolatileCell<u32>,
}
#[doc = "control register"]
pub mod cr;
#[doc = "status register"]
pub struct SR {
register: vcell::VolatileCell<u32>,
}
#[doc = "status register"]
pub mod sr;
#[doc = "data input register"]
pub struct DIN {
register: vcell::VolatileCell<u32>,
}
#[doc = "data input register"]
pub mod din;
#[doc = "data output register"]
pub struct DOUT {
register: vcell::VolatileCell<u32>,
}
#[doc = "data output register"]
pub mod dout;
#[doc = "DMA control register"]
pub struct DMACR {
register: vcell::VolatileCell<u32>,
}
#[doc = "DMA control register"]
pub mod dmacr;
#[doc = "interrupt mask set/clear register"]
pub struct IMSCR {
register: vcell::VolatileCell<u32>,
}
#[doc = "interrupt mask set/clear register"]
pub mod imscr;
#[doc = "raw interrupt status register"]
pub struct RISR {
register: vcell::VolatileCell<u32>,
}
#[doc = "raw interrupt status register"]
pub mod risr;
#[doc = "masked interrupt status register"]
pub struct MISR {
register: vcell::VolatileCell<u32>,
}
#[doc = "masked interrupt status register"]
pub mod misr;