ra2e2_pac/
mstp.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.40.00, with svd2pac 0.6.0 on Thu, 24 Jul 2025 04:46:37 +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"Module Stop Control B, C, D"]
28unsafe impl ::core::marker::Send for super::Mstp {}
29unsafe impl ::core::marker::Sync for super::Mstp {}
30impl super::Mstp {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "Module Stop Control Register B"]
38    #[inline(always)]
39    pub const fn mstpcrb(
40        &self,
41    ) -> &'static crate::common::Reg<self::Mstpcrb_SPEC, crate::common::RW> {
42        unsafe {
43            crate::common::Reg::<self::Mstpcrb_SPEC, crate::common::RW>::from_ptr(
44                self._svd2pac_as_ptr().add(0usize),
45            )
46        }
47    }
48
49    #[doc = "Module Stop Control Register C"]
50    #[inline(always)]
51    pub const fn mstpcrc(
52        &self,
53    ) -> &'static crate::common::Reg<self::Mstpcrc_SPEC, crate::common::RW> {
54        unsafe {
55            crate::common::Reg::<self::Mstpcrc_SPEC, crate::common::RW>::from_ptr(
56                self._svd2pac_as_ptr().add(4usize),
57            )
58        }
59    }
60
61    #[doc = "Module Stop Control Register D"]
62    #[inline(always)]
63    pub const fn mstpcrd(
64        &self,
65    ) -> &'static crate::common::Reg<self::Mstpcrd_SPEC, crate::common::RW> {
66        unsafe {
67            crate::common::Reg::<self::Mstpcrd_SPEC, crate::common::RW>::from_ptr(
68                self._svd2pac_as_ptr().add(8usize),
69            )
70        }
71    }
72
73    #[doc = "Low Speed Module R/W Disable Control Register"]
74    #[inline(always)]
75    pub const fn lsmrwdis(
76        &self,
77    ) -> &'static crate::common::Reg<self::Lsmrwdis_SPEC, crate::common::RW> {
78        unsafe {
79            crate::common::Reg::<self::Lsmrwdis_SPEC, crate::common::RW>::from_ptr(
80                self._svd2pac_as_ptr().add(12usize),
81            )
82        }
83    }
84}
85#[doc(hidden)]
86#[derive(Copy, Clone, Eq, PartialEq)]
87pub struct Mstpcrb_SPEC;
88impl crate::sealed::RegSpec for Mstpcrb_SPEC {
89    type DataType = u32;
90}
91
92#[doc = "Module Stop Control Register B"]
93pub type Mstpcrb = crate::RegValueT<Mstpcrb_SPEC>;
94
95impl Mstpcrb {
96    #[doc = "IIC/I3C Bus Interface 0 Module Stop"]
97    #[inline(always)]
98    pub fn mstpb9(
99        self,
100    ) -> crate::common::RegisterField<
101        9,
102        0x1,
103        1,
104        0,
105        mstpcrb::Mstpb9,
106        mstpcrb::Mstpb9,
107        Mstpcrb_SPEC,
108        crate::common::RW,
109    > {
110        crate::common::RegisterField::<
111            9,
112            0x1,
113            1,
114            0,
115            mstpcrb::Mstpb9,
116            mstpcrb::Mstpb9,
117            Mstpcrb_SPEC,
118            crate::common::RW,
119        >::from_register(self, 0)
120    }
121
122    #[doc = "Serial Peripheral Interface 0 Module Stop"]
123    #[inline(always)]
124    pub fn mstpb19(
125        self,
126    ) -> crate::common::RegisterField<
127        19,
128        0x1,
129        1,
130        0,
131        mstpcrb::Mstpb19,
132        mstpcrb::Mstpb19,
133        Mstpcrb_SPEC,
134        crate::common::RW,
135    > {
136        crate::common::RegisterField::<
137            19,
138            0x1,
139            1,
140            0,
141            mstpcrb::Mstpb19,
142            mstpcrb::Mstpb19,
143            Mstpcrb_SPEC,
144            crate::common::RW,
145        >::from_register(self, 0)
146    }
147
148    #[doc = "Serial Communication Interface 9 Module Stop"]
149    #[inline(always)]
150    pub fn mstpb22(
151        self,
152    ) -> crate::common::RegisterField<
153        22,
154        0x1,
155        1,
156        0,
157        mstpcrb::Mstpb22,
158        mstpcrb::Mstpb22,
159        Mstpcrb_SPEC,
160        crate::common::RW,
161    > {
162        crate::common::RegisterField::<
163            22,
164            0x1,
165            1,
166            0,
167            mstpcrb::Mstpb22,
168            mstpcrb::Mstpb22,
169            Mstpcrb_SPEC,
170            crate::common::RW,
171        >::from_register(self, 0)
172    }
173}
174impl ::core::default::Default for Mstpcrb {
175    #[inline(always)]
176    fn default() -> Mstpcrb {
177        <crate::RegValueT<Mstpcrb_SPEC> as RegisterValue<_>>::new(4294967295)
178    }
179}
180pub mod mstpcrb {
181
182    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
183    pub struct Mstpb9_SPEC;
184    pub type Mstpb9 = crate::EnumBitfieldStruct<u8, Mstpb9_SPEC>;
185    impl Mstpb9 {
186        #[doc = "Cancel the module-stop state"]
187        pub const _0: Self = Self::new(0);
188
189        #[doc = "Enter the module-stop state"]
190        pub const _1: Self = Self::new(1);
191    }
192    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
193    pub struct Mstpb19_SPEC;
194    pub type Mstpb19 = crate::EnumBitfieldStruct<u8, Mstpb19_SPEC>;
195    impl Mstpb19 {
196        #[doc = "Cancel the module-stop state"]
197        pub const _0: Self = Self::new(0);
198
199        #[doc = "Enter the module-stop state"]
200        pub const _1: Self = Self::new(1);
201    }
202    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
203    pub struct Mstpb22_SPEC;
204    pub type Mstpb22 = crate::EnumBitfieldStruct<u8, Mstpb22_SPEC>;
205    impl Mstpb22 {
206        #[doc = "Cancel the module-stop state"]
207        pub const _0: Self = Self::new(0);
208
209        #[doc = "Enter the module-stop state"]
210        pub const _1: Self = Self::new(1);
211    }
212}
213#[doc(hidden)]
214#[derive(Copy, Clone, Eq, PartialEq)]
215pub struct Mstpcrc_SPEC;
216impl crate::sealed::RegSpec for Mstpcrc_SPEC {
217    type DataType = u32;
218}
219
220#[doc = "Module Stop Control Register C"]
221pub type Mstpcrc = crate::RegValueT<Mstpcrc_SPEC>;
222
223impl Mstpcrc {
224    #[doc = "Clock Frequency Accuracy Measurement Circuit Module Stop"]
225    #[inline(always)]
226    pub fn mstpc0(
227        self,
228    ) -> crate::common::RegisterField<
229        0,
230        0x1,
231        1,
232        0,
233        mstpcrc::Mstpc0,
234        mstpcrc::Mstpc0,
235        Mstpcrc_SPEC,
236        crate::common::RW,
237    > {
238        crate::common::RegisterField::<
239            0,
240            0x1,
241            1,
242            0,
243            mstpcrc::Mstpc0,
244            mstpcrc::Mstpc0,
245            Mstpcrc_SPEC,
246            crate::common::RW,
247        >::from_register(self, 0)
248    }
249
250    #[doc = "Cyclic Redundancy Check Calculator Module Stop"]
251    #[inline(always)]
252    pub fn mstpc1(
253        self,
254    ) -> crate::common::RegisterField<
255        1,
256        0x1,
257        1,
258        0,
259        mstpcrc::Mstpc1,
260        mstpcrc::Mstpc1,
261        Mstpcrc_SPEC,
262        crate::common::RW,
263    > {
264        crate::common::RegisterField::<
265            1,
266            0x1,
267            1,
268            0,
269            mstpcrc::Mstpc1,
270            mstpcrc::Mstpc1,
271            Mstpcrc_SPEC,
272            crate::common::RW,
273        >::from_register(self, 0)
274    }
275
276    #[doc = "Data Operation Circuit Module Stop"]
277    #[inline(always)]
278    pub fn mstpc13(
279        self,
280    ) -> crate::common::RegisterField<
281        13,
282        0x1,
283        1,
284        0,
285        mstpcrc::Mstpc13,
286        mstpcrc::Mstpc13,
287        Mstpcrc_SPEC,
288        crate::common::RW,
289    > {
290        crate::common::RegisterField::<
291            13,
292            0x1,
293            1,
294            0,
295            mstpcrc::Mstpc13,
296            mstpcrc::Mstpc13,
297            Mstpcrc_SPEC,
298            crate::common::RW,
299        >::from_register(self, 0)
300    }
301
302    #[doc = "Event Link Controller Module Stop"]
303    #[inline(always)]
304    pub fn mstpc14(
305        self,
306    ) -> crate::common::RegisterField<
307        14,
308        0x1,
309        1,
310        0,
311        mstpcrc::Mstpc14,
312        mstpcrc::Mstpc14,
313        Mstpcrc_SPEC,
314        crate::common::RW,
315    > {
316        crate::common::RegisterField::<
317            14,
318            0x1,
319            1,
320            0,
321            mstpcrc::Mstpc14,
322            mstpcrc::Mstpc14,
323            Mstpcrc_SPEC,
324            crate::common::RW,
325        >::from_register(self, 0)
326    }
327
328    #[doc = "True Random Number Generator Module Stop"]
329    #[inline(always)]
330    pub fn mstpc28(
331        self,
332    ) -> crate::common::RegisterField<
333        28,
334        0x1,
335        1,
336        0,
337        mstpcrc::Mstpc28,
338        mstpcrc::Mstpc28,
339        Mstpcrc_SPEC,
340        crate::common::RW,
341    > {
342        crate::common::RegisterField::<
343            28,
344            0x1,
345            1,
346            0,
347            mstpcrc::Mstpc28,
348            mstpcrc::Mstpc28,
349            Mstpcrc_SPEC,
350            crate::common::RW,
351        >::from_register(self, 0)
352    }
353
354    #[doc = "AES Module Stop"]
355    #[inline(always)]
356    pub fn mstpc31(
357        self,
358    ) -> crate::common::RegisterField<
359        31,
360        0x1,
361        1,
362        0,
363        mstpcrc::Mstpc31,
364        mstpcrc::Mstpc31,
365        Mstpcrc_SPEC,
366        crate::common::RW,
367    > {
368        crate::common::RegisterField::<
369            31,
370            0x1,
371            1,
372            0,
373            mstpcrc::Mstpc31,
374            mstpcrc::Mstpc31,
375            Mstpcrc_SPEC,
376            crate::common::RW,
377        >::from_register(self, 0)
378    }
379}
380impl ::core::default::Default for Mstpcrc {
381    #[inline(always)]
382    fn default() -> Mstpcrc {
383        <crate::RegValueT<Mstpcrc_SPEC> as RegisterValue<_>>::new(4294967295)
384    }
385}
386pub mod mstpcrc {
387
388    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
389    pub struct Mstpc0_SPEC;
390    pub type Mstpc0 = crate::EnumBitfieldStruct<u8, Mstpc0_SPEC>;
391    impl Mstpc0 {
392        #[doc = "Cancel the module-stop state"]
393        pub const _0: Self = Self::new(0);
394
395        #[doc = "Enter the module-stop state"]
396        pub const _1: Self = Self::new(1);
397    }
398    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
399    pub struct Mstpc1_SPEC;
400    pub type Mstpc1 = crate::EnumBitfieldStruct<u8, Mstpc1_SPEC>;
401    impl Mstpc1 {
402        #[doc = "Cancel the module-stop state"]
403        pub const _0: Self = Self::new(0);
404
405        #[doc = "Enter the module-stop state"]
406        pub const _1: Self = Self::new(1);
407    }
408    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
409    pub struct Mstpc13_SPEC;
410    pub type Mstpc13 = crate::EnumBitfieldStruct<u8, Mstpc13_SPEC>;
411    impl Mstpc13 {
412        #[doc = "Cancel the module-stop state"]
413        pub const _0: Self = Self::new(0);
414
415        #[doc = "Enter the module-stop state"]
416        pub const _1: Self = Self::new(1);
417    }
418    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
419    pub struct Mstpc14_SPEC;
420    pub type Mstpc14 = crate::EnumBitfieldStruct<u8, Mstpc14_SPEC>;
421    impl Mstpc14 {
422        #[doc = "Cancel the module-stop state"]
423        pub const _0: Self = Self::new(0);
424
425        #[doc = "Enter the module-stop state"]
426        pub const _1: Self = Self::new(1);
427    }
428    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
429    pub struct Mstpc28_SPEC;
430    pub type Mstpc28 = crate::EnumBitfieldStruct<u8, Mstpc28_SPEC>;
431    impl Mstpc28 {
432        #[doc = "Cancel the module-stop state"]
433        pub const _0: Self = Self::new(0);
434
435        #[doc = "Enter the module-stop state"]
436        pub const _1: Self = Self::new(1);
437    }
438    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
439    pub struct Mstpc31_SPEC;
440    pub type Mstpc31 = crate::EnumBitfieldStruct<u8, Mstpc31_SPEC>;
441    impl Mstpc31 {
442        #[doc = "Cancel the module-stop state"]
443        pub const _0: Self = Self::new(0);
444
445        #[doc = "Enter the module-stop state"]
446        pub const _1: Self = Self::new(1);
447    }
448}
449#[doc(hidden)]
450#[derive(Copy, Clone, Eq, PartialEq)]
451pub struct Mstpcrd_SPEC;
452impl crate::sealed::RegSpec for Mstpcrd_SPEC {
453    type DataType = u32;
454}
455
456#[doc = "Module Stop Control Register D"]
457pub type Mstpcrd = crate::RegValueT<Mstpcrd_SPEC>;
458
459impl Mstpcrd {
460    #[doc = "Low Power Asynchronous General Purpose Timer 1 Module Stop"]
461    #[inline(always)]
462    pub fn mstpd2(
463        self,
464    ) -> crate::common::RegisterField<
465        2,
466        0x1,
467        1,
468        0,
469        mstpcrd::Mstpd2,
470        mstpcrd::Mstpd2,
471        Mstpcrd_SPEC,
472        crate::common::RW,
473    > {
474        crate::common::RegisterField::<
475            2,
476            0x1,
477            1,
478            0,
479            mstpcrd::Mstpd2,
480            mstpcrd::Mstpd2,
481            Mstpcrd_SPEC,
482            crate::common::RW,
483        >::from_register(self, 0)
484    }
485
486    #[doc = "Low Power Asynchronous General Purpose Timer 0 Module Stop"]
487    #[inline(always)]
488    pub fn mstpd3(
489        self,
490    ) -> crate::common::RegisterField<
491        3,
492        0x1,
493        1,
494        0,
495        mstpcrd::Mstpd3,
496        mstpcrd::Mstpd3,
497        Mstpcrd_SPEC,
498        crate::common::RW,
499    > {
500        crate::common::RegisterField::<
501            3,
502            0x1,
503            1,
504            0,
505            mstpcrd::Mstpd3,
506            mstpcrd::Mstpd3,
507            Mstpcrd_SPEC,
508            crate::common::RW,
509        >::from_register(self, 0)
510    }
511
512    #[doc = "General PWM Timer 164 to 169 and PWM Delay Generation Circuit Module Stop"]
513    #[inline(always)]
514    pub fn mstpd6(
515        self,
516    ) -> crate::common::RegisterField<
517        6,
518        0x1,
519        1,
520        0,
521        mstpcrd::Mstpd6,
522        mstpcrd::Mstpd6,
523        Mstpcrd_SPEC,
524        crate::common::RW,
525    > {
526        crate::common::RegisterField::<
527            6,
528            0x1,
529            1,
530            0,
531            mstpcrd::Mstpd6,
532            mstpcrd::Mstpd6,
533            Mstpcrd_SPEC,
534            crate::common::RW,
535        >::from_register(self, 0)
536    }
537
538    #[doc = "Port Output Enable for GPT Module Stop"]
539    #[inline(always)]
540    pub fn mstpd14(
541        self,
542    ) -> crate::common::RegisterField<
543        14,
544        0x1,
545        1,
546        0,
547        mstpcrd::Mstpd14,
548        mstpcrd::Mstpd14,
549        Mstpcrd_SPEC,
550        crate::common::RW,
551    > {
552        crate::common::RegisterField::<
553            14,
554            0x1,
555            1,
556            0,
557            mstpcrd::Mstpd14,
558            mstpcrd::Mstpd14,
559            Mstpcrd_SPEC,
560            crate::common::RW,
561        >::from_register(self, 0)
562    }
563
564    #[doc = "12-bit A/D Converter Module Stop"]
565    #[inline(always)]
566    pub fn mstpd16(
567        self,
568    ) -> crate::common::RegisterField<
569        16,
570        0x1,
571        1,
572        0,
573        mstpcrd::Mstpd16,
574        mstpcrd::Mstpd16,
575        Mstpcrd_SPEC,
576        crate::common::RW,
577    > {
578        crate::common::RegisterField::<
579            16,
580            0x1,
581            1,
582            0,
583            mstpcrd::Mstpd16,
584            mstpcrd::Mstpd16,
585            Mstpcrd_SPEC,
586            crate::common::RW,
587        >::from_register(self, 0)
588    }
589}
590impl ::core::default::Default for Mstpcrd {
591    #[inline(always)]
592    fn default() -> Mstpcrd {
593        <crate::RegValueT<Mstpcrd_SPEC> as RegisterValue<_>>::new(4294967295)
594    }
595}
596pub mod mstpcrd {
597
598    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
599    pub struct Mstpd2_SPEC;
600    pub type Mstpd2 = crate::EnumBitfieldStruct<u8, Mstpd2_SPEC>;
601    impl Mstpd2 {
602        #[doc = "Cancel the module-stop state"]
603        pub const _0: Self = Self::new(0);
604
605        #[doc = "Enter the module-stop state"]
606        pub const _1: Self = Self::new(1);
607    }
608    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
609    pub struct Mstpd3_SPEC;
610    pub type Mstpd3 = crate::EnumBitfieldStruct<u8, Mstpd3_SPEC>;
611    impl Mstpd3 {
612        #[doc = "Cancel the module-stop state"]
613        pub const _0: Self = Self::new(0);
614
615        #[doc = "Enter the module-stop state"]
616        pub const _1: Self = Self::new(1);
617    }
618    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
619    pub struct Mstpd6_SPEC;
620    pub type Mstpd6 = crate::EnumBitfieldStruct<u8, Mstpd6_SPEC>;
621    impl Mstpd6 {
622        #[doc = "Cancel the module-stop state"]
623        pub const _0: Self = Self::new(0);
624
625        #[doc = "Enter the module-stop state"]
626        pub const _1: Self = Self::new(1);
627    }
628    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
629    pub struct Mstpd14_SPEC;
630    pub type Mstpd14 = crate::EnumBitfieldStruct<u8, Mstpd14_SPEC>;
631    impl Mstpd14 {
632        #[doc = "Cancel the module-stop state"]
633        pub const _0: Self = Self::new(0);
634
635        #[doc = "Enter the module-stop state"]
636        pub const _1: Self = Self::new(1);
637    }
638    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
639    pub struct Mstpd16_SPEC;
640    pub type Mstpd16 = crate::EnumBitfieldStruct<u8, Mstpd16_SPEC>;
641    impl Mstpd16 {
642        #[doc = "Cancel the module-stop state"]
643        pub const _0: Self = Self::new(0);
644
645        #[doc = "Enter the module-stop state"]
646        pub const _1: Self = Self::new(1);
647    }
648}
649#[doc(hidden)]
650#[derive(Copy, Clone, Eq, PartialEq)]
651pub struct Lsmrwdis_SPEC;
652impl crate::sealed::RegSpec for Lsmrwdis_SPEC {
653    type DataType = u16;
654}
655
656#[doc = "Low Speed Module R/W Disable Control Register"]
657pub type Lsmrwdis = crate::RegValueT<Lsmrwdis_SPEC>;
658
659impl Lsmrwdis {
660    #[doc = "WDT Operate Clock Control"]
661    #[inline(always)]
662    pub fn wdtdis(
663        self,
664    ) -> crate::common::RegisterField<
665        1,
666        0x1,
667        1,
668        0,
669        lsmrwdis::Wdtdis,
670        lsmrwdis::Wdtdis,
671        Lsmrwdis_SPEC,
672        crate::common::RW,
673    > {
674        crate::common::RegisterField::<
675            1,
676            0x1,
677            1,
678            0,
679            lsmrwdis::Wdtdis,
680            lsmrwdis::Wdtdis,
681            Lsmrwdis_SPEC,
682            crate::common::RW,
683        >::from_register(self, 0)
684    }
685
686    #[doc = "IWDT Register Clock Control"]
687    #[inline(always)]
688    pub fn iwdtids(
689        self,
690    ) -> crate::common::RegisterField<
691        2,
692        0x1,
693        1,
694        0,
695        lsmrwdis::Iwdtids,
696        lsmrwdis::Iwdtids,
697        Lsmrwdis_SPEC,
698        crate::common::RW,
699    > {
700        crate::common::RegisterField::<
701            2,
702            0x1,
703            1,
704            0,
705            lsmrwdis::Iwdtids,
706            lsmrwdis::Iwdtids,
707            Lsmrwdis_SPEC,
708            crate::common::RW,
709        >::from_register(self, 0)
710    }
711
712    #[doc = "Write Enable for bits \\[2:0\\]"]
713    #[inline(always)]
714    pub fn wren(
715        self,
716    ) -> crate::common::RegisterField<
717        7,
718        0x1,
719        1,
720        0,
721        lsmrwdis::Wren,
722        lsmrwdis::Wren,
723        Lsmrwdis_SPEC,
724        crate::common::RW,
725    > {
726        crate::common::RegisterField::<
727            7,
728            0x1,
729            1,
730            0,
731            lsmrwdis::Wren,
732            lsmrwdis::Wren,
733            Lsmrwdis_SPEC,
734            crate::common::RW,
735        >::from_register(self, 0)
736    }
737
738    #[doc = "LSMRWDIS Key Code"]
739    #[inline(always)]
740    pub fn prkey(
741        self,
742    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, u8, Lsmrwdis_SPEC, crate::common::W> {
743        crate::common::RegisterField::<8,0xff,1,0,u8,u8,Lsmrwdis_SPEC,crate::common::W>::from_register(self,0)
744    }
745}
746impl ::core::default::Default for Lsmrwdis {
747    #[inline(always)]
748    fn default() -> Lsmrwdis {
749        <crate::RegValueT<Lsmrwdis_SPEC> as RegisterValue<_>>::new(0)
750    }
751}
752pub mod lsmrwdis {
753
754    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
755    pub struct Wdtdis_SPEC;
756    pub type Wdtdis = crate::EnumBitfieldStruct<u8, Wdtdis_SPEC>;
757    impl Wdtdis {
758        #[doc = "WDT operates as normal"]
759        pub const _0: Self = Self::new(0);
760
761        #[doc = "Stop the WDT clock and register R/W clock"]
762        pub const _1: Self = Self::new(1);
763    }
764    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
765    pub struct Iwdtids_SPEC;
766    pub type Iwdtids = crate::EnumBitfieldStruct<u8, Iwdtids_SPEC>;
767    impl Iwdtids {
768        #[doc = "IWDT operates as normal"]
769        pub const _0: Self = Self::new(0);
770
771        #[doc = "Stop the IWDT register R/W clock"]
772        pub const _1: Self = Self::new(1);
773    }
774    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
775    pub struct Wren_SPEC;
776    pub type Wren = crate::EnumBitfieldStruct<u8, Wren_SPEC>;
777    impl Wren {
778        #[doc = "Write protect for bits \\[2:0\\]"]
779        pub const _0: Self = Self::new(0);
780
781        #[doc = "Write enable for bits \\[2:0\\]"]
782        pub const _1: Self = Self::new(1);
783    }
784}