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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - ."]
    pub boot_cfg: BOOT_CFG,
    #[doc = "0x04 - ."]
    pub spi_flash_cfg: SPI_FLASH_CFG,
    #[doc = "0x08 - ."]
    pub usb_id: USB_ID,
    #[doc = "0x0c - ."]
    pub sdio_cfg: SDIO_CFG,
    #[doc = "0x10 - ."]
    pub dcfg_cc_socu_pin: DCFG_CC_SOCU_PIN,
    #[doc = "0x14 - ."]
    pub dcfg_cc_socu_dflt: DCFG_CC_SOCU_DFLT,
    #[doc = "0x18 - ."]
    pub dap_vendor_usage_fixed: DAP_VENDOR_USAGE_FIXED,
    #[doc = "0x1c - ."]
    pub secure_boot_cfg: SECURE_BOOT_CFG,
    #[doc = "0x20 - ."]
    pub prince_base_addr: PRINCE_BASE_ADDR,
    #[doc = "0x24 - Region 0, sub-region enable"]
    pub prince_sr_0: PRINCE_SR_0,
    #[doc = "0x28 - Region 1, sub-region enable"]
    pub prince_sr_1: PRINCE_SR_1,
    #[doc = "0x2c - Region 2, sub-region enable"]
    pub prince_sr_2: PRINCE_SR_2,
    _reserved12: [u8; 32usize],
    #[doc = "0x50 - ROTKH0 for Root of Trust Keys Table hash\\[255:224\\] ROTKH1 for Root of Trust Keys Table hash\\[223:192\\] ROTKH2 for Root of Trust Keys Table hash\\[191:160\\] ROTKH3 for Root of Trust Keys Table hash\\[159:128\\] ROTKH4 for Root of Trust Keys Table hash\\[127:96\\] ROTKH5 for Root of Trust Keys Table hash\\[95:64\\] ROTKH6 for Root of Trust Keys Table hash\\[63:32\\] ROTKH7 for Root of Trust Keys Table hash\\[31:0\\]"]
    pub rotkh: [ROTKH; 8],
    _reserved13: [u8; 144usize],
    #[doc = "0x100 - Customer Defined (Programable through ROM API)"]
    pub customer_defined: [CUSTOMER_DEFINED; 56],
    #[doc = "0x1e0 - SHA256_DIGEST0 for DIGEST\\[31:0\\] SHA256_DIGEST1 for DIGEST\\[63:32\\] SHA256_DIGEST2 for DIGEST\\[95:64\\] SHA256_DIGEST3 for DIGEST\\[127:96\\] SHA256_DIGEST4 for DIGEST\\[159:128\\] SHA256_DIGEST5 for DIGEST\\[191:160\\] SHA256_DIGEST6 for DIGEST\\[223:192\\] SHA256_DIGEST7 for DIGEST\\[255:224\\]"]
    pub sha256_digest: [SHA256_DIGEST; 8],
}
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [boot_cfg](boot_cfg) module"]
pub type BOOT_CFG = crate::Reg<u32, _BOOT_CFG>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _BOOT_CFG;
#[doc = "`read()` method returns [boot_cfg::R](boot_cfg::R) reader structure"]
impl crate::Readable for BOOT_CFG {}
#[doc = "`write(|w| ..)` method takes [boot_cfg::W](boot_cfg::W) writer structure"]
impl crate::Writable for BOOT_CFG {}
#[doc = "."]
pub mod boot_cfg;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [spi_flash_cfg](spi_flash_cfg) module"]
pub type SPI_FLASH_CFG = crate::Reg<u32, _SPI_FLASH_CFG>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _SPI_FLASH_CFG;
#[doc = "`read()` method returns [spi_flash_cfg::R](spi_flash_cfg::R) reader structure"]
impl crate::Readable for SPI_FLASH_CFG {}
#[doc = "`write(|w| ..)` method takes [spi_flash_cfg::W](spi_flash_cfg::W) writer structure"]
impl crate::Writable for SPI_FLASH_CFG {}
#[doc = "."]
pub mod spi_flash_cfg;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [usb_id](usb_id) module"]
pub type USB_ID = crate::Reg<u32, _USB_ID>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _USB_ID;
#[doc = "`read()` method returns [usb_id::R](usb_id::R) reader structure"]
impl crate::Readable for USB_ID {}
#[doc = "`write(|w| ..)` method takes [usb_id::W](usb_id::W) writer structure"]
impl crate::Writable for USB_ID {}
#[doc = "."]
pub mod usb_id;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [sdio_cfg](sdio_cfg) module"]
pub type SDIO_CFG = crate::Reg<u32, _SDIO_CFG>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _SDIO_CFG;
#[doc = "`read()` method returns [sdio_cfg::R](sdio_cfg::R) reader structure"]
impl crate::Readable for SDIO_CFG {}
#[doc = "`write(|w| ..)` method takes [sdio_cfg::W](sdio_cfg::W) writer structure"]
impl crate::Writable for SDIO_CFG {}
#[doc = "."]
pub mod sdio_cfg;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [dcfg_cc_socu_pin](dcfg_cc_socu_pin) module"]
pub type DCFG_CC_SOCU_PIN = crate::Reg<u32, _DCFG_CC_SOCU_PIN>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _DCFG_CC_SOCU_PIN;
#[doc = "`read()` method returns [dcfg_cc_socu_pin::R](dcfg_cc_socu_pin::R) reader structure"]
impl crate::Readable for DCFG_CC_SOCU_PIN {}
#[doc = "`write(|w| ..)` method takes [dcfg_cc_socu_pin::W](dcfg_cc_socu_pin::W) writer structure"]
impl crate::Writable for DCFG_CC_SOCU_PIN {}
#[doc = "."]
pub mod dcfg_cc_socu_pin;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [dcfg_cc_socu_dflt](dcfg_cc_socu_dflt) module"]
pub type DCFG_CC_SOCU_DFLT = crate::Reg<u32, _DCFG_CC_SOCU_DFLT>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _DCFG_CC_SOCU_DFLT;
#[doc = "`read()` method returns [dcfg_cc_socu_dflt::R](dcfg_cc_socu_dflt::R) reader structure"]
impl crate::Readable for DCFG_CC_SOCU_DFLT {}
#[doc = "`write(|w| ..)` method takes [dcfg_cc_socu_dflt::W](dcfg_cc_socu_dflt::W) writer structure"]
impl crate::Writable for DCFG_CC_SOCU_DFLT {}
#[doc = "."]
pub mod dcfg_cc_socu_dflt;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [dap_vendor_usage_fixed](dap_vendor_usage_fixed) module"]
pub type DAP_VENDOR_USAGE_FIXED = crate::Reg<u32, _DAP_VENDOR_USAGE_FIXED>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _DAP_VENDOR_USAGE_FIXED;
#[doc = "`read()` method returns [dap_vendor_usage_fixed::R](dap_vendor_usage_fixed::R) reader structure"]
impl crate::Readable for DAP_VENDOR_USAGE_FIXED {}
#[doc = "`write(|w| ..)` method takes [dap_vendor_usage_fixed::W](dap_vendor_usage_fixed::W) writer structure"]
impl crate::Writable for DAP_VENDOR_USAGE_FIXED {}
#[doc = "."]
pub mod dap_vendor_usage_fixed;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [secure_boot_cfg](secure_boot_cfg) module"]
pub type SECURE_BOOT_CFG = crate::Reg<u32, _SECURE_BOOT_CFG>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _SECURE_BOOT_CFG;
#[doc = "`read()` method returns [secure_boot_cfg::R](secure_boot_cfg::R) reader structure"]
impl crate::Readable for SECURE_BOOT_CFG {}
#[doc = "`write(|w| ..)` method takes [secure_boot_cfg::W](secure_boot_cfg::W) writer structure"]
impl crate::Writable for SECURE_BOOT_CFG {}
#[doc = "."]
pub mod secure_boot_cfg;
#[doc = ".\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [prince_base_addr](prince_base_addr) module"]
pub type PRINCE_BASE_ADDR = crate::Reg<u32, _PRINCE_BASE_ADDR>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _PRINCE_BASE_ADDR;
#[doc = "`read()` method returns [prince_base_addr::R](prince_base_addr::R) reader structure"]
impl crate::Readable for PRINCE_BASE_ADDR {}
#[doc = "`write(|w| ..)` method takes [prince_base_addr::W](prince_base_addr::W) writer structure"]
impl crate::Writable for PRINCE_BASE_ADDR {}
#[doc = "."]
pub mod prince_base_addr;
#[doc = "Region 0, sub-region enable\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [prince_sr_0](prince_sr_0) module"]
pub type PRINCE_SR_0 = crate::Reg<u32, _PRINCE_SR_0>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _PRINCE_SR_0;
#[doc = "`read()` method returns [prince_sr_0::R](prince_sr_0::R) reader structure"]
impl crate::Readable for PRINCE_SR_0 {}
#[doc = "`write(|w| ..)` method takes [prince_sr_0::W](prince_sr_0::W) writer structure"]
impl crate::Writable for PRINCE_SR_0 {}
#[doc = "Region 0, sub-region enable"]
pub mod prince_sr_0;
#[doc = "Region 1, sub-region enable\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [prince_sr_1](prince_sr_1) module"]
pub type PRINCE_SR_1 = crate::Reg<u32, _PRINCE_SR_1>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _PRINCE_SR_1;
#[doc = "`read()` method returns [prince_sr_1::R](prince_sr_1::R) reader structure"]
impl crate::Readable for PRINCE_SR_1 {}
#[doc = "`write(|w| ..)` method takes [prince_sr_1::W](prince_sr_1::W) writer structure"]
impl crate::Writable for PRINCE_SR_1 {}
#[doc = "Region 1, sub-region enable"]
pub mod prince_sr_1;
#[doc = "Region 2, sub-region enable\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [prince_sr_2](prince_sr_2) module"]
pub type PRINCE_SR_2 = crate::Reg<u32, _PRINCE_SR_2>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _PRINCE_SR_2;
#[doc = "`read()` method returns [prince_sr_2::R](prince_sr_2::R) reader structure"]
impl crate::Readable for PRINCE_SR_2 {}
#[doc = "`write(|w| ..)` method takes [prince_sr_2::W](prince_sr_2::W) writer structure"]
impl crate::Writable for PRINCE_SR_2 {}
#[doc = "Region 2, sub-region enable"]
pub mod prince_sr_2;
#[doc = "ROTKH0 for Root of Trust Keys Table hash\\[255:224\\] ROTKH1 for Root of Trust Keys Table hash\\[223:192\\] ROTKH2 for Root of Trust Keys Table hash\\[191:160\\] ROTKH3 for Root of Trust Keys Table hash\\[159:128\\] ROTKH4 for Root of Trust Keys Table hash\\[127:96\\] ROTKH5 for Root of Trust Keys Table hash\\[95:64\\] ROTKH6 for Root of Trust Keys Table hash\\[63:32\\] ROTKH7 for Root of Trust Keys Table hash\\[31:0\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [rotkh](rotkh) module"]
pub type ROTKH = crate::Reg<u32, _ROTKH>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _ROTKH;
#[doc = "`read()` method returns [rotkh::R](rotkh::R) reader structure"]
impl crate::Readable for ROTKH {}
#[doc = "`write(|w| ..)` method takes [rotkh::W](rotkh::W) writer structure"]
impl crate::Writable for ROTKH {}
#[doc = "ROTKH0 for Root of Trust Keys Table hash\\[255:224\\] ROTKH1 for Root of Trust Keys Table hash\\[223:192\\] ROTKH2 for Root of Trust Keys Table hash\\[191:160\\] ROTKH3 for Root of Trust Keys Table hash\\[159:128\\] ROTKH4 for Root of Trust Keys Table hash\\[127:96\\] ROTKH5 for Root of Trust Keys Table hash\\[95:64\\] ROTKH6 for Root of Trust Keys Table hash\\[63:32\\] ROTKH7 for Root of Trust Keys Table hash\\[31:0\\]"]
pub mod rotkh;
#[doc = "Customer Defined (Programable through ROM API)\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [customer_defined](customer_defined) module"]
pub type CUSTOMER_DEFINED = crate::Reg<u32, _CUSTOMER_DEFINED>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _CUSTOMER_DEFINED;
#[doc = "`read()` method returns [customer_defined::R](customer_defined::R) reader structure"]
impl crate::Readable for CUSTOMER_DEFINED {}
#[doc = "`write(|w| ..)` method takes [customer_defined::W](customer_defined::W) writer structure"]
impl crate::Writable for CUSTOMER_DEFINED {}
#[doc = "Customer Defined (Programable through ROM API)"]
pub mod customer_defined;
#[doc = "SHA256_DIGEST0 for DIGEST\\[31:0\\] SHA256_DIGEST1 for DIGEST\\[63:32\\] SHA256_DIGEST2 for DIGEST\\[95:64\\] SHA256_DIGEST3 for DIGEST\\[127:96\\] SHA256_DIGEST4 for DIGEST\\[159:128\\] SHA256_DIGEST5 for DIGEST\\[191:160\\] SHA256_DIGEST6 for DIGEST\\[223:192\\] SHA256_DIGEST7 for DIGEST\\[255:224\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about avaliable fields see [sha256_digest](sha256_digest) module"]
pub type SHA256_DIGEST = crate::Reg<u32, _SHA256_DIGEST>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _SHA256_DIGEST;
#[doc = "`read()` method returns [sha256_digest::R](sha256_digest::R) reader structure"]
impl crate::Readable for SHA256_DIGEST {}
#[doc = "`write(|w| ..)` method takes [sha256_digest::W](sha256_digest::W) writer structure"]
impl crate::Writable for SHA256_DIGEST {}
#[doc = "SHA256_DIGEST0 for DIGEST\\[31:0\\] SHA256_DIGEST1 for DIGEST\\[63:32\\] SHA256_DIGEST2 for DIGEST\\[95:64\\] SHA256_DIGEST3 for DIGEST\\[127:96\\] SHA256_DIGEST4 for DIGEST\\[159:128\\] SHA256_DIGEST5 for DIGEST\\[191:160\\] SHA256_DIGEST6 for DIGEST\\[223:192\\] SHA256_DIGEST7 for DIGEST\\[255:224\\]"]
pub mod sha256_digest;