Skip to main content

ra2a2_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.20.02, with svd2pac 0.6.1 on Sun, 15 Mar 2026 07:01:00 +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 A, 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 = "I2C Bus Interface 1 Module Stop"]
97    #[inline(always)]
98    pub fn mstpb8(
99        self,
100    ) -> crate::common::RegisterField<
101        8,
102        0x1,
103        1,
104        0,
105        mstpcrb::Mstpb8,
106        mstpcrb::Mstpb8,
107        Mstpcrb_SPEC,
108        crate::common::RW,
109    > {
110        crate::common::RegisterField::<
111            8,
112            0x1,
113            1,
114            0,
115            mstpcrb::Mstpb8,
116            mstpcrb::Mstpb8,
117            Mstpcrb_SPEC,
118            crate::common::RW,
119        >::from_register(self, 0)
120    }
121
122    #[doc = "I2C Bus Interface 0 Module Stop"]
123    #[inline(always)]
124    pub fn mstpb9(
125        self,
126    ) -> crate::common::RegisterField<
127        9,
128        0x1,
129        1,
130        0,
131        mstpcrb::Mstpb9,
132        mstpcrb::Mstpb9,
133        Mstpcrb_SPEC,
134        crate::common::RW,
135    > {
136        crate::common::RegisterField::<
137            9,
138            0x1,
139            1,
140            0,
141            mstpcrb::Mstpb9,
142            mstpcrb::Mstpb9,
143            Mstpcrb_SPEC,
144            crate::common::RW,
145        >::from_register(self, 0)
146    }
147
148    #[doc = "Serial Peripheral Interface 0 Module Stop"]
149    #[inline(always)]
150    pub fn mstpb19(
151        self,
152    ) -> crate::common::RegisterField<
153        19,
154        0x1,
155        1,
156        0,
157        mstpcrb::Mstpb19,
158        mstpcrb::Mstpb19,
159        Mstpcrb_SPEC,
160        crate::common::RW,
161    > {
162        crate::common::RegisterField::<
163            19,
164            0x1,
165            1,
166            0,
167            mstpcrb::Mstpb19,
168            mstpcrb::Mstpb19,
169            Mstpcrb_SPEC,
170            crate::common::RW,
171        >::from_register(self, 0)
172    }
173
174    #[doc = "Serial Communication Interface 9 Module Stop"]
175    #[inline(always)]
176    pub fn mstpb22(
177        self,
178    ) -> crate::common::RegisterField<
179        22,
180        0x1,
181        1,
182        0,
183        mstpcrb::Mstpb22,
184        mstpcrb::Mstpb22,
185        Mstpcrb_SPEC,
186        crate::common::RW,
187    > {
188        crate::common::RegisterField::<
189            22,
190            0x1,
191            1,
192            0,
193            mstpcrb::Mstpb22,
194            mstpcrb::Mstpb22,
195            Mstpcrb_SPEC,
196            crate::common::RW,
197        >::from_register(self, 0)
198    }
199
200    #[doc = "Serial Communication Interface 3 Module Stop"]
201    #[inline(always)]
202    pub fn mstpb28(
203        self,
204    ) -> crate::common::RegisterField<
205        28,
206        0x1,
207        1,
208        0,
209        mstpcrb::Mstpb28,
210        mstpcrb::Mstpb28,
211        Mstpcrb_SPEC,
212        crate::common::RW,
213    > {
214        crate::common::RegisterField::<
215            28,
216            0x1,
217            1,
218            0,
219            mstpcrb::Mstpb28,
220            mstpcrb::Mstpb28,
221            Mstpcrb_SPEC,
222            crate::common::RW,
223        >::from_register(self, 0)
224    }
225
226    #[doc = "Serial Communication Interface 2 Module Stop"]
227    #[inline(always)]
228    pub fn mstpb29(
229        self,
230    ) -> crate::common::RegisterField<
231        29,
232        0x1,
233        1,
234        0,
235        mstpcrb::Mstpb29,
236        mstpcrb::Mstpb29,
237        Mstpcrb_SPEC,
238        crate::common::RW,
239    > {
240        crate::common::RegisterField::<
241            29,
242            0x1,
243            1,
244            0,
245            mstpcrb::Mstpb29,
246            mstpcrb::Mstpb29,
247            Mstpcrb_SPEC,
248            crate::common::RW,
249        >::from_register(self, 0)
250    }
251
252    #[doc = "Serial Communication Interface 1 Module Stop"]
253    #[inline(always)]
254    pub fn mstpb30(
255        self,
256    ) -> crate::common::RegisterField<
257        30,
258        0x1,
259        1,
260        0,
261        mstpcrb::Mstpb30,
262        mstpcrb::Mstpb30,
263        Mstpcrb_SPEC,
264        crate::common::RW,
265    > {
266        crate::common::RegisterField::<
267            30,
268            0x1,
269            1,
270            0,
271            mstpcrb::Mstpb30,
272            mstpcrb::Mstpb30,
273            Mstpcrb_SPEC,
274            crate::common::RW,
275        >::from_register(self, 0)
276    }
277
278    #[doc = "Serial Communication Interface 0 Module Stop"]
279    #[inline(always)]
280    pub fn mstpb31(
281        self,
282    ) -> crate::common::RegisterField<
283        31,
284        0x1,
285        1,
286        0,
287        mstpcrb::Mstpb31,
288        mstpcrb::Mstpb31,
289        Mstpcrb_SPEC,
290        crate::common::RW,
291    > {
292        crate::common::RegisterField::<
293            31,
294            0x1,
295            1,
296            0,
297            mstpcrb::Mstpb31,
298            mstpcrb::Mstpb31,
299            Mstpcrb_SPEC,
300            crate::common::RW,
301        >::from_register(self, 0)
302    }
303}
304impl ::core::default::Default for Mstpcrb {
305    #[inline(always)]
306    fn default() -> Mstpcrb {
307        <crate::RegValueT<Mstpcrb_SPEC> as RegisterValue<_>>::new(4294967295)
308    }
309}
310pub mod mstpcrb {
311
312    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
313    pub struct Mstpb8_SPEC;
314    pub type Mstpb8 = crate::EnumBitfieldStruct<u8, Mstpb8_SPEC>;
315    impl Mstpb8 {
316        #[doc = "Cancel the module-stop state"]
317        pub const _0: Self = Self::new(0);
318
319        #[doc = "Enter the module-stop state"]
320        pub const _1: Self = Self::new(1);
321    }
322    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
323    pub struct Mstpb9_SPEC;
324    pub type Mstpb9 = crate::EnumBitfieldStruct<u8, Mstpb9_SPEC>;
325    impl Mstpb9 {
326        #[doc = "Cancel the module-stop state"]
327        pub const _0: Self = Self::new(0);
328
329        #[doc = "Enter the module-stop state"]
330        pub const _1: Self = Self::new(1);
331    }
332    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
333    pub struct Mstpb19_SPEC;
334    pub type Mstpb19 = crate::EnumBitfieldStruct<u8, Mstpb19_SPEC>;
335    impl Mstpb19 {
336        #[doc = "Cancel the module-stop state"]
337        pub const _0: Self = Self::new(0);
338
339        #[doc = "Enter the module-stop state"]
340        pub const _1: Self = Self::new(1);
341    }
342    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
343    pub struct Mstpb22_SPEC;
344    pub type Mstpb22 = crate::EnumBitfieldStruct<u8, Mstpb22_SPEC>;
345    impl Mstpb22 {
346        #[doc = "Cancel the module-stop state"]
347        pub const _0: Self = Self::new(0);
348
349        #[doc = "Enter the module-stop state"]
350        pub const _1: Self = Self::new(1);
351    }
352    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
353    pub struct Mstpb28_SPEC;
354    pub type Mstpb28 = crate::EnumBitfieldStruct<u8, Mstpb28_SPEC>;
355    impl Mstpb28 {
356        #[doc = "Cancel the module-stop state"]
357        pub const _0: Self = Self::new(0);
358
359        #[doc = "Enter the module-stop state"]
360        pub const _1: Self = Self::new(1);
361    }
362    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
363    pub struct Mstpb29_SPEC;
364    pub type Mstpb29 = crate::EnumBitfieldStruct<u8, Mstpb29_SPEC>;
365    impl Mstpb29 {
366        #[doc = "Cancel the module-stop state"]
367        pub const _0: Self = Self::new(0);
368
369        #[doc = "Enter the module-stop state"]
370        pub const _1: Self = Self::new(1);
371    }
372    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
373    pub struct Mstpb30_SPEC;
374    pub type Mstpb30 = crate::EnumBitfieldStruct<u8, Mstpb30_SPEC>;
375    impl Mstpb30 {
376        #[doc = "Cancel the module-stop state"]
377        pub const _0: Self = Self::new(0);
378
379        #[doc = "Enter the module-stop state"]
380        pub const _1: Self = Self::new(1);
381    }
382    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
383    pub struct Mstpb31_SPEC;
384    pub type Mstpb31 = crate::EnumBitfieldStruct<u8, Mstpb31_SPEC>;
385    impl Mstpb31 {
386        #[doc = "Cancel the module-stop state"]
387        pub const _0: Self = Self::new(0);
388
389        #[doc = "Enter the module-stop state"]
390        pub const _1: Self = Self::new(1);
391    }
392}
393#[doc(hidden)]
394#[derive(Copy, Clone, Eq, PartialEq)]
395pub struct Mstpcrc_SPEC;
396impl crate::sealed::RegSpec for Mstpcrc_SPEC {
397    type DataType = u32;
398}
399
400#[doc = "Module Stop Control Register C"]
401pub type Mstpcrc = crate::RegValueT<Mstpcrc_SPEC>;
402
403impl Mstpcrc {
404    #[doc = "Clock Frequency Accuracy Measurement Circuit Module Stop"]
405    #[inline(always)]
406    pub fn mstpc0(
407        self,
408    ) -> crate::common::RegisterField<
409        0,
410        0x1,
411        1,
412        0,
413        mstpcrc::Mstpc0,
414        mstpcrc::Mstpc0,
415        Mstpcrc_SPEC,
416        crate::common::RW,
417    > {
418        crate::common::RegisterField::<
419            0,
420            0x1,
421            1,
422            0,
423            mstpcrc::Mstpc0,
424            mstpcrc::Mstpc0,
425            Mstpcrc_SPEC,
426            crate::common::RW,
427        >::from_register(self, 0)
428    }
429
430    #[doc = "Cyclic Redundancy Check Calculator Module Stop"]
431    #[inline(always)]
432    pub fn mstpc1(
433        self,
434    ) -> crate::common::RegisterField<
435        1,
436        0x1,
437        1,
438        0,
439        mstpcrc::Mstpc1,
440        mstpcrc::Mstpc1,
441        Mstpcrc_SPEC,
442        crate::common::RW,
443    > {
444        crate::common::RegisterField::<
445            1,
446            0x1,
447            1,
448            0,
449            mstpcrc::Mstpc1,
450            mstpcrc::Mstpc1,
451            Mstpcrc_SPEC,
452            crate::common::RW,
453        >::from_register(self, 0)
454    }
455
456    #[doc = "Segment LCD Controller Module Stop"]
457    #[inline(always)]
458    pub fn mstpc4(
459        self,
460    ) -> crate::common::RegisterField<
461        4,
462        0x1,
463        1,
464        0,
465        mstpcrc::Mstpc4,
466        mstpcrc::Mstpc4,
467        Mstpcrc_SPEC,
468        crate::common::RW,
469    > {
470        crate::common::RegisterField::<
471            4,
472            0x1,
473            1,
474            0,
475            mstpcrc::Mstpc4,
476            mstpcrc::Mstpc4,
477            Mstpcrc_SPEC,
478            crate::common::RW,
479        >::from_register(self, 0)
480    }
481
482    #[doc = "Data Operation Circuit Module Stop"]
483    #[inline(always)]
484    pub fn mstpc13(
485        self,
486    ) -> crate::common::RegisterField<
487        13,
488        0x1,
489        1,
490        0,
491        mstpcrc::Mstpc13,
492        mstpcrc::Mstpc13,
493        Mstpcrc_SPEC,
494        crate::common::RW,
495    > {
496        crate::common::RegisterField::<
497            13,
498            0x1,
499            1,
500            0,
501            mstpcrc::Mstpc13,
502            mstpcrc::Mstpc13,
503            Mstpcrc_SPEC,
504            crate::common::RW,
505        >::from_register(self, 0)
506    }
507
508    #[doc = "Event Link Controller Module Stop"]
509    #[inline(always)]
510    pub fn mstpc14(
511        self,
512    ) -> crate::common::RegisterField<
513        14,
514        0x1,
515        1,
516        0,
517        mstpcrc::Mstpc14,
518        mstpcrc::Mstpc14,
519        Mstpcrc_SPEC,
520        crate::common::RW,
521    > {
522        crate::common::RegisterField::<
523            14,
524            0x1,
525            1,
526            0,
527            mstpcrc::Mstpc14,
528            mstpcrc::Mstpc14,
529            Mstpcrc_SPEC,
530            crate::common::RW,
531        >::from_register(self, 0)
532    }
533
534    #[doc = "32-bit Multiply-Accumulator Module Stop"]
535    #[inline(always)]
536    pub fn mstpc15(
537        self,
538    ) -> crate::common::RegisterField<
539        15,
540        0x1,
541        1,
542        0,
543        mstpcrc::Mstpc15,
544        mstpcrc::Mstpc15,
545        Mstpcrc_SPEC,
546        crate::common::RW,
547    > {
548        crate::common::RegisterField::<
549            15,
550            0x1,
551            1,
552            0,
553            mstpcrc::Mstpc15,
554            mstpcrc::Mstpc15,
555            Mstpcrc_SPEC,
556            crate::common::RW,
557        >::from_register(self, 0)
558    }
559
560    #[doc = "True Random Number Generator Module Stop"]
561    #[inline(always)]
562    pub fn mstpc28(
563        self,
564    ) -> crate::common::RegisterField<
565        28,
566        0x1,
567        1,
568        0,
569        mstpcrc::Mstpc28,
570        mstpcrc::Mstpc28,
571        Mstpcrc_SPEC,
572        crate::common::RW,
573    > {
574        crate::common::RegisterField::<
575            28,
576            0x1,
577            1,
578            0,
579            mstpcrc::Mstpc28,
580            mstpcrc::Mstpc28,
581            Mstpcrc_SPEC,
582            crate::common::RW,
583        >::from_register(self, 0)
584    }
585
586    #[doc = "AES Module Stop"]
587    #[inline(always)]
588    pub fn mstpc31(
589        self,
590    ) -> crate::common::RegisterField<
591        31,
592        0x1,
593        1,
594        0,
595        mstpcrc::Mstpc31,
596        mstpcrc::Mstpc31,
597        Mstpcrc_SPEC,
598        crate::common::RW,
599    > {
600        crate::common::RegisterField::<
601            31,
602            0x1,
603            1,
604            0,
605            mstpcrc::Mstpc31,
606            mstpcrc::Mstpc31,
607            Mstpcrc_SPEC,
608            crate::common::RW,
609        >::from_register(self, 0)
610    }
611}
612impl ::core::default::Default for Mstpcrc {
613    #[inline(always)]
614    fn default() -> Mstpcrc {
615        <crate::RegValueT<Mstpcrc_SPEC> as RegisterValue<_>>::new(4294967295)
616    }
617}
618pub mod mstpcrc {
619
620    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
621    pub struct Mstpc0_SPEC;
622    pub type Mstpc0 = crate::EnumBitfieldStruct<u8, Mstpc0_SPEC>;
623    impl Mstpc0 {
624        #[doc = "Cancel the module-stop state"]
625        pub const _0: Self = Self::new(0);
626
627        #[doc = "Enter the module-stop state"]
628        pub const _1: Self = Self::new(1);
629    }
630    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
631    pub struct Mstpc1_SPEC;
632    pub type Mstpc1 = crate::EnumBitfieldStruct<u8, Mstpc1_SPEC>;
633    impl Mstpc1 {
634        #[doc = "Cancel the module-stop state"]
635        pub const _0: Self = Self::new(0);
636
637        #[doc = "Enter the module-stop state"]
638        pub const _1: Self = Self::new(1);
639    }
640    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
641    pub struct Mstpc4_SPEC;
642    pub type Mstpc4 = crate::EnumBitfieldStruct<u8, Mstpc4_SPEC>;
643    impl Mstpc4 {
644        #[doc = "Cancel the module-stop state"]
645        pub const _0: Self = Self::new(0);
646
647        #[doc = "Enter the module-stop state"]
648        pub const _1: Self = Self::new(1);
649    }
650    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
651    pub struct Mstpc13_SPEC;
652    pub type Mstpc13 = crate::EnumBitfieldStruct<u8, Mstpc13_SPEC>;
653    impl Mstpc13 {
654        #[doc = "Cancel the module-stop state"]
655        pub const _0: Self = Self::new(0);
656
657        #[doc = "Enter the module-stop state"]
658        pub const _1: Self = Self::new(1);
659    }
660    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
661    pub struct Mstpc14_SPEC;
662    pub type Mstpc14 = crate::EnumBitfieldStruct<u8, Mstpc14_SPEC>;
663    impl Mstpc14 {
664        #[doc = "Cancel the module-stop state"]
665        pub const _0: Self = Self::new(0);
666
667        #[doc = "Enter the module-stop state"]
668        pub const _1: Self = Self::new(1);
669    }
670    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
671    pub struct Mstpc15_SPEC;
672    pub type Mstpc15 = crate::EnumBitfieldStruct<u8, Mstpc15_SPEC>;
673    impl Mstpc15 {
674        #[doc = "Cancel the module-stop state"]
675        pub const _0: Self = Self::new(0);
676
677        #[doc = "Enter the module-stop state"]
678        pub const _1: Self = Self::new(1);
679    }
680    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
681    pub struct Mstpc28_SPEC;
682    pub type Mstpc28 = crate::EnumBitfieldStruct<u8, Mstpc28_SPEC>;
683    impl Mstpc28 {
684        #[doc = "Cancel the module-stop state"]
685        pub const _0: Self = Self::new(0);
686
687        #[doc = "Enter the module-stop state"]
688        pub const _1: Self = Self::new(1);
689    }
690    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
691    pub struct Mstpc31_SPEC;
692    pub type Mstpc31 = crate::EnumBitfieldStruct<u8, Mstpc31_SPEC>;
693    impl Mstpc31 {
694        #[doc = "Cancel the module-stop state"]
695        pub const _0: Self = Self::new(0);
696
697        #[doc = "Enter the module-stop state"]
698        pub const _1: Self = Self::new(1);
699    }
700}
701#[doc(hidden)]
702#[derive(Copy, Clone, Eq, PartialEq)]
703pub struct Mstpcrd_SPEC;
704impl crate::sealed::RegSpec for Mstpcrd_SPEC {
705    type DataType = u32;
706}
707
708#[doc = "Module Stop Control Register D"]
709pub type Mstpcrd = crate::RegValueT<Mstpcrd_SPEC>;
710
711impl Mstpcrd {
712    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 3 Module Stop"]
713    #[inline(always)]
714    pub fn mstpd0(
715        self,
716    ) -> crate::common::RegisterField<
717        0,
718        0x1,
719        1,
720        0,
721        mstpcrd::Mstpd0,
722        mstpcrd::Mstpd0,
723        Mstpcrd_SPEC,
724        crate::common::RW,
725    > {
726        crate::common::RegisterField::<
727            0,
728            0x1,
729            1,
730            0,
731            mstpcrd::Mstpd0,
732            mstpcrd::Mstpd0,
733            Mstpcrd_SPEC,
734            crate::common::RW,
735        >::from_register(self, 0)
736    }
737
738    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 2 Module Stop"]
739    #[inline(always)]
740    pub fn mstpd1(
741        self,
742    ) -> crate::common::RegisterField<
743        1,
744        0x1,
745        1,
746        0,
747        mstpcrd::Mstpd1,
748        mstpcrd::Mstpd1,
749        Mstpcrd_SPEC,
750        crate::common::RW,
751    > {
752        crate::common::RegisterField::<
753            1,
754            0x1,
755            1,
756            0,
757            mstpcrd::Mstpd1,
758            mstpcrd::Mstpd1,
759            Mstpcrd_SPEC,
760            crate::common::RW,
761        >::from_register(self, 0)
762    }
763
764    #[doc = "32-bit Low Power Asynchronous General Purpose Timer 1 Module Stop"]
765    #[inline(always)]
766    pub fn mstpd2(
767        self,
768    ) -> crate::common::RegisterField<
769        2,
770        0x1,
771        1,
772        0,
773        mstpcrd::Mstpd2,
774        mstpcrd::Mstpd2,
775        Mstpcrd_SPEC,
776        crate::common::RW,
777    > {
778        crate::common::RegisterField::<
779            2,
780            0x1,
781            1,
782            0,
783            mstpcrd::Mstpd2,
784            mstpcrd::Mstpd2,
785            Mstpcrd_SPEC,
786            crate::common::RW,
787        >::from_register(self, 0)
788    }
789
790    #[doc = "32-bit Low Power Asynchronous General Purpose Timer 0 Module Stop"]
791    #[inline(always)]
792    pub fn mstpd3(
793        self,
794    ) -> crate::common::RegisterField<
795        3,
796        0x1,
797        1,
798        0,
799        mstpcrd::Mstpd3,
800        mstpcrd::Mstpd3,
801        Mstpcrd_SPEC,
802        crate::common::RW,
803    > {
804        crate::common::RegisterField::<
805            3,
806            0x1,
807            1,
808            0,
809            mstpcrd::Mstpd3,
810            mstpcrd::Mstpd3,
811            Mstpcrd_SPEC,
812            crate::common::RW,
813        >::from_register(self, 0)
814    }
815
816    #[doc = "General PWM Timer 164 to 169 and PWM Delay Generation Circuit Module Stop"]
817    #[inline(always)]
818    pub fn mstpd6(
819        self,
820    ) -> crate::common::RegisterField<
821        6,
822        0x1,
823        1,
824        0,
825        mstpcrd::Mstpd6,
826        mstpcrd::Mstpd6,
827        Mstpcrd_SPEC,
828        crate::common::RW,
829    > {
830        crate::common::RegisterField::<
831            6,
832            0x1,
833            1,
834            0,
835            mstpcrd::Mstpd6,
836            mstpcrd::Mstpd6,
837            Mstpcrd_SPEC,
838            crate::common::RW,
839        >::from_register(self, 0)
840    }
841
842    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 7 Module Stop"]
843    #[inline(always)]
844    pub fn mstpd7(
845        self,
846    ) -> crate::common::RegisterField<
847        7,
848        0x1,
849        1,
850        0,
851        mstpcrd::Mstpd7,
852        mstpcrd::Mstpd7,
853        Mstpcrd_SPEC,
854        crate::common::RW,
855    > {
856        crate::common::RegisterField::<
857            7,
858            0x1,
859            1,
860            0,
861            mstpcrd::Mstpd7,
862            mstpcrd::Mstpd7,
863            Mstpcrd_SPEC,
864            crate::common::RW,
865        >::from_register(self, 0)
866    }
867
868    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 6 Module Stop"]
869    #[inline(always)]
870    pub fn mstpd8(
871        self,
872    ) -> crate::common::RegisterField<
873        8,
874        0x1,
875        1,
876        0,
877        mstpcrd::Mstpd8,
878        mstpcrd::Mstpd8,
879        Mstpcrd_SPEC,
880        crate::common::RW,
881    > {
882        crate::common::RegisterField::<
883            8,
884            0x1,
885            1,
886            0,
887            mstpcrd::Mstpd8,
888            mstpcrd::Mstpd8,
889            Mstpcrd_SPEC,
890            crate::common::RW,
891        >::from_register(self, 0)
892    }
893
894    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 5 Module Stop"]
895    #[inline(always)]
896    pub fn mstpd9(
897        self,
898    ) -> crate::common::RegisterField<
899        9,
900        0x1,
901        1,
902        0,
903        mstpcrd::Mstpd9,
904        mstpcrd::Mstpd9,
905        Mstpcrd_SPEC,
906        crate::common::RW,
907    > {
908        crate::common::RegisterField::<
909            9,
910            0x1,
911            1,
912            0,
913            mstpcrd::Mstpd9,
914            mstpcrd::Mstpd9,
915            Mstpcrd_SPEC,
916            crate::common::RW,
917        >::from_register(self, 0)
918    }
919
920    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 4 Module Stop"]
921    #[inline(always)]
922    pub fn mstpd10(
923        self,
924    ) -> crate::common::RegisterField<
925        10,
926        0x1,
927        1,
928        0,
929        mstpcrd::Mstpd10,
930        mstpcrd::Mstpd10,
931        Mstpcrd_SPEC,
932        crate::common::RW,
933    > {
934        crate::common::RegisterField::<
935            10,
936            0x1,
937            1,
938            0,
939            mstpcrd::Mstpd10,
940            mstpcrd::Mstpd10,
941            Mstpcrd_SPEC,
942            crate::common::RW,
943        >::from_register(self, 0)
944    }
945
946    #[doc = "Port Output Enable for GPT Module Stop"]
947    #[inline(always)]
948    pub fn mstpd14(
949        self,
950    ) -> crate::common::RegisterField<
951        14,
952        0x1,
953        1,
954        0,
955        mstpcrd::Mstpd14,
956        mstpcrd::Mstpd14,
957        Mstpcrd_SPEC,
958        crate::common::RW,
959    > {
960        crate::common::RegisterField::<
961            14,
962            0x1,
963            1,
964            0,
965            mstpcrd::Mstpd14,
966            mstpcrd::Mstpd14,
967            Mstpcrd_SPEC,
968            crate::common::RW,
969        >::from_register(self, 0)
970    }
971
972    #[doc = "12-bit A/D Converter Module Stop"]
973    #[inline(always)]
974    pub fn mstpd16(
975        self,
976    ) -> crate::common::RegisterField<
977        16,
978        0x1,
979        1,
980        0,
981        mstpcrd::Mstpd16,
982        mstpcrd::Mstpd16,
983        Mstpcrd_SPEC,
984        crate::common::RW,
985    > {
986        crate::common::RegisterField::<
987            16,
988            0x1,
989            1,
990            0,
991            mstpcrd::Mstpd16,
992            mstpcrd::Mstpd16,
993            Mstpcrd_SPEC,
994            crate::common::RW,
995        >::from_register(self, 0)
996    }
997
998    #[doc = "24-bit Sigma-Delta A/D Converter Module Stop"]
999    #[inline(always)]
1000    pub fn mstpd17(
1001        self,
1002    ) -> crate::common::RegisterField<
1003        17,
1004        0x1,
1005        1,
1006        0,
1007        mstpcrd::Mstpd17,
1008        mstpcrd::Mstpd17,
1009        Mstpcrd_SPEC,
1010        crate::common::RW,
1011    > {
1012        crate::common::RegisterField::<
1013            17,
1014            0x1,
1015            1,
1016            0,
1017            mstpcrd::Mstpd17,
1018            mstpcrd::Mstpd17,
1019            Mstpcrd_SPEC,
1020            crate::common::RW,
1021        >::from_register(self, 0)
1022    }
1023
1024    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 1 Module Stop"]
1025    #[inline(always)]
1026    pub fn mstpd18(
1027        self,
1028    ) -> crate::common::RegisterField<
1029        18,
1030        0x1,
1031        1,
1032        0,
1033        mstpcrd::Mstpd18,
1034        mstpcrd::Mstpd18,
1035        Mstpcrd_SPEC,
1036        crate::common::RW,
1037    > {
1038        crate::common::RegisterField::<
1039            18,
1040            0x1,
1041            1,
1042            0,
1043            mstpcrd::Mstpd18,
1044            mstpcrd::Mstpd18,
1045            Mstpcrd_SPEC,
1046            crate::common::RW,
1047        >::from_register(self, 0)
1048    }
1049
1050    #[doc = "16-bit Low Power Asynchronous General Purpose Timer 0 Module Stop"]
1051    #[inline(always)]
1052    pub fn mstpd19(
1053        self,
1054    ) -> crate::common::RegisterField<
1055        19,
1056        0x1,
1057        1,
1058        0,
1059        mstpcrd::Mstpd19,
1060        mstpcrd::Mstpd19,
1061        Mstpcrd_SPEC,
1062        crate::common::RW,
1063    > {
1064        crate::common::RegisterField::<
1065            19,
1066            0x1,
1067            1,
1068            0,
1069            mstpcrd::Mstpd19,
1070            mstpcrd::Mstpd19,
1071            Mstpcrd_SPEC,
1072            crate::common::RW,
1073        >::from_register(self, 0)
1074    }
1075}
1076impl ::core::default::Default for Mstpcrd {
1077    #[inline(always)]
1078    fn default() -> Mstpcrd {
1079        <crate::RegValueT<Mstpcrd_SPEC> as RegisterValue<_>>::new(4294967295)
1080    }
1081}
1082pub mod mstpcrd {
1083
1084    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1085    pub struct Mstpd0_SPEC;
1086    pub type Mstpd0 = crate::EnumBitfieldStruct<u8, Mstpd0_SPEC>;
1087    impl Mstpd0 {
1088        #[doc = "Cancel the module-stop state"]
1089        pub const _0: Self = Self::new(0);
1090
1091        #[doc = "Enter the module-stop state"]
1092        pub const _1: Self = Self::new(1);
1093    }
1094    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1095    pub struct Mstpd1_SPEC;
1096    pub type Mstpd1 = crate::EnumBitfieldStruct<u8, Mstpd1_SPEC>;
1097    impl Mstpd1 {
1098        #[doc = "Cancel the module-stop state"]
1099        pub const _0: Self = Self::new(0);
1100
1101        #[doc = "Enter the module-stop state"]
1102        pub const _1: Self = Self::new(1);
1103    }
1104    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1105    pub struct Mstpd2_SPEC;
1106    pub type Mstpd2 = crate::EnumBitfieldStruct<u8, Mstpd2_SPEC>;
1107    impl Mstpd2 {
1108        #[doc = "Cancel the module-stop state"]
1109        pub const _0: Self = Self::new(0);
1110
1111        #[doc = "Enter the module-stop state"]
1112        pub const _1: Self = Self::new(1);
1113    }
1114    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1115    pub struct Mstpd3_SPEC;
1116    pub type Mstpd3 = crate::EnumBitfieldStruct<u8, Mstpd3_SPEC>;
1117    impl Mstpd3 {
1118        #[doc = "Cancel the module-stop state"]
1119        pub const _0: Self = Self::new(0);
1120
1121        #[doc = "Enter the module-stop state"]
1122        pub const _1: Self = Self::new(1);
1123    }
1124    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1125    pub struct Mstpd6_SPEC;
1126    pub type Mstpd6 = crate::EnumBitfieldStruct<u8, Mstpd6_SPEC>;
1127    impl Mstpd6 {
1128        #[doc = "Cancel the module-stop state"]
1129        pub const _0: Self = Self::new(0);
1130
1131        #[doc = "Enter the module-stop state"]
1132        pub const _1: Self = Self::new(1);
1133    }
1134    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1135    pub struct Mstpd7_SPEC;
1136    pub type Mstpd7 = crate::EnumBitfieldStruct<u8, Mstpd7_SPEC>;
1137    impl Mstpd7 {
1138        #[doc = "Cancel the module-stop state"]
1139        pub const _0: Self = Self::new(0);
1140
1141        #[doc = "Enter the module-stop state"]
1142        pub const _1: Self = Self::new(1);
1143    }
1144    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1145    pub struct Mstpd8_SPEC;
1146    pub type Mstpd8 = crate::EnumBitfieldStruct<u8, Mstpd8_SPEC>;
1147    impl Mstpd8 {
1148        #[doc = "Cancel the module-stop state"]
1149        pub const _0: Self = Self::new(0);
1150
1151        #[doc = "Enter the module-stop state"]
1152        pub const _1: Self = Self::new(1);
1153    }
1154    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1155    pub struct Mstpd9_SPEC;
1156    pub type Mstpd9 = crate::EnumBitfieldStruct<u8, Mstpd9_SPEC>;
1157    impl Mstpd9 {
1158        #[doc = "Cancel the module-stop state"]
1159        pub const _0: Self = Self::new(0);
1160
1161        #[doc = "Enter the module-stop state"]
1162        pub const _1: Self = Self::new(1);
1163    }
1164    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1165    pub struct Mstpd10_SPEC;
1166    pub type Mstpd10 = crate::EnumBitfieldStruct<u8, Mstpd10_SPEC>;
1167    impl Mstpd10 {
1168        #[doc = "Cancel the module-stop state"]
1169        pub const _0: Self = Self::new(0);
1170
1171        #[doc = "Enter the module-stop state"]
1172        pub const _1: Self = Self::new(1);
1173    }
1174    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1175    pub struct Mstpd14_SPEC;
1176    pub type Mstpd14 = crate::EnumBitfieldStruct<u8, Mstpd14_SPEC>;
1177    impl Mstpd14 {
1178        #[doc = "Cancel the module-stop state"]
1179        pub const _0: Self = Self::new(0);
1180
1181        #[doc = "Enter the module-stop state"]
1182        pub const _1: Self = Self::new(1);
1183    }
1184    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1185    pub struct Mstpd16_SPEC;
1186    pub type Mstpd16 = crate::EnumBitfieldStruct<u8, Mstpd16_SPEC>;
1187    impl Mstpd16 {
1188        #[doc = "Cancel the module-stop state"]
1189        pub const _0: Self = Self::new(0);
1190
1191        #[doc = "Enter the module-stop state"]
1192        pub const _1: Self = Self::new(1);
1193    }
1194    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1195    pub struct Mstpd17_SPEC;
1196    pub type Mstpd17 = crate::EnumBitfieldStruct<u8, Mstpd17_SPEC>;
1197    impl Mstpd17 {
1198        #[doc = "Cancel the module-stop state"]
1199        pub const _0: Self = Self::new(0);
1200
1201        #[doc = "Enter the module-stop state"]
1202        pub const _1: Self = Self::new(1);
1203    }
1204    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1205    pub struct Mstpd18_SPEC;
1206    pub type Mstpd18 = crate::EnumBitfieldStruct<u8, Mstpd18_SPEC>;
1207    impl Mstpd18 {
1208        #[doc = "Cancel the module-stop state"]
1209        pub const _0: Self = Self::new(0);
1210
1211        #[doc = "Enter the module-stop state"]
1212        pub const _1: Self = Self::new(1);
1213    }
1214    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1215    pub struct Mstpd19_SPEC;
1216    pub type Mstpd19 = crate::EnumBitfieldStruct<u8, Mstpd19_SPEC>;
1217    impl Mstpd19 {
1218        #[doc = "Cancel the module-stop state"]
1219        pub const _0: Self = Self::new(0);
1220
1221        #[doc = "Enter the module-stop state"]
1222        pub const _1: Self = Self::new(1);
1223    }
1224}
1225#[doc(hidden)]
1226#[derive(Copy, Clone, Eq, PartialEq)]
1227pub struct Lsmrwdis_SPEC;
1228impl crate::sealed::RegSpec for Lsmrwdis_SPEC {
1229    type DataType = u16;
1230}
1231
1232#[doc = "Low Speed Module R/W Disable Control Register"]
1233pub type Lsmrwdis = crate::RegValueT<Lsmrwdis_SPEC>;
1234
1235impl Lsmrwdis {
1236    #[doc = "RTC Register R/W Enable Control"]
1237    #[inline(always)]
1238    pub fn rtcrwdis(
1239        self,
1240    ) -> crate::common::RegisterField<
1241        0,
1242        0x1,
1243        1,
1244        0,
1245        lsmrwdis::Rtcrwdis,
1246        lsmrwdis::Rtcrwdis,
1247        Lsmrwdis_SPEC,
1248        crate::common::RW,
1249    > {
1250        crate::common::RegisterField::<
1251            0,
1252            0x1,
1253            1,
1254            0,
1255            lsmrwdis::Rtcrwdis,
1256            lsmrwdis::Rtcrwdis,
1257            Lsmrwdis_SPEC,
1258            crate::common::RW,
1259        >::from_register(self, 0)
1260    }
1261
1262    #[doc = "WDT Operate Clock Control"]
1263    #[inline(always)]
1264    pub fn wdtdis(
1265        self,
1266    ) -> crate::common::RegisterField<
1267        1,
1268        0x1,
1269        1,
1270        0,
1271        lsmrwdis::Wdtdis,
1272        lsmrwdis::Wdtdis,
1273        Lsmrwdis_SPEC,
1274        crate::common::RW,
1275    > {
1276        crate::common::RegisterField::<
1277            1,
1278            0x1,
1279            1,
1280            0,
1281            lsmrwdis::Wdtdis,
1282            lsmrwdis::Wdtdis,
1283            Lsmrwdis_SPEC,
1284            crate::common::RW,
1285        >::from_register(self, 0)
1286    }
1287
1288    #[doc = "IWDT Register Clock Control"]
1289    #[inline(always)]
1290    pub fn iwdtids(
1291        self,
1292    ) -> crate::common::RegisterField<
1293        2,
1294        0x1,
1295        1,
1296        0,
1297        lsmrwdis::Iwdtids,
1298        lsmrwdis::Iwdtids,
1299        Lsmrwdis_SPEC,
1300        crate::common::RW,
1301    > {
1302        crate::common::RegisterField::<
1303            2,
1304            0x1,
1305            1,
1306            0,
1307            lsmrwdis::Iwdtids,
1308            lsmrwdis::Iwdtids,
1309            Lsmrwdis_SPEC,
1310            crate::common::RW,
1311        >::from_register(self, 0)
1312    }
1313
1314    #[doc = "Write Enable for bits \\[2:0\\]"]
1315    #[inline(always)]
1316    pub fn wren(
1317        self,
1318    ) -> crate::common::RegisterField<
1319        7,
1320        0x1,
1321        1,
1322        0,
1323        lsmrwdis::Wren,
1324        lsmrwdis::Wren,
1325        Lsmrwdis_SPEC,
1326        crate::common::RW,
1327    > {
1328        crate::common::RegisterField::<
1329            7,
1330            0x1,
1331            1,
1332            0,
1333            lsmrwdis::Wren,
1334            lsmrwdis::Wren,
1335            Lsmrwdis_SPEC,
1336            crate::common::RW,
1337        >::from_register(self, 0)
1338    }
1339
1340    #[doc = "LSMRWDIS Key Code"]
1341    #[inline(always)]
1342    pub fn prkey(
1343        self,
1344    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, u8, Lsmrwdis_SPEC, crate::common::W> {
1345        crate::common::RegisterField::<8,0xff,1,0,u8,u8,Lsmrwdis_SPEC,crate::common::W>::from_register(self,0)
1346    }
1347}
1348impl ::core::default::Default for Lsmrwdis {
1349    #[inline(always)]
1350    fn default() -> Lsmrwdis {
1351        <crate::RegValueT<Lsmrwdis_SPEC> as RegisterValue<_>>::new(0)
1352    }
1353}
1354pub mod lsmrwdis {
1355
1356    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1357    pub struct Rtcrwdis_SPEC;
1358    pub type Rtcrwdis = crate::EnumBitfieldStruct<u8, Rtcrwdis_SPEC>;
1359    impl Rtcrwdis {
1360        #[doc = "RTC register R/W clock always on"]
1361        pub const _0: Self = Self::new(0);
1362
1363        #[doc = "RTC register R/W clock stops"]
1364        pub const _1: Self = Self::new(1);
1365    }
1366    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1367    pub struct Wdtdis_SPEC;
1368    pub type Wdtdis = crate::EnumBitfieldStruct<u8, Wdtdis_SPEC>;
1369    impl Wdtdis {
1370        #[doc = "WDT operates as normal"]
1371        pub const _0: Self = Self::new(0);
1372
1373        #[doc = "Stop the WDT clock and register R/W clock"]
1374        pub const _1: Self = Self::new(1);
1375    }
1376    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1377    pub struct Iwdtids_SPEC;
1378    pub type Iwdtids = crate::EnumBitfieldStruct<u8, Iwdtids_SPEC>;
1379    impl Iwdtids {
1380        #[doc = "IWDT operates as normal"]
1381        pub const _0: Self = Self::new(0);
1382
1383        #[doc = "Stop the IWDT register R/W clock"]
1384        pub const _1: Self = Self::new(1);
1385    }
1386    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1387    pub struct Wren_SPEC;
1388    pub type Wren = crate::EnumBitfieldStruct<u8, Wren_SPEC>;
1389    impl Wren {
1390        #[doc = "Write protect for bits \\[2:0\\]"]
1391        pub const _0: Self = Self::new(0);
1392
1393        #[doc = "Write enable for bits \\[2:0\\]"]
1394        pub const _1: Self = Self::new(1);
1395    }
1396}