Skip to main content

ra4e2_pac/
cpscu.rs

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