1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 spcsectrl: Spcsectrl,
5 buswait: Buswait,
6 _reserved2: [u8; 0x08],
7 secrespcfg: Secrespcfg,
8 nsccfg: Nsccfg,
9 _reserved4: [u8; 0x04],
10 secmpcintstatus: Secmpcintstatus,
11 secppcintstat: Secppcintstat,
12 secppcintclr: Secppcintclr,
13 secppcinten: Secppcinten,
14 _reserved8: [u8; 0x04],
15 secmscintstat: Secmscintstat,
16 secmscintclr: Secmscintclr,
17 secmscinten: Secmscinten,
18 _reserved11: [u8; 0x04],
19 brgintstat: Brgintstat,
20 brgintclr: Brgintclr,
21 brginten: Brginten,
22 _reserved14: [u8; 0x04],
23 ahbnsppc0: Ahbnsppc0,
24 _reserved15: [u8; 0x0c],
25 ahbnsppcexp0: Ahbnsppcexp0,
26 ahbnsppcexp1: Ahbnsppcexp1,
27 ahbnsppcexp2: Ahbnsppcexp2,
28 ahbnsppcexp3: Ahbnsppcexp3,
29 apbnsppc0: Apbnsppc0,
30 apbnsppc1: Apbnsppc1,
31 _reserved21: [u8; 0x08],
32 apbnsppcexp0: Apbnsppcexp0,
33 apbnsppcexp1: Apbnsppcexp1,
34 apbnsppcexp2: Apbnsppcexp2,
35 apbnsppcexp3: Apbnsppcexp3,
36 ahbspppc0: Ahbspppc0,
37 _reserved26: [u8; 0x0c],
38 ahbspppcexp0: Ahbspppcexp0,
39 ahbspppcexp1: Ahbspppcexp1,
40 ahbspppcexp2: Ahbspppcexp2,
41 ahbspppcexp3: Ahbspppcexp3,
42 apbspppc0: Apbspppc0,
43 apbspppc1: Apbspppc1,
44 _reserved32: [u8; 0x08],
45 apbspppcexp0: Apbspppcexp0,
46 apbspppcexp1: Apbspppcexp1,
47 apbspppcexp2: Apbspppcexp2,
48 apbspppcexp3: Apbspppcexp3,
49 nsmscexp: Nsmscexp,
50 _reserved37: [u8; 0x0efc],
51 pid4: Pid4,
52 _reserved38: [u8; 0x0c],
53 pid0: Pid0,
54 pid1: Pid1,
55 pid2: Pid2,
56 pid3: Pid3,
57 cidr0: Cidr0,
58 cidr1: Cidr1,
59 cidr2: Cidr2,
60 cidr3: Cidr3,
61}
62impl RegisterBlock {
63 #[doc = "0x00 - Secure Privilege Controller Secure Configuration Control register"]
64 #[inline(always)]
65 pub const fn spcsectrl(&self) -> &Spcsectrl {
66 &self.spcsectrl
67 }
68 #[doc = "0x04 - Bus Access wait control after reset"]
69 #[inline(always)]
70 pub const fn buswait(&self) -> &Buswait {
71 &self.buswait
72 }
73 #[doc = "0x10 - Security Violation Response Configuration register"]
74 #[inline(always)]
75 pub const fn secrespcfg(&self) -> &Secrespcfg {
76 &self.secrespcfg
77 }
78 #[doc = "0x14 - Non Secure Callable Configuration for IDAU"]
79 #[inline(always)]
80 pub const fn nsccfg(&self) -> &Nsccfg {
81 &self.nsccfg
82 }
83 #[doc = "0x1c - Secure MPC Interrupt Status"]
84 #[inline(always)]
85 pub const fn secmpcintstatus(&self) -> &Secmpcintstatus {
86 &self.secmpcintstatus
87 }
88 #[doc = "0x20 - Secure PPC Interrupt Status"]
89 #[inline(always)]
90 pub const fn secppcintstat(&self) -> &Secppcintstat {
91 &self.secppcintstat
92 }
93 #[doc = "0x24 - Secure PPC Interrupt Clear"]
94 #[inline(always)]
95 pub const fn secppcintclr(&self) -> &Secppcintclr {
96 &self.secppcintclr
97 }
98 #[doc = "0x28 - Secure PPC Interrupt Enable"]
99 #[inline(always)]
100 pub const fn secppcinten(&self) -> &Secppcinten {
101 &self.secppcinten
102 }
103 #[doc = "0x30 - Secure MSC Interrupt Status"]
104 #[inline(always)]
105 pub const fn secmscintstat(&self) -> &Secmscintstat {
106 &self.secmscintstat
107 }
108 #[doc = "0x34 - Secure MSC Interrupt Clear"]
109 #[inline(always)]
110 pub const fn secmscintclr(&self) -> &Secmscintclr {
111 &self.secmscintclr
112 }
113 #[doc = "0x38 - Secure MSC Interrupt Enable"]
114 #[inline(always)]
115 pub const fn secmscinten(&self) -> &Secmscinten {
116 &self.secmscinten
117 }
118 #[doc = "0x40 - Bridge Buffer Error Interrupt Status"]
119 #[inline(always)]
120 pub const fn brgintstat(&self) -> &Brgintstat {
121 &self.brgintstat
122 }
123 #[doc = "0x44 - Bridge Buffer Error Interrupt Clear"]
124 #[inline(always)]
125 pub const fn brgintclr(&self) -> &Brgintclr {
126 &self.brgintclr
127 }
128 #[doc = "0x48 - Bridge Buffer Error Interrupt Enable"]
129 #[inline(always)]
130 pub const fn brginten(&self) -> &Brginten {
131 &self.brginten
132 }
133 #[doc = "0x50 - Non-Secure Access AHB slave Peripheral Protection Control 0"]
134 #[inline(always)]
135 pub const fn ahbnsppc0(&self) -> &Ahbnsppc0 {
136 &self.ahbnsppc0
137 }
138 #[doc = "0x60 - Expansion 0 Non_Secure Access AHB slave Peripheral Protection Control"]
139 #[inline(always)]
140 pub const fn ahbnsppcexp0(&self) -> &Ahbnsppcexp0 {
141 &self.ahbnsppcexp0
142 }
143 #[doc = "0x64 - Expansion 1 Non_Secure Access AHB slave Peripheral Protection Control"]
144 #[inline(always)]
145 pub const fn ahbnsppcexp1(&self) -> &Ahbnsppcexp1 {
146 &self.ahbnsppcexp1
147 }
148 #[doc = "0x68 - Expansion 2 Non_Secure Access AHB slave Peripheral Protection Control"]
149 #[inline(always)]
150 pub const fn ahbnsppcexp2(&self) -> &Ahbnsppcexp2 {
151 &self.ahbnsppcexp2
152 }
153 #[doc = "0x6c - Expansion 3 Non_Secure Access AHB slave Peripheral Protection Control"]
154 #[inline(always)]
155 pub const fn ahbnsppcexp3(&self) -> &Ahbnsppcexp3 {
156 &self.ahbnsppcexp3
157 }
158 #[doc = "0x70 - Non-Secure Access APB slave Peripheral Protection Control 0"]
159 #[inline(always)]
160 pub const fn apbnsppc0(&self) -> &Apbnsppc0 {
161 &self.apbnsppc0
162 }
163 #[doc = "0x74 - Non-Secure Access APB slave Peripheral Protection Control 1"]
164 #[inline(always)]
165 pub const fn apbnsppc1(&self) -> &Apbnsppc1 {
166 &self.apbnsppc1
167 }
168 #[doc = "0x80 - Expansion 0 Non_Secure Access APB slave Peripheral Protection Control"]
169 #[inline(always)]
170 pub const fn apbnsppcexp0(&self) -> &Apbnsppcexp0 {
171 &self.apbnsppcexp0
172 }
173 #[doc = "0x84 - Expansion 1 Non_Secure Access APB slave Peripheral Protection Control"]
174 #[inline(always)]
175 pub const fn apbnsppcexp1(&self) -> &Apbnsppcexp1 {
176 &self.apbnsppcexp1
177 }
178 #[doc = "0x88 - Expansion 2 Non_Secure Access APB slave Peripheral Protection Control"]
179 #[inline(always)]
180 pub const fn apbnsppcexp2(&self) -> &Apbnsppcexp2 {
181 &self.apbnsppcexp2
182 }
183 #[doc = "0x8c - Expansion 3 Non_Secure Access APB slave Peripheral Protection Control"]
184 #[inline(always)]
185 pub const fn apbnsppcexp3(&self) -> &Apbnsppcexp3 {
186 &self.apbnsppcexp3
187 }
188 #[doc = "0x90 - Secure Unprivileged Access AHB slave Peripheral Protection Control 0"]
189 #[inline(always)]
190 pub const fn ahbspppc0(&self) -> &Ahbspppc0 {
191 &self.ahbspppc0
192 }
193 #[doc = "0xa0 - Expansion 0 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
194 #[inline(always)]
195 pub const fn ahbspppcexp0(&self) -> &Ahbspppcexp0 {
196 &self.ahbspppcexp0
197 }
198 #[doc = "0xa4 - Expansion 1 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
199 #[inline(always)]
200 pub const fn ahbspppcexp1(&self) -> &Ahbspppcexp1 {
201 &self.ahbspppcexp1
202 }
203 #[doc = "0xa8 - Expansion 2 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
204 #[inline(always)]
205 pub const fn ahbspppcexp2(&self) -> &Ahbspppcexp2 {
206 &self.ahbspppcexp2
207 }
208 #[doc = "0xac - Expansion 3 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
209 #[inline(always)]
210 pub const fn ahbspppcexp3(&self) -> &Ahbspppcexp3 {
211 &self.ahbspppcexp3
212 }
213 #[doc = "0xb0 - Secure Unprivileged Access APB slave Peripheral Protection Control 0"]
214 #[inline(always)]
215 pub const fn apbspppc0(&self) -> &Apbspppc0 {
216 &self.apbspppc0
217 }
218 #[doc = "0xb4 - Secure Unprivileged Access APB slave Peripheral Protection Control 1"]
219 #[inline(always)]
220 pub const fn apbspppc1(&self) -> &Apbspppc1 {
221 &self.apbspppc1
222 }
223 #[doc = "0xc0 - Expansion 0 Secure Unprivileged Access APB slave Peripheral Protection Control"]
224 #[inline(always)]
225 pub const fn apbspppcexp0(&self) -> &Apbspppcexp0 {
226 &self.apbspppcexp0
227 }
228 #[doc = "0xc4 - Expansion 1 Secure Unprivileged Access APB slave Peripheral Protection Control"]
229 #[inline(always)]
230 pub const fn apbspppcexp1(&self) -> &Apbspppcexp1 {
231 &self.apbspppcexp1
232 }
233 #[doc = "0xc8 - Expansion 2 Secure Unprivileged Access APB slave Peripheral Protection Control"]
234 #[inline(always)]
235 pub const fn apbspppcexp2(&self) -> &Apbspppcexp2 {
236 &self.apbspppcexp2
237 }
238 #[doc = "0xcc - Expansion 3 Secure Unprivileged Access APB slave Peripheral Protection Control"]
239 #[inline(always)]
240 pub const fn apbspppcexp3(&self) -> &Apbspppcexp3 {
241 &self.apbspppcexp3
242 }
243 #[doc = "0xd0 - Expansion MSC Non-Secure Configuration"]
244 #[inline(always)]
245 pub const fn nsmscexp(&self) -> &Nsmscexp {
246 &self.nsmscexp
247 }
248 #[doc = "0xfd0 - Peripheral ID 4"]
249 #[inline(always)]
250 pub const fn pid4(&self) -> &Pid4 {
251 &self.pid4
252 }
253 #[doc = "0xfe0 - Peripheral ID 0"]
254 #[inline(always)]
255 pub const fn pid0(&self) -> &Pid0 {
256 &self.pid0
257 }
258 #[doc = "0xfe4 - Peripheral ID 1"]
259 #[inline(always)]
260 pub const fn pid1(&self) -> &Pid1 {
261 &self.pid1
262 }
263 #[doc = "0xfe8 - Peripheral ID 2"]
264 #[inline(always)]
265 pub const fn pid2(&self) -> &Pid2 {
266 &self.pid2
267 }
268 #[doc = "0xfec - Peripheral ID 3"]
269 #[inline(always)]
270 pub const fn pid3(&self) -> &Pid3 {
271 &self.pid3
272 }
273 #[doc = "0xff0 - Component ID 0"]
274 #[inline(always)]
275 pub const fn cidr0(&self) -> &Cidr0 {
276 &self.cidr0
277 }
278 #[doc = "0xff4 - Component ID 1"]
279 #[inline(always)]
280 pub const fn cidr1(&self) -> &Cidr1 {
281 &self.cidr1
282 }
283 #[doc = "0xff8 - Component ID 2"]
284 #[inline(always)]
285 pub const fn cidr2(&self) -> &Cidr2 {
286 &self.cidr2
287 }
288 #[doc = "0xffc - Component ID 3"]
289 #[inline(always)]
290 pub const fn cidr3(&self) -> &Cidr3 {
291 &self.cidr3
292 }
293}
294#[doc = "SPCSECTRL (rw) register accessor: Secure Privilege Controller Secure Configuration Control register\n\nYou can [`read`](crate::Reg::read) this register and get [`spcsectrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`spcsectrl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spcsectrl`]
295module"]
296#[doc(alias = "SPCSECTRL")]
297pub type Spcsectrl = crate::Reg<spcsectrl::SpcsectrlSpec>;
298#[doc = "Secure Privilege Controller Secure Configuration Control register"]
299pub mod spcsectrl;
300#[doc = "BUSWAIT (rw) register accessor: Bus Access wait control after reset\n\nYou can [`read`](crate::Reg::read) this register and get [`buswait::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`buswait::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@buswait`]
301module"]
302#[doc(alias = "BUSWAIT")]
303pub type Buswait = crate::Reg<buswait::BuswaitSpec>;
304#[doc = "Bus Access wait control after reset"]
305pub mod buswait;
306#[doc = "SECRESPCFG (rw) register accessor: Security Violation Response Configuration register\n\nYou can [`read`](crate::Reg::read) this register and get [`secrespcfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`secrespcfg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secrespcfg`]
307module"]
308#[doc(alias = "SECRESPCFG")]
309pub type Secrespcfg = crate::Reg<secrespcfg::SecrespcfgSpec>;
310#[doc = "Security Violation Response Configuration register"]
311pub mod secrespcfg;
312#[doc = "NSCCFG (rw) register accessor: Non Secure Callable Configuration for IDAU\n\nYou can [`read`](crate::Reg::read) this register and get [`nsccfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`nsccfg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@nsccfg`]
313module"]
314#[doc(alias = "NSCCFG")]
315pub type Nsccfg = crate::Reg<nsccfg::NsccfgSpec>;
316#[doc = "Non Secure Callable Configuration for IDAU"]
317pub mod nsccfg;
318#[doc = "SECMPCINTSTATUS (r) register accessor: Secure MPC Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`secmpcintstatus::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secmpcintstatus`]
319module"]
320#[doc(alias = "SECMPCINTSTATUS")]
321pub type Secmpcintstatus = crate::Reg<secmpcintstatus::SecmpcintstatusSpec>;
322#[doc = "Secure MPC Interrupt Status"]
323pub mod secmpcintstatus;
324#[doc = "SECPPCINTSTAT (r) register accessor: Secure PPC Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`secppcintstat::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secppcintstat`]
325module"]
326#[doc(alias = "SECPPCINTSTAT")]
327pub type Secppcintstat = crate::Reg<secppcintstat::SecppcintstatSpec>;
328#[doc = "Secure PPC Interrupt Status"]
329pub mod secppcintstat;
330#[doc = "SECPPCINTCLR (w) register accessor: Secure PPC Interrupt Clear\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`secppcintclr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secppcintclr`]
331module"]
332#[doc(alias = "SECPPCINTCLR")]
333pub type Secppcintclr = crate::Reg<secppcintclr::SecppcintclrSpec>;
334#[doc = "Secure PPC Interrupt Clear"]
335pub mod secppcintclr;
336#[doc = "SECPPCINTEN (rw) register accessor: Secure PPC Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`secppcinten::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`secppcinten::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secppcinten`]
337module"]
338#[doc(alias = "SECPPCINTEN")]
339pub type Secppcinten = crate::Reg<secppcinten::SecppcintenSpec>;
340#[doc = "Secure PPC Interrupt Enable"]
341pub mod secppcinten;
342#[doc = "SECMSCINTSTAT (r) register accessor: Secure MSC Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`secmscintstat::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secmscintstat`]
343module"]
344#[doc(alias = "SECMSCINTSTAT")]
345pub type Secmscintstat = crate::Reg<secmscintstat::SecmscintstatSpec>;
346#[doc = "Secure MSC Interrupt Status"]
347pub mod secmscintstat;
348#[doc = "SECMSCINTCLR (rw) register accessor: Secure MSC Interrupt Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`secmscintclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`secmscintclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secmscintclr`]
349module"]
350#[doc(alias = "SECMSCINTCLR")]
351pub type Secmscintclr = crate::Reg<secmscintclr::SecmscintclrSpec>;
352#[doc = "Secure MSC Interrupt Clear"]
353pub mod secmscintclr;
354#[doc = "SECMSCINTEN (rw) register accessor: Secure MSC Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`secmscinten::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`secmscinten::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@secmscinten`]
355module"]
356#[doc(alias = "SECMSCINTEN")]
357pub type Secmscinten = crate::Reg<secmscinten::SecmscintenSpec>;
358#[doc = "Secure MSC Interrupt Enable"]
359pub mod secmscinten;
360#[doc = "BRGINTSTAT (r) register accessor: Bridge Buffer Error Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`brgintstat::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@brgintstat`]
361module"]
362#[doc(alias = "BRGINTSTAT")]
363pub type Brgintstat = crate::Reg<brgintstat::BrgintstatSpec>;
364#[doc = "Bridge Buffer Error Interrupt Status"]
365pub mod brgintstat;
366#[doc = "BRGINTCLR (w) register accessor: Bridge Buffer Error Interrupt Clear\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`brgintclr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@brgintclr`]
367module"]
368#[doc(alias = "BRGINTCLR")]
369pub type Brgintclr = crate::Reg<brgintclr::BrgintclrSpec>;
370#[doc = "Bridge Buffer Error Interrupt Clear"]
371pub mod brgintclr;
372#[doc = "BRGINTEN (rw) register accessor: Bridge Buffer Error Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`brginten::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`brginten::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@brginten`]
373module"]
374#[doc(alias = "BRGINTEN")]
375pub type Brginten = crate::Reg<brginten::BrgintenSpec>;
376#[doc = "Bridge Buffer Error Interrupt Enable"]
377pub mod brginten;
378#[doc = "AHBNSPPC0 (rw) register accessor: Non-Secure Access AHB slave Peripheral Protection Control 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbnsppc0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbnsppc0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbnsppc0`]
379module"]
380#[doc(alias = "AHBNSPPC0")]
381pub type Ahbnsppc0 = crate::Reg<ahbnsppc0::Ahbnsppc0Spec>;
382#[doc = "Non-Secure Access AHB slave Peripheral Protection Control 0"]
383pub mod ahbnsppc0;
384#[doc = "AHBNSPPCEXP0 (rw) register accessor: Expansion 0 Non_Secure Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbnsppcexp0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbnsppcexp0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbnsppcexp0`]
385module"]
386#[doc(alias = "AHBNSPPCEXP0")]
387pub type Ahbnsppcexp0 = crate::Reg<ahbnsppcexp0::Ahbnsppcexp0Spec>;
388#[doc = "Expansion 0 Non_Secure Access AHB slave Peripheral Protection Control"]
389pub mod ahbnsppcexp0;
390#[doc = "AHBNSPPCEXP1 (rw) register accessor: Expansion 1 Non_Secure Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbnsppcexp1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbnsppcexp1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbnsppcexp1`]
391module"]
392#[doc(alias = "AHBNSPPCEXP1")]
393pub type Ahbnsppcexp1 = crate::Reg<ahbnsppcexp1::Ahbnsppcexp1Spec>;
394#[doc = "Expansion 1 Non_Secure Access AHB slave Peripheral Protection Control"]
395pub mod ahbnsppcexp1;
396#[doc = "AHBNSPPCEXP2 (rw) register accessor: Expansion 2 Non_Secure Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbnsppcexp2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbnsppcexp2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbnsppcexp2`]
397module"]
398#[doc(alias = "AHBNSPPCEXP2")]
399pub type Ahbnsppcexp2 = crate::Reg<ahbnsppcexp2::Ahbnsppcexp2Spec>;
400#[doc = "Expansion 2 Non_Secure Access AHB slave Peripheral Protection Control"]
401pub mod ahbnsppcexp2;
402#[doc = "AHBNSPPCEXP3 (rw) register accessor: Expansion 3 Non_Secure Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbnsppcexp3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbnsppcexp3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbnsppcexp3`]
403module"]
404#[doc(alias = "AHBNSPPCEXP3")]
405pub type Ahbnsppcexp3 = crate::Reg<ahbnsppcexp3::Ahbnsppcexp3Spec>;
406#[doc = "Expansion 3 Non_Secure Access AHB slave Peripheral Protection Control"]
407pub mod ahbnsppcexp3;
408#[doc = "APBNSPPC0 (rw) register accessor: Non-Secure Access APB slave Peripheral Protection Control 0\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppc0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppc0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppc0`]
409module"]
410#[doc(alias = "APBNSPPC0")]
411pub type Apbnsppc0 = crate::Reg<apbnsppc0::Apbnsppc0Spec>;
412#[doc = "Non-Secure Access APB slave Peripheral Protection Control 0"]
413pub mod apbnsppc0;
414#[doc = "APBNSPPC1 (rw) register accessor: Non-Secure Access APB slave Peripheral Protection Control 1\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppc1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppc1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppc1`]
415module"]
416#[doc(alias = "APBNSPPC1")]
417pub type Apbnsppc1 = crate::Reg<apbnsppc1::Apbnsppc1Spec>;
418#[doc = "Non-Secure Access APB slave Peripheral Protection Control 1"]
419pub mod apbnsppc1;
420#[doc = "APBNSPPCEXP0 (rw) register accessor: Expansion 0 Non_Secure Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppcexp0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppcexp0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppcexp0`]
421module"]
422#[doc(alias = "APBNSPPCEXP0")]
423pub type Apbnsppcexp0 = crate::Reg<apbnsppcexp0::Apbnsppcexp0Spec>;
424#[doc = "Expansion 0 Non_Secure Access APB slave Peripheral Protection Control"]
425pub mod apbnsppcexp0;
426#[doc = "APBNSPPCEXP1 (rw) register accessor: Expansion 1 Non_Secure Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppcexp1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppcexp1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppcexp1`]
427module"]
428#[doc(alias = "APBNSPPCEXP1")]
429pub type Apbnsppcexp1 = crate::Reg<apbnsppcexp1::Apbnsppcexp1Spec>;
430#[doc = "Expansion 1 Non_Secure Access APB slave Peripheral Protection Control"]
431pub mod apbnsppcexp1;
432#[doc = "APBNSPPCEXP2 (rw) register accessor: Expansion 2 Non_Secure Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppcexp2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppcexp2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppcexp2`]
433module"]
434#[doc(alias = "APBNSPPCEXP2")]
435pub type Apbnsppcexp2 = crate::Reg<apbnsppcexp2::Apbnsppcexp2Spec>;
436#[doc = "Expansion 2 Non_Secure Access APB slave Peripheral Protection Control"]
437pub mod apbnsppcexp2;
438#[doc = "APBNSPPCEXP3 (rw) register accessor: Expansion 3 Non_Secure Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbnsppcexp3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbnsppcexp3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbnsppcexp3`]
439module"]
440#[doc(alias = "APBNSPPCEXP3")]
441pub type Apbnsppcexp3 = crate::Reg<apbnsppcexp3::Apbnsppcexp3Spec>;
442#[doc = "Expansion 3 Non_Secure Access APB slave Peripheral Protection Control"]
443pub mod apbnsppcexp3;
444#[doc = "AHBSPPPC0 (r) register accessor: Secure Unprivileged Access AHB slave Peripheral Protection Control 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbspppc0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbspppc0`]
445module"]
446#[doc(alias = "AHBSPPPC0")]
447pub type Ahbspppc0 = crate::Reg<ahbspppc0::Ahbspppc0Spec>;
448#[doc = "Secure Unprivileged Access AHB slave Peripheral Protection Control 0"]
449pub mod ahbspppc0;
450#[doc = "AHBSPPPCEXP0 (rw) register accessor: Expansion 0 Secure Unprivileged Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbspppcexp0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbspppcexp0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbspppcexp0`]
451module"]
452#[doc(alias = "AHBSPPPCEXP0")]
453pub type Ahbspppcexp0 = crate::Reg<ahbspppcexp0::Ahbspppcexp0Spec>;
454#[doc = "Expansion 0 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
455pub mod ahbspppcexp0;
456#[doc = "AHBSPPPCEXP1 (rw) register accessor: Expansion 1 Secure Unprivileged Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbspppcexp1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbspppcexp1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbspppcexp1`]
457module"]
458#[doc(alias = "AHBSPPPCEXP1")]
459pub type Ahbspppcexp1 = crate::Reg<ahbspppcexp1::Ahbspppcexp1Spec>;
460#[doc = "Expansion 1 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
461pub mod ahbspppcexp1;
462#[doc = "AHBSPPPCEXP2 (rw) register accessor: Expansion 2 Secure Unprivileged Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbspppcexp2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbspppcexp2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbspppcexp2`]
463module"]
464#[doc(alias = "AHBSPPPCEXP2")]
465pub type Ahbspppcexp2 = crate::Reg<ahbspppcexp2::Ahbspppcexp2Spec>;
466#[doc = "Expansion 2 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
467pub mod ahbspppcexp2;
468#[doc = "AHBSPPPCEXP3 (rw) register accessor: Expansion 3 Secure Unprivileged Access AHB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbspppcexp3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbspppcexp3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ahbspppcexp3`]
469module"]
470#[doc(alias = "AHBSPPPCEXP3")]
471pub type Ahbspppcexp3 = crate::Reg<ahbspppcexp3::Ahbspppcexp3Spec>;
472#[doc = "Expansion 3 Secure Unprivileged Access AHB slave Peripheral Protection Control"]
473pub mod ahbspppcexp3;
474#[doc = "APBSPPPC0 (rw) register accessor: Secure Unprivileged Access APB slave Peripheral Protection Control 0\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppc0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppc0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppc0`]
475module"]
476#[doc(alias = "APBSPPPC0")]
477pub type Apbspppc0 = crate::Reg<apbspppc0::Apbspppc0Spec>;
478#[doc = "Secure Unprivileged Access APB slave Peripheral Protection Control 0"]
479pub mod apbspppc0;
480#[doc = "APBSPPPC1 (rw) register accessor: Secure Unprivileged Access APB slave Peripheral Protection Control 1\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppc1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppc1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppc1`]
481module"]
482#[doc(alias = "APBSPPPC1")]
483pub type Apbspppc1 = crate::Reg<apbspppc1::Apbspppc1Spec>;
484#[doc = "Secure Unprivileged Access APB slave Peripheral Protection Control 1"]
485pub mod apbspppc1;
486#[doc = "APBSPPPCEXP0 (rw) register accessor: Expansion 0 Secure Unprivileged Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppcexp0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppcexp0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppcexp0`]
487module"]
488#[doc(alias = "APBSPPPCEXP0")]
489pub type Apbspppcexp0 = crate::Reg<apbspppcexp0::Apbspppcexp0Spec>;
490#[doc = "Expansion 0 Secure Unprivileged Access APB slave Peripheral Protection Control"]
491pub mod apbspppcexp0;
492#[doc = "APBSPPPCEXP1 (rw) register accessor: Expansion 1 Secure Unprivileged Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppcexp1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppcexp1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppcexp1`]
493module"]
494#[doc(alias = "APBSPPPCEXP1")]
495pub type Apbspppcexp1 = crate::Reg<apbspppcexp1::Apbspppcexp1Spec>;
496#[doc = "Expansion 1 Secure Unprivileged Access APB slave Peripheral Protection Control"]
497pub mod apbspppcexp1;
498#[doc = "APBSPPPCEXP2 (rw) register accessor: Expansion 2 Secure Unprivileged Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppcexp2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppcexp2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppcexp2`]
499module"]
500#[doc(alias = "APBSPPPCEXP2")]
501pub type Apbspppcexp2 = crate::Reg<apbspppcexp2::Apbspppcexp2Spec>;
502#[doc = "Expansion 2 Secure Unprivileged Access APB slave Peripheral Protection Control"]
503pub mod apbspppcexp2;
504#[doc = "APBSPPPCEXP3 (rw) register accessor: Expansion 3 Secure Unprivileged Access APB slave Peripheral Protection Control\n\nYou can [`read`](crate::Reg::read) this register and get [`apbspppcexp3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`apbspppcexp3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@apbspppcexp3`]
505module"]
506#[doc(alias = "APBSPPPCEXP3")]
507pub type Apbspppcexp3 = crate::Reg<apbspppcexp3::Apbspppcexp3Spec>;
508#[doc = "Expansion 3 Secure Unprivileged Access APB slave Peripheral Protection Control"]
509pub mod apbspppcexp3;
510#[doc = "NSMSCEXP (r) register accessor: Expansion MSC Non-Secure Configuration\n\nYou can [`read`](crate::Reg::read) this register and get [`nsmscexp::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@nsmscexp`]
511module"]
512#[doc(alias = "NSMSCEXP")]
513pub type Nsmscexp = crate::Reg<nsmscexp::NsmscexpSpec>;
514#[doc = "Expansion MSC Non-Secure Configuration"]
515pub mod nsmscexp;
516#[doc = "PID4 (r) register accessor: Peripheral ID 4\n\nYou can [`read`](crate::Reg::read) this register and get [`pid4::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pid4`]
517module"]
518#[doc(alias = "PID4")]
519pub type Pid4 = crate::Reg<pid4::Pid4Spec>;
520#[doc = "Peripheral ID 4"]
521pub mod pid4;
522#[doc = "PID0 (r) register accessor: Peripheral ID 0\n\nYou can [`read`](crate::Reg::read) this register and get [`pid0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pid0`]
523module"]
524#[doc(alias = "PID0")]
525pub type Pid0 = crate::Reg<pid0::Pid0Spec>;
526#[doc = "Peripheral ID 0"]
527pub mod pid0;
528#[doc = "PID1 (r) register accessor: Peripheral ID 1\n\nYou can [`read`](crate::Reg::read) this register and get [`pid1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pid1`]
529module"]
530#[doc(alias = "PID1")]
531pub type Pid1 = crate::Reg<pid1::Pid1Spec>;
532#[doc = "Peripheral ID 1"]
533pub mod pid1;
534#[doc = "PID2 (r) register accessor: Peripheral ID 2\n\nYou can [`read`](crate::Reg::read) this register and get [`pid2::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pid2`]
535module"]
536#[doc(alias = "PID2")]
537pub type Pid2 = crate::Reg<pid2::Pid2Spec>;
538#[doc = "Peripheral ID 2"]
539pub mod pid2;
540#[doc = "PID3 (r) register accessor: Peripheral ID 3\n\nYou can [`read`](crate::Reg::read) this register and get [`pid3::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pid3`]
541module"]
542#[doc(alias = "PID3")]
543pub type Pid3 = crate::Reg<pid3::Pid3Spec>;
544#[doc = "Peripheral ID 3"]
545pub mod pid3;
546#[doc = "CIDR0 (r) register accessor: Component ID 0\n\nYou can [`read`](crate::Reg::read) this register and get [`cidr0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cidr0`]
547module"]
548#[doc(alias = "CIDR0")]
549pub type Cidr0 = crate::Reg<cidr0::Cidr0Spec>;
550#[doc = "Component ID 0"]
551pub mod cidr0;
552#[doc = "CIDR1 (r) register accessor: Component ID 1\n\nYou can [`read`](crate::Reg::read) this register and get [`cidr1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cidr1`]
553module"]
554#[doc(alias = "CIDR1")]
555pub type Cidr1 = crate::Reg<cidr1::Cidr1Spec>;
556#[doc = "Component ID 1"]
557pub mod cidr1;
558#[doc = "CIDR2 (r) register accessor: Component ID 2\n\nYou can [`read`](crate::Reg::read) this register and get [`cidr2::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cidr2`]
559module"]
560#[doc(alias = "CIDR2")]
561pub type Cidr2 = crate::Reg<cidr2::Cidr2Spec>;
562#[doc = "Component ID 2"]
563pub mod cidr2;
564#[doc = "CIDR3 (r) register accessor: Component ID 3\n\nYou can [`read`](crate::Reg::read) this register and get [`cidr3::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cidr3`]
565module"]
566#[doc(alias = "CIDR3")]
567pub type Cidr3 = crate::Reg<cidr3::Cidr3Spec>;
568#[doc = "Component ID 3"]
569pub mod cidr3;