1#[doc = "CSU registers"]
2#[repr(C)]
3pub struct RegisterBlock {
4#[doc = "Config security level register"]
5pub CSL: [crate::RWRegister<u32>; 32usize],
6 _reserved0: [u8; 0x0180],
7#[doc = "HP0 register"]
8pub HP0: crate::RWRegister<u32>,
9 _reserved1: [u8; 0x14],
10#[doc = "Secure access register"]
11pub SA: crate::RWRegister<u32>,
12 _reserved2: [u8; 0x013c],
13#[doc = "HPCONTROL0 register"]
14pub HPCONTROL0: crate::RWRegister<u32>,
15}
16#[doc = "Config security level register"]
17pub mod CSL {
18#[doc = "Secure user read access control for the second slave"]
19pub mod SUR_S2 {
20pub const offset: u32 = 0;
21pub const mask: u32 = 0x01 << offset;
22pub mod R {}
23pub mod W {}
24pub mod RW {
25#[doc = "The secure user read access is disabled for the second slave."]
26pub const SUR_S2_0: u32 = 0;
27#[doc = "The secure user read access is enabled for the second slave."]
28pub const SUR_S2_1: u32 = 0x01;
29 }
30 }
31#[doc = "Secure supervisor read access control for the second slave"]
32pub mod SSR_S2 {
33pub const offset: u32 = 1;
34pub const mask: u32 = 0x01 << offset;
35pub mod R {}
36pub mod W {}
37pub mod RW {
38#[doc = "The secure supervisor read access is disabled for the second slave."]
39pub const SSR_S2_0: u32 = 0;
40#[doc = "The secure supervisor read access is enabled for the second slave."]
41pub const SSR_S2_1: u32 = 0x01;
42 }
43 }
44#[doc = "Non-secure user read access control for the second slave"]
45pub mod NUR_S2 {
46pub const offset: u32 = 2;
47pub const mask: u32 = 0x01 << offset;
48pub mod R {}
49pub mod W {}
50pub mod RW {
51#[doc = "The non-secure user read access is disabled for the second slave."]
52pub const NUR_S2_0: u32 = 0;
53#[doc = "The non-secure user read access is enabled for the second slave."]
54pub const NUR_S2_1: u32 = 0x01;
55 }
56 }
57#[doc = "Non-secure supervisor read access control for the second slave"]
58pub mod NSR_S2 {
59pub const offset: u32 = 3;
60pub const mask: u32 = 0x01 << offset;
61pub mod R {}
62pub mod W {}
63pub mod RW {
64#[doc = "The non-secure supervisor read access is disabled for the second slave."]
65pub const NSR_S2_0: u32 = 0;
66#[doc = "The non-secure supervisor read access is enabled for the second slave."]
67pub const NSR_S2_1: u32 = 0x01;
68 }
69 }
70#[doc = "Secure user write access control for the second slave"]
71pub mod SUW_S2 {
72pub const offset: u32 = 4;
73pub const mask: u32 = 0x01 << offset;
74pub mod R {}
75pub mod W {}
76pub mod RW {
77#[doc = "The secure user write access is disabled for the second slave."]
78pub const SUW_S2_0: u32 = 0;
79#[doc = "The secure user write access is enabled for the second slave."]
80pub const SUW_S2_1: u32 = 0x01;
81 }
82 }
83#[doc = "Secure supervisor write access control for the second slave"]
84pub mod SSW_S2 {
85pub const offset: u32 = 5;
86pub const mask: u32 = 0x01 << offset;
87pub mod R {}
88pub mod W {}
89pub mod RW {
90#[doc = "The secure supervisor write access is disabled for the second slave."]
91pub const SSW_S2_0: u32 = 0;
92#[doc = "The secure supervisor write access is enabled for the second slave."]
93pub const SSW_S2_1: u32 = 0x01;
94 }
95 }
96#[doc = "Non-secure user write access control for the second slave"]
97pub mod NUW_S2 {
98pub const offset: u32 = 6;
99pub const mask: u32 = 0x01 << offset;
100pub mod R {}
101pub mod W {}
102pub mod RW {
103#[doc = "The non-secure user write access is disabled for the second slave."]
104pub const NUW_S2_0: u32 = 0;
105#[doc = "The non-secure user write access is enabled for the second slave."]
106pub const NUW_S2_1: u32 = 0x01;
107 }
108 }
109#[doc = "Non-secure supervisor write access control for the second slave"]
110pub mod NSW_S2 {
111pub const offset: u32 = 7;
112pub const mask: u32 = 0x01 << offset;
113pub mod R {}
114pub mod W {}
115pub mod RW {
116#[doc = "The non-secure supervisor write access is disabled for the second slave."]
117pub const NSW_S2_0: u32 = 0;
118#[doc = "The non-secure supervisor write access is enabled for the second slave."]
119pub const NSW_S2_1: u32 = 0x01;
120 }
121 }
122#[doc = "The lock bit corresponding to the second slave. It is written by the secure software."]
123pub mod LOCK_S2 {
124pub const offset: u32 = 8;
125pub const mask: u32 = 0x01 << offset;
126pub mod R {}
127pub mod W {}
128pub mod RW {
129#[doc = "Not locked. Bits 7-0 can be written by the software."]
130pub const LOCK_S2_0: u32 = 0;
131#[doc = "Bits 7-0 are locked and cannot be written by the software"]
132pub const LOCK_S2_1: u32 = 0x01;
133 }
134 }
135#[doc = "Secure user read access control for the first slave"]
136pub mod SUR_S1 {
137pub const offset: u32 = 16;
138pub const mask: u32 = 0x01 << offset;
139pub mod R {}
140pub mod W {}
141pub mod RW {
142#[doc = "The secure user read access is disabled for the first slave."]
143pub const SUR_S1_0: u32 = 0;
144#[doc = "The secure user read access is enabled for the first slave."]
145pub const SUR_S1_1: u32 = 0x01;
146 }
147 }
148#[doc = "Secure supervisor read access control for the first slave"]
149pub mod SSR_S1 {
150pub const offset: u32 = 17;
151pub const mask: u32 = 0x01 << offset;
152pub mod R {}
153pub mod W {}
154pub mod RW {
155#[doc = "The secure supervisor read access is disabled for the first slave."]
156pub const SSR_S1_0: u32 = 0;
157#[doc = "The secure supervisor read access is enabled for the first slave."]
158pub const SSR_S1_1: u32 = 0x01;
159 }
160 }
161#[doc = "Non-secure user read access control for the first slave"]
162pub mod NUR_S1 {
163pub const offset: u32 = 18;
164pub const mask: u32 = 0x01 << offset;
165pub mod R {}
166pub mod W {}
167pub mod RW {
168#[doc = "The non-secure user read access is disabled for the first slave."]
169pub const NUR_S1_0: u32 = 0;
170#[doc = "The non-secure user read access is enabled for the first slave."]
171pub const NUR_S1_1: u32 = 0x01;
172 }
173 }
174#[doc = "Non-secure supervisor read access control for the first slave"]
175pub mod NSR_S1 {
176pub const offset: u32 = 19;
177pub const mask: u32 = 0x01 << offset;
178pub mod R {}
179pub mod W {}
180pub mod RW {
181#[doc = "The non-secure supervisor read access is disabled for the first slave."]
182pub const NSR_S1_0: u32 = 0;
183#[doc = "The non-secure supervisor read access is enabled for the first slave."]
184pub const NSR_S1_1: u32 = 0x01;
185 }
186 }
187#[doc = "Secure user write access control for the first slave"]
188pub mod SUW_S1 {
189pub const offset: u32 = 20;
190pub const mask: u32 = 0x01 << offset;
191pub mod R {}
192pub mod W {}
193pub mod RW {
194#[doc = "The secure user write access is disabled for the first slave."]
195pub const SUW_S1_0: u32 = 0;
196#[doc = "The secure user write access is enabled for the first slave."]
197pub const SUW_S1_1: u32 = 0x01;
198 }
199 }
200#[doc = "Secure supervisor write access control for the first slave"]
201pub mod SSW_S1 {
202pub const offset: u32 = 21;
203pub const mask: u32 = 0x01 << offset;
204pub mod R {}
205pub mod W {}
206pub mod RW {
207#[doc = "The secure supervisor write access is disabled for the first slave."]
208pub const SSW_S1_0: u32 = 0;
209#[doc = "The secure supervisor write access is enabled for the first slave."]
210pub const SSW_S1_1: u32 = 0x01;
211 }
212 }
213#[doc = "Non-secure user write access control for the first slave"]
214pub mod NUW_S1 {
215pub const offset: u32 = 22;
216pub const mask: u32 = 0x01 << offset;
217pub mod R {}
218pub mod W {}
219pub mod RW {
220#[doc = "The non-secure user write access is disabled for the first slave."]
221pub const NUW_S1_0: u32 = 0;
222#[doc = "The non-secure user write access is enabled for the first slave."]
223pub const NUW_S1_1: u32 = 0x01;
224 }
225 }
226#[doc = "Non-secure supervisor write access control for the first slave"]
227pub mod NSW_S1 {
228pub const offset: u32 = 23;
229pub const mask: u32 = 0x01 << offset;
230pub mod R {}
231pub mod W {}
232pub mod RW {
233#[doc = "The non-secure supervisor write access is disabled for the first slave."]
234pub const NSW_S1_0: u32 = 0;
235#[doc = "The non-secure supervisor write access is enabled for the first slave"]
236pub const NSW_S1_1: u32 = 0x01;
237 }
238 }
239#[doc = "The lock bit corresponding to the first slave. It is written by the secure software."]
240pub mod LOCK_S1 {
241pub const offset: u32 = 24;
242pub const mask: u32 = 0x01 << offset;
243pub mod R {}
244pub mod W {}
245pub mod RW {
246#[doc = "Not locked. The bits 16-23 can be written by the software."]
247pub const LOCK_S1_0: u32 = 0;
248#[doc = "The bits 16-23 are locked and can't be written by the software."]
249pub const LOCK_S1_1: u32 = 0x01;
250 }
251 }
252}
253#[doc = "HP0 register"]
254pub mod HP0 {
255#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the eDMA"]
256pub mod HP_DMA {
257pub const offset: u32 = 2;
258pub const mask: u32 = 0x01 << offset;
259pub mod R {}
260pub mod W {}
261pub mod RW {
262#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
263pub const HP_DMA_0: u32 = 0;
264#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
265pub const HP_DMA_1: u32 = 0x01;
266 }
267 }
268#[doc = "Lock bit set by the TZ software for the eDMA"]
269pub mod L_DMA {
270pub const offset: u32 = 3;
271pub const mask: u32 = 0x01 << offset;
272pub mod R {}
273pub mod W {}
274pub mod RW {
275#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
276pub const L_DMA_0: u32 = 0;
277#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
278pub const L_DMA_1: u32 = 0x01;
279 }
280 }
281#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the LCDIF"]
282pub mod HP_LCDIF {
283pub const offset: u32 = 4;
284pub const mask: u32 = 0x01 << offset;
285pub mod R {}
286pub mod W {}
287pub mod RW {
288#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
289pub const HP_LCDIF_0: u32 = 0;
290#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
291pub const HP_LCDIF_1: u32 = 0x01;
292 }
293 }
294#[doc = "Lock bit set by the TZ software for the LCDIF"]
295pub mod L_LCDIF {
296pub const offset: u32 = 5;
297pub const mask: u32 = 0x01 << offset;
298pub mod R {}
299pub mod W {}
300pub mod RW {
301#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
302pub const L_LCDIF_0: u32 = 0;
303#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
304pub const L_LCDIF_1: u32 = 0x01;
305 }
306 }
307#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the CSI"]
308pub mod HP_CSI {
309pub const offset: u32 = 6;
310pub const mask: u32 = 0x01 << offset;
311pub mod R {}
312pub mod W {}
313pub mod RW {
314#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
315pub const HP_CSI_0: u32 = 0;
316#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
317pub const HP_CSI_1: u32 = 0x01;
318 }
319 }
320#[doc = "Lock bit set by the TZ software for the CSI"]
321pub mod L_CSI {
322pub const offset: u32 = 7;
323pub const mask: u32 = 0x01 << offset;
324pub mod R {}
325pub mod W {}
326pub mod RW {
327#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
328pub const L_CSI_0: u32 = 0;
329#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
330pub const L_CSI_1: u32 = 0x01;
331 }
332 }
333#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the PXP"]
334pub mod HP_PXP {
335pub const offset: u32 = 8;
336pub const mask: u32 = 0x01 << offset;
337pub mod R {}
338pub mod W {}
339pub mod RW {
340#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
341pub const HP_PXP_0: u32 = 0;
342#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
343pub const HP_PXP_1: u32 = 0x01;
344 }
345 }
346#[doc = "Lock bit set by the TZ software for the PXP"]
347pub mod L_PXP {
348pub const offset: u32 = 9;
349pub const mask: u32 = 0x01 << offset;
350pub mod R {}
351pub mod W {}
352pub mod RW {
353#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
354pub const L_PXP_0: u32 = 0;
355#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
356pub const L_PXP_1: u32 = 0x01;
357 }
358 }
359#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the DCP"]
360pub mod HP_DCP {
361pub const offset: u32 = 10;
362pub const mask: u32 = 0x01 << offset;
363pub mod R {}
364pub mod W {}
365pub mod RW {
366#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
367pub const HP_DCP_0: u32 = 0;
368#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
369pub const HP_DCP_1: u32 = 0x01;
370 }
371 }
372#[doc = "Lock bit set by the TZ software for the DCP"]
373pub mod L_DCP {
374pub const offset: u32 = 11;
375pub const mask: u32 = 0x01 << offset;
376pub mod R {}
377pub mod W {}
378pub mod RW {
379#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
380pub const L_DCP_0: u32 = 0;
381#[doc = "Lock-the adjacent (next lower) bit cannot be written by the software."]
382pub const L_DCP_1: u32 = 0x01;
383 }
384 }
385#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the ENET"]
386pub mod HP_ENET {
387pub const offset: u32 = 14;
388pub const mask: u32 = 0x01 << offset;
389pub mod R {}
390pub mod W {}
391pub mod RW {
392#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
393pub const HP_ENET_0: u32 = 0;
394#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
395pub const HP_ENET_1: u32 = 0x01;
396 }
397 }
398#[doc = "Lock bit set by the TZ software for the ENET"]
399pub mod L_ENET {
400pub const offset: u32 = 15;
401pub const mask: u32 = 0x01 << offset;
402pub mod R {}
403pub mod W {}
404pub mod RW {
405#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
406pub const L_ENET_0: u32 = 0;
407#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
408pub const L_ENET_1: u32 = 0x01;
409 }
410 }
411#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the USDHC1"]
412pub mod HP_USDHC1 {
413pub const offset: u32 = 16;
414pub const mask: u32 = 0x01 << offset;
415pub mod R {}
416pub mod W {}
417pub mod RW {
418#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
419pub const HP_USDHC1_0: u32 = 0;
420#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
421pub const HP_USDHC1_1: u32 = 0x01;
422 }
423 }
424#[doc = "Lock bit set by the TZ software for the USDHC1"]
425pub mod L_USDHC1 {
426pub const offset: u32 = 17;
427pub const mask: u32 = 0x01 << offset;
428pub mod R {}
429pub mod W {}
430pub mod RW {
431#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
432pub const L_USDHC1_0: u32 = 0;
433#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
434pub const L_USDHC1_1: u32 = 0x01;
435 }
436 }
437#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the USDHC2"]
438pub mod HP_USDHC2 {
439pub const offset: u32 = 18;
440pub const mask: u32 = 0x01 << offset;
441pub mod R {}
442pub mod W {}
443pub mod RW {
444#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
445pub const HP_USDHC2_0: u32 = 0;
446#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
447pub const HP_USDHC2_1: u32 = 0x01;
448 }
449 }
450#[doc = "Lock bit set by the TZ software for the USDHC2"]
451pub mod L_USDHC2 {
452pub const offset: u32 = 19;
453pub const mask: u32 = 0x01 << offset;
454pub mod R {}
455pub mod W {}
456pub mod RW {
457#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
458pub const L_USDHC2_0: u32 = 0;
459#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
460pub const L_USDHC2_1: u32 = 0x01;
461 }
462 }
463#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the TPSMP"]
464pub mod HP_TPSMP {
465pub const offset: u32 = 20;
466pub const mask: u32 = 0x01 << offset;
467pub mod R {}
468pub mod W {}
469pub mod RW {
470#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
471pub const HP_TPSMP_0: u32 = 0;
472#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
473pub const HP_TPSMP_1: u32 = 0x01;
474 }
475 }
476#[doc = "Lock bit set by the TZ software for the TPSMP"]
477pub mod L_TPSMP {
478pub const offset: u32 = 21;
479pub const mask: u32 = 0x01 << offset;
480pub mod R {}
481pub mod W {}
482pub mod RW {
483#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
484pub const L_TPSMP_0: u32 = 0;
485#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
486pub const L_TPSMP_1: u32 = 0x01;
487 }
488 }
489#[doc = "Determines whether the register value of the corresponding HP field is passed as the hprot\\[1\\] of the USB"]
490pub mod HP_USB {
491pub const offset: u32 = 22;
492pub const mask: u32 = 0x01 << offset;
493pub mod R {}
494pub mod W {}
495pub mod RW {
496#[doc = "The hprot1 input signal value is routed to the csu_hprot1 output for the corresponding master."]
497pub const HP_USB_0: u32 = 0;
498#[doc = "The HP register bit is routed to the csu_hprot1 output for the corresponding master."]
499pub const HP_USB_1: u32 = 0x01;
500 }
501 }
502#[doc = "Lock bit set by the TZ software for the USB"]
503pub mod L_USB {
504pub const offset: u32 = 23;
505pub const mask: u32 = 0x01 << offset;
506pub mod R {}
507pub mod W {}
508pub mod RW {
509#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
510pub const L_USB_0: u32 = 0;
511#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
512pub const L_USB_1: u32 = 0x01;
513 }
514 }
515}
516#[doc = "Secure access register"]
517pub mod SA {
518#[doc = "Non-secure access policy indicator bit"]
519pub mod NSA_DMA {
520pub const offset: u32 = 2;
521pub const mask: u32 = 0x01 << offset;
522pub mod R {}
523pub mod W {}
524pub mod RW {
525#[doc = "Secure access for the corresponding type-1 master"]
526pub const NSA_DMA_0: u32 = 0;
527#[doc = "Non-secure access for the corresponding type-1 master"]
528pub const NSA_DMA_1: u32 = 0x01;
529 }
530 }
531#[doc = "Lock bit set by the TZ software for the eDMA"]
532pub mod L_DMA {
533pub const offset: u32 = 3;
534pub const mask: u32 = 0x01 << offset;
535pub mod R {}
536pub mod W {}
537pub mod RW {
538#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
539pub const L_DMA_0: u32 = 0;
540#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
541pub const L_DMA_1: u32 = 0x01;
542 }
543 }
544#[doc = "Non-secure access policy indicator bit"]
545pub mod NSA_LCDIF {
546pub const offset: u32 = 4;
547pub const mask: u32 = 0x01 << offset;
548pub mod R {}
549pub mod W {}
550pub mod RW {
551#[doc = "Secure access for the corresponding type-1 master"]
552pub const NSA_LCDIF_0: u32 = 0;
553#[doc = "Non-secure access for the corresponding type-1 master"]
554pub const NSA_LCDIF_1: u32 = 0x01;
555 }
556 }
557#[doc = "Lock bit set by the TZ software for the LCDIF"]
558pub mod L_LCDIF {
559pub const offset: u32 = 5;
560pub const mask: u32 = 0x01 << offset;
561pub mod R {}
562pub mod W {}
563pub mod RW {
564#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
565pub const L_LCDIF_0: u32 = 0;
566#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
567pub const L_LCDIF_1: u32 = 0x01;
568 }
569 }
570#[doc = "Non-secure access policy indicator bit"]
571pub mod NSA_CSI {
572pub const offset: u32 = 6;
573pub const mask: u32 = 0x01 << offset;
574pub mod R {}
575pub mod W {}
576pub mod RW {
577#[doc = "Secure access for the corresponding type-1 master"]
578pub const NSA_CSI_0: u32 = 0;
579#[doc = "Non-secure access for the corresponding type-1 master"]
580pub const NSA_CSI_1: u32 = 0x01;
581 }
582 }
583#[doc = "Lock bit set by the TZ software for the CSI"]
584pub mod L_CSI {
585pub const offset: u32 = 7;
586pub const mask: u32 = 0x01 << offset;
587pub mod R {}
588pub mod W {}
589pub mod RW {
590#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
591pub const L_CSI_0: u32 = 0;
592#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
593pub const L_CSI_1: u32 = 0x01;
594 }
595 }
596#[doc = "Non-Secure Access Policy indicator bit"]
597pub mod NSA_PXP {
598pub const offset: u32 = 8;
599pub const mask: u32 = 0x01 << offset;
600pub mod R {}
601pub mod W {}
602pub mod RW {
603#[doc = "Secure access for the corresponding type-1 master"]
604pub const NSA_PXP_0: u32 = 0;
605#[doc = "Non-secure access for the corresponding type-1 master"]
606pub const NSA_PXP_1: u32 = 0x01;
607 }
608 }
609#[doc = "Lock bit set by the TZ software for the PXP"]
610pub mod L_PXP {
611pub const offset: u32 = 9;
612pub const mask: u32 = 0x01 << offset;
613pub mod R {}
614pub mod W {}
615pub mod RW {
616#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
617pub const L_PXP_0: u32 = 0;
618#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
619pub const L_PXP_1: u32 = 0x01;
620 }
621 }
622#[doc = "Non-secure access policy indicator bit"]
623pub mod NSA_DCP {
624pub const offset: u32 = 10;
625pub const mask: u32 = 0x01 << offset;
626pub mod R {}
627pub mod W {}
628pub mod RW {
629#[doc = "Secure access for the corresponding type-1 master"]
630pub const NSA_DCP_0: u32 = 0;
631#[doc = "Non-secure access for the corresponding type-1 master"]
632pub const NSA_DCP_1: u32 = 0x01;
633 }
634 }
635#[doc = "Lock bit set by the TZ software for the DCP"]
636pub mod L_DCP {
637pub const offset: u32 = 11;
638pub const mask: u32 = 0x01 << offset;
639pub mod R {}
640pub mod W {}
641pub mod RW {
642#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
643pub const L_DCP_0: u32 = 0;
644#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
645pub const L_DCP_1: u32 = 0x01;
646 }
647 }
648#[doc = "Non-secure access policy indicator bit"]
649pub mod NSA_ENET {
650pub const offset: u32 = 14;
651pub const mask: u32 = 0x01 << offset;
652pub mod R {}
653pub mod W {}
654pub mod RW {
655#[doc = "Secure access for the corresponding type-1 master"]
656pub const NSA_ENET_0: u32 = 0;
657#[doc = "Non-secure access for the corresponding type-1 master"]
658pub const NSA_ENET_1: u32 = 0x01;
659 }
660 }
661#[doc = "Lock bit set by the TZ software for the ENET1 and ENET2"]
662pub mod L_ENET {
663pub const offset: u32 = 15;
664pub const mask: u32 = 0x01 << offset;
665pub mod R {}
666pub mod W {}
667pub mod RW {
668#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
669pub const L_ENET_0: u32 = 0;
670#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
671pub const L_ENET_1: u32 = 0x01;
672 }
673 }
674#[doc = "Non-secure access policy indicator bit"]
675pub mod NSA_USDHC1 {
676pub const offset: u32 = 16;
677pub const mask: u32 = 0x01 << offset;
678pub mod R {}
679pub mod W {}
680pub mod RW {
681#[doc = "Secure access for the corresponding type-1 master"]
682pub const NSA_USDHC1_0: u32 = 0;
683#[doc = "Non-secure access for the corresponding type-1 master"]
684pub const NSA_USDHC1_1: u32 = 0x01;
685 }
686 }
687#[doc = "Lock bit set by the TZ software for the USDHC1"]
688pub mod L_USDHC1 {
689pub const offset: u32 = 17;
690pub const mask: u32 = 0x01 << offset;
691pub mod R {}
692pub mod W {}
693pub mod RW {
694#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
695pub const L_USDHC1_0: u32 = 0;
696#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
697pub const L_USDHC1_1: u32 = 0x01;
698 }
699 }
700#[doc = "Non-secure access policy indicator bit"]
701pub mod NSA_USDHC2 {
702pub const offset: u32 = 18;
703pub const mask: u32 = 0x01 << offset;
704pub mod R {}
705pub mod W {}
706pub mod RW {
707#[doc = "Secure access for the corresponding type-1 master"]
708pub const NSA_USDHC2_0: u32 = 0;
709#[doc = "Non-secure access for the corresponding type-1 master"]
710pub const NSA_USDHC2_1: u32 = 0x01;
711 }
712 }
713#[doc = "Lock bit set by the TZ software for the USDHC2"]
714pub mod L_USDHC2 {
715pub const offset: u32 = 19;
716pub const mask: u32 = 0x01 << offset;
717pub mod R {}
718pub mod W {}
719pub mod RW {
720#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
721pub const L_USDHC2_0: u32 = 0;
722#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
723pub const L_USDHC2_1: u32 = 0x01;
724 }
725 }
726#[doc = "Non-secure access policy indicator bit"]
727pub mod NSA_TPSMP {
728pub const offset: u32 = 20;
729pub const mask: u32 = 0x01 << offset;
730pub mod R {}
731pub mod W {}
732pub mod RW {
733#[doc = "Secure access for the corresponding type-1 master"]
734pub const NSA_TPSMP_0: u32 = 0;
735#[doc = "Non-secure access for the corresponding type-1 master"]
736pub const NSA_TPSMP_1: u32 = 0x01;
737 }
738 }
739#[doc = "Lock bit set by the TZ software for the TPSMP"]
740pub mod L_TPSMP {
741pub const offset: u32 = 21;
742pub const mask: u32 = 0x01 << offset;
743pub mod R {}
744pub mod W {}
745pub mod RW {
746#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
747pub const L_TPSMP_0: u32 = 0;
748#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
749pub const L_TPSMP_1: u32 = 0x01;
750 }
751 }
752#[doc = "Non-secure access policy indicator bit"]
753pub mod NSA_USB {
754pub const offset: u32 = 22;
755pub const mask: u32 = 0x01 << offset;
756pub mod R {}
757pub mod W {}
758pub mod RW {
759#[doc = "Secure access for the corresponding type-1 master"]
760pub const NSA_USB_0: u32 = 0;
761#[doc = "Non-secure access for the corresponding type-1 master"]
762pub const NSA_USB_1: u32 = 0x01;
763 }
764 }
765#[doc = "Lock bit set by the TZ software for the USB"]
766pub mod L_USB {
767pub const offset: u32 = 23;
768pub const mask: u32 = 0x01 << offset;
769pub mod R {}
770pub mod W {}
771pub mod RW {
772#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
773pub const L_USB_0: u32 = 0;
774#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
775pub const L_USB_1: u32 = 0x01;
776 }
777 }
778}
779#[doc = "HPCONTROL0 register"]
780pub mod HPCONTROL0 {
781#[doc = "Indicates the privilege/user mode for the eDMA"]
782pub mod HPC_DMA {
783pub const offset: u32 = 2;
784pub const mask: u32 = 0x01 << offset;
785pub mod R {}
786pub mod W {}
787pub mod RW {
788#[doc = "User mode for the corresponding master"]
789pub const HPC_DMA_0: u32 = 0;
790#[doc = "Supervisor mode for the corresponding master"]
791pub const HPC_DMA_1: u32 = 0x01;
792 }
793 }
794#[doc = "Lock bit set by the TZ software for the eDMA"]
795pub mod L_DMA {
796pub const offset: u32 = 3;
797pub const mask: u32 = 0x01 << offset;
798pub mod R {}
799pub mod W {}
800pub mod RW {
801#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
802pub const L_DMA_0: u32 = 0;
803#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
804pub const L_DMA_1: u32 = 0x01;
805 }
806 }
807#[doc = "Indicates the privilege/user mode for the LCDIF"]
808pub mod HPC_LCDIF {
809pub const offset: u32 = 4;
810pub const mask: u32 = 0x01 << offset;
811pub mod R {}
812pub mod W {}
813pub mod RW {
814#[doc = "User mode for the corresponding master"]
815pub const HPC_LCDIF_0: u32 = 0;
816#[doc = "Supervisor mode for the corresponding master"]
817pub const HPC_LCDIF_1: u32 = 0x01;
818 }
819 }
820#[doc = "Lock bit set by the TZ software for the LCDIF"]
821pub mod L_LCDIF {
822pub const offset: u32 = 5;
823pub const mask: u32 = 0x01 << offset;
824pub mod R {}
825pub mod W {}
826pub mod RW {
827#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
828pub const L_LCDIF_0: u32 = 0;
829#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
830pub const L_LCDIF_1: u32 = 0x01;
831 }
832 }
833#[doc = "Indicates the privilege/user mode for the CSI"]
834pub mod HPC_CSI {
835pub const offset: u32 = 6;
836pub const mask: u32 = 0x01 << offset;
837pub mod R {}
838pub mod W {}
839pub mod RW {
840#[doc = "User mode for the corresponding master"]
841pub const HPC_CSI_0: u32 = 0;
842#[doc = "Supervisor mode for the corresponding master"]
843pub const HPC_CSI_1: u32 = 0x01;
844 }
845 }
846#[doc = "Lock bit set by the TZ software for the CSI"]
847pub mod L_CSI {
848pub const offset: u32 = 7;
849pub const mask: u32 = 0x01 << offset;
850pub mod R {}
851pub mod W {}
852pub mod RW {
853#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
854pub const L_CSI_0: u32 = 0;
855#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
856pub const L_CSI_1: u32 = 0x01;
857 }
858 }
859#[doc = "Indicates the privilege/user mode for the PXP"]
860pub mod HPC_PXP {
861pub const offset: u32 = 8;
862pub const mask: u32 = 0x01 << offset;
863pub mod R {}
864pub mod W {}
865pub mod RW {
866#[doc = "User mode for the corresponding master"]
867pub const HPC_PXP_0: u32 = 0;
868#[doc = "Supervisor mode for the corresponding master"]
869pub const HPC_PXP_1: u32 = 0x01;
870 }
871 }
872#[doc = "Lock bit set by the TZ software for the PXP"]
873pub mod L_PXP {
874pub const offset: u32 = 9;
875pub const mask: u32 = 0x01 << offset;
876pub mod R {}
877pub mod W {}
878pub mod RW {
879#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
880pub const L_PXP_0: u32 = 0;
881#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
882pub const L_PXP_1: u32 = 0x01;
883 }
884 }
885#[doc = "Indicates the privilege/user mode for the DCP"]
886pub mod HPC_DCP {
887pub const offset: u32 = 10;
888pub const mask: u32 = 0x01 << offset;
889pub mod R {}
890pub mod W {}
891pub mod RW {
892#[doc = "User mode for the corresponding master"]
893pub const HPC_DCP_0: u32 = 0;
894#[doc = "Supervisor mode for the corresponding master"]
895pub const HPC_DCP_1: u32 = 0x01;
896 }
897 }
898#[doc = "Lock bit set by the TZ software for the DCP"]
899pub mod L_DCP {
900pub const offset: u32 = 11;
901pub const mask: u32 = 0x01 << offset;
902pub mod R {}
903pub mod W {}
904pub mod RW {
905#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
906pub const L_DCP_0: u32 = 0;
907#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
908pub const L_DCP_1: u32 = 0x01;
909 }
910 }
911#[doc = "Indicates the privilege/user mode for the ENET"]
912pub mod HPC_ENET {
913pub const offset: u32 = 14;
914pub const mask: u32 = 0x01 << offset;
915pub mod R {}
916pub mod W {}
917pub mod RW {
918#[doc = "User mode for the corresponding master"]
919pub const HPC_ENET_0: u32 = 0;
920#[doc = "Supervisor mode for the corresponding master"]
921pub const HPC_ENET_1: u32 = 0x01;
922 }
923 }
924#[doc = "Lock bit set by the TZ software for the ENET"]
925pub mod L_ENET {
926pub const offset: u32 = 15;
927pub const mask: u32 = 0x01 << offset;
928pub mod R {}
929pub mod W {}
930pub mod RW {
931#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
932pub const L_ENET_0: u32 = 0;
933#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
934pub const L_ENET_1: u32 = 0x01;
935 }
936 }
937#[doc = "Indicates the privilege/user mode for the USDHC1"]
938pub mod HPC_USDHC1 {
939pub const offset: u32 = 16;
940pub const mask: u32 = 0x01 << offset;
941pub mod R {}
942pub mod W {}
943pub mod RW {
944#[doc = "User mode for the corresponding master"]
945pub const HPC_USDHC1_0: u32 = 0;
946#[doc = "Supervisor mode for the corresponding master"]
947pub const HPC_USDHC1_1: u32 = 0x01;
948 }
949 }
950#[doc = "Lock bit set by the TZ software for the USDHC1"]
951pub mod L_USDHC1 {
952pub const offset: u32 = 17;
953pub const mask: u32 = 0x01 << offset;
954pub mod R {}
955pub mod W {}
956pub mod RW {
957#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
958pub const L_USDHC1_0: u32 = 0;
959#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
960pub const L_USDHC1_1: u32 = 0x01;
961 }
962 }
963#[doc = "Indicates the privilege/user mode for the USDHC2"]
964pub mod HPC_USDHC2 {
965pub const offset: u32 = 18;
966pub const mask: u32 = 0x01 << offset;
967pub mod R {}
968pub mod W {}
969pub mod RW {
970#[doc = "User mode for the corresponding master"]
971pub const HPC_USDHC2_0: u32 = 0;
972#[doc = "Supervisor mode for the corresponding master"]
973pub const HPC_USDHC2_1: u32 = 0x01;
974 }
975 }
976#[doc = "Lock bit set by the TZ software for the USDHC2."]
977pub mod L_USDHC2 {
978pub const offset: u32 = 19;
979pub const mask: u32 = 0x01 << offset;
980pub mod R {}
981pub mod W {}
982pub mod RW {
983#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
984pub const L_USDHC2_0: u32 = 0;
985#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
986pub const L_USDHC2_1: u32 = 0x01;
987 }
988 }
989#[doc = "Indicates the privilege/user mode for the TPSMP"]
990pub mod HPC_TPSMP {
991pub const offset: u32 = 20;
992pub const mask: u32 = 0x01 << offset;
993pub mod R {}
994pub mod W {}
995pub mod RW {
996#[doc = "User mode for the corresponding master"]
997pub const HPC_TPSMP_0: u32 = 0;
998#[doc = "Supervisor mode for the corresponding master"]
999pub const HPC_TPSMP_1: u32 = 0x01;
1000 }
1001 }
1002#[doc = "Lock bit set by the TZ software for the TPSMP."]
1003pub mod L_TPSMP {
1004pub const offset: u32 = 21;
1005pub const mask: u32 = 0x01 << offset;
1006pub mod R {}
1007pub mod W {}
1008pub mod RW {
1009#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
1010pub const L_TPSMP_0: u32 = 0;
1011#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
1012pub const L_TPSMP_1: u32 = 0x01;
1013 }
1014 }
1015#[doc = "Indicates the privilege/user mode for the USB"]
1016pub mod HPC_USB {
1017pub const offset: u32 = 22;
1018pub const mask: u32 = 0x01 << offset;
1019pub mod R {}
1020pub mod W {}
1021pub mod RW {
1022#[doc = "User mode for the corresponding master"]
1023pub const HPC_USB_0: u32 = 0;
1024#[doc = "Supervisor mode for the corresponding master"]
1025pub const HPC_USB_1: u32 = 0x01;
1026 }
1027 }
1028#[doc = "Lock bit set by the TZ software for the USB."]
1029pub mod L_USB {
1030pub const offset: u32 = 23;
1031pub const mask: u32 = 0x01 << offset;
1032pub mod R {}
1033pub mod W {}
1034pub mod RW {
1035#[doc = "No lock-the adjacent (next lower) bit can be written by the software."]
1036pub const L_USB_0: u32 = 0;
1037#[doc = "Lock-the adjacent (next lower) bit can't be written by the software."]
1038pub const L_USB_1: u32 = 0x01;
1039 }
1040 }
1041}