esp32c6_lp/pmu/
imm_sleep_sysclk.rs

1#[doc = "Register `IMM_SLEEP_SYSCLK` writer"]
2pub type W = crate::W<IMM_SLEEP_SYSCLK_SPEC>;
3#[doc = "Field `UPDATE_DIG_ICG_SWITCH` writer - need_des"]
4pub type UPDATE_DIG_ICG_SWITCH_W<'a, REG> = crate::BitWriter<'a, REG>;
5#[doc = "Field `TIE_LOW_ICG_SLP_SEL` writer - need_des"]
6pub type TIE_LOW_ICG_SLP_SEL_W<'a, REG> = crate::BitWriter<'a, REG>;
7#[doc = "Field `TIE_HIGH_ICG_SLP_SEL` writer - need_des"]
8pub type TIE_HIGH_ICG_SLP_SEL_W<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `UPDATE_DIG_SYS_CLK_SEL` writer - need_des"]
10pub type UPDATE_DIG_SYS_CLK_SEL_W<'a, REG> = crate::BitWriter<'a, REG>;
11#[cfg(feature = "impl-register-debug")]
12impl core::fmt::Debug for crate::generic::Reg<IMM_SLEEP_SYSCLK_SPEC> {
13    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
14        write!(f, "(not readable)")
15    }
16}
17impl W {
18    #[doc = "Bit 28 - need_des"]
19    #[inline(always)]
20    #[must_use]
21    pub fn update_dig_icg_switch(&mut self) -> UPDATE_DIG_ICG_SWITCH_W<IMM_SLEEP_SYSCLK_SPEC> {
22        UPDATE_DIG_ICG_SWITCH_W::new(self, 28)
23    }
24    #[doc = "Bit 29 - need_des"]
25    #[inline(always)]
26    #[must_use]
27    pub fn tie_low_icg_slp_sel(&mut self) -> TIE_LOW_ICG_SLP_SEL_W<IMM_SLEEP_SYSCLK_SPEC> {
28        TIE_LOW_ICG_SLP_SEL_W::new(self, 29)
29    }
30    #[doc = "Bit 30 - need_des"]
31    #[inline(always)]
32    #[must_use]
33    pub fn tie_high_icg_slp_sel(&mut self) -> TIE_HIGH_ICG_SLP_SEL_W<IMM_SLEEP_SYSCLK_SPEC> {
34        TIE_HIGH_ICG_SLP_SEL_W::new(self, 30)
35    }
36    #[doc = "Bit 31 - need_des"]
37    #[inline(always)]
38    #[must_use]
39    pub fn update_dig_sys_clk_sel(&mut self) -> UPDATE_DIG_SYS_CLK_SEL_W<IMM_SLEEP_SYSCLK_SPEC> {
40        UPDATE_DIG_SYS_CLK_SEL_W::new(self, 31)
41    }
42}
43#[doc = "need_des\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`imm_sleep_sysclk::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
44pub struct IMM_SLEEP_SYSCLK_SPEC;
45impl crate::RegisterSpec for IMM_SLEEP_SYSCLK_SPEC {
46    type Ux = u32;
47}
48#[doc = "`write(|w| ..)` method takes [`imm_sleep_sysclk::W`](W) writer structure"]
49impl crate::Writable for IMM_SLEEP_SYSCLK_SPEC {
50    type Safety = crate::Unsafe;
51    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
52    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
53}
54#[doc = "`reset()` method sets IMM_SLEEP_SYSCLK to value 0"]
55impl crate::Resettable for IMM_SLEEP_SYSCLK_SPEC {
56    const RESET_VALUE: u32 = 0;
57}