#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - AES Start"]
pub start: crate::Reg<start::START_SPEC>,
#[doc = "0x04 - AES Idle"]
pub idle: crate::Reg<idle::IDLE_SPEC>,
#[doc = "0x08 - AES Mode"]
pub mode: crate::Reg<mode::MODE_SPEC>,
_reserved3: [u8; 4usize],
#[doc = "0x10 - AES Key material 0"]
pub key_0: crate::Reg<key_0::KEY_0_SPEC>,
#[doc = "0x14 - AES Key material 1"]
pub key_1: crate::Reg<key_1::KEY_1_SPEC>,
#[doc = "0x18 - AES Key material 2"]
pub key_2: crate::Reg<key_2::KEY_2_SPEC>,
#[doc = "0x1c - AES Key material 3"]
pub key_3: crate::Reg<key_3::KEY_3_SPEC>,
#[doc = "0x20 - AES Key material 4"]
pub key_4: crate::Reg<key_4::KEY_4_SPEC>,
#[doc = "0x24 - AES Key material 5"]
pub key_5: crate::Reg<key_5::KEY_5_SPEC>,
#[doc = "0x28 - AES Key material 6"]
pub key_6: crate::Reg<key_6::KEY_6_SPEC>,
#[doc = "0x2c - AES Key material 7"]
pub key_7: crate::Reg<key_7::KEY_7_SPEC>,
#[doc = "0x30 - Plaintext and ciphertext register 0"]
pub text_0: crate::Reg<text_0::TEXT_0_SPEC>,
#[doc = "0x34 - Plaintext and ciphertext register 1"]
pub text_1: crate::Reg<text_1::TEXT_1_SPEC>,
#[doc = "0x38 - Plaintext and ciphertext register 2"]
pub text_2: crate::Reg<text_2::TEXT_2_SPEC>,
#[doc = "0x3c - Plaintext and ciphertext register 3"]
pub text_3: crate::Reg<text_3::TEXT_3_SPEC>,
#[doc = "0x40 - AES Endian selection"]
pub endian: crate::Reg<endian::ENDIAN_SPEC>,
}
#[doc = "START register accessor: an alias for `Reg<START_SPEC>`"]
pub type START = crate::Reg<start::START_SPEC>;
#[doc = "AES Start"]
pub mod start;
#[doc = "IDLE register accessor: an alias for `Reg<IDLE_SPEC>`"]
pub type IDLE = crate::Reg<idle::IDLE_SPEC>;
#[doc = "AES Idle"]
pub mod idle;
#[doc = "MODE register accessor: an alias for `Reg<MODE_SPEC>`"]
pub type MODE = crate::Reg<mode::MODE_SPEC>;
#[doc = "AES Mode"]
pub mod mode;
#[doc = "KEY_0 register accessor: an alias for `Reg<KEY_0_SPEC>`"]
pub type KEY_0 = crate::Reg<key_0::KEY_0_SPEC>;
#[doc = "AES Key material 0"]
pub mod key_0;
#[doc = "KEY_1 register accessor: an alias for `Reg<KEY_1_SPEC>`"]
pub type KEY_1 = crate::Reg<key_1::KEY_1_SPEC>;
#[doc = "AES Key material 1"]
pub mod key_1;
#[doc = "KEY_2 register accessor: an alias for `Reg<KEY_2_SPEC>`"]
pub type KEY_2 = crate::Reg<key_2::KEY_2_SPEC>;
#[doc = "AES Key material 2"]
pub mod key_2;
#[doc = "KEY_3 register accessor: an alias for `Reg<KEY_3_SPEC>`"]
pub type KEY_3 = crate::Reg<key_3::KEY_3_SPEC>;
#[doc = "AES Key material 3"]
pub mod key_3;
#[doc = "KEY_4 register accessor: an alias for `Reg<KEY_4_SPEC>`"]
pub type KEY_4 = crate::Reg<key_4::KEY_4_SPEC>;
#[doc = "AES Key material 4"]
pub mod key_4;
#[doc = "KEY_5 register accessor: an alias for `Reg<KEY_5_SPEC>`"]
pub type KEY_5 = crate::Reg<key_5::KEY_5_SPEC>;
#[doc = "AES Key material 5"]
pub mod key_5;
#[doc = "KEY_6 register accessor: an alias for `Reg<KEY_6_SPEC>`"]
pub type KEY_6 = crate::Reg<key_6::KEY_6_SPEC>;
#[doc = "AES Key material 6"]
pub mod key_6;
#[doc = "KEY_7 register accessor: an alias for `Reg<KEY_7_SPEC>`"]
pub type KEY_7 = crate::Reg<key_7::KEY_7_SPEC>;
#[doc = "AES Key material 7"]
pub mod key_7;
#[doc = "TEXT_0 register accessor: an alias for `Reg<TEXT_0_SPEC>`"]
pub type TEXT_0 = crate::Reg<text_0::TEXT_0_SPEC>;
#[doc = "Plaintext and ciphertext register 0"]
pub mod text_0;
#[doc = "TEXT_1 register accessor: an alias for `Reg<TEXT_1_SPEC>`"]
pub type TEXT_1 = crate::Reg<text_1::TEXT_1_SPEC>;
#[doc = "Plaintext and ciphertext register 1"]
pub mod text_1;
#[doc = "TEXT_2 register accessor: an alias for `Reg<TEXT_2_SPEC>`"]
pub type TEXT_2 = crate::Reg<text_2::TEXT_2_SPEC>;
#[doc = "Plaintext and ciphertext register 2"]
pub mod text_2;
#[doc = "TEXT_3 register accessor: an alias for `Reg<TEXT_3_SPEC>`"]
pub type TEXT_3 = crate::Reg<text_3::TEXT_3_SPEC>;
#[doc = "Plaintext and ciphertext register 3"]
pub mod text_3;
#[doc = "ENDIAN register accessor: an alias for `Reg<ENDIAN_SPEC>`"]
pub type ENDIAN = crate::Reg<endian::ENDIAN_SPEC>;
#[doc = "AES Endian selection"]
pub mod endian;