Skip to main content

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