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