Skip to main content

ra4m2_pac/
cpscu.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.30.00, with svd2pac 0.6.1 on Sun, 15 Mar 2026 07:07:12 +0000
19
20#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"CPU System Security Control Unit"]
28unsafe impl ::core::marker::Send for super::Cpscu {}
29unsafe impl ::core::marker::Sync for super::Cpscu {}
30impl super::Cpscu {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "SRAM Security Attribution Register"]
38    #[inline(always)]
39    pub const fn sramsar(
40        &self,
41    ) -> &'static crate::common::Reg<self::Sramsar_SPEC, crate::common::RW> {
42        unsafe {
43            crate::common::Reg::<self::Sramsar_SPEC, crate::common::RW>::from_ptr(
44                self._svd2pac_as_ptr().add(16usize),
45            )
46        }
47    }
48
49    #[doc = "Standby RAM memory Security Attribution Register"]
50    #[inline(always)]
51    pub const fn stbramsar(
52        &self,
53    ) -> &'static crate::common::Reg<self::Stbramsar_SPEC, crate::common::RW> {
54        unsafe {
55            crate::common::Reg::<self::Stbramsar_SPEC, crate::common::RW>::from_ptr(
56                self._svd2pac_as_ptr().add(20usize),
57            )
58        }
59    }
60
61    #[doc = "DTC Controller Security Attribution Register"]
62    #[inline(always)]
63    pub const fn dtcsar(
64        &self,
65    ) -> &'static crate::common::Reg<self::Dtcsar_SPEC, crate::common::RW> {
66        unsafe {
67            crate::common::Reg::<self::Dtcsar_SPEC, crate::common::RW>::from_ptr(
68                self._svd2pac_as_ptr().add(48usize),
69            )
70        }
71    }
72
73    #[doc = "DMAC Controller Security Attribution Register"]
74    #[inline(always)]
75    pub const fn dmacsar(
76        &self,
77    ) -> &'static crate::common::Reg<self::Dmacsar_SPEC, crate::common::RW> {
78        unsafe {
79            crate::common::Reg::<self::Dmacsar_SPEC, crate::common::RW>::from_ptr(
80                self._svd2pac_as_ptr().add(52usize),
81            )
82        }
83    }
84
85    #[doc = "Interrupt Controller Unit Security Attribution Register A"]
86    #[inline(always)]
87    pub const fn icusara(
88        &self,
89    ) -> &'static crate::common::Reg<self::Icusara_SPEC, crate::common::RW> {
90        unsafe {
91            crate::common::Reg::<self::Icusara_SPEC, crate::common::RW>::from_ptr(
92                self._svd2pac_as_ptr().add(64usize),
93            )
94        }
95    }
96
97    #[doc = "Interrupt Controller Unit Security Attribution Register B"]
98    #[inline(always)]
99    pub const fn icusarb(
100        &self,
101    ) -> &'static crate::common::Reg<self::Icusarb_SPEC, crate::common::RW> {
102        unsafe {
103            crate::common::Reg::<self::Icusarb_SPEC, crate::common::RW>::from_ptr(
104                self._svd2pac_as_ptr().add(68usize),
105            )
106        }
107    }
108
109    #[doc = "Interrupt Controller Unit Security Attribution Register C"]
110    #[inline(always)]
111    pub const fn icusarc(
112        &self,
113    ) -> &'static crate::common::Reg<self::Icusarc_SPEC, crate::common::RW> {
114        unsafe {
115            crate::common::Reg::<self::Icusarc_SPEC, crate::common::RW>::from_ptr(
116                self._svd2pac_as_ptr().add(72usize),
117            )
118        }
119    }
120
121    #[doc = "Interrupt Controller Unit Security Attribution Register D"]
122    #[inline(always)]
123    pub const fn icusard(
124        &self,
125    ) -> &'static crate::common::Reg<self::Icusard_SPEC, crate::common::RW> {
126        unsafe {
127            crate::common::Reg::<self::Icusard_SPEC, crate::common::RW>::from_ptr(
128                self._svd2pac_as_ptr().add(76usize),
129            )
130        }
131    }
132
133    #[doc = "Interrupt Controller Unit Security Attribution Register F"]
134    #[inline(always)]
135    pub const fn icusarf(
136        &self,
137    ) -> &'static crate::common::Reg<self::Icusarf_SPEC, crate::common::RW> {
138        unsafe {
139            crate::common::Reg::<self::Icusarf_SPEC, crate::common::RW>::from_ptr(
140                self._svd2pac_as_ptr().add(84usize),
141            )
142        }
143    }
144
145    #[doc = "Interrupt Controller Unit Security Attribution Register G"]
146    #[inline(always)]
147    pub const fn icusarg(
148        &self,
149    ) -> &'static crate::common::Reg<self::Icusarg_SPEC, crate::common::RW> {
150        unsafe {
151            crate::common::Reg::<self::Icusarg_SPEC, crate::common::RW>::from_ptr(
152                self._svd2pac_as_ptr().add(112usize),
153            )
154        }
155    }
156
157    #[doc = "Interrupt Controller Unit Security Attribution Register H"]
158    #[inline(always)]
159    pub const fn icusarh(
160        &self,
161    ) -> &'static crate::common::Reg<self::Icusarh_SPEC, crate::common::RW> {
162        unsafe {
163            crate::common::Reg::<self::Icusarh_SPEC, crate::common::RW>::from_ptr(
164                self._svd2pac_as_ptr().add(116usize),
165            )
166        }
167    }
168
169    #[doc = "Interrupt Controller Unit Security Attribution Register I"]
170    #[inline(always)]
171    pub const fn icusari(
172        &self,
173    ) -> &'static crate::common::Reg<self::Icusari_SPEC, crate::common::RW> {
174        unsafe {
175            crate::common::Reg::<self::Icusari_SPEC, crate::common::RW>::from_ptr(
176                self._svd2pac_as_ptr().add(120usize),
177            )
178        }
179    }
180
181    #[doc = "BUS Security Attribution Register A"]
182    #[inline(always)]
183    pub const fn bussara(
184        &self,
185    ) -> &'static crate::common::Reg<self::Bussara_SPEC, crate::common::RW> {
186        unsafe {
187            crate::common::Reg::<self::Bussara_SPEC, crate::common::RW>::from_ptr(
188                self._svd2pac_as_ptr().add(256usize),
189            )
190        }
191    }
192
193    #[doc = "BUS Security Attribution Register B"]
194    #[inline(always)]
195    pub const fn bussarb(
196        &self,
197    ) -> &'static crate::common::Reg<self::Bussarb_SPEC, crate::common::RW> {
198        unsafe {
199            crate::common::Reg::<self::Bussarb_SPEC, crate::common::RW>::from_ptr(
200                self._svd2pac_as_ptr().add(260usize),
201            )
202        }
203    }
204
205    #[doc = "Master Memory Protection Unit Security Attribution Register A"]
206    #[inline(always)]
207    pub const fn mmpusara(
208        &self,
209    ) -> &'static crate::common::Reg<self::Mmpusara_SPEC, crate::common::RW> {
210        unsafe {
211            crate::common::Reg::<self::Mmpusara_SPEC, crate::common::RW>::from_ptr(
212                self._svd2pac_as_ptr().add(304usize),
213            )
214        }
215    }
216
217    #[doc = "Master Memory Protection Unit Security Attribution Register B"]
218    #[inline(always)]
219    pub const fn mmpusarb(
220        &self,
221    ) -> &'static crate::common::Reg<self::Mmpusarb_SPEC, crate::common::RW> {
222        unsafe {
223            crate::common::Reg::<self::Mmpusarb_SPEC, crate::common::RW>::from_ptr(
224                self._svd2pac_as_ptr().add(308usize),
225            )
226        }
227    }
228
229    #[doc = "TrustZone Filter Security Attribution Register"]
230    #[inline(always)]
231    pub const fn tzfsar(
232        &self,
233    ) -> &'static crate::common::Reg<self::Tzfsar_SPEC, crate::common::RW> {
234        unsafe {
235            crate::common::Reg::<self::Tzfsar_SPEC, crate::common::RW>::from_ptr(
236                self._svd2pac_as_ptr().add(384usize),
237            )
238        }
239    }
240
241    #[doc = "CPU Debug Security Attribution Register"]
242    #[inline(always)]
243    pub const fn cpudsar(
244        &self,
245    ) -> &'static crate::common::Reg<self::Cpudsar_SPEC, crate::common::RW> {
246        unsafe {
247            crate::common::Reg::<self::Cpudsar_SPEC, crate::common::RW>::from_ptr(
248                self._svd2pac_as_ptr().add(432usize),
249            )
250        }
251    }
252}
253#[doc(hidden)]
254#[derive(Copy, Clone, Eq, PartialEq)]
255pub struct Sramsar_SPEC;
256impl crate::sealed::RegSpec for Sramsar_SPEC {
257    type DataType = u32;
258}
259
260#[doc = "SRAM Security Attribution Register"]
261pub type Sramsar = crate::RegValueT<Sramsar_SPEC>;
262
263impl Sramsar {
264    #[doc = "Security attributes of registers for SRAM Protection"]
265    #[inline(always)]
266    pub fn sramsa0(
267        self,
268    ) -> crate::common::RegisterField<
269        0,
270        0x1,
271        1,
272        0,
273        sramsar::Sramsa0,
274        sramsar::Sramsa0,
275        Sramsar_SPEC,
276        crate::common::RW,
277    > {
278        crate::common::RegisterField::<
279            0,
280            0x1,
281            1,
282            0,
283            sramsar::Sramsa0,
284            sramsar::Sramsa0,
285            Sramsar_SPEC,
286            crate::common::RW,
287        >::from_register(self, 0)
288    }
289
290    #[doc = "Security attributes of registers for SRAM Protection 2"]
291    #[inline(always)]
292    pub fn sramsa1(
293        self,
294    ) -> crate::common::RegisterField<
295        1,
296        0x1,
297        1,
298        0,
299        sramsar::Sramsa1,
300        sramsar::Sramsa1,
301        Sramsar_SPEC,
302        crate::common::RW,
303    > {
304        crate::common::RegisterField::<
305            1,
306            0x1,
307            1,
308            0,
309            sramsar::Sramsa1,
310            sramsar::Sramsa1,
311            Sramsar_SPEC,
312            crate::common::RW,
313        >::from_register(self, 0)
314    }
315
316    #[doc = "Security attributes of registers for ECC Relation"]
317    #[inline(always)]
318    pub fn sramsa2(
319        self,
320    ) -> crate::common::RegisterField<
321        2,
322        0x1,
323        1,
324        0,
325        sramsar::Sramsa2,
326        sramsar::Sramsa2,
327        Sramsar_SPEC,
328        crate::common::RW,
329    > {
330        crate::common::RegisterField::<
331            2,
332            0x1,
333            1,
334            0,
335            sramsar::Sramsa2,
336            sramsar::Sramsa2,
337            Sramsar_SPEC,
338            crate::common::RW,
339        >::from_register(self, 0)
340    }
341}
342impl ::core::default::Default for Sramsar {
343    #[inline(always)]
344    fn default() -> Sramsar {
345        <crate::RegValueT<Sramsar_SPEC> as RegisterValue<_>>::new(4294967295)
346    }
347}
348pub mod sramsar {
349
350    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
351    pub struct Sramsa0_SPEC;
352    pub type Sramsa0 = crate::EnumBitfieldStruct<u8, Sramsa0_SPEC>;
353    impl Sramsa0 {
354        #[doc = "Secure"]
355        pub const _0: Self = Self::new(0);
356
357        #[doc = "Non-Secure"]
358        pub const _1: Self = Self::new(1);
359    }
360    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
361    pub struct Sramsa1_SPEC;
362    pub type Sramsa1 = crate::EnumBitfieldStruct<u8, Sramsa1_SPEC>;
363    impl Sramsa1 {
364        #[doc = "Secure"]
365        pub const _0: Self = Self::new(0);
366
367        #[doc = "Non-Secure"]
368        pub const _1: Self = Self::new(1);
369    }
370    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
371    pub struct Sramsa2_SPEC;
372    pub type Sramsa2 = crate::EnumBitfieldStruct<u8, Sramsa2_SPEC>;
373    impl Sramsa2 {
374        #[doc = "Secure"]
375        pub const _0: Self = Self::new(0);
376
377        #[doc = "Non-Secure"]
378        pub const _1: Self = Self::new(1);
379    }
380}
381#[doc(hidden)]
382#[derive(Copy, Clone, Eq, PartialEq)]
383pub struct Stbramsar_SPEC;
384impl crate::sealed::RegSpec for Stbramsar_SPEC {
385    type DataType = u32;
386}
387
388#[doc = "Standby RAM memory Security Attribution Register"]
389pub type Stbramsar = crate::RegValueT<Stbramsar_SPEC>;
390
391impl Stbramsar {
392    #[doc = "Security attributes of each region for Standby RAM"]
393    #[inline(always)]
394    pub fn nsbstbr(
395        self,
396    ) -> crate::common::RegisterField<
397        0,
398        0xf,
399        1,
400        0,
401        stbramsar::Nsbstbr,
402        stbramsar::Nsbstbr,
403        Stbramsar_SPEC,
404        crate::common::RW,
405    > {
406        crate::common::RegisterField::<
407            0,
408            0xf,
409            1,
410            0,
411            stbramsar::Nsbstbr,
412            stbramsar::Nsbstbr,
413            Stbramsar_SPEC,
414            crate::common::RW,
415        >::from_register(self, 0)
416    }
417}
418impl ::core::default::Default for Stbramsar {
419    #[inline(always)]
420    fn default() -> Stbramsar {
421        <crate::RegValueT<Stbramsar_SPEC> as RegisterValue<_>>::new(4294967280)
422    }
423}
424pub mod stbramsar {
425
426    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
427    pub struct Nsbstbr_SPEC;
428    pub type Nsbstbr = crate::EnumBitfieldStruct<u8, Nsbstbr_SPEC>;
429    impl Nsbstbr {
430        #[doc = "Region7-0 are all Secure."]
431        pub const _0_X_0: Self = Self::new(0);
432
433        #[doc = "Region7 is Non-secure. Region6-0 are Secure"]
434        pub const _0_X_1: Self = Self::new(1);
435
436        #[doc = "Region7-6 are Non-secure. Region5-0 are Secure."]
437        pub const _0_X_2: Self = Self::new(2);
438
439        #[doc = "Region7-5 are Non-secure. Region4-0 are Secure."]
440        pub const _0_X_3: Self = Self::new(3);
441
442        #[doc = "Region7-4 are Non-secure. Region 3-0 are Secure."]
443        pub const _0_X_4: Self = Self::new(4);
444
445        #[doc = "Region7-3 are Non-secure. Region 2-0 are Secure."]
446        pub const _0_X_5: Self = Self::new(5);
447
448        #[doc = "Region7-2 are Non-secure. Region 1-0 are Secure."]
449        pub const _0_X_6: Self = Self::new(6);
450
451        #[doc = "Region7-1 are Non-Secure. Region0 is Secure."]
452        pub const _0_X_7: Self = Self::new(7);
453    }
454}
455#[doc(hidden)]
456#[derive(Copy, Clone, Eq, PartialEq)]
457pub struct Dtcsar_SPEC;
458impl crate::sealed::RegSpec for Dtcsar_SPEC {
459    type DataType = u32;
460}
461
462#[doc = "DTC Controller Security Attribution Register"]
463pub type Dtcsar = crate::RegValueT<Dtcsar_SPEC>;
464
465impl Dtcsar {
466    #[doc = "DTC Security Attribution"]
467    #[inline(always)]
468    pub fn dtcstsa(
469        self,
470    ) -> crate::common::RegisterField<
471        0,
472        0x1,
473        1,
474        0,
475        dtcsar::Dtcstsa,
476        dtcsar::Dtcstsa,
477        Dtcsar_SPEC,
478        crate::common::RW,
479    > {
480        crate::common::RegisterField::<
481            0,
482            0x1,
483            1,
484            0,
485            dtcsar::Dtcstsa,
486            dtcsar::Dtcstsa,
487            Dtcsar_SPEC,
488            crate::common::RW,
489        >::from_register(self, 0)
490    }
491}
492impl ::core::default::Default for Dtcsar {
493    #[inline(always)]
494    fn default() -> Dtcsar {
495        <crate::RegValueT<Dtcsar_SPEC> as RegisterValue<_>>::new(4294967295)
496    }
497}
498pub mod dtcsar {
499
500    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
501    pub struct Dtcstsa_SPEC;
502    pub type Dtcstsa = crate::EnumBitfieldStruct<u8, Dtcstsa_SPEC>;
503    impl Dtcstsa {
504        #[doc = "Secure."]
505        pub const _0: Self = Self::new(0);
506
507        #[doc = "Non-Secure."]
508        pub const _1: Self = Self::new(1);
509    }
510}
511#[doc(hidden)]
512#[derive(Copy, Clone, Eq, PartialEq)]
513pub struct Dmacsar_SPEC;
514impl crate::sealed::RegSpec for Dmacsar_SPEC {
515    type DataType = u32;
516}
517
518#[doc = "DMAC Controller Security Attribution Register"]
519pub type Dmacsar = crate::RegValueT<Dmacsar_SPEC>;
520
521impl Dmacsar {
522    #[doc = "DMAST Security Attribution"]
523    #[inline(always)]
524    pub fn dmastsa(
525        self,
526    ) -> crate::common::RegisterField<
527        0,
528        0x1,
529        1,
530        0,
531        dmacsar::Dmastsa,
532        dmacsar::Dmastsa,
533        Dmacsar_SPEC,
534        crate::common::RW,
535    > {
536        crate::common::RegisterField::<
537            0,
538            0x1,
539            1,
540            0,
541            dmacsar::Dmastsa,
542            dmacsar::Dmastsa,
543            Dmacsar_SPEC,
544            crate::common::RW,
545        >::from_register(self, 0)
546    }
547}
548impl ::core::default::Default for Dmacsar {
549    #[inline(always)]
550    fn default() -> Dmacsar {
551        <crate::RegValueT<Dmacsar_SPEC> as RegisterValue<_>>::new(4294967295)
552    }
553}
554pub mod dmacsar {
555
556    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
557    pub struct Dmastsa_SPEC;
558    pub type Dmastsa = crate::EnumBitfieldStruct<u8, Dmastsa_SPEC>;
559    impl Dmastsa {
560        #[doc = "Secure"]
561        pub const _0: Self = Self::new(0);
562
563        #[doc = "Non-secure"]
564        pub const _1: Self = Self::new(1);
565    }
566}
567#[doc(hidden)]
568#[derive(Copy, Clone, Eq, PartialEq)]
569pub struct Icusara_SPEC;
570impl crate::sealed::RegSpec for Icusara_SPEC {
571    type DataType = u32;
572}
573
574#[doc = "Interrupt Controller Unit Security Attribution Register A"]
575pub type Icusara = crate::RegValueT<Icusara_SPEC>;
576
577impl Icusara {
578    #[doc = "Security attributes of registers for the IRQCRn register"]
579    #[inline(always)]
580    pub fn sairqcr00(
581        self,
582    ) -> crate::common::RegisterField<
583        0,
584        0x1,
585        1,
586        0,
587        icusara::Sairqcr00,
588        icusara::Sairqcr00,
589        Icusara_SPEC,
590        crate::common::RW,
591    > {
592        crate::common::RegisterField::<
593            0,
594            0x1,
595            1,
596            0,
597            icusara::Sairqcr00,
598            icusara::Sairqcr00,
599            Icusara_SPEC,
600            crate::common::RW,
601        >::from_register(self, 0)
602    }
603
604    #[doc = "Security attributes of registers for the IRQCRn register"]
605    #[inline(always)]
606    pub fn sairqcr01(
607        self,
608    ) -> crate::common::RegisterField<
609        1,
610        0x1,
611        1,
612        0,
613        icusara::Sairqcr01,
614        icusara::Sairqcr01,
615        Icusara_SPEC,
616        crate::common::RW,
617    > {
618        crate::common::RegisterField::<
619            1,
620            0x1,
621            1,
622            0,
623            icusara::Sairqcr01,
624            icusara::Sairqcr01,
625            Icusara_SPEC,
626            crate::common::RW,
627        >::from_register(self, 0)
628    }
629
630    #[doc = "Security attributes of registers for the IRQCRn register"]
631    #[inline(always)]
632    pub fn sairqcr02(
633        self,
634    ) -> crate::common::RegisterField<
635        2,
636        0x1,
637        1,
638        0,
639        icusara::Sairqcr02,
640        icusara::Sairqcr02,
641        Icusara_SPEC,
642        crate::common::RW,
643    > {
644        crate::common::RegisterField::<
645            2,
646            0x1,
647            1,
648            0,
649            icusara::Sairqcr02,
650            icusara::Sairqcr02,
651            Icusara_SPEC,
652            crate::common::RW,
653        >::from_register(self, 0)
654    }
655
656    #[doc = "Security attributes of registers for the IRQCRn register"]
657    #[inline(always)]
658    pub fn sairqcr03(
659        self,
660    ) -> crate::common::RegisterField<
661        3,
662        0x1,
663        1,
664        0,
665        icusara::Sairqcr03,
666        icusara::Sairqcr03,
667        Icusara_SPEC,
668        crate::common::RW,
669    > {
670        crate::common::RegisterField::<
671            3,
672            0x1,
673            1,
674            0,
675            icusara::Sairqcr03,
676            icusara::Sairqcr03,
677            Icusara_SPEC,
678            crate::common::RW,
679        >::from_register(self, 0)
680    }
681
682    #[doc = "Security attributes of registers for the IRQCRn register"]
683    #[inline(always)]
684    pub fn sairqcr04(
685        self,
686    ) -> crate::common::RegisterField<
687        4,
688        0x1,
689        1,
690        0,
691        icusara::Sairqcr04,
692        icusara::Sairqcr04,
693        Icusara_SPEC,
694        crate::common::RW,
695    > {
696        crate::common::RegisterField::<
697            4,
698            0x1,
699            1,
700            0,
701            icusara::Sairqcr04,
702            icusara::Sairqcr04,
703            Icusara_SPEC,
704            crate::common::RW,
705        >::from_register(self, 0)
706    }
707
708    #[doc = "Security attributes of registers for the IRQCRn register"]
709    #[inline(always)]
710    pub fn sairqcr05(
711        self,
712    ) -> crate::common::RegisterField<
713        5,
714        0x1,
715        1,
716        0,
717        icusara::Sairqcr05,
718        icusara::Sairqcr05,
719        Icusara_SPEC,
720        crate::common::RW,
721    > {
722        crate::common::RegisterField::<
723            5,
724            0x1,
725            1,
726            0,
727            icusara::Sairqcr05,
728            icusara::Sairqcr05,
729            Icusara_SPEC,
730            crate::common::RW,
731        >::from_register(self, 0)
732    }
733
734    #[doc = "Security attributes of registers for the IRQCRn register"]
735    #[inline(always)]
736    pub fn sairqcr06(
737        self,
738    ) -> crate::common::RegisterField<
739        6,
740        0x1,
741        1,
742        0,
743        icusara::Sairqcr06,
744        icusara::Sairqcr06,
745        Icusara_SPEC,
746        crate::common::RW,
747    > {
748        crate::common::RegisterField::<
749            6,
750            0x1,
751            1,
752            0,
753            icusara::Sairqcr06,
754            icusara::Sairqcr06,
755            Icusara_SPEC,
756            crate::common::RW,
757        >::from_register(self, 0)
758    }
759
760    #[doc = "Security attributes of registers for the IRQCRn register"]
761    #[inline(always)]
762    pub fn sairqcr07(
763        self,
764    ) -> crate::common::RegisterField<
765        7,
766        0x1,
767        1,
768        0,
769        icusara::Sairqcr07,
770        icusara::Sairqcr07,
771        Icusara_SPEC,
772        crate::common::RW,
773    > {
774        crate::common::RegisterField::<
775            7,
776            0x1,
777            1,
778            0,
779            icusara::Sairqcr07,
780            icusara::Sairqcr07,
781            Icusara_SPEC,
782            crate::common::RW,
783        >::from_register(self, 0)
784    }
785
786    #[doc = "Security attributes of registers for the IRQCRn register"]
787    #[inline(always)]
788    pub fn sairqcr08(
789        self,
790    ) -> crate::common::RegisterField<
791        8,
792        0x1,
793        1,
794        0,
795        icusara::Sairqcr08,
796        icusara::Sairqcr08,
797        Icusara_SPEC,
798        crate::common::RW,
799    > {
800        crate::common::RegisterField::<
801            8,
802            0x1,
803            1,
804            0,
805            icusara::Sairqcr08,
806            icusara::Sairqcr08,
807            Icusara_SPEC,
808            crate::common::RW,
809        >::from_register(self, 0)
810    }
811
812    #[doc = "Security attributes of registers for the IRQCRn register"]
813    #[inline(always)]
814    pub fn sairqcr09(
815        self,
816    ) -> crate::common::RegisterField<
817        9,
818        0x1,
819        1,
820        0,
821        icusara::Sairqcr09,
822        icusara::Sairqcr09,
823        Icusara_SPEC,
824        crate::common::RW,
825    > {
826        crate::common::RegisterField::<
827            9,
828            0x1,
829            1,
830            0,
831            icusara::Sairqcr09,
832            icusara::Sairqcr09,
833            Icusara_SPEC,
834            crate::common::RW,
835        >::from_register(self, 0)
836    }
837
838    #[doc = "Security attributes of registers for the IRQCRn register"]
839    #[inline(always)]
840    pub fn sairqcr10(
841        self,
842    ) -> crate::common::RegisterField<
843        10,
844        0x1,
845        1,
846        0,
847        icusara::Sairqcr10,
848        icusara::Sairqcr10,
849        Icusara_SPEC,
850        crate::common::RW,
851    > {
852        crate::common::RegisterField::<
853            10,
854            0x1,
855            1,
856            0,
857            icusara::Sairqcr10,
858            icusara::Sairqcr10,
859            Icusara_SPEC,
860            crate::common::RW,
861        >::from_register(self, 0)
862    }
863
864    #[doc = "Security attributes of registers for the IRQCRn register"]
865    #[inline(always)]
866    pub fn sairqcr11(
867        self,
868    ) -> crate::common::RegisterField<
869        11,
870        0x1,
871        1,
872        0,
873        icusara::Sairqcr11,
874        icusara::Sairqcr11,
875        Icusara_SPEC,
876        crate::common::RW,
877    > {
878        crate::common::RegisterField::<
879            11,
880            0x1,
881            1,
882            0,
883            icusara::Sairqcr11,
884            icusara::Sairqcr11,
885            Icusara_SPEC,
886            crate::common::RW,
887        >::from_register(self, 0)
888    }
889
890    #[doc = "Security attributes of registers for the IRQCRn register"]
891    #[inline(always)]
892    pub fn sairqcr12(
893        self,
894    ) -> crate::common::RegisterField<
895        12,
896        0x1,
897        1,
898        0,
899        icusara::Sairqcr12,
900        icusara::Sairqcr12,
901        Icusara_SPEC,
902        crate::common::RW,
903    > {
904        crate::common::RegisterField::<
905            12,
906            0x1,
907            1,
908            0,
909            icusara::Sairqcr12,
910            icusara::Sairqcr12,
911            Icusara_SPEC,
912            crate::common::RW,
913        >::from_register(self, 0)
914    }
915
916    #[doc = "Security attributes of registers for the IRQCRn register"]
917    #[inline(always)]
918    pub fn sairqcr13(
919        self,
920    ) -> crate::common::RegisterField<
921        13,
922        0x1,
923        1,
924        0,
925        icusara::Sairqcr13,
926        icusara::Sairqcr13,
927        Icusara_SPEC,
928        crate::common::RW,
929    > {
930        crate::common::RegisterField::<
931            13,
932            0x1,
933            1,
934            0,
935            icusara::Sairqcr13,
936            icusara::Sairqcr13,
937            Icusara_SPEC,
938            crate::common::RW,
939        >::from_register(self, 0)
940    }
941
942    #[doc = "Security attributes of registers for the IRQCRn register"]
943    #[inline(always)]
944    pub fn sairqcr14(
945        self,
946    ) -> crate::common::RegisterField<
947        14,
948        0x1,
949        1,
950        0,
951        icusara::Sairqcr14,
952        icusara::Sairqcr14,
953        Icusara_SPEC,
954        crate::common::RW,
955    > {
956        crate::common::RegisterField::<
957            14,
958            0x1,
959            1,
960            0,
961            icusara::Sairqcr14,
962            icusara::Sairqcr14,
963            Icusara_SPEC,
964            crate::common::RW,
965        >::from_register(self, 0)
966    }
967
968    #[doc = "Security attributes of registers for the IRQCRn register"]
969    #[inline(always)]
970    pub fn sairqcr15(
971        self,
972    ) -> crate::common::RegisterField<
973        15,
974        0x1,
975        1,
976        0,
977        icusara::Sairqcr15,
978        icusara::Sairqcr15,
979        Icusara_SPEC,
980        crate::common::RW,
981    > {
982        crate::common::RegisterField::<
983            15,
984            0x1,
985            1,
986            0,
987            icusara::Sairqcr15,
988            icusara::Sairqcr15,
989            Icusara_SPEC,
990            crate::common::RW,
991        >::from_register(self, 0)
992    }
993}
994impl ::core::default::Default for Icusara {
995    #[inline(always)]
996    fn default() -> Icusara {
997        <crate::RegValueT<Icusara_SPEC> as RegisterValue<_>>::new(4294967295)
998    }
999}
1000pub mod icusara {
1001
1002    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1003    pub struct Sairqcr00_SPEC;
1004    pub type Sairqcr00 = crate::EnumBitfieldStruct<u8, Sairqcr00_SPEC>;
1005    impl Sairqcr00 {
1006        #[doc = "Secure"]
1007        pub const _0: Self = Self::new(0);
1008
1009        #[doc = "Non-secure"]
1010        pub const _1: Self = Self::new(1);
1011    }
1012    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1013    pub struct Sairqcr01_SPEC;
1014    pub type Sairqcr01 = crate::EnumBitfieldStruct<u8, Sairqcr01_SPEC>;
1015    impl Sairqcr01 {
1016        #[doc = "Secure"]
1017        pub const _0: Self = Self::new(0);
1018
1019        #[doc = "Non-secure"]
1020        pub const _1: Self = Self::new(1);
1021    }
1022    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1023    pub struct Sairqcr02_SPEC;
1024    pub type Sairqcr02 = crate::EnumBitfieldStruct<u8, Sairqcr02_SPEC>;
1025    impl Sairqcr02 {
1026        #[doc = "Secure"]
1027        pub const _0: Self = Self::new(0);
1028
1029        #[doc = "Non-secure"]
1030        pub const _1: Self = Self::new(1);
1031    }
1032    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1033    pub struct Sairqcr03_SPEC;
1034    pub type Sairqcr03 = crate::EnumBitfieldStruct<u8, Sairqcr03_SPEC>;
1035    impl Sairqcr03 {
1036        #[doc = "Secure"]
1037        pub const _0: Self = Self::new(0);
1038
1039        #[doc = "Non-secure"]
1040        pub const _1: Self = Self::new(1);
1041    }
1042    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1043    pub struct Sairqcr04_SPEC;
1044    pub type Sairqcr04 = crate::EnumBitfieldStruct<u8, Sairqcr04_SPEC>;
1045    impl Sairqcr04 {
1046        #[doc = "Secure"]
1047        pub const _0: Self = Self::new(0);
1048
1049        #[doc = "Non-secure"]
1050        pub const _1: Self = Self::new(1);
1051    }
1052    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1053    pub struct Sairqcr05_SPEC;
1054    pub type Sairqcr05 = crate::EnumBitfieldStruct<u8, Sairqcr05_SPEC>;
1055    impl Sairqcr05 {
1056        #[doc = "Secure"]
1057        pub const _0: Self = Self::new(0);
1058
1059        #[doc = "Non-secure"]
1060        pub const _1: Self = Self::new(1);
1061    }
1062    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1063    pub struct Sairqcr06_SPEC;
1064    pub type Sairqcr06 = crate::EnumBitfieldStruct<u8, Sairqcr06_SPEC>;
1065    impl Sairqcr06 {
1066        #[doc = "Secure"]
1067        pub const _0: Self = Self::new(0);
1068
1069        #[doc = "Non-secure"]
1070        pub const _1: Self = Self::new(1);
1071    }
1072    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1073    pub struct Sairqcr07_SPEC;
1074    pub type Sairqcr07 = crate::EnumBitfieldStruct<u8, Sairqcr07_SPEC>;
1075    impl Sairqcr07 {
1076        #[doc = "Secure"]
1077        pub const _0: Self = Self::new(0);
1078
1079        #[doc = "Non-secure"]
1080        pub const _1: Self = Self::new(1);
1081    }
1082    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1083    pub struct Sairqcr08_SPEC;
1084    pub type Sairqcr08 = crate::EnumBitfieldStruct<u8, Sairqcr08_SPEC>;
1085    impl Sairqcr08 {
1086        #[doc = "Secure"]
1087        pub const _0: Self = Self::new(0);
1088
1089        #[doc = "Non-secure"]
1090        pub const _1: Self = Self::new(1);
1091    }
1092    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1093    pub struct Sairqcr09_SPEC;
1094    pub type Sairqcr09 = crate::EnumBitfieldStruct<u8, Sairqcr09_SPEC>;
1095    impl Sairqcr09 {
1096        #[doc = "Secure"]
1097        pub const _0: Self = Self::new(0);
1098
1099        #[doc = "Non-secure"]
1100        pub const _1: Self = Self::new(1);
1101    }
1102    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1103    pub struct Sairqcr10_SPEC;
1104    pub type Sairqcr10 = crate::EnumBitfieldStruct<u8, Sairqcr10_SPEC>;
1105    impl Sairqcr10 {
1106        #[doc = "Secure"]
1107        pub const _0: Self = Self::new(0);
1108
1109        #[doc = "Non-secure"]
1110        pub const _1: Self = Self::new(1);
1111    }
1112    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1113    pub struct Sairqcr11_SPEC;
1114    pub type Sairqcr11 = crate::EnumBitfieldStruct<u8, Sairqcr11_SPEC>;
1115    impl Sairqcr11 {
1116        #[doc = "Secure"]
1117        pub const _0: Self = Self::new(0);
1118
1119        #[doc = "Non-secure"]
1120        pub const _1: Self = Self::new(1);
1121    }
1122    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1123    pub struct Sairqcr12_SPEC;
1124    pub type Sairqcr12 = crate::EnumBitfieldStruct<u8, Sairqcr12_SPEC>;
1125    impl Sairqcr12 {
1126        #[doc = "Secure"]
1127        pub const _0: Self = Self::new(0);
1128
1129        #[doc = "Non-secure"]
1130        pub const _1: Self = Self::new(1);
1131    }
1132    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1133    pub struct Sairqcr13_SPEC;
1134    pub type Sairqcr13 = crate::EnumBitfieldStruct<u8, Sairqcr13_SPEC>;
1135    impl Sairqcr13 {
1136        #[doc = "Secure"]
1137        pub const _0: Self = Self::new(0);
1138
1139        #[doc = "Non-secure"]
1140        pub const _1: Self = Self::new(1);
1141    }
1142    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1143    pub struct Sairqcr14_SPEC;
1144    pub type Sairqcr14 = crate::EnumBitfieldStruct<u8, Sairqcr14_SPEC>;
1145    impl Sairqcr14 {
1146        #[doc = "Secure"]
1147        pub const _0: Self = Self::new(0);
1148
1149        #[doc = "Non-secure"]
1150        pub const _1: Self = Self::new(1);
1151    }
1152    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1153    pub struct Sairqcr15_SPEC;
1154    pub type Sairqcr15 = crate::EnumBitfieldStruct<u8, Sairqcr15_SPEC>;
1155    impl Sairqcr15 {
1156        #[doc = "Secure"]
1157        pub const _0: Self = Self::new(0);
1158
1159        #[doc = "Non-secure"]
1160        pub const _1: Self = Self::new(1);
1161    }
1162}
1163#[doc(hidden)]
1164#[derive(Copy, Clone, Eq, PartialEq)]
1165pub struct Icusarb_SPEC;
1166impl crate::sealed::RegSpec for Icusarb_SPEC {
1167    type DataType = u32;
1168}
1169
1170#[doc = "Interrupt Controller Unit Security Attribution Register B"]
1171pub type Icusarb = crate::RegValueT<Icusarb_SPEC>;
1172
1173impl Icusarb {
1174    #[doc = "Security attributes of registers for nonmaskable interrupt"]
1175    #[inline(always)]
1176    pub fn sanmi(
1177        self,
1178    ) -> crate::common::RegisterField<
1179        0,
1180        0x1,
1181        1,
1182        0,
1183        icusarb::Sanmi,
1184        icusarb::Sanmi,
1185        Icusarb_SPEC,
1186        crate::common::RW,
1187    > {
1188        crate::common::RegisterField::<
1189            0,
1190            0x1,
1191            1,
1192            0,
1193            icusarb::Sanmi,
1194            icusarb::Sanmi,
1195            Icusarb_SPEC,
1196            crate::common::RW,
1197        >::from_register(self, 0)
1198    }
1199}
1200impl ::core::default::Default for Icusarb {
1201    #[inline(always)]
1202    fn default() -> Icusarb {
1203        <crate::RegValueT<Icusarb_SPEC> as RegisterValue<_>>::new(4294967295)
1204    }
1205}
1206pub mod icusarb {
1207
1208    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1209    pub struct Sanmi_SPEC;
1210    pub type Sanmi = crate::EnumBitfieldStruct<u8, Sanmi_SPEC>;
1211    impl Sanmi {
1212        #[doc = "Secure"]
1213        pub const _0: Self = Self::new(0);
1214
1215        #[doc = "Non-secure"]
1216        pub const _1: Self = Self::new(1);
1217    }
1218}
1219#[doc(hidden)]
1220#[derive(Copy, Clone, Eq, PartialEq)]
1221pub struct Icusarc_SPEC;
1222impl crate::sealed::RegSpec for Icusarc_SPEC {
1223    type DataType = u32;
1224}
1225
1226#[doc = "Interrupt Controller Unit Security Attribution Register C"]
1227pub type Icusarc = crate::RegValueT<Icusarc_SPEC>;
1228
1229impl Icusarc {
1230    #[doc = "Security attributes of registers for DMAC channel"]
1231    #[inline(always)]
1232    pub fn sadmac0(
1233        self,
1234    ) -> crate::common::RegisterField<
1235        0,
1236        0x1,
1237        1,
1238        0,
1239        icusarc::Sadmac0,
1240        icusarc::Sadmac0,
1241        Icusarc_SPEC,
1242        crate::common::RW,
1243    > {
1244        crate::common::RegisterField::<
1245            0,
1246            0x1,
1247            1,
1248            0,
1249            icusarc::Sadmac0,
1250            icusarc::Sadmac0,
1251            Icusarc_SPEC,
1252            crate::common::RW,
1253        >::from_register(self, 0)
1254    }
1255
1256    #[doc = "Security attributes of registers for DMAC channel"]
1257    #[inline(always)]
1258    pub fn sadmac1(
1259        self,
1260    ) -> crate::common::RegisterField<
1261        1,
1262        0x1,
1263        1,
1264        0,
1265        icusarc::Sadmac1,
1266        icusarc::Sadmac1,
1267        Icusarc_SPEC,
1268        crate::common::RW,
1269    > {
1270        crate::common::RegisterField::<
1271            1,
1272            0x1,
1273            1,
1274            0,
1275            icusarc::Sadmac1,
1276            icusarc::Sadmac1,
1277            Icusarc_SPEC,
1278            crate::common::RW,
1279        >::from_register(self, 0)
1280    }
1281
1282    #[doc = "Security attributes of registers for DMAC channel"]
1283    #[inline(always)]
1284    pub fn sadmac2(
1285        self,
1286    ) -> crate::common::RegisterField<
1287        2,
1288        0x1,
1289        1,
1290        0,
1291        icusarc::Sadmac2,
1292        icusarc::Sadmac2,
1293        Icusarc_SPEC,
1294        crate::common::RW,
1295    > {
1296        crate::common::RegisterField::<
1297            2,
1298            0x1,
1299            1,
1300            0,
1301            icusarc::Sadmac2,
1302            icusarc::Sadmac2,
1303            Icusarc_SPEC,
1304            crate::common::RW,
1305        >::from_register(self, 0)
1306    }
1307
1308    #[doc = "Security attributes of registers for DMAC channel"]
1309    #[inline(always)]
1310    pub fn sadmac3(
1311        self,
1312    ) -> crate::common::RegisterField<
1313        3,
1314        0x1,
1315        1,
1316        0,
1317        icusarc::Sadmac3,
1318        icusarc::Sadmac3,
1319        Icusarc_SPEC,
1320        crate::common::RW,
1321    > {
1322        crate::common::RegisterField::<
1323            3,
1324            0x1,
1325            1,
1326            0,
1327            icusarc::Sadmac3,
1328            icusarc::Sadmac3,
1329            Icusarc_SPEC,
1330            crate::common::RW,
1331        >::from_register(self, 0)
1332    }
1333
1334    #[doc = "Security attributes of registers for DMAC channel"]
1335    #[inline(always)]
1336    pub fn sadmac4(
1337        self,
1338    ) -> crate::common::RegisterField<
1339        4,
1340        0x1,
1341        1,
1342        0,
1343        icusarc::Sadmac4,
1344        icusarc::Sadmac4,
1345        Icusarc_SPEC,
1346        crate::common::RW,
1347    > {
1348        crate::common::RegisterField::<
1349            4,
1350            0x1,
1351            1,
1352            0,
1353            icusarc::Sadmac4,
1354            icusarc::Sadmac4,
1355            Icusarc_SPEC,
1356            crate::common::RW,
1357        >::from_register(self, 0)
1358    }
1359
1360    #[doc = "Security attributes of registers for DMAC channel"]
1361    #[inline(always)]
1362    pub fn sadmac5(
1363        self,
1364    ) -> crate::common::RegisterField<
1365        5,
1366        0x1,
1367        1,
1368        0,
1369        icusarc::Sadmac5,
1370        icusarc::Sadmac5,
1371        Icusarc_SPEC,
1372        crate::common::RW,
1373    > {
1374        crate::common::RegisterField::<
1375            5,
1376            0x1,
1377            1,
1378            0,
1379            icusarc::Sadmac5,
1380            icusarc::Sadmac5,
1381            Icusarc_SPEC,
1382            crate::common::RW,
1383        >::from_register(self, 0)
1384    }
1385
1386    #[doc = "Security attributes of registers for DMAC channel"]
1387    #[inline(always)]
1388    pub fn sadmac6(
1389        self,
1390    ) -> crate::common::RegisterField<
1391        6,
1392        0x1,
1393        1,
1394        0,
1395        icusarc::Sadmac6,
1396        icusarc::Sadmac6,
1397        Icusarc_SPEC,
1398        crate::common::RW,
1399    > {
1400        crate::common::RegisterField::<
1401            6,
1402            0x1,
1403            1,
1404            0,
1405            icusarc::Sadmac6,
1406            icusarc::Sadmac6,
1407            Icusarc_SPEC,
1408            crate::common::RW,
1409        >::from_register(self, 0)
1410    }
1411
1412    #[doc = "Security attributes of registers for DMAC channel"]
1413    #[inline(always)]
1414    pub fn sadmac7(
1415        self,
1416    ) -> crate::common::RegisterField<
1417        7,
1418        0x1,
1419        1,
1420        0,
1421        icusarc::Sadmac7,
1422        icusarc::Sadmac7,
1423        Icusarc_SPEC,
1424        crate::common::RW,
1425    > {
1426        crate::common::RegisterField::<
1427            7,
1428            0x1,
1429            1,
1430            0,
1431            icusarc::Sadmac7,
1432            icusarc::Sadmac7,
1433            Icusarc_SPEC,
1434            crate::common::RW,
1435        >::from_register(self, 0)
1436    }
1437}
1438impl ::core::default::Default for Icusarc {
1439    #[inline(always)]
1440    fn default() -> Icusarc {
1441        <crate::RegValueT<Icusarc_SPEC> as RegisterValue<_>>::new(4294967295)
1442    }
1443}
1444pub mod icusarc {
1445
1446    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1447    pub struct Sadmac0_SPEC;
1448    pub type Sadmac0 = crate::EnumBitfieldStruct<u8, Sadmac0_SPEC>;
1449    impl Sadmac0 {
1450        #[doc = "Secure"]
1451        pub const _0: Self = Self::new(0);
1452
1453        #[doc = "Non-secure"]
1454        pub const _1: Self = Self::new(1);
1455    }
1456    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1457    pub struct Sadmac1_SPEC;
1458    pub type Sadmac1 = crate::EnumBitfieldStruct<u8, Sadmac1_SPEC>;
1459    impl Sadmac1 {
1460        #[doc = "Secure"]
1461        pub const _0: Self = Self::new(0);
1462
1463        #[doc = "Non-secure"]
1464        pub const _1: Self = Self::new(1);
1465    }
1466    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1467    pub struct Sadmac2_SPEC;
1468    pub type Sadmac2 = crate::EnumBitfieldStruct<u8, Sadmac2_SPEC>;
1469    impl Sadmac2 {
1470        #[doc = "Secure"]
1471        pub const _0: Self = Self::new(0);
1472
1473        #[doc = "Non-secure"]
1474        pub const _1: Self = Self::new(1);
1475    }
1476    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1477    pub struct Sadmac3_SPEC;
1478    pub type Sadmac3 = crate::EnumBitfieldStruct<u8, Sadmac3_SPEC>;
1479    impl Sadmac3 {
1480        #[doc = "Secure"]
1481        pub const _0: Self = Self::new(0);
1482
1483        #[doc = "Non-secure"]
1484        pub const _1: Self = Self::new(1);
1485    }
1486    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1487    pub struct Sadmac4_SPEC;
1488    pub type Sadmac4 = crate::EnumBitfieldStruct<u8, Sadmac4_SPEC>;
1489    impl Sadmac4 {
1490        #[doc = "Secure"]
1491        pub const _0: Self = Self::new(0);
1492
1493        #[doc = "Non-secure"]
1494        pub const _1: Self = Self::new(1);
1495    }
1496    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1497    pub struct Sadmac5_SPEC;
1498    pub type Sadmac5 = crate::EnumBitfieldStruct<u8, Sadmac5_SPEC>;
1499    impl Sadmac5 {
1500        #[doc = "Secure"]
1501        pub const _0: Self = Self::new(0);
1502
1503        #[doc = "Non-secure"]
1504        pub const _1: Self = Self::new(1);
1505    }
1506    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1507    pub struct Sadmac6_SPEC;
1508    pub type Sadmac6 = crate::EnumBitfieldStruct<u8, Sadmac6_SPEC>;
1509    impl Sadmac6 {
1510        #[doc = "Secure"]
1511        pub const _0: Self = Self::new(0);
1512
1513        #[doc = "Non-secure"]
1514        pub const _1: Self = Self::new(1);
1515    }
1516    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1517    pub struct Sadmac7_SPEC;
1518    pub type Sadmac7 = crate::EnumBitfieldStruct<u8, Sadmac7_SPEC>;
1519    impl Sadmac7 {
1520        #[doc = "Secure"]
1521        pub const _0: Self = Self::new(0);
1522
1523        #[doc = "Non-secure"]
1524        pub const _1: Self = Self::new(1);
1525    }
1526}
1527#[doc(hidden)]
1528#[derive(Copy, Clone, Eq, PartialEq)]
1529pub struct Icusard_SPEC;
1530impl crate::sealed::RegSpec for Icusard_SPEC {
1531    type DataType = u32;
1532}
1533
1534#[doc = "Interrupt Controller Unit Security Attribution Register D"]
1535pub type Icusard = crate::RegValueT<Icusard_SPEC>;
1536
1537impl Icusard {
1538    #[doc = "Security attributes of registers for SELSR0"]
1539    #[inline(always)]
1540    pub fn saselsr0(
1541        self,
1542    ) -> crate::common::RegisterField<
1543        0,
1544        0x1,
1545        1,
1546        0,
1547        icusard::Saselsr0,
1548        icusard::Saselsr0,
1549        Icusard_SPEC,
1550        crate::common::RW,
1551    > {
1552        crate::common::RegisterField::<
1553            0,
1554            0x1,
1555            1,
1556            0,
1557            icusard::Saselsr0,
1558            icusard::Saselsr0,
1559            Icusard_SPEC,
1560            crate::common::RW,
1561        >::from_register(self, 0)
1562    }
1563}
1564impl ::core::default::Default for Icusard {
1565    #[inline(always)]
1566    fn default() -> Icusard {
1567        <crate::RegValueT<Icusard_SPEC> as RegisterValue<_>>::new(4294967295)
1568    }
1569}
1570pub mod icusard {
1571
1572    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1573    pub struct Saselsr0_SPEC;
1574    pub type Saselsr0 = crate::EnumBitfieldStruct<u8, Saselsr0_SPEC>;
1575    impl Saselsr0 {
1576        #[doc = "Secure"]
1577        pub const _0: Self = Self::new(0);
1578
1579        #[doc = "Non-secure"]
1580        pub const _1: Self = Self::new(1);
1581    }
1582}
1583#[doc(hidden)]
1584#[derive(Copy, Clone, Eq, PartialEq)]
1585pub struct Icusarf_SPEC;
1586impl crate::sealed::RegSpec for Icusarf_SPEC {
1587    type DataType = u32;
1588}
1589
1590#[doc = "Interrupt Controller Unit Security Attribution Register F"]
1591pub type Icusarf = crate::RegValueT<Icusarf_SPEC>;
1592
1593impl Icusarf {
1594    #[doc = "Security attributes of registers for WUPEN1.b0"]
1595    #[inline(always)]
1596    pub fn saagt3udwup(
1597        self,
1598    ) -> crate::common::RegisterField<
1599        0,
1600        0x1,
1601        1,
1602        0,
1603        icusarf::Saagt3Udwup,
1604        icusarf::Saagt3Udwup,
1605        Icusarf_SPEC,
1606        crate::common::RW,
1607    > {
1608        crate::common::RegisterField::<
1609            0,
1610            0x1,
1611            1,
1612            0,
1613            icusarf::Saagt3Udwup,
1614            icusarf::Saagt3Udwup,
1615            Icusarf_SPEC,
1616            crate::common::RW,
1617        >::from_register(self, 0)
1618    }
1619
1620    #[doc = "Security attributes of registers for WUPEN1.b1"]
1621    #[inline(always)]
1622    pub fn saagt3cawup(
1623        self,
1624    ) -> crate::common::RegisterField<
1625        1,
1626        0x1,
1627        1,
1628        0,
1629        icusarf::Saagt3Cawup,
1630        icusarf::Saagt3Cawup,
1631        Icusarf_SPEC,
1632        crate::common::RW,
1633    > {
1634        crate::common::RegisterField::<
1635            1,
1636            0x1,
1637            1,
1638            0,
1639            icusarf::Saagt3Cawup,
1640            icusarf::Saagt3Cawup,
1641            Icusarf_SPEC,
1642            crate::common::RW,
1643        >::from_register(self, 0)
1644    }
1645
1646    #[doc = "Security attributes of registers for WUPEN1.b2"]
1647    #[inline(always)]
1648    pub fn saagt3cbwup(
1649        self,
1650    ) -> crate::common::RegisterField<
1651        2,
1652        0x1,
1653        1,
1654        0,
1655        icusarf::Saagt3Cbwup,
1656        icusarf::Saagt3Cbwup,
1657        Icusarf_SPEC,
1658        crate::common::RW,
1659    > {
1660        crate::common::RegisterField::<
1661            2,
1662            0x1,
1663            1,
1664            0,
1665            icusarf::Saagt3Cbwup,
1666            icusarf::Saagt3Cbwup,
1667            Icusarf_SPEC,
1668            crate::common::RW,
1669        >::from_register(self, 0)
1670    }
1671}
1672impl ::core::default::Default for Icusarf {
1673    #[inline(always)]
1674    fn default() -> Icusarf {
1675        <crate::RegValueT<Icusarf_SPEC> as RegisterValue<_>>::new(4294967295)
1676    }
1677}
1678pub mod icusarf {
1679
1680    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1681    pub struct Saagt3Udwup_SPEC;
1682    pub type Saagt3Udwup = crate::EnumBitfieldStruct<u8, Saagt3Udwup_SPEC>;
1683    impl Saagt3Udwup {
1684        #[doc = "Secure"]
1685        pub const _0: Self = Self::new(0);
1686
1687        #[doc = "Non-secure"]
1688        pub const _1: Self = Self::new(1);
1689    }
1690    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1691    pub struct Saagt3Cawup_SPEC;
1692    pub type Saagt3Cawup = crate::EnumBitfieldStruct<u8, Saagt3Cawup_SPEC>;
1693    impl Saagt3Cawup {
1694        #[doc = "Secure"]
1695        pub const _0: Self = Self::new(0);
1696
1697        #[doc = "Non-secure"]
1698        pub const _1: Self = Self::new(1);
1699    }
1700    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1701    pub struct Saagt3Cbwup_SPEC;
1702    pub type Saagt3Cbwup = crate::EnumBitfieldStruct<u8, Saagt3Cbwup_SPEC>;
1703    impl Saagt3Cbwup {
1704        #[doc = "Secure"]
1705        pub const _0: Self = Self::new(0);
1706
1707        #[doc = "Non-secure"]
1708        pub const _1: Self = Self::new(1);
1709    }
1710}
1711#[doc(hidden)]
1712#[derive(Copy, Clone, Eq, PartialEq)]
1713pub struct Icusarg_SPEC;
1714impl crate::sealed::RegSpec for Icusarg_SPEC {
1715    type DataType = u32;
1716}
1717
1718#[doc = "Interrupt Controller Unit Security Attribution Register G"]
1719pub type Icusarg = crate::RegValueT<Icusarg_SPEC>;
1720
1721impl Icusarg {
1722    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1723    #[inline(always)]
1724    pub fn saielsr00(
1725        self,
1726    ) -> crate::common::RegisterField<
1727        0,
1728        0x1,
1729        1,
1730        0,
1731        icusarg::Saielsr00,
1732        icusarg::Saielsr00,
1733        Icusarg_SPEC,
1734        crate::common::RW,
1735    > {
1736        crate::common::RegisterField::<
1737            0,
1738            0x1,
1739            1,
1740            0,
1741            icusarg::Saielsr00,
1742            icusarg::Saielsr00,
1743            Icusarg_SPEC,
1744            crate::common::RW,
1745        >::from_register(self, 0)
1746    }
1747
1748    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1749    #[inline(always)]
1750    pub fn saielsr01(
1751        self,
1752    ) -> crate::common::RegisterField<
1753        1,
1754        0x1,
1755        1,
1756        0,
1757        icusarg::Saielsr01,
1758        icusarg::Saielsr01,
1759        Icusarg_SPEC,
1760        crate::common::RW,
1761    > {
1762        crate::common::RegisterField::<
1763            1,
1764            0x1,
1765            1,
1766            0,
1767            icusarg::Saielsr01,
1768            icusarg::Saielsr01,
1769            Icusarg_SPEC,
1770            crate::common::RW,
1771        >::from_register(self, 0)
1772    }
1773
1774    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1775    #[inline(always)]
1776    pub fn saielsr02(
1777        self,
1778    ) -> crate::common::RegisterField<
1779        2,
1780        0x1,
1781        1,
1782        0,
1783        icusarg::Saielsr02,
1784        icusarg::Saielsr02,
1785        Icusarg_SPEC,
1786        crate::common::RW,
1787    > {
1788        crate::common::RegisterField::<
1789            2,
1790            0x1,
1791            1,
1792            0,
1793            icusarg::Saielsr02,
1794            icusarg::Saielsr02,
1795            Icusarg_SPEC,
1796            crate::common::RW,
1797        >::from_register(self, 0)
1798    }
1799
1800    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1801    #[inline(always)]
1802    pub fn saielsr03(
1803        self,
1804    ) -> crate::common::RegisterField<
1805        3,
1806        0x1,
1807        1,
1808        0,
1809        icusarg::Saielsr03,
1810        icusarg::Saielsr03,
1811        Icusarg_SPEC,
1812        crate::common::RW,
1813    > {
1814        crate::common::RegisterField::<
1815            3,
1816            0x1,
1817            1,
1818            0,
1819            icusarg::Saielsr03,
1820            icusarg::Saielsr03,
1821            Icusarg_SPEC,
1822            crate::common::RW,
1823        >::from_register(self, 0)
1824    }
1825
1826    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1827    #[inline(always)]
1828    pub fn saielsr04(
1829        self,
1830    ) -> crate::common::RegisterField<
1831        4,
1832        0x1,
1833        1,
1834        0,
1835        icusarg::Saielsr04,
1836        icusarg::Saielsr04,
1837        Icusarg_SPEC,
1838        crate::common::RW,
1839    > {
1840        crate::common::RegisterField::<
1841            4,
1842            0x1,
1843            1,
1844            0,
1845            icusarg::Saielsr04,
1846            icusarg::Saielsr04,
1847            Icusarg_SPEC,
1848            crate::common::RW,
1849        >::from_register(self, 0)
1850    }
1851
1852    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1853    #[inline(always)]
1854    pub fn saielsr05(
1855        self,
1856    ) -> crate::common::RegisterField<
1857        5,
1858        0x1,
1859        1,
1860        0,
1861        icusarg::Saielsr05,
1862        icusarg::Saielsr05,
1863        Icusarg_SPEC,
1864        crate::common::RW,
1865    > {
1866        crate::common::RegisterField::<
1867            5,
1868            0x1,
1869            1,
1870            0,
1871            icusarg::Saielsr05,
1872            icusarg::Saielsr05,
1873            Icusarg_SPEC,
1874            crate::common::RW,
1875        >::from_register(self, 0)
1876    }
1877
1878    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1879    #[inline(always)]
1880    pub fn saielsr06(
1881        self,
1882    ) -> crate::common::RegisterField<
1883        6,
1884        0x1,
1885        1,
1886        0,
1887        icusarg::Saielsr06,
1888        icusarg::Saielsr06,
1889        Icusarg_SPEC,
1890        crate::common::RW,
1891    > {
1892        crate::common::RegisterField::<
1893            6,
1894            0x1,
1895            1,
1896            0,
1897            icusarg::Saielsr06,
1898            icusarg::Saielsr06,
1899            Icusarg_SPEC,
1900            crate::common::RW,
1901        >::from_register(self, 0)
1902    }
1903
1904    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1905    #[inline(always)]
1906    pub fn saielsr07(
1907        self,
1908    ) -> crate::common::RegisterField<
1909        7,
1910        0x1,
1911        1,
1912        0,
1913        icusarg::Saielsr07,
1914        icusarg::Saielsr07,
1915        Icusarg_SPEC,
1916        crate::common::RW,
1917    > {
1918        crate::common::RegisterField::<
1919            7,
1920            0x1,
1921            1,
1922            0,
1923            icusarg::Saielsr07,
1924            icusarg::Saielsr07,
1925            Icusarg_SPEC,
1926            crate::common::RW,
1927        >::from_register(self, 0)
1928    }
1929
1930    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1931    #[inline(always)]
1932    pub fn saielsr08(
1933        self,
1934    ) -> crate::common::RegisterField<
1935        8,
1936        0x1,
1937        1,
1938        0,
1939        icusarg::Saielsr08,
1940        icusarg::Saielsr08,
1941        Icusarg_SPEC,
1942        crate::common::RW,
1943    > {
1944        crate::common::RegisterField::<
1945            8,
1946            0x1,
1947            1,
1948            0,
1949            icusarg::Saielsr08,
1950            icusarg::Saielsr08,
1951            Icusarg_SPEC,
1952            crate::common::RW,
1953        >::from_register(self, 0)
1954    }
1955
1956    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1957    #[inline(always)]
1958    pub fn saielsr09(
1959        self,
1960    ) -> crate::common::RegisterField<
1961        9,
1962        0x1,
1963        1,
1964        0,
1965        icusarg::Saielsr09,
1966        icusarg::Saielsr09,
1967        Icusarg_SPEC,
1968        crate::common::RW,
1969    > {
1970        crate::common::RegisterField::<
1971            9,
1972            0x1,
1973            1,
1974            0,
1975            icusarg::Saielsr09,
1976            icusarg::Saielsr09,
1977            Icusarg_SPEC,
1978            crate::common::RW,
1979        >::from_register(self, 0)
1980    }
1981
1982    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
1983    #[inline(always)]
1984    pub fn saielsr10(
1985        self,
1986    ) -> crate::common::RegisterField<
1987        10,
1988        0x1,
1989        1,
1990        0,
1991        icusarg::Saielsr10,
1992        icusarg::Saielsr10,
1993        Icusarg_SPEC,
1994        crate::common::RW,
1995    > {
1996        crate::common::RegisterField::<
1997            10,
1998            0x1,
1999            1,
2000            0,
2001            icusarg::Saielsr10,
2002            icusarg::Saielsr10,
2003            Icusarg_SPEC,
2004            crate::common::RW,
2005        >::from_register(self, 0)
2006    }
2007
2008    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2009    #[inline(always)]
2010    pub fn saielsr11(
2011        self,
2012    ) -> crate::common::RegisterField<
2013        11,
2014        0x1,
2015        1,
2016        0,
2017        icusarg::Saielsr11,
2018        icusarg::Saielsr11,
2019        Icusarg_SPEC,
2020        crate::common::RW,
2021    > {
2022        crate::common::RegisterField::<
2023            11,
2024            0x1,
2025            1,
2026            0,
2027            icusarg::Saielsr11,
2028            icusarg::Saielsr11,
2029            Icusarg_SPEC,
2030            crate::common::RW,
2031        >::from_register(self, 0)
2032    }
2033
2034    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2035    #[inline(always)]
2036    pub fn saielsr12(
2037        self,
2038    ) -> crate::common::RegisterField<
2039        12,
2040        0x1,
2041        1,
2042        0,
2043        icusarg::Saielsr12,
2044        icusarg::Saielsr12,
2045        Icusarg_SPEC,
2046        crate::common::RW,
2047    > {
2048        crate::common::RegisterField::<
2049            12,
2050            0x1,
2051            1,
2052            0,
2053            icusarg::Saielsr12,
2054            icusarg::Saielsr12,
2055            Icusarg_SPEC,
2056            crate::common::RW,
2057        >::from_register(self, 0)
2058    }
2059
2060    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2061    #[inline(always)]
2062    pub fn saielsr13(
2063        self,
2064    ) -> crate::common::RegisterField<
2065        13,
2066        0x1,
2067        1,
2068        0,
2069        icusarg::Saielsr13,
2070        icusarg::Saielsr13,
2071        Icusarg_SPEC,
2072        crate::common::RW,
2073    > {
2074        crate::common::RegisterField::<
2075            13,
2076            0x1,
2077            1,
2078            0,
2079            icusarg::Saielsr13,
2080            icusarg::Saielsr13,
2081            Icusarg_SPEC,
2082            crate::common::RW,
2083        >::from_register(self, 0)
2084    }
2085
2086    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2087    #[inline(always)]
2088    pub fn saielsr14(
2089        self,
2090    ) -> crate::common::RegisterField<
2091        14,
2092        0x1,
2093        1,
2094        0,
2095        icusarg::Saielsr14,
2096        icusarg::Saielsr14,
2097        Icusarg_SPEC,
2098        crate::common::RW,
2099    > {
2100        crate::common::RegisterField::<
2101            14,
2102            0x1,
2103            1,
2104            0,
2105            icusarg::Saielsr14,
2106            icusarg::Saielsr14,
2107            Icusarg_SPEC,
2108            crate::common::RW,
2109        >::from_register(self, 0)
2110    }
2111
2112    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2113    #[inline(always)]
2114    pub fn saielsr15(
2115        self,
2116    ) -> crate::common::RegisterField<
2117        15,
2118        0x1,
2119        1,
2120        0,
2121        icusarg::Saielsr15,
2122        icusarg::Saielsr15,
2123        Icusarg_SPEC,
2124        crate::common::RW,
2125    > {
2126        crate::common::RegisterField::<
2127            15,
2128            0x1,
2129            1,
2130            0,
2131            icusarg::Saielsr15,
2132            icusarg::Saielsr15,
2133            Icusarg_SPEC,
2134            crate::common::RW,
2135        >::from_register(self, 0)
2136    }
2137
2138    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2139    #[inline(always)]
2140    pub fn saielsr16(
2141        self,
2142    ) -> crate::common::RegisterField<
2143        16,
2144        0x1,
2145        1,
2146        0,
2147        icusarg::Saielsr16,
2148        icusarg::Saielsr16,
2149        Icusarg_SPEC,
2150        crate::common::RW,
2151    > {
2152        crate::common::RegisterField::<
2153            16,
2154            0x1,
2155            1,
2156            0,
2157            icusarg::Saielsr16,
2158            icusarg::Saielsr16,
2159            Icusarg_SPEC,
2160            crate::common::RW,
2161        >::from_register(self, 0)
2162    }
2163
2164    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2165    #[inline(always)]
2166    pub fn saielsr17(
2167        self,
2168    ) -> crate::common::RegisterField<
2169        17,
2170        0x1,
2171        1,
2172        0,
2173        icusarg::Saielsr17,
2174        icusarg::Saielsr17,
2175        Icusarg_SPEC,
2176        crate::common::RW,
2177    > {
2178        crate::common::RegisterField::<
2179            17,
2180            0x1,
2181            1,
2182            0,
2183            icusarg::Saielsr17,
2184            icusarg::Saielsr17,
2185            Icusarg_SPEC,
2186            crate::common::RW,
2187        >::from_register(self, 0)
2188    }
2189
2190    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2191    #[inline(always)]
2192    pub fn saielsr18(
2193        self,
2194    ) -> crate::common::RegisterField<
2195        18,
2196        0x1,
2197        1,
2198        0,
2199        icusarg::Saielsr18,
2200        icusarg::Saielsr18,
2201        Icusarg_SPEC,
2202        crate::common::RW,
2203    > {
2204        crate::common::RegisterField::<
2205            18,
2206            0x1,
2207            1,
2208            0,
2209            icusarg::Saielsr18,
2210            icusarg::Saielsr18,
2211            Icusarg_SPEC,
2212            crate::common::RW,
2213        >::from_register(self, 0)
2214    }
2215
2216    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2217    #[inline(always)]
2218    pub fn saielsr19(
2219        self,
2220    ) -> crate::common::RegisterField<
2221        19,
2222        0x1,
2223        1,
2224        0,
2225        icusarg::Saielsr19,
2226        icusarg::Saielsr19,
2227        Icusarg_SPEC,
2228        crate::common::RW,
2229    > {
2230        crate::common::RegisterField::<
2231            19,
2232            0x1,
2233            1,
2234            0,
2235            icusarg::Saielsr19,
2236            icusarg::Saielsr19,
2237            Icusarg_SPEC,
2238            crate::common::RW,
2239        >::from_register(self, 0)
2240    }
2241
2242    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2243    #[inline(always)]
2244    pub fn saielsr20(
2245        self,
2246    ) -> crate::common::RegisterField<
2247        20,
2248        0x1,
2249        1,
2250        0,
2251        icusarg::Saielsr20,
2252        icusarg::Saielsr20,
2253        Icusarg_SPEC,
2254        crate::common::RW,
2255    > {
2256        crate::common::RegisterField::<
2257            20,
2258            0x1,
2259            1,
2260            0,
2261            icusarg::Saielsr20,
2262            icusarg::Saielsr20,
2263            Icusarg_SPEC,
2264            crate::common::RW,
2265        >::from_register(self, 0)
2266    }
2267
2268    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2269    #[inline(always)]
2270    pub fn saielsr21(
2271        self,
2272    ) -> crate::common::RegisterField<
2273        21,
2274        0x1,
2275        1,
2276        0,
2277        icusarg::Saielsr21,
2278        icusarg::Saielsr21,
2279        Icusarg_SPEC,
2280        crate::common::RW,
2281    > {
2282        crate::common::RegisterField::<
2283            21,
2284            0x1,
2285            1,
2286            0,
2287            icusarg::Saielsr21,
2288            icusarg::Saielsr21,
2289            Icusarg_SPEC,
2290            crate::common::RW,
2291        >::from_register(self, 0)
2292    }
2293
2294    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2295    #[inline(always)]
2296    pub fn saielsr22(
2297        self,
2298    ) -> crate::common::RegisterField<
2299        22,
2300        0x1,
2301        1,
2302        0,
2303        icusarg::Saielsr22,
2304        icusarg::Saielsr22,
2305        Icusarg_SPEC,
2306        crate::common::RW,
2307    > {
2308        crate::common::RegisterField::<
2309            22,
2310            0x1,
2311            1,
2312            0,
2313            icusarg::Saielsr22,
2314            icusarg::Saielsr22,
2315            Icusarg_SPEC,
2316            crate::common::RW,
2317        >::from_register(self, 0)
2318    }
2319
2320    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2321    #[inline(always)]
2322    pub fn saielsr23(
2323        self,
2324    ) -> crate::common::RegisterField<
2325        23,
2326        0x1,
2327        1,
2328        0,
2329        icusarg::Saielsr23,
2330        icusarg::Saielsr23,
2331        Icusarg_SPEC,
2332        crate::common::RW,
2333    > {
2334        crate::common::RegisterField::<
2335            23,
2336            0x1,
2337            1,
2338            0,
2339            icusarg::Saielsr23,
2340            icusarg::Saielsr23,
2341            Icusarg_SPEC,
2342            crate::common::RW,
2343        >::from_register(self, 0)
2344    }
2345
2346    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2347    #[inline(always)]
2348    pub fn saielsr24(
2349        self,
2350    ) -> crate::common::RegisterField<
2351        24,
2352        0x1,
2353        1,
2354        0,
2355        icusarg::Saielsr24,
2356        icusarg::Saielsr24,
2357        Icusarg_SPEC,
2358        crate::common::RW,
2359    > {
2360        crate::common::RegisterField::<
2361            24,
2362            0x1,
2363            1,
2364            0,
2365            icusarg::Saielsr24,
2366            icusarg::Saielsr24,
2367            Icusarg_SPEC,
2368            crate::common::RW,
2369        >::from_register(self, 0)
2370    }
2371
2372    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2373    #[inline(always)]
2374    pub fn saielsr25(
2375        self,
2376    ) -> crate::common::RegisterField<
2377        25,
2378        0x1,
2379        1,
2380        0,
2381        icusarg::Saielsr25,
2382        icusarg::Saielsr25,
2383        Icusarg_SPEC,
2384        crate::common::RW,
2385    > {
2386        crate::common::RegisterField::<
2387            25,
2388            0x1,
2389            1,
2390            0,
2391            icusarg::Saielsr25,
2392            icusarg::Saielsr25,
2393            Icusarg_SPEC,
2394            crate::common::RW,
2395        >::from_register(self, 0)
2396    }
2397
2398    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2399    #[inline(always)]
2400    pub fn saielsr26(
2401        self,
2402    ) -> crate::common::RegisterField<
2403        26,
2404        0x1,
2405        1,
2406        0,
2407        icusarg::Saielsr26,
2408        icusarg::Saielsr26,
2409        Icusarg_SPEC,
2410        crate::common::RW,
2411    > {
2412        crate::common::RegisterField::<
2413            26,
2414            0x1,
2415            1,
2416            0,
2417            icusarg::Saielsr26,
2418            icusarg::Saielsr26,
2419            Icusarg_SPEC,
2420            crate::common::RW,
2421        >::from_register(self, 0)
2422    }
2423
2424    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2425    #[inline(always)]
2426    pub fn saielsr27(
2427        self,
2428    ) -> crate::common::RegisterField<
2429        27,
2430        0x1,
2431        1,
2432        0,
2433        icusarg::Saielsr27,
2434        icusarg::Saielsr27,
2435        Icusarg_SPEC,
2436        crate::common::RW,
2437    > {
2438        crate::common::RegisterField::<
2439            27,
2440            0x1,
2441            1,
2442            0,
2443            icusarg::Saielsr27,
2444            icusarg::Saielsr27,
2445            Icusarg_SPEC,
2446            crate::common::RW,
2447        >::from_register(self, 0)
2448    }
2449
2450    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2451    #[inline(always)]
2452    pub fn saielsr28(
2453        self,
2454    ) -> crate::common::RegisterField<
2455        28,
2456        0x1,
2457        1,
2458        0,
2459        icusarg::Saielsr28,
2460        icusarg::Saielsr28,
2461        Icusarg_SPEC,
2462        crate::common::RW,
2463    > {
2464        crate::common::RegisterField::<
2465            28,
2466            0x1,
2467            1,
2468            0,
2469            icusarg::Saielsr28,
2470            icusarg::Saielsr28,
2471            Icusarg_SPEC,
2472            crate::common::RW,
2473        >::from_register(self, 0)
2474    }
2475
2476    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2477    #[inline(always)]
2478    pub fn saielsr29(
2479        self,
2480    ) -> crate::common::RegisterField<
2481        29,
2482        0x1,
2483        1,
2484        0,
2485        icusarg::Saielsr29,
2486        icusarg::Saielsr29,
2487        Icusarg_SPEC,
2488        crate::common::RW,
2489    > {
2490        crate::common::RegisterField::<
2491            29,
2492            0x1,
2493            1,
2494            0,
2495            icusarg::Saielsr29,
2496            icusarg::Saielsr29,
2497            Icusarg_SPEC,
2498            crate::common::RW,
2499        >::from_register(self, 0)
2500    }
2501
2502    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2503    #[inline(always)]
2504    pub fn saielsr30(
2505        self,
2506    ) -> crate::common::RegisterField<
2507        30,
2508        0x1,
2509        1,
2510        0,
2511        icusarg::Saielsr30,
2512        icusarg::Saielsr30,
2513        Icusarg_SPEC,
2514        crate::common::RW,
2515    > {
2516        crate::common::RegisterField::<
2517            30,
2518            0x1,
2519            1,
2520            0,
2521            icusarg::Saielsr30,
2522            icusarg::Saielsr30,
2523            Icusarg_SPEC,
2524            crate::common::RW,
2525        >::from_register(self, 0)
2526    }
2527
2528    #[doc = "Security attributes of registers for IELSR31 to IELSR0"]
2529    #[inline(always)]
2530    pub fn saielsr31(
2531        self,
2532    ) -> crate::common::RegisterField<
2533        31,
2534        0x1,
2535        1,
2536        0,
2537        icusarg::Saielsr31,
2538        icusarg::Saielsr31,
2539        Icusarg_SPEC,
2540        crate::common::RW,
2541    > {
2542        crate::common::RegisterField::<
2543            31,
2544            0x1,
2545            1,
2546            0,
2547            icusarg::Saielsr31,
2548            icusarg::Saielsr31,
2549            Icusarg_SPEC,
2550            crate::common::RW,
2551        >::from_register(self, 0)
2552    }
2553}
2554impl ::core::default::Default for Icusarg {
2555    #[inline(always)]
2556    fn default() -> Icusarg {
2557        <crate::RegValueT<Icusarg_SPEC> as RegisterValue<_>>::new(4294967295)
2558    }
2559}
2560pub mod icusarg {
2561
2562    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2563    pub struct Saielsr00_SPEC;
2564    pub type Saielsr00 = crate::EnumBitfieldStruct<u8, Saielsr00_SPEC>;
2565    impl Saielsr00 {
2566        #[doc = "Secure"]
2567        pub const _0: Self = Self::new(0);
2568
2569        #[doc = "Non-secure"]
2570        pub const _1: Self = Self::new(1);
2571    }
2572    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2573    pub struct Saielsr01_SPEC;
2574    pub type Saielsr01 = crate::EnumBitfieldStruct<u8, Saielsr01_SPEC>;
2575    impl Saielsr01 {
2576        #[doc = "Secure"]
2577        pub const _0: Self = Self::new(0);
2578
2579        #[doc = "Non-secure"]
2580        pub const _1: Self = Self::new(1);
2581    }
2582    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2583    pub struct Saielsr02_SPEC;
2584    pub type Saielsr02 = crate::EnumBitfieldStruct<u8, Saielsr02_SPEC>;
2585    impl Saielsr02 {
2586        #[doc = "Secure"]
2587        pub const _0: Self = Self::new(0);
2588
2589        #[doc = "Non-secure"]
2590        pub const _1: Self = Self::new(1);
2591    }
2592    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2593    pub struct Saielsr03_SPEC;
2594    pub type Saielsr03 = crate::EnumBitfieldStruct<u8, Saielsr03_SPEC>;
2595    impl Saielsr03 {
2596        #[doc = "Secure"]
2597        pub const _0: Self = Self::new(0);
2598
2599        #[doc = "Non-secure"]
2600        pub const _1: Self = Self::new(1);
2601    }
2602    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2603    pub struct Saielsr04_SPEC;
2604    pub type Saielsr04 = crate::EnumBitfieldStruct<u8, Saielsr04_SPEC>;
2605    impl Saielsr04 {
2606        #[doc = "Secure"]
2607        pub const _0: Self = Self::new(0);
2608
2609        #[doc = "Non-secure"]
2610        pub const _1: Self = Self::new(1);
2611    }
2612    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2613    pub struct Saielsr05_SPEC;
2614    pub type Saielsr05 = crate::EnumBitfieldStruct<u8, Saielsr05_SPEC>;
2615    impl Saielsr05 {
2616        #[doc = "Secure"]
2617        pub const _0: Self = Self::new(0);
2618
2619        #[doc = "Non-secure"]
2620        pub const _1: Self = Self::new(1);
2621    }
2622    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2623    pub struct Saielsr06_SPEC;
2624    pub type Saielsr06 = crate::EnumBitfieldStruct<u8, Saielsr06_SPEC>;
2625    impl Saielsr06 {
2626        #[doc = "Secure"]
2627        pub const _0: Self = Self::new(0);
2628
2629        #[doc = "Non-secure"]
2630        pub const _1: Self = Self::new(1);
2631    }
2632    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2633    pub struct Saielsr07_SPEC;
2634    pub type Saielsr07 = crate::EnumBitfieldStruct<u8, Saielsr07_SPEC>;
2635    impl Saielsr07 {
2636        #[doc = "Secure"]
2637        pub const _0: Self = Self::new(0);
2638
2639        #[doc = "Non-secure"]
2640        pub const _1: Self = Self::new(1);
2641    }
2642    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2643    pub struct Saielsr08_SPEC;
2644    pub type Saielsr08 = crate::EnumBitfieldStruct<u8, Saielsr08_SPEC>;
2645    impl Saielsr08 {
2646        #[doc = "Secure"]
2647        pub const _0: Self = Self::new(0);
2648
2649        #[doc = "Non-secure"]
2650        pub const _1: Self = Self::new(1);
2651    }
2652    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2653    pub struct Saielsr09_SPEC;
2654    pub type Saielsr09 = crate::EnumBitfieldStruct<u8, Saielsr09_SPEC>;
2655    impl Saielsr09 {
2656        #[doc = "Secure"]
2657        pub const _0: Self = Self::new(0);
2658
2659        #[doc = "Non-secure"]
2660        pub const _1: Self = Self::new(1);
2661    }
2662    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2663    pub struct Saielsr10_SPEC;
2664    pub type Saielsr10 = crate::EnumBitfieldStruct<u8, Saielsr10_SPEC>;
2665    impl Saielsr10 {
2666        #[doc = "Secure"]
2667        pub const _0: Self = Self::new(0);
2668
2669        #[doc = "Non-secure"]
2670        pub const _1: Self = Self::new(1);
2671    }
2672    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2673    pub struct Saielsr11_SPEC;
2674    pub type Saielsr11 = crate::EnumBitfieldStruct<u8, Saielsr11_SPEC>;
2675    impl Saielsr11 {
2676        #[doc = "Secure"]
2677        pub const _0: Self = Self::new(0);
2678
2679        #[doc = "Non-secure"]
2680        pub const _1: Self = Self::new(1);
2681    }
2682    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2683    pub struct Saielsr12_SPEC;
2684    pub type Saielsr12 = crate::EnumBitfieldStruct<u8, Saielsr12_SPEC>;
2685    impl Saielsr12 {
2686        #[doc = "Secure"]
2687        pub const _0: Self = Self::new(0);
2688
2689        #[doc = "Non-secure"]
2690        pub const _1: Self = Self::new(1);
2691    }
2692    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2693    pub struct Saielsr13_SPEC;
2694    pub type Saielsr13 = crate::EnumBitfieldStruct<u8, Saielsr13_SPEC>;
2695    impl Saielsr13 {
2696        #[doc = "Secure"]
2697        pub const _0: Self = Self::new(0);
2698
2699        #[doc = "Non-secure"]
2700        pub const _1: Self = Self::new(1);
2701    }
2702    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2703    pub struct Saielsr14_SPEC;
2704    pub type Saielsr14 = crate::EnumBitfieldStruct<u8, Saielsr14_SPEC>;
2705    impl Saielsr14 {
2706        #[doc = "Secure"]
2707        pub const _0: Self = Self::new(0);
2708
2709        #[doc = "Non-secure"]
2710        pub const _1: Self = Self::new(1);
2711    }
2712    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2713    pub struct Saielsr15_SPEC;
2714    pub type Saielsr15 = crate::EnumBitfieldStruct<u8, Saielsr15_SPEC>;
2715    impl Saielsr15 {
2716        #[doc = "Secure"]
2717        pub const _0: Self = Self::new(0);
2718
2719        #[doc = "Non-secure"]
2720        pub const _1: Self = Self::new(1);
2721    }
2722    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2723    pub struct Saielsr16_SPEC;
2724    pub type Saielsr16 = crate::EnumBitfieldStruct<u8, Saielsr16_SPEC>;
2725    impl Saielsr16 {
2726        #[doc = "Secure"]
2727        pub const _0: Self = Self::new(0);
2728
2729        #[doc = "Non-secure"]
2730        pub const _1: Self = Self::new(1);
2731    }
2732    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2733    pub struct Saielsr17_SPEC;
2734    pub type Saielsr17 = crate::EnumBitfieldStruct<u8, Saielsr17_SPEC>;
2735    impl Saielsr17 {
2736        #[doc = "Secure"]
2737        pub const _0: Self = Self::new(0);
2738
2739        #[doc = "Non-secure"]
2740        pub const _1: Self = Self::new(1);
2741    }
2742    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2743    pub struct Saielsr18_SPEC;
2744    pub type Saielsr18 = crate::EnumBitfieldStruct<u8, Saielsr18_SPEC>;
2745    impl Saielsr18 {
2746        #[doc = "Secure"]
2747        pub const _0: Self = Self::new(0);
2748
2749        #[doc = "Non-secure"]
2750        pub const _1: Self = Self::new(1);
2751    }
2752    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2753    pub struct Saielsr19_SPEC;
2754    pub type Saielsr19 = crate::EnumBitfieldStruct<u8, Saielsr19_SPEC>;
2755    impl Saielsr19 {
2756        #[doc = "Secure"]
2757        pub const _0: Self = Self::new(0);
2758
2759        #[doc = "Non-secure"]
2760        pub const _1: Self = Self::new(1);
2761    }
2762    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2763    pub struct Saielsr20_SPEC;
2764    pub type Saielsr20 = crate::EnumBitfieldStruct<u8, Saielsr20_SPEC>;
2765    impl Saielsr20 {
2766        #[doc = "Secure"]
2767        pub const _0: Self = Self::new(0);
2768
2769        #[doc = "Non-secure"]
2770        pub const _1: Self = Self::new(1);
2771    }
2772    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2773    pub struct Saielsr21_SPEC;
2774    pub type Saielsr21 = crate::EnumBitfieldStruct<u8, Saielsr21_SPEC>;
2775    impl Saielsr21 {
2776        #[doc = "Secure"]
2777        pub const _0: Self = Self::new(0);
2778
2779        #[doc = "Non-secure"]
2780        pub const _1: Self = Self::new(1);
2781    }
2782    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2783    pub struct Saielsr22_SPEC;
2784    pub type Saielsr22 = crate::EnumBitfieldStruct<u8, Saielsr22_SPEC>;
2785    impl Saielsr22 {
2786        #[doc = "Secure"]
2787        pub const _0: Self = Self::new(0);
2788
2789        #[doc = "Non-secure"]
2790        pub const _1: Self = Self::new(1);
2791    }
2792    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2793    pub struct Saielsr23_SPEC;
2794    pub type Saielsr23 = crate::EnumBitfieldStruct<u8, Saielsr23_SPEC>;
2795    impl Saielsr23 {
2796        #[doc = "Secure"]
2797        pub const _0: Self = Self::new(0);
2798
2799        #[doc = "Non-secure"]
2800        pub const _1: Self = Self::new(1);
2801    }
2802    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2803    pub struct Saielsr24_SPEC;
2804    pub type Saielsr24 = crate::EnumBitfieldStruct<u8, Saielsr24_SPEC>;
2805    impl Saielsr24 {
2806        #[doc = "Secure"]
2807        pub const _0: Self = Self::new(0);
2808
2809        #[doc = "Non-secure"]
2810        pub const _1: Self = Self::new(1);
2811    }
2812    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2813    pub struct Saielsr25_SPEC;
2814    pub type Saielsr25 = crate::EnumBitfieldStruct<u8, Saielsr25_SPEC>;
2815    impl Saielsr25 {
2816        #[doc = "Secure"]
2817        pub const _0: Self = Self::new(0);
2818
2819        #[doc = "Non-secure"]
2820        pub const _1: Self = Self::new(1);
2821    }
2822    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2823    pub struct Saielsr26_SPEC;
2824    pub type Saielsr26 = crate::EnumBitfieldStruct<u8, Saielsr26_SPEC>;
2825    impl Saielsr26 {
2826        #[doc = "Secure"]
2827        pub const _0: Self = Self::new(0);
2828
2829        #[doc = "Non-secure"]
2830        pub const _1: Self = Self::new(1);
2831    }
2832    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2833    pub struct Saielsr27_SPEC;
2834    pub type Saielsr27 = crate::EnumBitfieldStruct<u8, Saielsr27_SPEC>;
2835    impl Saielsr27 {
2836        #[doc = "Secure"]
2837        pub const _0: Self = Self::new(0);
2838
2839        #[doc = "Non-secure"]
2840        pub const _1: Self = Self::new(1);
2841    }
2842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2843    pub struct Saielsr28_SPEC;
2844    pub type Saielsr28 = crate::EnumBitfieldStruct<u8, Saielsr28_SPEC>;
2845    impl Saielsr28 {
2846        #[doc = "Secure"]
2847        pub const _0: Self = Self::new(0);
2848
2849        #[doc = "Non-secure"]
2850        pub const _1: Self = Self::new(1);
2851    }
2852    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2853    pub struct Saielsr29_SPEC;
2854    pub type Saielsr29 = crate::EnumBitfieldStruct<u8, Saielsr29_SPEC>;
2855    impl Saielsr29 {
2856        #[doc = "Secure"]
2857        pub const _0: Self = Self::new(0);
2858
2859        #[doc = "Non-secure"]
2860        pub const _1: Self = Self::new(1);
2861    }
2862    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2863    pub struct Saielsr30_SPEC;
2864    pub type Saielsr30 = crate::EnumBitfieldStruct<u8, Saielsr30_SPEC>;
2865    impl Saielsr30 {
2866        #[doc = "Secure"]
2867        pub const _0: Self = Self::new(0);
2868
2869        #[doc = "Non-secure"]
2870        pub const _1: Self = Self::new(1);
2871    }
2872    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2873    pub struct Saielsr31_SPEC;
2874    pub type Saielsr31 = crate::EnumBitfieldStruct<u8, Saielsr31_SPEC>;
2875    impl Saielsr31 {
2876        #[doc = "Secure"]
2877        pub const _0: Self = Self::new(0);
2878
2879        #[doc = "Non-secure"]
2880        pub const _1: Self = Self::new(1);
2881    }
2882}
2883#[doc(hidden)]
2884#[derive(Copy, Clone, Eq, PartialEq)]
2885pub struct Icusarh_SPEC;
2886impl crate::sealed::RegSpec for Icusarh_SPEC {
2887    type DataType = u32;
2888}
2889
2890#[doc = "Interrupt Controller Unit Security Attribution Register H"]
2891pub type Icusarh = crate::RegValueT<Icusarh_SPEC>;
2892
2893impl Icusarh {
2894    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
2895    #[inline(always)]
2896    pub fn saielsr32(
2897        self,
2898    ) -> crate::common::RegisterField<
2899        0,
2900        0x1,
2901        1,
2902        0,
2903        icusarh::Saielsr32,
2904        icusarh::Saielsr32,
2905        Icusarh_SPEC,
2906        crate::common::RW,
2907    > {
2908        crate::common::RegisterField::<
2909            0,
2910            0x1,
2911            1,
2912            0,
2913            icusarh::Saielsr32,
2914            icusarh::Saielsr32,
2915            Icusarh_SPEC,
2916            crate::common::RW,
2917        >::from_register(self, 0)
2918    }
2919
2920    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
2921    #[inline(always)]
2922    pub fn saielsr33(
2923        self,
2924    ) -> crate::common::RegisterField<
2925        1,
2926        0x1,
2927        1,
2928        0,
2929        icusarh::Saielsr33,
2930        icusarh::Saielsr33,
2931        Icusarh_SPEC,
2932        crate::common::RW,
2933    > {
2934        crate::common::RegisterField::<
2935            1,
2936            0x1,
2937            1,
2938            0,
2939            icusarh::Saielsr33,
2940            icusarh::Saielsr33,
2941            Icusarh_SPEC,
2942            crate::common::RW,
2943        >::from_register(self, 0)
2944    }
2945
2946    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
2947    #[inline(always)]
2948    pub fn saielsr34(
2949        self,
2950    ) -> crate::common::RegisterField<
2951        2,
2952        0x1,
2953        1,
2954        0,
2955        icusarh::Saielsr34,
2956        icusarh::Saielsr34,
2957        Icusarh_SPEC,
2958        crate::common::RW,
2959    > {
2960        crate::common::RegisterField::<
2961            2,
2962            0x1,
2963            1,
2964            0,
2965            icusarh::Saielsr34,
2966            icusarh::Saielsr34,
2967            Icusarh_SPEC,
2968            crate::common::RW,
2969        >::from_register(self, 0)
2970    }
2971
2972    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
2973    #[inline(always)]
2974    pub fn saielsr35(
2975        self,
2976    ) -> crate::common::RegisterField<
2977        3,
2978        0x1,
2979        1,
2980        0,
2981        icusarh::Saielsr35,
2982        icusarh::Saielsr35,
2983        Icusarh_SPEC,
2984        crate::common::RW,
2985    > {
2986        crate::common::RegisterField::<
2987            3,
2988            0x1,
2989            1,
2990            0,
2991            icusarh::Saielsr35,
2992            icusarh::Saielsr35,
2993            Icusarh_SPEC,
2994            crate::common::RW,
2995        >::from_register(self, 0)
2996    }
2997
2998    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
2999    #[inline(always)]
3000    pub fn saielsr36(
3001        self,
3002    ) -> crate::common::RegisterField<
3003        4,
3004        0x1,
3005        1,
3006        0,
3007        icusarh::Saielsr36,
3008        icusarh::Saielsr36,
3009        Icusarh_SPEC,
3010        crate::common::RW,
3011    > {
3012        crate::common::RegisterField::<
3013            4,
3014            0x1,
3015            1,
3016            0,
3017            icusarh::Saielsr36,
3018            icusarh::Saielsr36,
3019            Icusarh_SPEC,
3020            crate::common::RW,
3021        >::from_register(self, 0)
3022    }
3023
3024    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3025    #[inline(always)]
3026    pub fn saielsr37(
3027        self,
3028    ) -> crate::common::RegisterField<
3029        5,
3030        0x1,
3031        1,
3032        0,
3033        icusarh::Saielsr37,
3034        icusarh::Saielsr37,
3035        Icusarh_SPEC,
3036        crate::common::RW,
3037    > {
3038        crate::common::RegisterField::<
3039            5,
3040            0x1,
3041            1,
3042            0,
3043            icusarh::Saielsr37,
3044            icusarh::Saielsr37,
3045            Icusarh_SPEC,
3046            crate::common::RW,
3047        >::from_register(self, 0)
3048    }
3049
3050    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3051    #[inline(always)]
3052    pub fn saielsr38(
3053        self,
3054    ) -> crate::common::RegisterField<
3055        6,
3056        0x1,
3057        1,
3058        0,
3059        icusarh::Saielsr38,
3060        icusarh::Saielsr38,
3061        Icusarh_SPEC,
3062        crate::common::RW,
3063    > {
3064        crate::common::RegisterField::<
3065            6,
3066            0x1,
3067            1,
3068            0,
3069            icusarh::Saielsr38,
3070            icusarh::Saielsr38,
3071            Icusarh_SPEC,
3072            crate::common::RW,
3073        >::from_register(self, 0)
3074    }
3075
3076    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3077    #[inline(always)]
3078    pub fn saielsr39(
3079        self,
3080    ) -> crate::common::RegisterField<
3081        7,
3082        0x1,
3083        1,
3084        0,
3085        icusarh::Saielsr39,
3086        icusarh::Saielsr39,
3087        Icusarh_SPEC,
3088        crate::common::RW,
3089    > {
3090        crate::common::RegisterField::<
3091            7,
3092            0x1,
3093            1,
3094            0,
3095            icusarh::Saielsr39,
3096            icusarh::Saielsr39,
3097            Icusarh_SPEC,
3098            crate::common::RW,
3099        >::from_register(self, 0)
3100    }
3101
3102    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3103    #[inline(always)]
3104    pub fn saielsr40(
3105        self,
3106    ) -> crate::common::RegisterField<
3107        8,
3108        0x1,
3109        1,
3110        0,
3111        icusarh::Saielsr40,
3112        icusarh::Saielsr40,
3113        Icusarh_SPEC,
3114        crate::common::RW,
3115    > {
3116        crate::common::RegisterField::<
3117            8,
3118            0x1,
3119            1,
3120            0,
3121            icusarh::Saielsr40,
3122            icusarh::Saielsr40,
3123            Icusarh_SPEC,
3124            crate::common::RW,
3125        >::from_register(self, 0)
3126    }
3127
3128    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3129    #[inline(always)]
3130    pub fn saielsr41(
3131        self,
3132    ) -> crate::common::RegisterField<
3133        9,
3134        0x1,
3135        1,
3136        0,
3137        icusarh::Saielsr41,
3138        icusarh::Saielsr41,
3139        Icusarh_SPEC,
3140        crate::common::RW,
3141    > {
3142        crate::common::RegisterField::<
3143            9,
3144            0x1,
3145            1,
3146            0,
3147            icusarh::Saielsr41,
3148            icusarh::Saielsr41,
3149            Icusarh_SPEC,
3150            crate::common::RW,
3151        >::from_register(self, 0)
3152    }
3153
3154    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3155    #[inline(always)]
3156    pub fn saielsr42(
3157        self,
3158    ) -> crate::common::RegisterField<
3159        10,
3160        0x1,
3161        1,
3162        0,
3163        icusarh::Saielsr42,
3164        icusarh::Saielsr42,
3165        Icusarh_SPEC,
3166        crate::common::RW,
3167    > {
3168        crate::common::RegisterField::<
3169            10,
3170            0x1,
3171            1,
3172            0,
3173            icusarh::Saielsr42,
3174            icusarh::Saielsr42,
3175            Icusarh_SPEC,
3176            crate::common::RW,
3177        >::from_register(self, 0)
3178    }
3179
3180    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3181    #[inline(always)]
3182    pub fn saielsr43(
3183        self,
3184    ) -> crate::common::RegisterField<
3185        11,
3186        0x1,
3187        1,
3188        0,
3189        icusarh::Saielsr43,
3190        icusarh::Saielsr43,
3191        Icusarh_SPEC,
3192        crate::common::RW,
3193    > {
3194        crate::common::RegisterField::<
3195            11,
3196            0x1,
3197            1,
3198            0,
3199            icusarh::Saielsr43,
3200            icusarh::Saielsr43,
3201            Icusarh_SPEC,
3202            crate::common::RW,
3203        >::from_register(self, 0)
3204    }
3205
3206    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3207    #[inline(always)]
3208    pub fn saielsr44(
3209        self,
3210    ) -> crate::common::RegisterField<
3211        12,
3212        0x1,
3213        1,
3214        0,
3215        icusarh::Saielsr44,
3216        icusarh::Saielsr44,
3217        Icusarh_SPEC,
3218        crate::common::RW,
3219    > {
3220        crate::common::RegisterField::<
3221            12,
3222            0x1,
3223            1,
3224            0,
3225            icusarh::Saielsr44,
3226            icusarh::Saielsr44,
3227            Icusarh_SPEC,
3228            crate::common::RW,
3229        >::from_register(self, 0)
3230    }
3231
3232    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3233    #[inline(always)]
3234    pub fn saielsr45(
3235        self,
3236    ) -> crate::common::RegisterField<
3237        13,
3238        0x1,
3239        1,
3240        0,
3241        icusarh::Saielsr45,
3242        icusarh::Saielsr45,
3243        Icusarh_SPEC,
3244        crate::common::RW,
3245    > {
3246        crate::common::RegisterField::<
3247            13,
3248            0x1,
3249            1,
3250            0,
3251            icusarh::Saielsr45,
3252            icusarh::Saielsr45,
3253            Icusarh_SPEC,
3254            crate::common::RW,
3255        >::from_register(self, 0)
3256    }
3257
3258    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3259    #[inline(always)]
3260    pub fn saielsr46(
3261        self,
3262    ) -> crate::common::RegisterField<
3263        14,
3264        0x1,
3265        1,
3266        0,
3267        icusarh::Saielsr46,
3268        icusarh::Saielsr46,
3269        Icusarh_SPEC,
3270        crate::common::RW,
3271    > {
3272        crate::common::RegisterField::<
3273            14,
3274            0x1,
3275            1,
3276            0,
3277            icusarh::Saielsr46,
3278            icusarh::Saielsr46,
3279            Icusarh_SPEC,
3280            crate::common::RW,
3281        >::from_register(self, 0)
3282    }
3283
3284    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3285    #[inline(always)]
3286    pub fn saielsr47(
3287        self,
3288    ) -> crate::common::RegisterField<
3289        15,
3290        0x1,
3291        1,
3292        0,
3293        icusarh::Saielsr47,
3294        icusarh::Saielsr47,
3295        Icusarh_SPEC,
3296        crate::common::RW,
3297    > {
3298        crate::common::RegisterField::<
3299            15,
3300            0x1,
3301            1,
3302            0,
3303            icusarh::Saielsr47,
3304            icusarh::Saielsr47,
3305            Icusarh_SPEC,
3306            crate::common::RW,
3307        >::from_register(self, 0)
3308    }
3309
3310    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3311    #[inline(always)]
3312    pub fn saielsr48(
3313        self,
3314    ) -> crate::common::RegisterField<
3315        16,
3316        0x1,
3317        1,
3318        0,
3319        icusarh::Saielsr48,
3320        icusarh::Saielsr48,
3321        Icusarh_SPEC,
3322        crate::common::RW,
3323    > {
3324        crate::common::RegisterField::<
3325            16,
3326            0x1,
3327            1,
3328            0,
3329            icusarh::Saielsr48,
3330            icusarh::Saielsr48,
3331            Icusarh_SPEC,
3332            crate::common::RW,
3333        >::from_register(self, 0)
3334    }
3335
3336    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3337    #[inline(always)]
3338    pub fn saielsr49(
3339        self,
3340    ) -> crate::common::RegisterField<
3341        17,
3342        0x1,
3343        1,
3344        0,
3345        icusarh::Saielsr49,
3346        icusarh::Saielsr49,
3347        Icusarh_SPEC,
3348        crate::common::RW,
3349    > {
3350        crate::common::RegisterField::<
3351            17,
3352            0x1,
3353            1,
3354            0,
3355            icusarh::Saielsr49,
3356            icusarh::Saielsr49,
3357            Icusarh_SPEC,
3358            crate::common::RW,
3359        >::from_register(self, 0)
3360    }
3361
3362    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3363    #[inline(always)]
3364    pub fn saielsr50(
3365        self,
3366    ) -> crate::common::RegisterField<
3367        18,
3368        0x1,
3369        1,
3370        0,
3371        icusarh::Saielsr50,
3372        icusarh::Saielsr50,
3373        Icusarh_SPEC,
3374        crate::common::RW,
3375    > {
3376        crate::common::RegisterField::<
3377            18,
3378            0x1,
3379            1,
3380            0,
3381            icusarh::Saielsr50,
3382            icusarh::Saielsr50,
3383            Icusarh_SPEC,
3384            crate::common::RW,
3385        >::from_register(self, 0)
3386    }
3387
3388    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3389    #[inline(always)]
3390    pub fn saielsr51(
3391        self,
3392    ) -> crate::common::RegisterField<
3393        19,
3394        0x1,
3395        1,
3396        0,
3397        icusarh::Saielsr51,
3398        icusarh::Saielsr51,
3399        Icusarh_SPEC,
3400        crate::common::RW,
3401    > {
3402        crate::common::RegisterField::<
3403            19,
3404            0x1,
3405            1,
3406            0,
3407            icusarh::Saielsr51,
3408            icusarh::Saielsr51,
3409            Icusarh_SPEC,
3410            crate::common::RW,
3411        >::from_register(self, 0)
3412    }
3413
3414    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3415    #[inline(always)]
3416    pub fn saielsr52(
3417        self,
3418    ) -> crate::common::RegisterField<
3419        20,
3420        0x1,
3421        1,
3422        0,
3423        icusarh::Saielsr52,
3424        icusarh::Saielsr52,
3425        Icusarh_SPEC,
3426        crate::common::RW,
3427    > {
3428        crate::common::RegisterField::<
3429            20,
3430            0x1,
3431            1,
3432            0,
3433            icusarh::Saielsr52,
3434            icusarh::Saielsr52,
3435            Icusarh_SPEC,
3436            crate::common::RW,
3437        >::from_register(self, 0)
3438    }
3439
3440    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3441    #[inline(always)]
3442    pub fn saielsr53(
3443        self,
3444    ) -> crate::common::RegisterField<
3445        21,
3446        0x1,
3447        1,
3448        0,
3449        icusarh::Saielsr53,
3450        icusarh::Saielsr53,
3451        Icusarh_SPEC,
3452        crate::common::RW,
3453    > {
3454        crate::common::RegisterField::<
3455            21,
3456            0x1,
3457            1,
3458            0,
3459            icusarh::Saielsr53,
3460            icusarh::Saielsr53,
3461            Icusarh_SPEC,
3462            crate::common::RW,
3463        >::from_register(self, 0)
3464    }
3465
3466    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3467    #[inline(always)]
3468    pub fn saielsr54(
3469        self,
3470    ) -> crate::common::RegisterField<
3471        22,
3472        0x1,
3473        1,
3474        0,
3475        icusarh::Saielsr54,
3476        icusarh::Saielsr54,
3477        Icusarh_SPEC,
3478        crate::common::RW,
3479    > {
3480        crate::common::RegisterField::<
3481            22,
3482            0x1,
3483            1,
3484            0,
3485            icusarh::Saielsr54,
3486            icusarh::Saielsr54,
3487            Icusarh_SPEC,
3488            crate::common::RW,
3489        >::from_register(self, 0)
3490    }
3491
3492    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3493    #[inline(always)]
3494    pub fn saielsr55(
3495        self,
3496    ) -> crate::common::RegisterField<
3497        23,
3498        0x1,
3499        1,
3500        0,
3501        icusarh::Saielsr55,
3502        icusarh::Saielsr55,
3503        Icusarh_SPEC,
3504        crate::common::RW,
3505    > {
3506        crate::common::RegisterField::<
3507            23,
3508            0x1,
3509            1,
3510            0,
3511            icusarh::Saielsr55,
3512            icusarh::Saielsr55,
3513            Icusarh_SPEC,
3514            crate::common::RW,
3515        >::from_register(self, 0)
3516    }
3517
3518    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3519    #[inline(always)]
3520    pub fn saielsr56(
3521        self,
3522    ) -> crate::common::RegisterField<
3523        24,
3524        0x1,
3525        1,
3526        0,
3527        icusarh::Saielsr56,
3528        icusarh::Saielsr56,
3529        Icusarh_SPEC,
3530        crate::common::RW,
3531    > {
3532        crate::common::RegisterField::<
3533            24,
3534            0x1,
3535            1,
3536            0,
3537            icusarh::Saielsr56,
3538            icusarh::Saielsr56,
3539            Icusarh_SPEC,
3540            crate::common::RW,
3541        >::from_register(self, 0)
3542    }
3543
3544    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3545    #[inline(always)]
3546    pub fn saielsr57(
3547        self,
3548    ) -> crate::common::RegisterField<
3549        25,
3550        0x1,
3551        1,
3552        0,
3553        icusarh::Saielsr57,
3554        icusarh::Saielsr57,
3555        Icusarh_SPEC,
3556        crate::common::RW,
3557    > {
3558        crate::common::RegisterField::<
3559            25,
3560            0x1,
3561            1,
3562            0,
3563            icusarh::Saielsr57,
3564            icusarh::Saielsr57,
3565            Icusarh_SPEC,
3566            crate::common::RW,
3567        >::from_register(self, 0)
3568    }
3569
3570    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3571    #[inline(always)]
3572    pub fn saielsr58(
3573        self,
3574    ) -> crate::common::RegisterField<
3575        26,
3576        0x1,
3577        1,
3578        0,
3579        icusarh::Saielsr58,
3580        icusarh::Saielsr58,
3581        Icusarh_SPEC,
3582        crate::common::RW,
3583    > {
3584        crate::common::RegisterField::<
3585            26,
3586            0x1,
3587            1,
3588            0,
3589            icusarh::Saielsr58,
3590            icusarh::Saielsr58,
3591            Icusarh_SPEC,
3592            crate::common::RW,
3593        >::from_register(self, 0)
3594    }
3595
3596    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3597    #[inline(always)]
3598    pub fn saielsr59(
3599        self,
3600    ) -> crate::common::RegisterField<
3601        27,
3602        0x1,
3603        1,
3604        0,
3605        icusarh::Saielsr59,
3606        icusarh::Saielsr59,
3607        Icusarh_SPEC,
3608        crate::common::RW,
3609    > {
3610        crate::common::RegisterField::<
3611            27,
3612            0x1,
3613            1,
3614            0,
3615            icusarh::Saielsr59,
3616            icusarh::Saielsr59,
3617            Icusarh_SPEC,
3618            crate::common::RW,
3619        >::from_register(self, 0)
3620    }
3621
3622    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3623    #[inline(always)]
3624    pub fn saielsr60(
3625        self,
3626    ) -> crate::common::RegisterField<
3627        28,
3628        0x1,
3629        1,
3630        0,
3631        icusarh::Saielsr60,
3632        icusarh::Saielsr60,
3633        Icusarh_SPEC,
3634        crate::common::RW,
3635    > {
3636        crate::common::RegisterField::<
3637            28,
3638            0x1,
3639            1,
3640            0,
3641            icusarh::Saielsr60,
3642            icusarh::Saielsr60,
3643            Icusarh_SPEC,
3644            crate::common::RW,
3645        >::from_register(self, 0)
3646    }
3647
3648    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3649    #[inline(always)]
3650    pub fn saielsr61(
3651        self,
3652    ) -> crate::common::RegisterField<
3653        29,
3654        0x1,
3655        1,
3656        0,
3657        icusarh::Saielsr61,
3658        icusarh::Saielsr61,
3659        Icusarh_SPEC,
3660        crate::common::RW,
3661    > {
3662        crate::common::RegisterField::<
3663            29,
3664            0x1,
3665            1,
3666            0,
3667            icusarh::Saielsr61,
3668            icusarh::Saielsr61,
3669            Icusarh_SPEC,
3670            crate::common::RW,
3671        >::from_register(self, 0)
3672    }
3673
3674    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3675    #[inline(always)]
3676    pub fn saielsr62(
3677        self,
3678    ) -> crate::common::RegisterField<
3679        30,
3680        0x1,
3681        1,
3682        0,
3683        icusarh::Saielsr62,
3684        icusarh::Saielsr62,
3685        Icusarh_SPEC,
3686        crate::common::RW,
3687    > {
3688        crate::common::RegisterField::<
3689            30,
3690            0x1,
3691            1,
3692            0,
3693            icusarh::Saielsr62,
3694            icusarh::Saielsr62,
3695            Icusarh_SPEC,
3696            crate::common::RW,
3697        >::from_register(self, 0)
3698    }
3699
3700    #[doc = "Security attributes of registers for IELSR63 to IELSR32"]
3701    #[inline(always)]
3702    pub fn saielsr63(
3703        self,
3704    ) -> crate::common::RegisterField<
3705        31,
3706        0x1,
3707        1,
3708        0,
3709        icusarh::Saielsr63,
3710        icusarh::Saielsr63,
3711        Icusarh_SPEC,
3712        crate::common::RW,
3713    > {
3714        crate::common::RegisterField::<
3715            31,
3716            0x1,
3717            1,
3718            0,
3719            icusarh::Saielsr63,
3720            icusarh::Saielsr63,
3721            Icusarh_SPEC,
3722            crate::common::RW,
3723        >::from_register(self, 0)
3724    }
3725}
3726impl ::core::default::Default for Icusarh {
3727    #[inline(always)]
3728    fn default() -> Icusarh {
3729        <crate::RegValueT<Icusarh_SPEC> as RegisterValue<_>>::new(4294967295)
3730    }
3731}
3732pub mod icusarh {
3733
3734    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3735    pub struct Saielsr32_SPEC;
3736    pub type Saielsr32 = crate::EnumBitfieldStruct<u8, Saielsr32_SPEC>;
3737    impl Saielsr32 {
3738        #[doc = "Secure"]
3739        pub const _0: Self = Self::new(0);
3740
3741        #[doc = "Non-secure"]
3742        pub const _1: Self = Self::new(1);
3743    }
3744    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3745    pub struct Saielsr33_SPEC;
3746    pub type Saielsr33 = crate::EnumBitfieldStruct<u8, Saielsr33_SPEC>;
3747    impl Saielsr33 {
3748        #[doc = "Secure"]
3749        pub const _0: Self = Self::new(0);
3750
3751        #[doc = "Non-secure"]
3752        pub const _1: Self = Self::new(1);
3753    }
3754    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3755    pub struct Saielsr34_SPEC;
3756    pub type Saielsr34 = crate::EnumBitfieldStruct<u8, Saielsr34_SPEC>;
3757    impl Saielsr34 {
3758        #[doc = "Secure"]
3759        pub const _0: Self = Self::new(0);
3760
3761        #[doc = "Non-secure"]
3762        pub const _1: Self = Self::new(1);
3763    }
3764    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3765    pub struct Saielsr35_SPEC;
3766    pub type Saielsr35 = crate::EnumBitfieldStruct<u8, Saielsr35_SPEC>;
3767    impl Saielsr35 {
3768        #[doc = "Secure"]
3769        pub const _0: Self = Self::new(0);
3770
3771        #[doc = "Non-secure"]
3772        pub const _1: Self = Self::new(1);
3773    }
3774    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3775    pub struct Saielsr36_SPEC;
3776    pub type Saielsr36 = crate::EnumBitfieldStruct<u8, Saielsr36_SPEC>;
3777    impl Saielsr36 {
3778        #[doc = "Secure"]
3779        pub const _0: Self = Self::new(0);
3780
3781        #[doc = "Non-secure"]
3782        pub const _1: Self = Self::new(1);
3783    }
3784    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3785    pub struct Saielsr37_SPEC;
3786    pub type Saielsr37 = crate::EnumBitfieldStruct<u8, Saielsr37_SPEC>;
3787    impl Saielsr37 {
3788        #[doc = "Secure"]
3789        pub const _0: Self = Self::new(0);
3790
3791        #[doc = "Non-secure"]
3792        pub const _1: Self = Self::new(1);
3793    }
3794    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3795    pub struct Saielsr38_SPEC;
3796    pub type Saielsr38 = crate::EnumBitfieldStruct<u8, Saielsr38_SPEC>;
3797    impl Saielsr38 {
3798        #[doc = "Secure"]
3799        pub const _0: Self = Self::new(0);
3800
3801        #[doc = "Non-secure"]
3802        pub const _1: Self = Self::new(1);
3803    }
3804    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3805    pub struct Saielsr39_SPEC;
3806    pub type Saielsr39 = crate::EnumBitfieldStruct<u8, Saielsr39_SPEC>;
3807    impl Saielsr39 {
3808        #[doc = "Secure"]
3809        pub const _0: Self = Self::new(0);
3810
3811        #[doc = "Non-secure"]
3812        pub const _1: Self = Self::new(1);
3813    }
3814    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3815    pub struct Saielsr40_SPEC;
3816    pub type Saielsr40 = crate::EnumBitfieldStruct<u8, Saielsr40_SPEC>;
3817    impl Saielsr40 {
3818        #[doc = "Secure"]
3819        pub const _0: Self = Self::new(0);
3820
3821        #[doc = "Non-secure"]
3822        pub const _1: Self = Self::new(1);
3823    }
3824    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3825    pub struct Saielsr41_SPEC;
3826    pub type Saielsr41 = crate::EnumBitfieldStruct<u8, Saielsr41_SPEC>;
3827    impl Saielsr41 {
3828        #[doc = "Secure"]
3829        pub const _0: Self = Self::new(0);
3830
3831        #[doc = "Non-secure"]
3832        pub const _1: Self = Self::new(1);
3833    }
3834    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3835    pub struct Saielsr42_SPEC;
3836    pub type Saielsr42 = crate::EnumBitfieldStruct<u8, Saielsr42_SPEC>;
3837    impl Saielsr42 {
3838        #[doc = "Secure"]
3839        pub const _0: Self = Self::new(0);
3840
3841        #[doc = "Non-secure"]
3842        pub const _1: Self = Self::new(1);
3843    }
3844    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3845    pub struct Saielsr43_SPEC;
3846    pub type Saielsr43 = crate::EnumBitfieldStruct<u8, Saielsr43_SPEC>;
3847    impl Saielsr43 {
3848        #[doc = "Secure"]
3849        pub const _0: Self = Self::new(0);
3850
3851        #[doc = "Non-secure"]
3852        pub const _1: Self = Self::new(1);
3853    }
3854    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3855    pub struct Saielsr44_SPEC;
3856    pub type Saielsr44 = crate::EnumBitfieldStruct<u8, Saielsr44_SPEC>;
3857    impl Saielsr44 {
3858        #[doc = "Secure"]
3859        pub const _0: Self = Self::new(0);
3860
3861        #[doc = "Non-secure"]
3862        pub const _1: Self = Self::new(1);
3863    }
3864    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3865    pub struct Saielsr45_SPEC;
3866    pub type Saielsr45 = crate::EnumBitfieldStruct<u8, Saielsr45_SPEC>;
3867    impl Saielsr45 {
3868        #[doc = "Secure"]
3869        pub const _0: Self = Self::new(0);
3870
3871        #[doc = "Non-secure"]
3872        pub const _1: Self = Self::new(1);
3873    }
3874    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3875    pub struct Saielsr46_SPEC;
3876    pub type Saielsr46 = crate::EnumBitfieldStruct<u8, Saielsr46_SPEC>;
3877    impl Saielsr46 {
3878        #[doc = "Secure"]
3879        pub const _0: Self = Self::new(0);
3880
3881        #[doc = "Non-secure"]
3882        pub const _1: Self = Self::new(1);
3883    }
3884    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3885    pub struct Saielsr47_SPEC;
3886    pub type Saielsr47 = crate::EnumBitfieldStruct<u8, Saielsr47_SPEC>;
3887    impl Saielsr47 {
3888        #[doc = "Secure"]
3889        pub const _0: Self = Self::new(0);
3890
3891        #[doc = "Non-secure"]
3892        pub const _1: Self = Self::new(1);
3893    }
3894    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3895    pub struct Saielsr48_SPEC;
3896    pub type Saielsr48 = crate::EnumBitfieldStruct<u8, Saielsr48_SPEC>;
3897    impl Saielsr48 {
3898        #[doc = "Secure"]
3899        pub const _0: Self = Self::new(0);
3900
3901        #[doc = "Non-secure"]
3902        pub const _1: Self = Self::new(1);
3903    }
3904    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3905    pub struct Saielsr49_SPEC;
3906    pub type Saielsr49 = crate::EnumBitfieldStruct<u8, Saielsr49_SPEC>;
3907    impl Saielsr49 {
3908        #[doc = "Secure"]
3909        pub const _0: Self = Self::new(0);
3910
3911        #[doc = "Non-secure"]
3912        pub const _1: Self = Self::new(1);
3913    }
3914    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3915    pub struct Saielsr50_SPEC;
3916    pub type Saielsr50 = crate::EnumBitfieldStruct<u8, Saielsr50_SPEC>;
3917    impl Saielsr50 {
3918        #[doc = "Secure"]
3919        pub const _0: Self = Self::new(0);
3920
3921        #[doc = "Non-secure"]
3922        pub const _1: Self = Self::new(1);
3923    }
3924    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3925    pub struct Saielsr51_SPEC;
3926    pub type Saielsr51 = crate::EnumBitfieldStruct<u8, Saielsr51_SPEC>;
3927    impl Saielsr51 {
3928        #[doc = "Secure"]
3929        pub const _0: Self = Self::new(0);
3930
3931        #[doc = "Non-secure"]
3932        pub const _1: Self = Self::new(1);
3933    }
3934    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3935    pub struct Saielsr52_SPEC;
3936    pub type Saielsr52 = crate::EnumBitfieldStruct<u8, Saielsr52_SPEC>;
3937    impl Saielsr52 {
3938        #[doc = "Secure"]
3939        pub const _0: Self = Self::new(0);
3940
3941        #[doc = "Non-secure"]
3942        pub const _1: Self = Self::new(1);
3943    }
3944    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3945    pub struct Saielsr53_SPEC;
3946    pub type Saielsr53 = crate::EnumBitfieldStruct<u8, Saielsr53_SPEC>;
3947    impl Saielsr53 {
3948        #[doc = "Secure"]
3949        pub const _0: Self = Self::new(0);
3950
3951        #[doc = "Non-secure"]
3952        pub const _1: Self = Self::new(1);
3953    }
3954    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3955    pub struct Saielsr54_SPEC;
3956    pub type Saielsr54 = crate::EnumBitfieldStruct<u8, Saielsr54_SPEC>;
3957    impl Saielsr54 {
3958        #[doc = "Secure"]
3959        pub const _0: Self = Self::new(0);
3960
3961        #[doc = "Non-secure"]
3962        pub const _1: Self = Self::new(1);
3963    }
3964    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3965    pub struct Saielsr55_SPEC;
3966    pub type Saielsr55 = crate::EnumBitfieldStruct<u8, Saielsr55_SPEC>;
3967    impl Saielsr55 {
3968        #[doc = "Secure"]
3969        pub const _0: Self = Self::new(0);
3970
3971        #[doc = "Non-secure"]
3972        pub const _1: Self = Self::new(1);
3973    }
3974    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3975    pub struct Saielsr56_SPEC;
3976    pub type Saielsr56 = crate::EnumBitfieldStruct<u8, Saielsr56_SPEC>;
3977    impl Saielsr56 {
3978        #[doc = "Secure"]
3979        pub const _0: Self = Self::new(0);
3980
3981        #[doc = "Non-secure"]
3982        pub const _1: Self = Self::new(1);
3983    }
3984    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3985    pub struct Saielsr57_SPEC;
3986    pub type Saielsr57 = crate::EnumBitfieldStruct<u8, Saielsr57_SPEC>;
3987    impl Saielsr57 {
3988        #[doc = "Secure"]
3989        pub const _0: Self = Self::new(0);
3990
3991        #[doc = "Non-secure"]
3992        pub const _1: Self = Self::new(1);
3993    }
3994    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3995    pub struct Saielsr58_SPEC;
3996    pub type Saielsr58 = crate::EnumBitfieldStruct<u8, Saielsr58_SPEC>;
3997    impl Saielsr58 {
3998        #[doc = "Secure"]
3999        pub const _0: Self = Self::new(0);
4000
4001        #[doc = "Non-secure"]
4002        pub const _1: Self = Self::new(1);
4003    }
4004    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4005    pub struct Saielsr59_SPEC;
4006    pub type Saielsr59 = crate::EnumBitfieldStruct<u8, Saielsr59_SPEC>;
4007    impl Saielsr59 {
4008        #[doc = "Secure"]
4009        pub const _0: Self = Self::new(0);
4010
4011        #[doc = "Non-secure"]
4012        pub const _1: Self = Self::new(1);
4013    }
4014    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4015    pub struct Saielsr60_SPEC;
4016    pub type Saielsr60 = crate::EnumBitfieldStruct<u8, Saielsr60_SPEC>;
4017    impl Saielsr60 {
4018        #[doc = "Secure"]
4019        pub const _0: Self = Self::new(0);
4020
4021        #[doc = "Non-secure"]
4022        pub const _1: Self = Self::new(1);
4023    }
4024    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4025    pub struct Saielsr61_SPEC;
4026    pub type Saielsr61 = crate::EnumBitfieldStruct<u8, Saielsr61_SPEC>;
4027    impl Saielsr61 {
4028        #[doc = "Secure"]
4029        pub const _0: Self = Self::new(0);
4030
4031        #[doc = "Non-secure"]
4032        pub const _1: Self = Self::new(1);
4033    }
4034    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4035    pub struct Saielsr62_SPEC;
4036    pub type Saielsr62 = crate::EnumBitfieldStruct<u8, Saielsr62_SPEC>;
4037    impl Saielsr62 {
4038        #[doc = "Secure"]
4039        pub const _0: Self = Self::new(0);
4040
4041        #[doc = "Non-secure"]
4042        pub const _1: Self = Self::new(1);
4043    }
4044    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4045    pub struct Saielsr63_SPEC;
4046    pub type Saielsr63 = crate::EnumBitfieldStruct<u8, Saielsr63_SPEC>;
4047    impl Saielsr63 {
4048        #[doc = "Secure"]
4049        pub const _0: Self = Self::new(0);
4050
4051        #[doc = "Non-secure"]
4052        pub const _1: Self = Self::new(1);
4053    }
4054}
4055#[doc(hidden)]
4056#[derive(Copy, Clone, Eq, PartialEq)]
4057pub struct Icusari_SPEC;
4058impl crate::sealed::RegSpec for Icusari_SPEC {
4059    type DataType = u32;
4060}
4061
4062#[doc = "Interrupt Controller Unit Security Attribution Register I"]
4063pub type Icusari = crate::RegValueT<Icusari_SPEC>;
4064
4065impl Icusari {
4066    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4067    #[inline(always)]
4068    pub fn saielsr64(
4069        self,
4070    ) -> crate::common::RegisterField<
4071        0,
4072        0x1,
4073        1,
4074        0,
4075        icusari::Saielsr64,
4076        icusari::Saielsr64,
4077        Icusari_SPEC,
4078        crate::common::RW,
4079    > {
4080        crate::common::RegisterField::<
4081            0,
4082            0x1,
4083            1,
4084            0,
4085            icusari::Saielsr64,
4086            icusari::Saielsr64,
4087            Icusari_SPEC,
4088            crate::common::RW,
4089        >::from_register(self, 0)
4090    }
4091
4092    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4093    #[inline(always)]
4094    pub fn saielsr65(
4095        self,
4096    ) -> crate::common::RegisterField<
4097        1,
4098        0x1,
4099        1,
4100        0,
4101        icusari::Saielsr65,
4102        icusari::Saielsr65,
4103        Icusari_SPEC,
4104        crate::common::RW,
4105    > {
4106        crate::common::RegisterField::<
4107            1,
4108            0x1,
4109            1,
4110            0,
4111            icusari::Saielsr65,
4112            icusari::Saielsr65,
4113            Icusari_SPEC,
4114            crate::common::RW,
4115        >::from_register(self, 0)
4116    }
4117
4118    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4119    #[inline(always)]
4120    pub fn saielsr66(
4121        self,
4122    ) -> crate::common::RegisterField<
4123        2,
4124        0x1,
4125        1,
4126        0,
4127        icusari::Saielsr66,
4128        icusari::Saielsr66,
4129        Icusari_SPEC,
4130        crate::common::RW,
4131    > {
4132        crate::common::RegisterField::<
4133            2,
4134            0x1,
4135            1,
4136            0,
4137            icusari::Saielsr66,
4138            icusari::Saielsr66,
4139            Icusari_SPEC,
4140            crate::common::RW,
4141        >::from_register(self, 0)
4142    }
4143
4144    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4145    #[inline(always)]
4146    pub fn saielsr67(
4147        self,
4148    ) -> crate::common::RegisterField<
4149        3,
4150        0x1,
4151        1,
4152        0,
4153        icusari::Saielsr67,
4154        icusari::Saielsr67,
4155        Icusari_SPEC,
4156        crate::common::RW,
4157    > {
4158        crate::common::RegisterField::<
4159            3,
4160            0x1,
4161            1,
4162            0,
4163            icusari::Saielsr67,
4164            icusari::Saielsr67,
4165            Icusari_SPEC,
4166            crate::common::RW,
4167        >::from_register(self, 0)
4168    }
4169
4170    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4171    #[inline(always)]
4172    pub fn saielsr68(
4173        self,
4174    ) -> crate::common::RegisterField<
4175        4,
4176        0x1,
4177        1,
4178        0,
4179        icusari::Saielsr68,
4180        icusari::Saielsr68,
4181        Icusari_SPEC,
4182        crate::common::RW,
4183    > {
4184        crate::common::RegisterField::<
4185            4,
4186            0x1,
4187            1,
4188            0,
4189            icusari::Saielsr68,
4190            icusari::Saielsr68,
4191            Icusari_SPEC,
4192            crate::common::RW,
4193        >::from_register(self, 0)
4194    }
4195
4196    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4197    #[inline(always)]
4198    pub fn saielsr69(
4199        self,
4200    ) -> crate::common::RegisterField<
4201        5,
4202        0x1,
4203        1,
4204        0,
4205        icusari::Saielsr69,
4206        icusari::Saielsr69,
4207        Icusari_SPEC,
4208        crate::common::RW,
4209    > {
4210        crate::common::RegisterField::<
4211            5,
4212            0x1,
4213            1,
4214            0,
4215            icusari::Saielsr69,
4216            icusari::Saielsr69,
4217            Icusari_SPEC,
4218            crate::common::RW,
4219        >::from_register(self, 0)
4220    }
4221
4222    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4223    #[inline(always)]
4224    pub fn saielsr70(
4225        self,
4226    ) -> crate::common::RegisterField<
4227        6,
4228        0x1,
4229        1,
4230        0,
4231        icusari::Saielsr70,
4232        icusari::Saielsr70,
4233        Icusari_SPEC,
4234        crate::common::RW,
4235    > {
4236        crate::common::RegisterField::<
4237            6,
4238            0x1,
4239            1,
4240            0,
4241            icusari::Saielsr70,
4242            icusari::Saielsr70,
4243            Icusari_SPEC,
4244            crate::common::RW,
4245        >::from_register(self, 0)
4246    }
4247
4248    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4249    #[inline(always)]
4250    pub fn saielsr71(
4251        self,
4252    ) -> crate::common::RegisterField<
4253        7,
4254        0x1,
4255        1,
4256        0,
4257        icusari::Saielsr71,
4258        icusari::Saielsr71,
4259        Icusari_SPEC,
4260        crate::common::RW,
4261    > {
4262        crate::common::RegisterField::<
4263            7,
4264            0x1,
4265            1,
4266            0,
4267            icusari::Saielsr71,
4268            icusari::Saielsr71,
4269            Icusari_SPEC,
4270            crate::common::RW,
4271        >::from_register(self, 0)
4272    }
4273
4274    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4275    #[inline(always)]
4276    pub fn saielsr72(
4277        self,
4278    ) -> crate::common::RegisterField<
4279        8,
4280        0x1,
4281        1,
4282        0,
4283        icusari::Saielsr72,
4284        icusari::Saielsr72,
4285        Icusari_SPEC,
4286        crate::common::RW,
4287    > {
4288        crate::common::RegisterField::<
4289            8,
4290            0x1,
4291            1,
4292            0,
4293            icusari::Saielsr72,
4294            icusari::Saielsr72,
4295            Icusari_SPEC,
4296            crate::common::RW,
4297        >::from_register(self, 0)
4298    }
4299
4300    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4301    #[inline(always)]
4302    pub fn saielsr73(
4303        self,
4304    ) -> crate::common::RegisterField<
4305        9,
4306        0x1,
4307        1,
4308        0,
4309        icusari::Saielsr73,
4310        icusari::Saielsr73,
4311        Icusari_SPEC,
4312        crate::common::RW,
4313    > {
4314        crate::common::RegisterField::<
4315            9,
4316            0x1,
4317            1,
4318            0,
4319            icusari::Saielsr73,
4320            icusari::Saielsr73,
4321            Icusari_SPEC,
4322            crate::common::RW,
4323        >::from_register(self, 0)
4324    }
4325
4326    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4327    #[inline(always)]
4328    pub fn saielsr74(
4329        self,
4330    ) -> crate::common::RegisterField<
4331        10,
4332        0x1,
4333        1,
4334        0,
4335        icusari::Saielsr74,
4336        icusari::Saielsr74,
4337        Icusari_SPEC,
4338        crate::common::RW,
4339    > {
4340        crate::common::RegisterField::<
4341            10,
4342            0x1,
4343            1,
4344            0,
4345            icusari::Saielsr74,
4346            icusari::Saielsr74,
4347            Icusari_SPEC,
4348            crate::common::RW,
4349        >::from_register(self, 0)
4350    }
4351
4352    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4353    #[inline(always)]
4354    pub fn saielsr75(
4355        self,
4356    ) -> crate::common::RegisterField<
4357        11,
4358        0x1,
4359        1,
4360        0,
4361        icusari::Saielsr75,
4362        icusari::Saielsr75,
4363        Icusari_SPEC,
4364        crate::common::RW,
4365    > {
4366        crate::common::RegisterField::<
4367            11,
4368            0x1,
4369            1,
4370            0,
4371            icusari::Saielsr75,
4372            icusari::Saielsr75,
4373            Icusari_SPEC,
4374            crate::common::RW,
4375        >::from_register(self, 0)
4376    }
4377
4378    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4379    #[inline(always)]
4380    pub fn saielsr76(
4381        self,
4382    ) -> crate::common::RegisterField<
4383        12,
4384        0x1,
4385        1,
4386        0,
4387        icusari::Saielsr76,
4388        icusari::Saielsr76,
4389        Icusari_SPEC,
4390        crate::common::RW,
4391    > {
4392        crate::common::RegisterField::<
4393            12,
4394            0x1,
4395            1,
4396            0,
4397            icusari::Saielsr76,
4398            icusari::Saielsr76,
4399            Icusari_SPEC,
4400            crate::common::RW,
4401        >::from_register(self, 0)
4402    }
4403
4404    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4405    #[inline(always)]
4406    pub fn saielsr77(
4407        self,
4408    ) -> crate::common::RegisterField<
4409        13,
4410        0x1,
4411        1,
4412        0,
4413        icusari::Saielsr77,
4414        icusari::Saielsr77,
4415        Icusari_SPEC,
4416        crate::common::RW,
4417    > {
4418        crate::common::RegisterField::<
4419            13,
4420            0x1,
4421            1,
4422            0,
4423            icusari::Saielsr77,
4424            icusari::Saielsr77,
4425            Icusari_SPEC,
4426            crate::common::RW,
4427        >::from_register(self, 0)
4428    }
4429
4430    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4431    #[inline(always)]
4432    pub fn saielsr78(
4433        self,
4434    ) -> crate::common::RegisterField<
4435        14,
4436        0x1,
4437        1,
4438        0,
4439        icusari::Saielsr78,
4440        icusari::Saielsr78,
4441        Icusari_SPEC,
4442        crate::common::RW,
4443    > {
4444        crate::common::RegisterField::<
4445            14,
4446            0x1,
4447            1,
4448            0,
4449            icusari::Saielsr78,
4450            icusari::Saielsr78,
4451            Icusari_SPEC,
4452            crate::common::RW,
4453        >::from_register(self, 0)
4454    }
4455
4456    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4457    #[inline(always)]
4458    pub fn saielsr79(
4459        self,
4460    ) -> crate::common::RegisterField<
4461        15,
4462        0x1,
4463        1,
4464        0,
4465        icusari::Saielsr79,
4466        icusari::Saielsr79,
4467        Icusari_SPEC,
4468        crate::common::RW,
4469    > {
4470        crate::common::RegisterField::<
4471            15,
4472            0x1,
4473            1,
4474            0,
4475            icusari::Saielsr79,
4476            icusari::Saielsr79,
4477            Icusari_SPEC,
4478            crate::common::RW,
4479        >::from_register(self, 0)
4480    }
4481
4482    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4483    #[inline(always)]
4484    pub fn saielsr80(
4485        self,
4486    ) -> crate::common::RegisterField<
4487        16,
4488        0x1,
4489        1,
4490        0,
4491        icusari::Saielsr80,
4492        icusari::Saielsr80,
4493        Icusari_SPEC,
4494        crate::common::RW,
4495    > {
4496        crate::common::RegisterField::<
4497            16,
4498            0x1,
4499            1,
4500            0,
4501            icusari::Saielsr80,
4502            icusari::Saielsr80,
4503            Icusari_SPEC,
4504            crate::common::RW,
4505        >::from_register(self, 0)
4506    }
4507
4508    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4509    #[inline(always)]
4510    pub fn saielsr81(
4511        self,
4512    ) -> crate::common::RegisterField<
4513        17,
4514        0x1,
4515        1,
4516        0,
4517        icusari::Saielsr81,
4518        icusari::Saielsr81,
4519        Icusari_SPEC,
4520        crate::common::RW,
4521    > {
4522        crate::common::RegisterField::<
4523            17,
4524            0x1,
4525            1,
4526            0,
4527            icusari::Saielsr81,
4528            icusari::Saielsr81,
4529            Icusari_SPEC,
4530            crate::common::RW,
4531        >::from_register(self, 0)
4532    }
4533
4534    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4535    #[inline(always)]
4536    pub fn saielsr82(
4537        self,
4538    ) -> crate::common::RegisterField<
4539        18,
4540        0x1,
4541        1,
4542        0,
4543        icusari::Saielsr82,
4544        icusari::Saielsr82,
4545        Icusari_SPEC,
4546        crate::common::RW,
4547    > {
4548        crate::common::RegisterField::<
4549            18,
4550            0x1,
4551            1,
4552            0,
4553            icusari::Saielsr82,
4554            icusari::Saielsr82,
4555            Icusari_SPEC,
4556            crate::common::RW,
4557        >::from_register(self, 0)
4558    }
4559
4560    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4561    #[inline(always)]
4562    pub fn saielsr83(
4563        self,
4564    ) -> crate::common::RegisterField<
4565        19,
4566        0x1,
4567        1,
4568        0,
4569        icusari::Saielsr83,
4570        icusari::Saielsr83,
4571        Icusari_SPEC,
4572        crate::common::RW,
4573    > {
4574        crate::common::RegisterField::<
4575            19,
4576            0x1,
4577            1,
4578            0,
4579            icusari::Saielsr83,
4580            icusari::Saielsr83,
4581            Icusari_SPEC,
4582            crate::common::RW,
4583        >::from_register(self, 0)
4584    }
4585
4586    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4587    #[inline(always)]
4588    pub fn saielsr84(
4589        self,
4590    ) -> crate::common::RegisterField<
4591        20,
4592        0x1,
4593        1,
4594        0,
4595        icusari::Saielsr84,
4596        icusari::Saielsr84,
4597        Icusari_SPEC,
4598        crate::common::RW,
4599    > {
4600        crate::common::RegisterField::<
4601            20,
4602            0x1,
4603            1,
4604            0,
4605            icusari::Saielsr84,
4606            icusari::Saielsr84,
4607            Icusari_SPEC,
4608            crate::common::RW,
4609        >::from_register(self, 0)
4610    }
4611
4612    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4613    #[inline(always)]
4614    pub fn saielsr85(
4615        self,
4616    ) -> crate::common::RegisterField<
4617        21,
4618        0x1,
4619        1,
4620        0,
4621        icusari::Saielsr85,
4622        icusari::Saielsr85,
4623        Icusari_SPEC,
4624        crate::common::RW,
4625    > {
4626        crate::common::RegisterField::<
4627            21,
4628            0x1,
4629            1,
4630            0,
4631            icusari::Saielsr85,
4632            icusari::Saielsr85,
4633            Icusari_SPEC,
4634            crate::common::RW,
4635        >::from_register(self, 0)
4636    }
4637
4638    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4639    #[inline(always)]
4640    pub fn saielsr86(
4641        self,
4642    ) -> crate::common::RegisterField<
4643        22,
4644        0x1,
4645        1,
4646        0,
4647        icusari::Saielsr86,
4648        icusari::Saielsr86,
4649        Icusari_SPEC,
4650        crate::common::RW,
4651    > {
4652        crate::common::RegisterField::<
4653            22,
4654            0x1,
4655            1,
4656            0,
4657            icusari::Saielsr86,
4658            icusari::Saielsr86,
4659            Icusari_SPEC,
4660            crate::common::RW,
4661        >::from_register(self, 0)
4662    }
4663
4664    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4665    #[inline(always)]
4666    pub fn saielsr87(
4667        self,
4668    ) -> crate::common::RegisterField<
4669        23,
4670        0x1,
4671        1,
4672        0,
4673        icusari::Saielsr87,
4674        icusari::Saielsr87,
4675        Icusari_SPEC,
4676        crate::common::RW,
4677    > {
4678        crate::common::RegisterField::<
4679            23,
4680            0x1,
4681            1,
4682            0,
4683            icusari::Saielsr87,
4684            icusari::Saielsr87,
4685            Icusari_SPEC,
4686            crate::common::RW,
4687        >::from_register(self, 0)
4688    }
4689
4690    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4691    #[inline(always)]
4692    pub fn saielsr88(
4693        self,
4694    ) -> crate::common::RegisterField<
4695        24,
4696        0x1,
4697        1,
4698        0,
4699        icusari::Saielsr88,
4700        icusari::Saielsr88,
4701        Icusari_SPEC,
4702        crate::common::RW,
4703    > {
4704        crate::common::RegisterField::<
4705            24,
4706            0x1,
4707            1,
4708            0,
4709            icusari::Saielsr88,
4710            icusari::Saielsr88,
4711            Icusari_SPEC,
4712            crate::common::RW,
4713        >::from_register(self, 0)
4714    }
4715
4716    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4717    #[inline(always)]
4718    pub fn saielsr89(
4719        self,
4720    ) -> crate::common::RegisterField<
4721        25,
4722        0x1,
4723        1,
4724        0,
4725        icusari::Saielsr89,
4726        icusari::Saielsr89,
4727        Icusari_SPEC,
4728        crate::common::RW,
4729    > {
4730        crate::common::RegisterField::<
4731            25,
4732            0x1,
4733            1,
4734            0,
4735            icusari::Saielsr89,
4736            icusari::Saielsr89,
4737            Icusari_SPEC,
4738            crate::common::RW,
4739        >::from_register(self, 0)
4740    }
4741
4742    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4743    #[inline(always)]
4744    pub fn saielsr90(
4745        self,
4746    ) -> crate::common::RegisterField<
4747        26,
4748        0x1,
4749        1,
4750        0,
4751        icusari::Saielsr90,
4752        icusari::Saielsr90,
4753        Icusari_SPEC,
4754        crate::common::RW,
4755    > {
4756        crate::common::RegisterField::<
4757            26,
4758            0x1,
4759            1,
4760            0,
4761            icusari::Saielsr90,
4762            icusari::Saielsr90,
4763            Icusari_SPEC,
4764            crate::common::RW,
4765        >::from_register(self, 0)
4766    }
4767
4768    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4769    #[inline(always)]
4770    pub fn saielsr91(
4771        self,
4772    ) -> crate::common::RegisterField<
4773        27,
4774        0x1,
4775        1,
4776        0,
4777        icusari::Saielsr91,
4778        icusari::Saielsr91,
4779        Icusari_SPEC,
4780        crate::common::RW,
4781    > {
4782        crate::common::RegisterField::<
4783            27,
4784            0x1,
4785            1,
4786            0,
4787            icusari::Saielsr91,
4788            icusari::Saielsr91,
4789            Icusari_SPEC,
4790            crate::common::RW,
4791        >::from_register(self, 0)
4792    }
4793
4794    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4795    #[inline(always)]
4796    pub fn saielsr92(
4797        self,
4798    ) -> crate::common::RegisterField<
4799        28,
4800        0x1,
4801        1,
4802        0,
4803        icusari::Saielsr92,
4804        icusari::Saielsr92,
4805        Icusari_SPEC,
4806        crate::common::RW,
4807    > {
4808        crate::common::RegisterField::<
4809            28,
4810            0x1,
4811            1,
4812            0,
4813            icusari::Saielsr92,
4814            icusari::Saielsr92,
4815            Icusari_SPEC,
4816            crate::common::RW,
4817        >::from_register(self, 0)
4818    }
4819
4820    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4821    #[inline(always)]
4822    pub fn saielsr93(
4823        self,
4824    ) -> crate::common::RegisterField<
4825        29,
4826        0x1,
4827        1,
4828        0,
4829        icusari::Saielsr93,
4830        icusari::Saielsr93,
4831        Icusari_SPEC,
4832        crate::common::RW,
4833    > {
4834        crate::common::RegisterField::<
4835            29,
4836            0x1,
4837            1,
4838            0,
4839            icusari::Saielsr93,
4840            icusari::Saielsr93,
4841            Icusari_SPEC,
4842            crate::common::RW,
4843        >::from_register(self, 0)
4844    }
4845
4846    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4847    #[inline(always)]
4848    pub fn saielsr94(
4849        self,
4850    ) -> crate::common::RegisterField<
4851        30,
4852        0x1,
4853        1,
4854        0,
4855        icusari::Saielsr94,
4856        icusari::Saielsr94,
4857        Icusari_SPEC,
4858        crate::common::RW,
4859    > {
4860        crate::common::RegisterField::<
4861            30,
4862            0x1,
4863            1,
4864            0,
4865            icusari::Saielsr94,
4866            icusari::Saielsr94,
4867            Icusari_SPEC,
4868            crate::common::RW,
4869        >::from_register(self, 0)
4870    }
4871
4872    #[doc = "Security attributes of registers for IELSR95 to IELSR64"]
4873    #[inline(always)]
4874    pub fn saielsr95(
4875        self,
4876    ) -> crate::common::RegisterField<
4877        31,
4878        0x1,
4879        1,
4880        0,
4881        icusari::Saielsr95,
4882        icusari::Saielsr95,
4883        Icusari_SPEC,
4884        crate::common::RW,
4885    > {
4886        crate::common::RegisterField::<
4887            31,
4888            0x1,
4889            1,
4890            0,
4891            icusari::Saielsr95,
4892            icusari::Saielsr95,
4893            Icusari_SPEC,
4894            crate::common::RW,
4895        >::from_register(self, 0)
4896    }
4897}
4898impl ::core::default::Default for Icusari {
4899    #[inline(always)]
4900    fn default() -> Icusari {
4901        <crate::RegValueT<Icusari_SPEC> as RegisterValue<_>>::new(4294967295)
4902    }
4903}
4904pub mod icusari {
4905
4906    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4907    pub struct Saielsr64_SPEC;
4908    pub type Saielsr64 = crate::EnumBitfieldStruct<u8, Saielsr64_SPEC>;
4909    impl Saielsr64 {
4910        #[doc = "Secure"]
4911        pub const _0: Self = Self::new(0);
4912
4913        #[doc = "Non-secure"]
4914        pub const _1: Self = Self::new(1);
4915    }
4916    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4917    pub struct Saielsr65_SPEC;
4918    pub type Saielsr65 = crate::EnumBitfieldStruct<u8, Saielsr65_SPEC>;
4919    impl Saielsr65 {
4920        #[doc = "Secure"]
4921        pub const _0: Self = Self::new(0);
4922
4923        #[doc = "Non-secure"]
4924        pub const _1: Self = Self::new(1);
4925    }
4926    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4927    pub struct Saielsr66_SPEC;
4928    pub type Saielsr66 = crate::EnumBitfieldStruct<u8, Saielsr66_SPEC>;
4929    impl Saielsr66 {
4930        #[doc = "Secure"]
4931        pub const _0: Self = Self::new(0);
4932
4933        #[doc = "Non-secure"]
4934        pub const _1: Self = Self::new(1);
4935    }
4936    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4937    pub struct Saielsr67_SPEC;
4938    pub type Saielsr67 = crate::EnumBitfieldStruct<u8, Saielsr67_SPEC>;
4939    impl Saielsr67 {
4940        #[doc = "Secure"]
4941        pub const _0: Self = Self::new(0);
4942
4943        #[doc = "Non-secure"]
4944        pub const _1: Self = Self::new(1);
4945    }
4946    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4947    pub struct Saielsr68_SPEC;
4948    pub type Saielsr68 = crate::EnumBitfieldStruct<u8, Saielsr68_SPEC>;
4949    impl Saielsr68 {
4950        #[doc = "Secure"]
4951        pub const _0: Self = Self::new(0);
4952
4953        #[doc = "Non-secure"]
4954        pub const _1: Self = Self::new(1);
4955    }
4956    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4957    pub struct Saielsr69_SPEC;
4958    pub type Saielsr69 = crate::EnumBitfieldStruct<u8, Saielsr69_SPEC>;
4959    impl Saielsr69 {
4960        #[doc = "Secure"]
4961        pub const _0: Self = Self::new(0);
4962
4963        #[doc = "Non-secure"]
4964        pub const _1: Self = Self::new(1);
4965    }
4966    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4967    pub struct Saielsr70_SPEC;
4968    pub type Saielsr70 = crate::EnumBitfieldStruct<u8, Saielsr70_SPEC>;
4969    impl Saielsr70 {
4970        #[doc = "Secure"]
4971        pub const _0: Self = Self::new(0);
4972
4973        #[doc = "Non-secure"]
4974        pub const _1: Self = Self::new(1);
4975    }
4976    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4977    pub struct Saielsr71_SPEC;
4978    pub type Saielsr71 = crate::EnumBitfieldStruct<u8, Saielsr71_SPEC>;
4979    impl Saielsr71 {
4980        #[doc = "Secure"]
4981        pub const _0: Self = Self::new(0);
4982
4983        #[doc = "Non-secure"]
4984        pub const _1: Self = Self::new(1);
4985    }
4986    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4987    pub struct Saielsr72_SPEC;
4988    pub type Saielsr72 = crate::EnumBitfieldStruct<u8, Saielsr72_SPEC>;
4989    impl Saielsr72 {
4990        #[doc = "Secure"]
4991        pub const _0: Self = Self::new(0);
4992
4993        #[doc = "Non-secure"]
4994        pub const _1: Self = Self::new(1);
4995    }
4996    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4997    pub struct Saielsr73_SPEC;
4998    pub type Saielsr73 = crate::EnumBitfieldStruct<u8, Saielsr73_SPEC>;
4999    impl Saielsr73 {
5000        #[doc = "Secure"]
5001        pub const _0: Self = Self::new(0);
5002
5003        #[doc = "Non-secure"]
5004        pub const _1: Self = Self::new(1);
5005    }
5006    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5007    pub struct Saielsr74_SPEC;
5008    pub type Saielsr74 = crate::EnumBitfieldStruct<u8, Saielsr74_SPEC>;
5009    impl Saielsr74 {
5010        #[doc = "Secure"]
5011        pub const _0: Self = Self::new(0);
5012
5013        #[doc = "Non-secure"]
5014        pub const _1: Self = Self::new(1);
5015    }
5016    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5017    pub struct Saielsr75_SPEC;
5018    pub type Saielsr75 = crate::EnumBitfieldStruct<u8, Saielsr75_SPEC>;
5019    impl Saielsr75 {
5020        #[doc = "Secure"]
5021        pub const _0: Self = Self::new(0);
5022
5023        #[doc = "Non-secure"]
5024        pub const _1: Self = Self::new(1);
5025    }
5026    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5027    pub struct Saielsr76_SPEC;
5028    pub type Saielsr76 = crate::EnumBitfieldStruct<u8, Saielsr76_SPEC>;
5029    impl Saielsr76 {
5030        #[doc = "Secure"]
5031        pub const _0: Self = Self::new(0);
5032
5033        #[doc = "Non-secure"]
5034        pub const _1: Self = Self::new(1);
5035    }
5036    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5037    pub struct Saielsr77_SPEC;
5038    pub type Saielsr77 = crate::EnumBitfieldStruct<u8, Saielsr77_SPEC>;
5039    impl Saielsr77 {
5040        #[doc = "Secure"]
5041        pub const _0: Self = Self::new(0);
5042
5043        #[doc = "Non-secure"]
5044        pub const _1: Self = Self::new(1);
5045    }
5046    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5047    pub struct Saielsr78_SPEC;
5048    pub type Saielsr78 = crate::EnumBitfieldStruct<u8, Saielsr78_SPEC>;
5049    impl Saielsr78 {
5050        #[doc = "Secure"]
5051        pub const _0: Self = Self::new(0);
5052
5053        #[doc = "Non-secure"]
5054        pub const _1: Self = Self::new(1);
5055    }
5056    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5057    pub struct Saielsr79_SPEC;
5058    pub type Saielsr79 = crate::EnumBitfieldStruct<u8, Saielsr79_SPEC>;
5059    impl Saielsr79 {
5060        #[doc = "Secure"]
5061        pub const _0: Self = Self::new(0);
5062
5063        #[doc = "Non-secure"]
5064        pub const _1: Self = Self::new(1);
5065    }
5066    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5067    pub struct Saielsr80_SPEC;
5068    pub type Saielsr80 = crate::EnumBitfieldStruct<u8, Saielsr80_SPEC>;
5069    impl Saielsr80 {
5070        #[doc = "Secure"]
5071        pub const _0: Self = Self::new(0);
5072
5073        #[doc = "Non-secure"]
5074        pub const _1: Self = Self::new(1);
5075    }
5076    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5077    pub struct Saielsr81_SPEC;
5078    pub type Saielsr81 = crate::EnumBitfieldStruct<u8, Saielsr81_SPEC>;
5079    impl Saielsr81 {
5080        #[doc = "Secure"]
5081        pub const _0: Self = Self::new(0);
5082
5083        #[doc = "Non-secure"]
5084        pub const _1: Self = Self::new(1);
5085    }
5086    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5087    pub struct Saielsr82_SPEC;
5088    pub type Saielsr82 = crate::EnumBitfieldStruct<u8, Saielsr82_SPEC>;
5089    impl Saielsr82 {
5090        #[doc = "Secure"]
5091        pub const _0: Self = Self::new(0);
5092
5093        #[doc = "Non-secure"]
5094        pub const _1: Self = Self::new(1);
5095    }
5096    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5097    pub struct Saielsr83_SPEC;
5098    pub type Saielsr83 = crate::EnumBitfieldStruct<u8, Saielsr83_SPEC>;
5099    impl Saielsr83 {
5100        #[doc = "Secure"]
5101        pub const _0: Self = Self::new(0);
5102
5103        #[doc = "Non-secure"]
5104        pub const _1: Self = Self::new(1);
5105    }
5106    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5107    pub struct Saielsr84_SPEC;
5108    pub type Saielsr84 = crate::EnumBitfieldStruct<u8, Saielsr84_SPEC>;
5109    impl Saielsr84 {
5110        #[doc = "Secure"]
5111        pub const _0: Self = Self::new(0);
5112
5113        #[doc = "Non-secure"]
5114        pub const _1: Self = Self::new(1);
5115    }
5116    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5117    pub struct Saielsr85_SPEC;
5118    pub type Saielsr85 = crate::EnumBitfieldStruct<u8, Saielsr85_SPEC>;
5119    impl Saielsr85 {
5120        #[doc = "Secure"]
5121        pub const _0: Self = Self::new(0);
5122
5123        #[doc = "Non-secure"]
5124        pub const _1: Self = Self::new(1);
5125    }
5126    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5127    pub struct Saielsr86_SPEC;
5128    pub type Saielsr86 = crate::EnumBitfieldStruct<u8, Saielsr86_SPEC>;
5129    impl Saielsr86 {
5130        #[doc = "Secure"]
5131        pub const _0: Self = Self::new(0);
5132
5133        #[doc = "Non-secure"]
5134        pub const _1: Self = Self::new(1);
5135    }
5136    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5137    pub struct Saielsr87_SPEC;
5138    pub type Saielsr87 = crate::EnumBitfieldStruct<u8, Saielsr87_SPEC>;
5139    impl Saielsr87 {
5140        #[doc = "Secure"]
5141        pub const _0: Self = Self::new(0);
5142
5143        #[doc = "Non-secure"]
5144        pub const _1: Self = Self::new(1);
5145    }
5146    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5147    pub struct Saielsr88_SPEC;
5148    pub type Saielsr88 = crate::EnumBitfieldStruct<u8, Saielsr88_SPEC>;
5149    impl Saielsr88 {
5150        #[doc = "Secure"]
5151        pub const _0: Self = Self::new(0);
5152
5153        #[doc = "Non-secure"]
5154        pub const _1: Self = Self::new(1);
5155    }
5156    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5157    pub struct Saielsr89_SPEC;
5158    pub type Saielsr89 = crate::EnumBitfieldStruct<u8, Saielsr89_SPEC>;
5159    impl Saielsr89 {
5160        #[doc = "Secure"]
5161        pub const _0: Self = Self::new(0);
5162
5163        #[doc = "Non-secure"]
5164        pub const _1: Self = Self::new(1);
5165    }
5166    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5167    pub struct Saielsr90_SPEC;
5168    pub type Saielsr90 = crate::EnumBitfieldStruct<u8, Saielsr90_SPEC>;
5169    impl Saielsr90 {
5170        #[doc = "Secure"]
5171        pub const _0: Self = Self::new(0);
5172
5173        #[doc = "Non-secure"]
5174        pub const _1: Self = Self::new(1);
5175    }
5176    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5177    pub struct Saielsr91_SPEC;
5178    pub type Saielsr91 = crate::EnumBitfieldStruct<u8, Saielsr91_SPEC>;
5179    impl Saielsr91 {
5180        #[doc = "Secure"]
5181        pub const _0: Self = Self::new(0);
5182
5183        #[doc = "Non-secure"]
5184        pub const _1: Self = Self::new(1);
5185    }
5186    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5187    pub struct Saielsr92_SPEC;
5188    pub type Saielsr92 = crate::EnumBitfieldStruct<u8, Saielsr92_SPEC>;
5189    impl Saielsr92 {
5190        #[doc = "Secure"]
5191        pub const _0: Self = Self::new(0);
5192
5193        #[doc = "Non-secure"]
5194        pub const _1: Self = Self::new(1);
5195    }
5196    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5197    pub struct Saielsr93_SPEC;
5198    pub type Saielsr93 = crate::EnumBitfieldStruct<u8, Saielsr93_SPEC>;
5199    impl Saielsr93 {
5200        #[doc = "Secure"]
5201        pub const _0: Self = Self::new(0);
5202
5203        #[doc = "Non-secure"]
5204        pub const _1: Self = Self::new(1);
5205    }
5206    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5207    pub struct Saielsr94_SPEC;
5208    pub type Saielsr94 = crate::EnumBitfieldStruct<u8, Saielsr94_SPEC>;
5209    impl Saielsr94 {
5210        #[doc = "Secure"]
5211        pub const _0: Self = Self::new(0);
5212
5213        #[doc = "Non-secure"]
5214        pub const _1: Self = Self::new(1);
5215    }
5216    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5217    pub struct Saielsr95_SPEC;
5218    pub type Saielsr95 = crate::EnumBitfieldStruct<u8, Saielsr95_SPEC>;
5219    impl Saielsr95 {
5220        #[doc = "Secure"]
5221        pub const _0: Self = Self::new(0);
5222
5223        #[doc = "Non-secure"]
5224        pub const _1: Self = Self::new(1);
5225    }
5226}
5227#[doc(hidden)]
5228#[derive(Copy, Clone, Eq, PartialEq)]
5229pub struct Bussara_SPEC;
5230impl crate::sealed::RegSpec for Bussara_SPEC {
5231    type DataType = u32;
5232}
5233
5234#[doc = "BUS Security Attribution Register A"]
5235pub type Bussara = crate::RegValueT<Bussara_SPEC>;
5236
5237impl Bussara {
5238    #[doc = "BUS Security Attribution A0"]
5239    #[inline(always)]
5240    pub fn bussa0(
5241        self,
5242    ) -> crate::common::RegisterField<
5243        0,
5244        0x1,
5245        1,
5246        0,
5247        bussara::Bussa0,
5248        bussara::Bussa0,
5249        Bussara_SPEC,
5250        crate::common::RW,
5251    > {
5252        crate::common::RegisterField::<
5253            0,
5254            0x1,
5255            1,
5256            0,
5257            bussara::Bussa0,
5258            bussara::Bussa0,
5259            Bussara_SPEC,
5260            crate::common::RW,
5261        >::from_register(self, 0)
5262    }
5263}
5264impl ::core::default::Default for Bussara {
5265    #[inline(always)]
5266    fn default() -> Bussara {
5267        <crate::RegValueT<Bussara_SPEC> as RegisterValue<_>>::new(4294967295)
5268    }
5269}
5270pub mod bussara {
5271
5272    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5273    pub struct Bussa0_SPEC;
5274    pub type Bussa0 = crate::EnumBitfieldStruct<u8, Bussa0_SPEC>;
5275    impl Bussa0 {
5276        #[doc = "Secure"]
5277        pub const _0: Self = Self::new(0);
5278
5279        #[doc = "Non-Secure"]
5280        pub const _1: Self = Self::new(1);
5281    }
5282}
5283#[doc(hidden)]
5284#[derive(Copy, Clone, Eq, PartialEq)]
5285pub struct Bussarb_SPEC;
5286impl crate::sealed::RegSpec for Bussarb_SPEC {
5287    type DataType = u32;
5288}
5289
5290#[doc = "BUS Security Attribution Register B"]
5291pub type Bussarb = crate::RegValueT<Bussarb_SPEC>;
5292
5293impl Bussarb {
5294    #[doc = "BUS Security Attribution B0"]
5295    #[inline(always)]
5296    pub fn bussb0(
5297        self,
5298    ) -> crate::common::RegisterField<
5299        0,
5300        0x1,
5301        1,
5302        0,
5303        bussarb::Bussb0,
5304        bussarb::Bussb0,
5305        Bussarb_SPEC,
5306        crate::common::RW,
5307    > {
5308        crate::common::RegisterField::<
5309            0,
5310            0x1,
5311            1,
5312            0,
5313            bussarb::Bussb0,
5314            bussarb::Bussb0,
5315            Bussarb_SPEC,
5316            crate::common::RW,
5317        >::from_register(self, 0)
5318    }
5319}
5320impl ::core::default::Default for Bussarb {
5321    #[inline(always)]
5322    fn default() -> Bussarb {
5323        <crate::RegValueT<Bussarb_SPEC> as RegisterValue<_>>::new(4294967295)
5324    }
5325}
5326pub mod bussarb {
5327
5328    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5329    pub struct Bussb0_SPEC;
5330    pub type Bussb0 = crate::EnumBitfieldStruct<u8, Bussb0_SPEC>;
5331    impl Bussb0 {
5332        #[doc = "Secure"]
5333        pub const _0: Self = Self::new(0);
5334
5335        #[doc = "Non-Secure"]
5336        pub const _1: Self = Self::new(1);
5337    }
5338}
5339#[doc(hidden)]
5340#[derive(Copy, Clone, Eq, PartialEq)]
5341pub struct Mmpusara_SPEC;
5342impl crate::sealed::RegSpec for Mmpusara_SPEC {
5343    type DataType = u32;
5344}
5345
5346#[doc = "Master Memory Protection Unit Security Attribution Register A"]
5347pub type Mmpusara = crate::RegValueT<Mmpusara_SPEC>;
5348
5349impl Mmpusara {
5350    #[doc = "MMPUA Security Attribution (n = 0 to 7)"]
5351    #[inline(always)]
5352    pub fn mmpuasan(
5353        self,
5354    ) -> crate::common::RegisterField<
5355        0,
5356        0xff,
5357        1,
5358        0,
5359        mmpusara::MmpuasAn,
5360        mmpusara::MmpuasAn,
5361        Mmpusara_SPEC,
5362        crate::common::RW,
5363    > {
5364        crate::common::RegisterField::<
5365            0,
5366            0xff,
5367            1,
5368            0,
5369            mmpusara::MmpuasAn,
5370            mmpusara::MmpuasAn,
5371            Mmpusara_SPEC,
5372            crate::common::RW,
5373        >::from_register(self, 0)
5374    }
5375}
5376impl ::core::default::Default for Mmpusara {
5377    #[inline(always)]
5378    fn default() -> Mmpusara {
5379        <crate::RegValueT<Mmpusara_SPEC> as RegisterValue<_>>::new(4294967295)
5380    }
5381}
5382pub mod mmpusara {
5383
5384    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5385    pub struct MmpuasAn_SPEC;
5386    pub type MmpuasAn = crate::EnumBitfieldStruct<u8, MmpuasAn_SPEC>;
5387    impl MmpuasAn {
5388        #[doc = "Secure"]
5389        pub const _0: Self = Self::new(0);
5390
5391        #[doc = "Non-Secure"]
5392        pub const _1: Self = Self::new(1);
5393    }
5394}
5395#[doc(hidden)]
5396#[derive(Copy, Clone, Eq, PartialEq)]
5397pub struct Mmpusarb_SPEC;
5398impl crate::sealed::RegSpec for Mmpusarb_SPEC {
5399    type DataType = u32;
5400}
5401
5402#[doc = "Master Memory Protection Unit Security Attribution Register B"]
5403pub type Mmpusarb = crate::RegValueT<Mmpusarb_SPEC>;
5404
5405impl Mmpusarb {
5406    #[doc = "MMPUB Security Attribution"]
5407    #[inline(always)]
5408    pub fn mmpubsa0(
5409        self,
5410    ) -> crate::common::RegisterField<
5411        0,
5412        0x1,
5413        1,
5414        0,
5415        mmpusarb::Mmpubsa0,
5416        mmpusarb::Mmpubsa0,
5417        Mmpusarb_SPEC,
5418        crate::common::RW,
5419    > {
5420        crate::common::RegisterField::<
5421            0,
5422            0x1,
5423            1,
5424            0,
5425            mmpusarb::Mmpubsa0,
5426            mmpusarb::Mmpubsa0,
5427            Mmpusarb_SPEC,
5428            crate::common::RW,
5429        >::from_register(self, 0)
5430    }
5431}
5432impl ::core::default::Default for Mmpusarb {
5433    #[inline(always)]
5434    fn default() -> Mmpusarb {
5435        <crate::RegValueT<Mmpusarb_SPEC> as RegisterValue<_>>::new(4294967295)
5436    }
5437}
5438pub mod mmpusarb {
5439
5440    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5441    pub struct Mmpubsa0_SPEC;
5442    pub type Mmpubsa0 = crate::EnumBitfieldStruct<u8, Mmpubsa0_SPEC>;
5443    impl Mmpubsa0 {
5444        #[doc = "Secure"]
5445        pub const _0: Self = Self::new(0);
5446
5447        #[doc = "Non-Secure"]
5448        pub const _1: Self = Self::new(1);
5449    }
5450}
5451#[doc(hidden)]
5452#[derive(Copy, Clone, Eq, PartialEq)]
5453pub struct Tzfsar_SPEC;
5454impl crate::sealed::RegSpec for Tzfsar_SPEC {
5455    type DataType = u32;
5456}
5457
5458#[doc = "TrustZone Filter Security Attribution Register"]
5459pub type Tzfsar = crate::RegValueT<Tzfsar_SPEC>;
5460
5461impl Tzfsar {
5462    #[doc = "Security attributes of registers for TrustZone Filter"]
5463    #[inline(always)]
5464    pub fn tzfsa0(
5465        self,
5466    ) -> crate::common::RegisterField<
5467        0,
5468        0x1,
5469        1,
5470        0,
5471        tzfsar::Tzfsa0,
5472        tzfsar::Tzfsa0,
5473        Tzfsar_SPEC,
5474        crate::common::RW,
5475    > {
5476        crate::common::RegisterField::<
5477            0,
5478            0x1,
5479            1,
5480            0,
5481            tzfsar::Tzfsa0,
5482            tzfsar::Tzfsa0,
5483            Tzfsar_SPEC,
5484            crate::common::RW,
5485        >::from_register(self, 0)
5486    }
5487}
5488impl ::core::default::Default for Tzfsar {
5489    #[inline(always)]
5490    fn default() -> Tzfsar {
5491        <crate::RegValueT<Tzfsar_SPEC> as RegisterValue<_>>::new(4294967294)
5492    }
5493}
5494pub mod tzfsar {
5495
5496    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5497    pub struct Tzfsa0_SPEC;
5498    pub type Tzfsa0 = crate::EnumBitfieldStruct<u8, Tzfsa0_SPEC>;
5499    impl Tzfsa0 {
5500        #[doc = "Secure"]
5501        pub const _0: Self = Self::new(0);
5502
5503        #[doc = "Non-secure"]
5504        pub const _1: Self = Self::new(1);
5505    }
5506}
5507#[doc(hidden)]
5508#[derive(Copy, Clone, Eq, PartialEq)]
5509pub struct Cpudsar_SPEC;
5510impl crate::sealed::RegSpec for Cpudsar_SPEC {
5511    type DataType = u32;
5512}
5513
5514#[doc = "CPU Debug Security Attribution Register"]
5515pub type Cpudsar = crate::RegValueT<Cpudsar_SPEC>;
5516
5517impl Cpudsar {
5518    #[doc = "CPU Debug Security Attribution 0"]
5519    #[inline(always)]
5520    pub fn cpudsa0(
5521        self,
5522    ) -> crate::common::RegisterField<
5523        0,
5524        0x1,
5525        1,
5526        0,
5527        cpudsar::Cpudsa0,
5528        cpudsar::Cpudsa0,
5529        Cpudsar_SPEC,
5530        crate::common::RW,
5531    > {
5532        crate::common::RegisterField::<
5533            0,
5534            0x1,
5535            1,
5536            0,
5537            cpudsar::Cpudsa0,
5538            cpudsar::Cpudsa0,
5539            Cpudsar_SPEC,
5540            crate::common::RW,
5541        >::from_register(self, 0)
5542    }
5543}
5544impl ::core::default::Default for Cpudsar {
5545    #[inline(always)]
5546    fn default() -> Cpudsar {
5547        <crate::RegValueT<Cpudsar_SPEC> as RegisterValue<_>>::new(4294967294)
5548    }
5549}
5550pub mod cpudsar {
5551
5552    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5553    pub struct Cpudsa0_SPEC;
5554    pub type Cpudsa0 = crate::EnumBitfieldStruct<u8, Cpudsa0_SPEC>;
5555    impl Cpudsa0 {
5556        #[doc = "Secure"]
5557        pub const _0: Self = Self::new(0);
5558
5559        #[doc = "Non-secure"]
5560        pub const _1: Self = Self::new(1);
5561    }
5562}