1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Control Register"]
    pub aes_cr: AES_CR,
    #[doc = "0x04 - Mode Register"]
    pub aes_mr: AES_MR,
    _reserved2: [u8; 8usize],
    #[doc = "0x10 - Interrupt Enable Register"]
    pub aes_ier: AES_IER,
    #[doc = "0x14 - Interrupt Disable Register"]
    pub aes_idr: AES_IDR,
    #[doc = "0x18 - Interrupt Mask Register"]
    pub aes_imr: AES_IMR,
    #[doc = "0x1c - Interrupt Status Register"]
    pub aes_isr: AES_ISR,
    #[doc = "0x20 - Key Word Register 0"]
    pub aes_keywr: [AES_KEYWR; 8],
    #[doc = "0x40 - Input Data Register 0"]
    pub aes_idatar: [AES_IDATAR; 4],
    #[doc = "0x50 - Output Data Register 0"]
    pub aes_odatar: [AES_ODATAR; 4],
    #[doc = "0x60 - Initialization Vector Register 0"]
    pub aes_ivr: [AES_IVR; 4],
    #[doc = "0x70 - Additional Authenticated Data Length Register"]
    pub aes_aadlenr: AES_AADLENR,
    #[doc = "0x74 - Plaintext/Ciphertext Length Register"]
    pub aes_clenr: AES_CLENR,
    #[doc = "0x78 - GCM Intermediate Hash Word Register 0"]
    pub aes_ghashr: [AES_GHASHR; 4],
    #[doc = "0x88 - GCM Authentication Tag Word Register 0"]
    pub aes_tagr: [AES_TAGR; 4],
    #[doc = "0x98 - GCM Encryption Counter Value Register"]
    pub aes_ctrr: AES_CTRR,
    #[doc = "0x9c - GCM H Word Register 0"]
    pub aes_gcmhr: [AES_GCMHR; 4],
}
#[doc = "Control Register"]
pub struct AES_CR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Control Register"]
pub mod aes_cr;
#[doc = "Mode Register"]
pub struct AES_MR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Mode Register"]
pub mod aes_mr;
#[doc = "Interrupt Enable Register"]
pub struct AES_IER {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Enable Register"]
pub mod aes_ier;
#[doc = "Interrupt Disable Register"]
pub struct AES_IDR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Disable Register"]
pub mod aes_idr;
#[doc = "Interrupt Mask Register"]
pub struct AES_IMR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Mask Register"]
pub mod aes_imr;
#[doc = "Interrupt Status Register"]
pub struct AES_ISR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Status Register"]
pub mod aes_isr;
#[doc = "Key Word Register 0"]
pub struct AES_KEYWR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Key Word Register 0"]
pub mod aes_keywr;
#[doc = "Input Data Register 0"]
pub struct AES_IDATAR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Input Data Register 0"]
pub mod aes_idatar;
#[doc = "Output Data Register 0"]
pub struct AES_ODATAR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Output Data Register 0"]
pub mod aes_odatar;
#[doc = "Initialization Vector Register 0"]
pub struct AES_IVR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Initialization Vector Register 0"]
pub mod aes_ivr;
#[doc = "Additional Authenticated Data Length Register"]
pub struct AES_AADLENR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Additional Authenticated Data Length Register"]
pub mod aes_aadlenr;
#[doc = "Plaintext/Ciphertext Length Register"]
pub struct AES_CLENR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "Plaintext/Ciphertext Length Register"]
pub mod aes_clenr;
#[doc = "GCM Intermediate Hash Word Register 0"]
pub struct AES_GHASHR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "GCM Intermediate Hash Word Register 0"]
pub mod aes_ghashr;
#[doc = "GCM Authentication Tag Word Register 0"]
pub struct AES_TAGR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "GCM Authentication Tag Word Register 0"]
pub mod aes_tagr;
#[doc = "GCM Encryption Counter Value Register"]
pub struct AES_CTRR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "GCM Encryption Counter Value Register"]
pub mod aes_ctrr;
#[doc = "GCM H Word Register 0"]
pub struct AES_GCMHR {
    register: vcell::VolatileCell<u32>,
}
#[doc = "GCM H Word Register 0"]
pub mod aes_gcmhr;