ra4e2_pac/
poeg.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.4.0 on Sat, 12 Apr 2025 22:15:35 +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"Port Output Enable Module for GPT"]
28unsafe impl ::core::marker::Send for super::Poeg {}
29unsafe impl ::core::marker::Sync for super::Poeg {}
30impl super::Poeg {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36    #[doc = "POEG Group A Setting Register"]
37    #[inline(always)]
38    pub const fn poegga(
39        &self,
40    ) -> &'static crate::common::Reg<self::Poegga_SPEC, crate::common::RW> {
41        unsafe {
42            crate::common::Reg::<self::Poegga_SPEC, crate::common::RW>::from_ptr(
43                self._svd2pac_as_ptr().add(0usize),
44            )
45        }
46    }
47
48    #[doc = "POEG Group B Setting Register"]
49    #[inline(always)]
50    pub const fn poeggb(
51        &self,
52    ) -> &'static crate::common::Reg<self::Poeggb_SPEC, crate::common::RW> {
53        unsafe {
54            crate::common::Reg::<self::Poeggb_SPEC, crate::common::RW>::from_ptr(
55                self._svd2pac_as_ptr().add(256usize),
56            )
57        }
58    }
59
60    #[doc = "POEG Group C Setting Register"]
61    #[inline(always)]
62    pub const fn poeggc(
63        &self,
64    ) -> &'static crate::common::Reg<self::Poeggc_SPEC, crate::common::RW> {
65        unsafe {
66            crate::common::Reg::<self::Poeggc_SPEC, crate::common::RW>::from_ptr(
67                self._svd2pac_as_ptr().add(512usize),
68            )
69        }
70    }
71
72    #[doc = "POEG Group D Setting Register"]
73    #[inline(always)]
74    pub const fn poeggd(
75        &self,
76    ) -> &'static crate::common::Reg<self::Poeggd_SPEC, crate::common::RW> {
77        unsafe {
78            crate::common::Reg::<self::Poeggd_SPEC, crate::common::RW>::from_ptr(
79                self._svd2pac_as_ptr().add(768usize),
80            )
81        }
82    }
83}
84#[doc(hidden)]
85#[derive(Copy, Clone, Eq, PartialEq)]
86pub struct Poegga_SPEC;
87impl crate::sealed::RegSpec for Poegga_SPEC {
88    type DataType = u32;
89}
90#[doc = "POEG Group A Setting Register"]
91pub type Poegga = crate::RegValueT<Poegga_SPEC>;
92
93impl Poegga {
94    #[doc = "Port Input Detection Flag"]
95    #[inline(always)]
96    pub fn pidf(
97        self,
98    ) -> crate::common::RegisterField<0, 0x1, 1, 0, poegga::Pidf, Poegga_SPEC, crate::common::RW>
99    {
100        crate::common::RegisterField::<0,0x1,1,0,poegga::Pidf, Poegga_SPEC,crate::common::RW>::from_register(self,0)
101    }
102    #[doc = "Detection Flag for GPT Output-Disable Request"]
103    #[inline(always)]
104    pub fn iocf(
105        self,
106    ) -> crate::common::RegisterField<1, 0x1, 1, 0, poegga::Iocf, Poegga_SPEC, crate::common::RW>
107    {
108        crate::common::RegisterField::<1,0x1,1,0,poegga::Iocf, Poegga_SPEC,crate::common::RW>::from_register(self,0)
109    }
110    #[doc = "Oscillation Stop Detection Flag"]
111    #[inline(always)]
112    pub fn ostpf(
113        self,
114    ) -> crate::common::RegisterField<2, 0x1, 1, 0, poegga::Ostpf, Poegga_SPEC, crate::common::RW>
115    {
116        crate::common::RegisterField::<2,0x1,1,0,poegga::Ostpf, Poegga_SPEC,crate::common::RW>::from_register(self,0)
117    }
118    #[doc = "Software Stop Flag"]
119    #[inline(always)]
120    pub fn ssf(
121        self,
122    ) -> crate::common::RegisterField<3, 0x1, 1, 0, poegga::Ssf, Poegga_SPEC, crate::common::RW>
123    {
124        crate::common::RegisterField::<3,0x1,1,0,poegga::Ssf, Poegga_SPEC,crate::common::RW>::from_register(self,0)
125    }
126    #[doc = "Port Input Detection Enable"]
127    #[inline(always)]
128    pub fn pide(
129        self,
130    ) -> crate::common::RegisterField<4, 0x1, 1, 0, poegga::Pide, Poegga_SPEC, crate::common::RW>
131    {
132        crate::common::RegisterField::<4,0x1,1,0,poegga::Pide, Poegga_SPEC,crate::common::RW>::from_register(self,0)
133    }
134    #[doc = "Enable for GPT Output-Disable Request"]
135    #[inline(always)]
136    pub fn ioce(
137        self,
138    ) -> crate::common::RegisterField<5, 0x1, 1, 0, poegga::Ioce, Poegga_SPEC, crate::common::RW>
139    {
140        crate::common::RegisterField::<5,0x1,1,0,poegga::Ioce, Poegga_SPEC,crate::common::RW>::from_register(self,0)
141    }
142    #[doc = "Oscillation Stop Detection Enable"]
143    #[inline(always)]
144    pub fn ostpe(
145        self,
146    ) -> crate::common::RegisterField<6, 0x1, 1, 0, poegga::Ostpe, Poegga_SPEC, crate::common::RW>
147    {
148        crate::common::RegisterField::<6,0x1,1,0,poegga::Ostpe, Poegga_SPEC,crate::common::RW>::from_register(self,0)
149    }
150    #[doc = "GTETRGn Input Status Flag"]
151    #[inline(always)]
152    pub fn st(
153        self,
154    ) -> crate::common::RegisterField<16, 0x1, 1, 0, poegga::St, Poegga_SPEC, crate::common::R>
155    {
156        crate::common::RegisterField::<16,0x1,1,0,poegga::St, Poegga_SPEC,crate::common::R>::from_register(self,0)
157    }
158    #[doc = "GTETRGn Input Reverse"]
159    #[inline(always)]
160    pub fn inv(
161        self,
162    ) -> crate::common::RegisterField<28, 0x1, 1, 0, poegga::Inv, Poegga_SPEC, crate::common::RW>
163    {
164        crate::common::RegisterField::<28,0x1,1,0,poegga::Inv, Poegga_SPEC,crate::common::RW>::from_register(self,0)
165    }
166    #[doc = "Noise Filter Enable"]
167    #[inline(always)]
168    pub fn nfen(
169        self,
170    ) -> crate::common::RegisterField<29, 0x1, 1, 0, poegga::Nfen, Poegga_SPEC, crate::common::RW>
171    {
172        crate::common::RegisterField::<29,0x1,1,0,poegga::Nfen, Poegga_SPEC,crate::common::RW>::from_register(self,0)
173    }
174    #[doc = "Noise Filter Clock Select"]
175    #[inline(always)]
176    pub fn nfcs(
177        self,
178    ) -> crate::common::RegisterField<30, 0x3, 1, 0, poegga::Nfcs, Poegga_SPEC, crate::common::RW>
179    {
180        crate::common::RegisterField::<30,0x3,1,0,poegga::Nfcs, Poegga_SPEC,crate::common::RW>::from_register(self,0)
181    }
182}
183impl ::core::default::Default for Poegga {
184    #[inline(always)]
185    fn default() -> Poegga {
186        <crate::RegValueT<Poegga_SPEC> as RegisterValue<_>>::new(0)
187    }
188}
189pub mod poegga {
190
191    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
192    pub struct Pidf_SPEC;
193    pub type Pidf = crate::EnumBitfieldStruct<u8, Pidf_SPEC>;
194    impl Pidf {
195        #[doc = "No output-disable request from the GTETRGn pin occurred"]
196        pub const _0: Self = Self::new(0);
197        #[doc = "Output-disable request from the GTETRGn pin occurred."]
198        pub const _1: Self = Self::new(1);
199    }
200    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
201    pub struct Iocf_SPEC;
202    pub type Iocf = crate::EnumBitfieldStruct<u8, Iocf_SPEC>;
203    impl Iocf {
204        #[doc = "No output-disable request from GPT occurred."]
205        pub const _0: Self = Self::new(0);
206        #[doc = "Output-disable request from GPT occurred."]
207        pub const _1: Self = Self::new(1);
208    }
209    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
210    pub struct Ostpf_SPEC;
211    pub type Ostpf = crate::EnumBitfieldStruct<u8, Ostpf_SPEC>;
212    impl Ostpf {
213        #[doc = "No output-disable request from oscillation stop detection occurred"]
214        pub const _0: Self = Self::new(0);
215        #[doc = "Output-disable request from oscillation stop detection occurred"]
216        pub const _1: Self = Self::new(1);
217    }
218    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
219    pub struct Ssf_SPEC;
220    pub type Ssf = crate::EnumBitfieldStruct<u8, Ssf_SPEC>;
221    impl Ssf {
222        #[doc = "No output-disable request from software occurred"]
223        pub const _0: Self = Self::new(0);
224        #[doc = "Output-disable request from software occurred"]
225        pub const _1: Self = Self::new(1);
226    }
227    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
228    pub struct Pide_SPEC;
229    pub type Pide = crate::EnumBitfieldStruct<u8, Pide_SPEC>;
230    impl Pide {
231        #[doc = "Disable output-disable requests from the GTETRGn pins"]
232        pub const _0: Self = Self::new(0);
233        #[doc = "Enable output-disable requests from the GTETRGn pins"]
234        pub const _1: Self = Self::new(1);
235    }
236    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
237    pub struct Ioce_SPEC;
238    pub type Ioce = crate::EnumBitfieldStruct<u8, Ioce_SPEC>;
239    impl Ioce {
240        #[doc = "Disable output-disable requests from GPT"]
241        pub const _0: Self = Self::new(0);
242        #[doc = "Enable output-disable requests from GPT"]
243        pub const _1: Self = Self::new(1);
244    }
245    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
246    pub struct Ostpe_SPEC;
247    pub type Ostpe = crate::EnumBitfieldStruct<u8, Ostpe_SPEC>;
248    impl Ostpe {
249        #[doc = "Disable output-disable requests from oscillation stop detection"]
250        pub const _0: Self = Self::new(0);
251        #[doc = "Enable output-disable requests from oscillation stop detection"]
252        pub const _1: Self = Self::new(1);
253    }
254    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
255    pub struct St_SPEC;
256    pub type St = crate::EnumBitfieldStruct<u8, St_SPEC>;
257    impl St {
258        #[doc = "GTETRGn input after filtering was 0"]
259        pub const _0: Self = Self::new(0);
260        #[doc = "GTETRGn input after filtering was 1"]
261        pub const _1: Self = Self::new(1);
262    }
263    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
264    pub struct Inv_SPEC;
265    pub type Inv = crate::EnumBitfieldStruct<u8, Inv_SPEC>;
266    impl Inv {
267        #[doc = "Input GTETRGn as-is"]
268        pub const _0: Self = Self::new(0);
269        #[doc = "Input GTETRGn in reverse"]
270        pub const _1: Self = Self::new(1);
271    }
272    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
273    pub struct Nfen_SPEC;
274    pub type Nfen = crate::EnumBitfieldStruct<u8, Nfen_SPEC>;
275    impl Nfen {
276        #[doc = "Disable noise filtering"]
277        pub const _0: Self = Self::new(0);
278        #[doc = "Enable noise filtering"]
279        pub const _1: Self = Self::new(1);
280    }
281    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
282    pub struct Nfcs_SPEC;
283    pub type Nfcs = crate::EnumBitfieldStruct<u8, Nfcs_SPEC>;
284    impl Nfcs {
285        #[doc = "Sample GTETRGn pin input level three times every PCLKB"]
286        pub const _00: Self = Self::new(0);
287        #[doc = "Sample GTETRGn pin input level three times every PCLKB/8"]
288        pub const _01: Self = Self::new(1);
289        #[doc = "Sample GTETRGn pin input level three times every PCLKB/32"]
290        pub const _10: Self = Self::new(2);
291        #[doc = "Sample GTETRGn pin input level three times every PCLKB/128"]
292        pub const _11: Self = Self::new(3);
293    }
294}
295#[doc(hidden)]
296#[derive(Copy, Clone, Eq, PartialEq)]
297pub struct Poeggb_SPEC;
298impl crate::sealed::RegSpec for Poeggb_SPEC {
299    type DataType = u32;
300}
301#[doc = "POEG Group B Setting Register"]
302pub type Poeggb = crate::RegValueT<Poeggb_SPEC>;
303
304impl Poeggb {
305    #[doc = "Port Input Detection Flag"]
306    #[inline(always)]
307    pub fn pidf(
308        self,
309    ) -> crate::common::RegisterField<0, 0x1, 1, 0, poeggb::Pidf, Poeggb_SPEC, crate::common::RW>
310    {
311        crate::common::RegisterField::<0,0x1,1,0,poeggb::Pidf, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
312    }
313    #[doc = "Detection Flag for GPT Output-Disable Request"]
314    #[inline(always)]
315    pub fn iocf(
316        self,
317    ) -> crate::common::RegisterField<1, 0x1, 1, 0, poeggb::Iocf, Poeggb_SPEC, crate::common::RW>
318    {
319        crate::common::RegisterField::<1,0x1,1,0,poeggb::Iocf, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
320    }
321    #[doc = "Oscillation Stop Detection Flag"]
322    #[inline(always)]
323    pub fn ostpf(
324        self,
325    ) -> crate::common::RegisterField<2, 0x1, 1, 0, poeggb::Ostpf, Poeggb_SPEC, crate::common::RW>
326    {
327        crate::common::RegisterField::<2,0x1,1,0,poeggb::Ostpf, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
328    }
329    #[doc = "Software Stop Flag"]
330    #[inline(always)]
331    pub fn ssf(
332        self,
333    ) -> crate::common::RegisterField<3, 0x1, 1, 0, poeggb::Ssf, Poeggb_SPEC, crate::common::RW>
334    {
335        crate::common::RegisterField::<3,0x1,1,0,poeggb::Ssf, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
336    }
337    #[doc = "Port Input Detection Enable"]
338    #[inline(always)]
339    pub fn pide(
340        self,
341    ) -> crate::common::RegisterField<4, 0x1, 1, 0, poeggb::Pide, Poeggb_SPEC, crate::common::RW>
342    {
343        crate::common::RegisterField::<4,0x1,1,0,poeggb::Pide, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
344    }
345    #[doc = "Enable for GPT Output-Disable Request"]
346    #[inline(always)]
347    pub fn ioce(
348        self,
349    ) -> crate::common::RegisterField<5, 0x1, 1, 0, poeggb::Ioce, Poeggb_SPEC, crate::common::RW>
350    {
351        crate::common::RegisterField::<5,0x1,1,0,poeggb::Ioce, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
352    }
353    #[doc = "Oscillation Stop Detection Enable"]
354    #[inline(always)]
355    pub fn ostpe(
356        self,
357    ) -> crate::common::RegisterField<6, 0x1, 1, 0, poeggb::Ostpe, Poeggb_SPEC, crate::common::RW>
358    {
359        crate::common::RegisterField::<6,0x1,1,0,poeggb::Ostpe, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
360    }
361    #[doc = "GTETRGn Input Status Flag"]
362    #[inline(always)]
363    pub fn st(
364        self,
365    ) -> crate::common::RegisterField<16, 0x1, 1, 0, poeggb::St, Poeggb_SPEC, crate::common::R>
366    {
367        crate::common::RegisterField::<16,0x1,1,0,poeggb::St, Poeggb_SPEC,crate::common::R>::from_register(self,0)
368    }
369    #[doc = "GTETRGn Input Reverse"]
370    #[inline(always)]
371    pub fn inv(
372        self,
373    ) -> crate::common::RegisterField<28, 0x1, 1, 0, poeggb::Inv, Poeggb_SPEC, crate::common::RW>
374    {
375        crate::common::RegisterField::<28,0x1,1,0,poeggb::Inv, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
376    }
377    #[doc = "Noise Filter Enable"]
378    #[inline(always)]
379    pub fn nfen(
380        self,
381    ) -> crate::common::RegisterField<29, 0x1, 1, 0, poeggb::Nfen, Poeggb_SPEC, crate::common::RW>
382    {
383        crate::common::RegisterField::<29,0x1,1,0,poeggb::Nfen, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
384    }
385    #[doc = "Noise Filter Clock Select"]
386    #[inline(always)]
387    pub fn nfcs(
388        self,
389    ) -> crate::common::RegisterField<30, 0x3, 1, 0, poeggb::Nfcs, Poeggb_SPEC, crate::common::RW>
390    {
391        crate::common::RegisterField::<30,0x3,1,0,poeggb::Nfcs, Poeggb_SPEC,crate::common::RW>::from_register(self,0)
392    }
393}
394impl ::core::default::Default for Poeggb {
395    #[inline(always)]
396    fn default() -> Poeggb {
397        <crate::RegValueT<Poeggb_SPEC> as RegisterValue<_>>::new(0)
398    }
399}
400pub mod poeggb {
401
402    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
403    pub struct Pidf_SPEC;
404    pub type Pidf = crate::EnumBitfieldStruct<u8, Pidf_SPEC>;
405    impl Pidf {
406        #[doc = "No output-disable request from the GTETRGn pin occurred"]
407        pub const _0: Self = Self::new(0);
408        #[doc = "Output-disable request from the GTETRGn pin occurred."]
409        pub const _1: Self = Self::new(1);
410    }
411    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
412    pub struct Iocf_SPEC;
413    pub type Iocf = crate::EnumBitfieldStruct<u8, Iocf_SPEC>;
414    impl Iocf {
415        #[doc = "No output-disable request from GPT occurred."]
416        pub const _0: Self = Self::new(0);
417        #[doc = "Output-disable request from GPT occurred."]
418        pub const _1: Self = Self::new(1);
419    }
420    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
421    pub struct Ostpf_SPEC;
422    pub type Ostpf = crate::EnumBitfieldStruct<u8, Ostpf_SPEC>;
423    impl Ostpf {
424        #[doc = "No output-disable request from oscillation stop detection occurred"]
425        pub const _0: Self = Self::new(0);
426        #[doc = "Output-disable request from oscillation stop detection occurred"]
427        pub const _1: Self = Self::new(1);
428    }
429    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
430    pub struct Ssf_SPEC;
431    pub type Ssf = crate::EnumBitfieldStruct<u8, Ssf_SPEC>;
432    impl Ssf {
433        #[doc = "No output-disable request from software occurred"]
434        pub const _0: Self = Self::new(0);
435        #[doc = "Output-disable request from software occurred"]
436        pub const _1: Self = Self::new(1);
437    }
438    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
439    pub struct Pide_SPEC;
440    pub type Pide = crate::EnumBitfieldStruct<u8, Pide_SPEC>;
441    impl Pide {
442        #[doc = "Disable output-disable requests from the GTETRGn pins"]
443        pub const _0: Self = Self::new(0);
444        #[doc = "Enable output-disable requests from the GTETRGn pins"]
445        pub const _1: Self = Self::new(1);
446    }
447    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
448    pub struct Ioce_SPEC;
449    pub type Ioce = crate::EnumBitfieldStruct<u8, Ioce_SPEC>;
450    impl Ioce {
451        #[doc = "Disable output-disable requests from GPT"]
452        pub const _0: Self = Self::new(0);
453        #[doc = "Enable output-disable requests from GPT"]
454        pub const _1: Self = Self::new(1);
455    }
456    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
457    pub struct Ostpe_SPEC;
458    pub type Ostpe = crate::EnumBitfieldStruct<u8, Ostpe_SPEC>;
459    impl Ostpe {
460        #[doc = "Disable output-disable requests from oscillation stop detection"]
461        pub const _0: Self = Self::new(0);
462        #[doc = "Enable output-disable requests from oscillation stop detection"]
463        pub const _1: Self = Self::new(1);
464    }
465    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
466    pub struct St_SPEC;
467    pub type St = crate::EnumBitfieldStruct<u8, St_SPEC>;
468    impl St {
469        #[doc = "GTETRGn input after filtering was 0"]
470        pub const _0: Self = Self::new(0);
471        #[doc = "GTETRGn input after filtering was 1"]
472        pub const _1: Self = Self::new(1);
473    }
474    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
475    pub struct Inv_SPEC;
476    pub type Inv = crate::EnumBitfieldStruct<u8, Inv_SPEC>;
477    impl Inv {
478        #[doc = "Input GTETRGn as-is"]
479        pub const _0: Self = Self::new(0);
480        #[doc = "Input GTETRGn in reverse"]
481        pub const _1: Self = Self::new(1);
482    }
483    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
484    pub struct Nfen_SPEC;
485    pub type Nfen = crate::EnumBitfieldStruct<u8, Nfen_SPEC>;
486    impl Nfen {
487        #[doc = "Disable noise filtering"]
488        pub const _0: Self = Self::new(0);
489        #[doc = "Enable noise filtering"]
490        pub const _1: Self = Self::new(1);
491    }
492    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
493    pub struct Nfcs_SPEC;
494    pub type Nfcs = crate::EnumBitfieldStruct<u8, Nfcs_SPEC>;
495    impl Nfcs {
496        #[doc = "Sample GTETRGn pin input level three times every PCLKB"]
497        pub const _00: Self = Self::new(0);
498        #[doc = "Sample GTETRGn pin input level three times every PCLKB/8"]
499        pub const _01: Self = Self::new(1);
500        #[doc = "Sample GTETRGn pin input level three times every PCLKB/32"]
501        pub const _10: Self = Self::new(2);
502        #[doc = "Sample GTETRGn pin input level three times every PCLKB/128"]
503        pub const _11: Self = Self::new(3);
504    }
505}
506#[doc(hidden)]
507#[derive(Copy, Clone, Eq, PartialEq)]
508pub struct Poeggc_SPEC;
509impl crate::sealed::RegSpec for Poeggc_SPEC {
510    type DataType = u32;
511}
512#[doc = "POEG Group C Setting Register"]
513pub type Poeggc = crate::RegValueT<Poeggc_SPEC>;
514
515impl Poeggc {
516    #[doc = "Port Input Detection Flag"]
517    #[inline(always)]
518    pub fn pidf(
519        self,
520    ) -> crate::common::RegisterField<0, 0x1, 1, 0, poeggc::Pidf, Poeggc_SPEC, crate::common::RW>
521    {
522        crate::common::RegisterField::<0,0x1,1,0,poeggc::Pidf, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
523    }
524    #[doc = "Detection Flag for GPT Output-Disable Request"]
525    #[inline(always)]
526    pub fn iocf(
527        self,
528    ) -> crate::common::RegisterField<1, 0x1, 1, 0, poeggc::Iocf, Poeggc_SPEC, crate::common::RW>
529    {
530        crate::common::RegisterField::<1,0x1,1,0,poeggc::Iocf, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
531    }
532    #[doc = "Oscillation Stop Detection Flag"]
533    #[inline(always)]
534    pub fn ostpf(
535        self,
536    ) -> crate::common::RegisterField<2, 0x1, 1, 0, poeggc::Ostpf, Poeggc_SPEC, crate::common::RW>
537    {
538        crate::common::RegisterField::<2,0x1,1,0,poeggc::Ostpf, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
539    }
540    #[doc = "Software Stop Flag"]
541    #[inline(always)]
542    pub fn ssf(
543        self,
544    ) -> crate::common::RegisterField<3, 0x1, 1, 0, poeggc::Ssf, Poeggc_SPEC, crate::common::RW>
545    {
546        crate::common::RegisterField::<3,0x1,1,0,poeggc::Ssf, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
547    }
548    #[doc = "Port Input Detection Enable"]
549    #[inline(always)]
550    pub fn pide(
551        self,
552    ) -> crate::common::RegisterField<4, 0x1, 1, 0, poeggc::Pide, Poeggc_SPEC, crate::common::RW>
553    {
554        crate::common::RegisterField::<4,0x1,1,0,poeggc::Pide, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
555    }
556    #[doc = "Enable for GPT Output-Disable Request"]
557    #[inline(always)]
558    pub fn ioce(
559        self,
560    ) -> crate::common::RegisterField<5, 0x1, 1, 0, poeggc::Ioce, Poeggc_SPEC, crate::common::RW>
561    {
562        crate::common::RegisterField::<5,0x1,1,0,poeggc::Ioce, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
563    }
564    #[doc = "Oscillation Stop Detection Enable"]
565    #[inline(always)]
566    pub fn ostpe(
567        self,
568    ) -> crate::common::RegisterField<6, 0x1, 1, 0, poeggc::Ostpe, Poeggc_SPEC, crate::common::RW>
569    {
570        crate::common::RegisterField::<6,0x1,1,0,poeggc::Ostpe, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
571    }
572    #[doc = "GTETRGn Input Status Flag"]
573    #[inline(always)]
574    pub fn st(
575        self,
576    ) -> crate::common::RegisterField<16, 0x1, 1, 0, poeggc::St, Poeggc_SPEC, crate::common::R>
577    {
578        crate::common::RegisterField::<16,0x1,1,0,poeggc::St, Poeggc_SPEC,crate::common::R>::from_register(self,0)
579    }
580    #[doc = "GTETRGn Input Reverse"]
581    #[inline(always)]
582    pub fn inv(
583        self,
584    ) -> crate::common::RegisterField<28, 0x1, 1, 0, poeggc::Inv, Poeggc_SPEC, crate::common::RW>
585    {
586        crate::common::RegisterField::<28,0x1,1,0,poeggc::Inv, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
587    }
588    #[doc = "Noise Filter Enable"]
589    #[inline(always)]
590    pub fn nfen(
591        self,
592    ) -> crate::common::RegisterField<29, 0x1, 1, 0, poeggc::Nfen, Poeggc_SPEC, crate::common::RW>
593    {
594        crate::common::RegisterField::<29,0x1,1,0,poeggc::Nfen, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
595    }
596    #[doc = "Noise Filter Clock Select"]
597    #[inline(always)]
598    pub fn nfcs(
599        self,
600    ) -> crate::common::RegisterField<30, 0x3, 1, 0, poeggc::Nfcs, Poeggc_SPEC, crate::common::RW>
601    {
602        crate::common::RegisterField::<30,0x3,1,0,poeggc::Nfcs, Poeggc_SPEC,crate::common::RW>::from_register(self,0)
603    }
604}
605impl ::core::default::Default for Poeggc {
606    #[inline(always)]
607    fn default() -> Poeggc {
608        <crate::RegValueT<Poeggc_SPEC> as RegisterValue<_>>::new(0)
609    }
610}
611pub mod poeggc {
612
613    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
614    pub struct Pidf_SPEC;
615    pub type Pidf = crate::EnumBitfieldStruct<u8, Pidf_SPEC>;
616    impl Pidf {
617        #[doc = "No output-disable request from the GTETRGn pin occurred"]
618        pub const _0: Self = Self::new(0);
619        #[doc = "Output-disable request from the GTETRGn pin occurred."]
620        pub const _1: Self = Self::new(1);
621    }
622    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
623    pub struct Iocf_SPEC;
624    pub type Iocf = crate::EnumBitfieldStruct<u8, Iocf_SPEC>;
625    impl Iocf {
626        #[doc = "No output-disable request from GPT occurred."]
627        pub const _0: Self = Self::new(0);
628        #[doc = "Output-disable request from GPT occurred."]
629        pub const _1: Self = Self::new(1);
630    }
631    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
632    pub struct Ostpf_SPEC;
633    pub type Ostpf = crate::EnumBitfieldStruct<u8, Ostpf_SPEC>;
634    impl Ostpf {
635        #[doc = "No output-disable request from oscillation stop detection occurred"]
636        pub const _0: Self = Self::new(0);
637        #[doc = "Output-disable request from oscillation stop detection occurred"]
638        pub const _1: Self = Self::new(1);
639    }
640    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
641    pub struct Ssf_SPEC;
642    pub type Ssf = crate::EnumBitfieldStruct<u8, Ssf_SPEC>;
643    impl Ssf {
644        #[doc = "No output-disable request from software occurred"]
645        pub const _0: Self = Self::new(0);
646        #[doc = "Output-disable request from software occurred"]
647        pub const _1: Self = Self::new(1);
648    }
649    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
650    pub struct Pide_SPEC;
651    pub type Pide = crate::EnumBitfieldStruct<u8, Pide_SPEC>;
652    impl Pide {
653        #[doc = "Disable output-disable requests from the GTETRGn pins"]
654        pub const _0: Self = Self::new(0);
655        #[doc = "Enable output-disable requests from the GTETRGn pins"]
656        pub const _1: Self = Self::new(1);
657    }
658    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
659    pub struct Ioce_SPEC;
660    pub type Ioce = crate::EnumBitfieldStruct<u8, Ioce_SPEC>;
661    impl Ioce {
662        #[doc = "Disable output-disable requests from GPT"]
663        pub const _0: Self = Self::new(0);
664        #[doc = "Enable output-disable requests from GPT"]
665        pub const _1: Self = Self::new(1);
666    }
667    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
668    pub struct Ostpe_SPEC;
669    pub type Ostpe = crate::EnumBitfieldStruct<u8, Ostpe_SPEC>;
670    impl Ostpe {
671        #[doc = "Disable output-disable requests from oscillation stop detection"]
672        pub const _0: Self = Self::new(0);
673        #[doc = "Enable output-disable requests from oscillation stop detection"]
674        pub const _1: Self = Self::new(1);
675    }
676    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
677    pub struct St_SPEC;
678    pub type St = crate::EnumBitfieldStruct<u8, St_SPEC>;
679    impl St {
680        #[doc = "GTETRGn input after filtering was 0"]
681        pub const _0: Self = Self::new(0);
682        #[doc = "GTETRGn input after filtering was 1"]
683        pub const _1: Self = Self::new(1);
684    }
685    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
686    pub struct Inv_SPEC;
687    pub type Inv = crate::EnumBitfieldStruct<u8, Inv_SPEC>;
688    impl Inv {
689        #[doc = "Input GTETRGn as-is"]
690        pub const _0: Self = Self::new(0);
691        #[doc = "Input GTETRGn in reverse"]
692        pub const _1: Self = Self::new(1);
693    }
694    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
695    pub struct Nfen_SPEC;
696    pub type Nfen = crate::EnumBitfieldStruct<u8, Nfen_SPEC>;
697    impl Nfen {
698        #[doc = "Disable noise filtering"]
699        pub const _0: Self = Self::new(0);
700        #[doc = "Enable noise filtering"]
701        pub const _1: Self = Self::new(1);
702    }
703    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
704    pub struct Nfcs_SPEC;
705    pub type Nfcs = crate::EnumBitfieldStruct<u8, Nfcs_SPEC>;
706    impl Nfcs {
707        #[doc = "Sample GTETRGn pin input level three times every PCLKB"]
708        pub const _00: Self = Self::new(0);
709        #[doc = "Sample GTETRGn pin input level three times every PCLKB/8"]
710        pub const _01: Self = Self::new(1);
711        #[doc = "Sample GTETRGn pin input level three times every PCLKB/32"]
712        pub const _10: Self = Self::new(2);
713        #[doc = "Sample GTETRGn pin input level three times every PCLKB/128"]
714        pub const _11: Self = Self::new(3);
715    }
716}
717#[doc(hidden)]
718#[derive(Copy, Clone, Eq, PartialEq)]
719pub struct Poeggd_SPEC;
720impl crate::sealed::RegSpec for Poeggd_SPEC {
721    type DataType = u32;
722}
723#[doc = "POEG Group D Setting Register"]
724pub type Poeggd = crate::RegValueT<Poeggd_SPEC>;
725
726impl Poeggd {
727    #[doc = "Port Input Detection Flag"]
728    #[inline(always)]
729    pub fn pidf(
730        self,
731    ) -> crate::common::RegisterField<0, 0x1, 1, 0, poeggd::Pidf, Poeggd_SPEC, crate::common::RW>
732    {
733        crate::common::RegisterField::<0,0x1,1,0,poeggd::Pidf, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
734    }
735    #[doc = "Detection Flag for GPT Output-Disable Request"]
736    #[inline(always)]
737    pub fn iocf(
738        self,
739    ) -> crate::common::RegisterField<1, 0x1, 1, 0, poeggd::Iocf, Poeggd_SPEC, crate::common::RW>
740    {
741        crate::common::RegisterField::<1,0x1,1,0,poeggd::Iocf, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
742    }
743    #[doc = "Oscillation Stop Detection Flag"]
744    #[inline(always)]
745    pub fn ostpf(
746        self,
747    ) -> crate::common::RegisterField<2, 0x1, 1, 0, poeggd::Ostpf, Poeggd_SPEC, crate::common::RW>
748    {
749        crate::common::RegisterField::<2,0x1,1,0,poeggd::Ostpf, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
750    }
751    #[doc = "Software Stop Flag"]
752    #[inline(always)]
753    pub fn ssf(
754        self,
755    ) -> crate::common::RegisterField<3, 0x1, 1, 0, poeggd::Ssf, Poeggd_SPEC, crate::common::RW>
756    {
757        crate::common::RegisterField::<3,0x1,1,0,poeggd::Ssf, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
758    }
759    #[doc = "Port Input Detection Enable"]
760    #[inline(always)]
761    pub fn pide(
762        self,
763    ) -> crate::common::RegisterField<4, 0x1, 1, 0, poeggd::Pide, Poeggd_SPEC, crate::common::RW>
764    {
765        crate::common::RegisterField::<4,0x1,1,0,poeggd::Pide, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
766    }
767    #[doc = "Enable for GPT Output-Disable Request"]
768    #[inline(always)]
769    pub fn ioce(
770        self,
771    ) -> crate::common::RegisterField<5, 0x1, 1, 0, poeggd::Ioce, Poeggd_SPEC, crate::common::RW>
772    {
773        crate::common::RegisterField::<5,0x1,1,0,poeggd::Ioce, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
774    }
775    #[doc = "Oscillation Stop Detection Enable"]
776    #[inline(always)]
777    pub fn ostpe(
778        self,
779    ) -> crate::common::RegisterField<6, 0x1, 1, 0, poeggd::Ostpe, Poeggd_SPEC, crate::common::RW>
780    {
781        crate::common::RegisterField::<6,0x1,1,0,poeggd::Ostpe, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
782    }
783    #[doc = "GTETRGn Input Status Flag"]
784    #[inline(always)]
785    pub fn st(
786        self,
787    ) -> crate::common::RegisterField<16, 0x1, 1, 0, poeggd::St, Poeggd_SPEC, crate::common::R>
788    {
789        crate::common::RegisterField::<16,0x1,1,0,poeggd::St, Poeggd_SPEC,crate::common::R>::from_register(self,0)
790    }
791    #[doc = "GTETRGn Input Reverse"]
792    #[inline(always)]
793    pub fn inv(
794        self,
795    ) -> crate::common::RegisterField<28, 0x1, 1, 0, poeggd::Inv, Poeggd_SPEC, crate::common::RW>
796    {
797        crate::common::RegisterField::<28,0x1,1,0,poeggd::Inv, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
798    }
799    #[doc = "Noise Filter Enable"]
800    #[inline(always)]
801    pub fn nfen(
802        self,
803    ) -> crate::common::RegisterField<29, 0x1, 1, 0, poeggd::Nfen, Poeggd_SPEC, crate::common::RW>
804    {
805        crate::common::RegisterField::<29,0x1,1,0,poeggd::Nfen, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
806    }
807    #[doc = "Noise Filter Clock Select"]
808    #[inline(always)]
809    pub fn nfcs(
810        self,
811    ) -> crate::common::RegisterField<30, 0x3, 1, 0, poeggd::Nfcs, Poeggd_SPEC, crate::common::RW>
812    {
813        crate::common::RegisterField::<30,0x3,1,0,poeggd::Nfcs, Poeggd_SPEC,crate::common::RW>::from_register(self,0)
814    }
815}
816impl ::core::default::Default for Poeggd {
817    #[inline(always)]
818    fn default() -> Poeggd {
819        <crate::RegValueT<Poeggd_SPEC> as RegisterValue<_>>::new(0)
820    }
821}
822pub mod poeggd {
823
824    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
825    pub struct Pidf_SPEC;
826    pub type Pidf = crate::EnumBitfieldStruct<u8, Pidf_SPEC>;
827    impl Pidf {
828        #[doc = "No output-disable request from the GTETRGn pin occurred"]
829        pub const _0: Self = Self::new(0);
830        #[doc = "Output-disable request from the GTETRGn pin occurred."]
831        pub const _1: Self = Self::new(1);
832    }
833    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
834    pub struct Iocf_SPEC;
835    pub type Iocf = crate::EnumBitfieldStruct<u8, Iocf_SPEC>;
836    impl Iocf {
837        #[doc = "No output-disable request from GPT occurred."]
838        pub const _0: Self = Self::new(0);
839        #[doc = "Output-disable request from GPT occurred."]
840        pub const _1: Self = Self::new(1);
841    }
842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
843    pub struct Ostpf_SPEC;
844    pub type Ostpf = crate::EnumBitfieldStruct<u8, Ostpf_SPEC>;
845    impl Ostpf {
846        #[doc = "No output-disable request from oscillation stop detection occurred"]
847        pub const _0: Self = Self::new(0);
848        #[doc = "Output-disable request from oscillation stop detection occurred"]
849        pub const _1: Self = Self::new(1);
850    }
851    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
852    pub struct Ssf_SPEC;
853    pub type Ssf = crate::EnumBitfieldStruct<u8, Ssf_SPEC>;
854    impl Ssf {
855        #[doc = "No output-disable request from software occurred"]
856        pub const _0: Self = Self::new(0);
857        #[doc = "Output-disable request from software occurred"]
858        pub const _1: Self = Self::new(1);
859    }
860    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
861    pub struct Pide_SPEC;
862    pub type Pide = crate::EnumBitfieldStruct<u8, Pide_SPEC>;
863    impl Pide {
864        #[doc = "Disable output-disable requests from the GTETRGn pins"]
865        pub const _0: Self = Self::new(0);
866        #[doc = "Enable output-disable requests from the GTETRGn pins"]
867        pub const _1: Self = Self::new(1);
868    }
869    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
870    pub struct Ioce_SPEC;
871    pub type Ioce = crate::EnumBitfieldStruct<u8, Ioce_SPEC>;
872    impl Ioce {
873        #[doc = "Disable output-disable requests from GPT"]
874        pub const _0: Self = Self::new(0);
875        #[doc = "Enable output-disable requests from GPT"]
876        pub const _1: Self = Self::new(1);
877    }
878    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
879    pub struct Ostpe_SPEC;
880    pub type Ostpe = crate::EnumBitfieldStruct<u8, Ostpe_SPEC>;
881    impl Ostpe {
882        #[doc = "Disable output-disable requests from oscillation stop detection"]
883        pub const _0: Self = Self::new(0);
884        #[doc = "Enable output-disable requests from oscillation stop detection"]
885        pub const _1: Self = Self::new(1);
886    }
887    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
888    pub struct St_SPEC;
889    pub type St = crate::EnumBitfieldStruct<u8, St_SPEC>;
890    impl St {
891        #[doc = "GTETRGn input after filtering was 0"]
892        pub const _0: Self = Self::new(0);
893        #[doc = "GTETRGn input after filtering was 1"]
894        pub const _1: Self = Self::new(1);
895    }
896    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
897    pub struct Inv_SPEC;
898    pub type Inv = crate::EnumBitfieldStruct<u8, Inv_SPEC>;
899    impl Inv {
900        #[doc = "Input GTETRGn as-is"]
901        pub const _0: Self = Self::new(0);
902        #[doc = "Input GTETRGn in reverse"]
903        pub const _1: Self = Self::new(1);
904    }
905    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
906    pub struct Nfen_SPEC;
907    pub type Nfen = crate::EnumBitfieldStruct<u8, Nfen_SPEC>;
908    impl Nfen {
909        #[doc = "Disable noise filtering"]
910        pub const _0: Self = Self::new(0);
911        #[doc = "Enable noise filtering"]
912        pub const _1: Self = Self::new(1);
913    }
914    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
915    pub struct Nfcs_SPEC;
916    pub type Nfcs = crate::EnumBitfieldStruct<u8, Nfcs_SPEC>;
917    impl Nfcs {
918        #[doc = "Sample GTETRGn pin input level three times every PCLKB"]
919        pub const _00: Self = Self::new(0);
920        #[doc = "Sample GTETRGn pin input level three times every PCLKB/8"]
921        pub const _01: Self = Self::new(1);
922        #[doc = "Sample GTETRGn pin input level three times every PCLKB/32"]
923        pub const _10: Self = Self::new(2);
924        #[doc = "Sample GTETRGn pin input level three times every PCLKB/128"]
925        pub const _11: Self = Self::new(3);
926    }
927}