esp32c6_lp/lp_clkrst/
lp_clk_po_en.rs

1#[doc = "Register `LP_CLK_PO_EN` reader"]
2pub type R = crate::R<LP_CLK_PO_EN_SPEC>;
3#[doc = "Register `LP_CLK_PO_EN` writer"]
4pub type W = crate::W<LP_CLK_PO_EN_SPEC>;
5#[doc = "Field `AON_SLOW_OEN` reader - need_des"]
6pub type AON_SLOW_OEN_R = crate::BitReader;
7#[doc = "Field `AON_SLOW_OEN` writer - need_des"]
8pub type AON_SLOW_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `AON_FAST_OEN` reader - need_des"]
10pub type AON_FAST_OEN_R = crate::BitReader;
11#[doc = "Field `AON_FAST_OEN` writer - need_des"]
12pub type AON_FAST_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `SOSC_OEN` reader - need_des"]
14pub type SOSC_OEN_R = crate::BitReader;
15#[doc = "Field `SOSC_OEN` writer - need_des"]
16pub type SOSC_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `FOSC_OEN` reader - need_des"]
18pub type FOSC_OEN_R = crate::BitReader;
19#[doc = "Field `FOSC_OEN` writer - need_des"]
20pub type FOSC_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
21#[doc = "Field `OSC32K_OEN` reader - need_des"]
22pub type OSC32K_OEN_R = crate::BitReader;
23#[doc = "Field `OSC32K_OEN` writer - need_des"]
24pub type OSC32K_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
25#[doc = "Field `XTAL32K_OEN` reader - need_des"]
26pub type XTAL32K_OEN_R = crate::BitReader;
27#[doc = "Field `XTAL32K_OEN` writer - need_des"]
28pub type XTAL32K_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
29#[doc = "Field `CORE_EFUSE_OEN` reader - need_des"]
30pub type CORE_EFUSE_OEN_R = crate::BitReader;
31#[doc = "Field `CORE_EFUSE_OEN` writer - need_des"]
32pub type CORE_EFUSE_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
33#[doc = "Field `SLOW_OEN` reader - need_des"]
34pub type SLOW_OEN_R = crate::BitReader;
35#[doc = "Field `SLOW_OEN` writer - need_des"]
36pub type SLOW_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
37#[doc = "Field `FAST_OEN` reader - need_des"]
38pub type FAST_OEN_R = crate::BitReader;
39#[doc = "Field `FAST_OEN` writer - need_des"]
40pub type FAST_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
41#[doc = "Field `RNG_OEN` reader - need_des"]
42pub type RNG_OEN_R = crate::BitReader;
43#[doc = "Field `RNG_OEN` writer - need_des"]
44pub type RNG_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
45#[doc = "Field `LPBUS_OEN` reader - need_des"]
46pub type LPBUS_OEN_R = crate::BitReader;
47#[doc = "Field `LPBUS_OEN` writer - need_des"]
48pub type LPBUS_OEN_W<'a, REG> = crate::BitWriter<'a, REG>;
49impl R {
50    #[doc = "Bit 0 - need_des"]
51    #[inline(always)]
52    pub fn aon_slow_oen(&self) -> AON_SLOW_OEN_R {
53        AON_SLOW_OEN_R::new((self.bits & 1) != 0)
54    }
55    #[doc = "Bit 1 - need_des"]
56    #[inline(always)]
57    pub fn aon_fast_oen(&self) -> AON_FAST_OEN_R {
58        AON_FAST_OEN_R::new(((self.bits >> 1) & 1) != 0)
59    }
60    #[doc = "Bit 2 - need_des"]
61    #[inline(always)]
62    pub fn sosc_oen(&self) -> SOSC_OEN_R {
63        SOSC_OEN_R::new(((self.bits >> 2) & 1) != 0)
64    }
65    #[doc = "Bit 3 - need_des"]
66    #[inline(always)]
67    pub fn fosc_oen(&self) -> FOSC_OEN_R {
68        FOSC_OEN_R::new(((self.bits >> 3) & 1) != 0)
69    }
70    #[doc = "Bit 4 - need_des"]
71    #[inline(always)]
72    pub fn osc32k_oen(&self) -> OSC32K_OEN_R {
73        OSC32K_OEN_R::new(((self.bits >> 4) & 1) != 0)
74    }
75    #[doc = "Bit 5 - need_des"]
76    #[inline(always)]
77    pub fn xtal32k_oen(&self) -> XTAL32K_OEN_R {
78        XTAL32K_OEN_R::new(((self.bits >> 5) & 1) != 0)
79    }
80    #[doc = "Bit 6 - need_des"]
81    #[inline(always)]
82    pub fn core_efuse_oen(&self) -> CORE_EFUSE_OEN_R {
83        CORE_EFUSE_OEN_R::new(((self.bits >> 6) & 1) != 0)
84    }
85    #[doc = "Bit 7 - need_des"]
86    #[inline(always)]
87    pub fn slow_oen(&self) -> SLOW_OEN_R {
88        SLOW_OEN_R::new(((self.bits >> 7) & 1) != 0)
89    }
90    #[doc = "Bit 8 - need_des"]
91    #[inline(always)]
92    pub fn fast_oen(&self) -> FAST_OEN_R {
93        FAST_OEN_R::new(((self.bits >> 8) & 1) != 0)
94    }
95    #[doc = "Bit 9 - need_des"]
96    #[inline(always)]
97    pub fn rng_oen(&self) -> RNG_OEN_R {
98        RNG_OEN_R::new(((self.bits >> 9) & 1) != 0)
99    }
100    #[doc = "Bit 10 - need_des"]
101    #[inline(always)]
102    pub fn lpbus_oen(&self) -> LPBUS_OEN_R {
103        LPBUS_OEN_R::new(((self.bits >> 10) & 1) != 0)
104    }
105}
106#[cfg(feature = "impl-register-debug")]
107impl core::fmt::Debug for R {
108    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
109        f.debug_struct("LP_CLK_PO_EN")
110            .field("aon_slow_oen", &self.aon_slow_oen())
111            .field("aon_fast_oen", &self.aon_fast_oen())
112            .field("sosc_oen", &self.sosc_oen())
113            .field("fosc_oen", &self.fosc_oen())
114            .field("osc32k_oen", &self.osc32k_oen())
115            .field("xtal32k_oen", &self.xtal32k_oen())
116            .field("core_efuse_oen", &self.core_efuse_oen())
117            .field("slow_oen", &self.slow_oen())
118            .field("fast_oen", &self.fast_oen())
119            .field("rng_oen", &self.rng_oen())
120            .field("lpbus_oen", &self.lpbus_oen())
121            .finish()
122    }
123}
124impl W {
125    #[doc = "Bit 0 - need_des"]
126    #[inline(always)]
127    #[must_use]
128    pub fn aon_slow_oen(&mut self) -> AON_SLOW_OEN_W<LP_CLK_PO_EN_SPEC> {
129        AON_SLOW_OEN_W::new(self, 0)
130    }
131    #[doc = "Bit 1 - need_des"]
132    #[inline(always)]
133    #[must_use]
134    pub fn aon_fast_oen(&mut self) -> AON_FAST_OEN_W<LP_CLK_PO_EN_SPEC> {
135        AON_FAST_OEN_W::new(self, 1)
136    }
137    #[doc = "Bit 2 - need_des"]
138    #[inline(always)]
139    #[must_use]
140    pub fn sosc_oen(&mut self) -> SOSC_OEN_W<LP_CLK_PO_EN_SPEC> {
141        SOSC_OEN_W::new(self, 2)
142    }
143    #[doc = "Bit 3 - need_des"]
144    #[inline(always)]
145    #[must_use]
146    pub fn fosc_oen(&mut self) -> FOSC_OEN_W<LP_CLK_PO_EN_SPEC> {
147        FOSC_OEN_W::new(self, 3)
148    }
149    #[doc = "Bit 4 - need_des"]
150    #[inline(always)]
151    #[must_use]
152    pub fn osc32k_oen(&mut self) -> OSC32K_OEN_W<LP_CLK_PO_EN_SPEC> {
153        OSC32K_OEN_W::new(self, 4)
154    }
155    #[doc = "Bit 5 - need_des"]
156    #[inline(always)]
157    #[must_use]
158    pub fn xtal32k_oen(&mut self) -> XTAL32K_OEN_W<LP_CLK_PO_EN_SPEC> {
159        XTAL32K_OEN_W::new(self, 5)
160    }
161    #[doc = "Bit 6 - need_des"]
162    #[inline(always)]
163    #[must_use]
164    pub fn core_efuse_oen(&mut self) -> CORE_EFUSE_OEN_W<LP_CLK_PO_EN_SPEC> {
165        CORE_EFUSE_OEN_W::new(self, 6)
166    }
167    #[doc = "Bit 7 - need_des"]
168    #[inline(always)]
169    #[must_use]
170    pub fn slow_oen(&mut self) -> SLOW_OEN_W<LP_CLK_PO_EN_SPEC> {
171        SLOW_OEN_W::new(self, 7)
172    }
173    #[doc = "Bit 8 - need_des"]
174    #[inline(always)]
175    #[must_use]
176    pub fn fast_oen(&mut self) -> FAST_OEN_W<LP_CLK_PO_EN_SPEC> {
177        FAST_OEN_W::new(self, 8)
178    }
179    #[doc = "Bit 9 - need_des"]
180    #[inline(always)]
181    #[must_use]
182    pub fn rng_oen(&mut self) -> RNG_OEN_W<LP_CLK_PO_EN_SPEC> {
183        RNG_OEN_W::new(self, 9)
184    }
185    #[doc = "Bit 10 - need_des"]
186    #[inline(always)]
187    #[must_use]
188    pub fn lpbus_oen(&mut self) -> LPBUS_OEN_W<LP_CLK_PO_EN_SPEC> {
189        LPBUS_OEN_W::new(self, 10)
190    }
191}
192#[doc = "need_des\n\nYou can [`read`](crate::Reg::read) this register and get [`lp_clk_po_en::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`lp_clk_po_en::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
193pub struct LP_CLK_PO_EN_SPEC;
194impl crate::RegisterSpec for LP_CLK_PO_EN_SPEC {
195    type Ux = u32;
196}
197#[doc = "`read()` method returns [`lp_clk_po_en::R`](R) reader structure"]
198impl crate::Readable for LP_CLK_PO_EN_SPEC {}
199#[doc = "`write(|w| ..)` method takes [`lp_clk_po_en::W`](W) writer structure"]
200impl crate::Writable for LP_CLK_PO_EN_SPEC {
201    type Safety = crate::Unsafe;
202    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
203    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
204}
205#[doc = "`reset()` method sets LP_CLK_PO_EN to value 0x07ff"]
206impl crate::Resettable for LP_CLK_PO_EN_SPEC {
207    const RESET_VALUE: u32 = 0x07ff;
208}