bl61x_pac/glb/
wifi_pll_config_11.rs

1#[doc = "Register `wifi_pll_config_11` reader"]
2pub type R = crate::R<WIFI_PLL_CONFIG_11_SPEC>;
3#[doc = "Register `wifi_pll_config_11` writer"]
4pub type W = crate::W<WIFI_PLL_CONFIG_11_SPEC>;
5#[doc = "Field `usbpll_ssc_cnt` reader - "]
6pub type USBPLL_SSC_CNT_R = crate::FieldReader<u16>;
7#[doc = "Field `usbpll_ssc_cnt` writer - "]
8pub type USBPLL_SSC_CNT_W<'a, REG> = crate::FieldWriter<'a, REG, 9, u16>;
9#[doc = "Field `usbpll_ssc_start` reader - "]
10pub type USBPLL_SSC_START_R = crate::BitReader;
11#[doc = "Field `usbpll_ssc_start` writer - "]
12pub type USBPLL_SSC_START_W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `usbpll_ssc_start_gate_en` reader - "]
14pub type USBPLL_SSC_START_GATE_EN_R = crate::BitReader;
15#[doc = "Field `usbpll_ssc_start_gate_en` writer - "]
16pub type USBPLL_SSC_START_GATE_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `usbpll_ssc_gain` reader - "]
18pub type USBPLL_SSC_GAIN_R = crate::FieldReader;
19#[doc = "Field `usbpll_ssc_gain` writer - "]
20pub type USBPLL_SSC_GAIN_W<'a, REG> = crate::FieldWriter<'a, REG, 3>;
21#[doc = "Field `usbpll_ssc_en` reader - "]
22pub type USBPLL_SSC_EN_R = crate::BitReader;
23#[doc = "Field `usbpll_ssc_en` writer - "]
24pub type USBPLL_SSC_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
25impl R {
26    #[doc = "Bits 0:8"]
27    #[inline(always)]
28    pub fn usbpll_ssc_cnt(&self) -> USBPLL_SSC_CNT_R {
29        USBPLL_SSC_CNT_R::new((self.bits & 0x01ff) as u16)
30    }
31    #[doc = "Bit 9"]
32    #[inline(always)]
33    pub fn usbpll_ssc_start(&self) -> USBPLL_SSC_START_R {
34        USBPLL_SSC_START_R::new(((self.bits >> 9) & 1) != 0)
35    }
36    #[doc = "Bit 10"]
37    #[inline(always)]
38    pub fn usbpll_ssc_start_gate_en(&self) -> USBPLL_SSC_START_GATE_EN_R {
39        USBPLL_SSC_START_GATE_EN_R::new(((self.bits >> 10) & 1) != 0)
40    }
41    #[doc = "Bits 12:14"]
42    #[inline(always)]
43    pub fn usbpll_ssc_gain(&self) -> USBPLL_SSC_GAIN_R {
44        USBPLL_SSC_GAIN_R::new(((self.bits >> 12) & 7) as u8)
45    }
46    #[doc = "Bit 16"]
47    #[inline(always)]
48    pub fn usbpll_ssc_en(&self) -> USBPLL_SSC_EN_R {
49        USBPLL_SSC_EN_R::new(((self.bits >> 16) & 1) != 0)
50    }
51}
52impl W {
53    #[doc = "Bits 0:8"]
54    #[inline(always)]
55    #[must_use]
56    pub fn usbpll_ssc_cnt(&mut self) -> USBPLL_SSC_CNT_W<WIFI_PLL_CONFIG_11_SPEC> {
57        USBPLL_SSC_CNT_W::new(self, 0)
58    }
59    #[doc = "Bit 9"]
60    #[inline(always)]
61    #[must_use]
62    pub fn usbpll_ssc_start(&mut self) -> USBPLL_SSC_START_W<WIFI_PLL_CONFIG_11_SPEC> {
63        USBPLL_SSC_START_W::new(self, 9)
64    }
65    #[doc = "Bit 10"]
66    #[inline(always)]
67    #[must_use]
68    pub fn usbpll_ssc_start_gate_en(
69        &mut self,
70    ) -> USBPLL_SSC_START_GATE_EN_W<WIFI_PLL_CONFIG_11_SPEC> {
71        USBPLL_SSC_START_GATE_EN_W::new(self, 10)
72    }
73    #[doc = "Bits 12:14"]
74    #[inline(always)]
75    #[must_use]
76    pub fn usbpll_ssc_gain(&mut self) -> USBPLL_SSC_GAIN_W<WIFI_PLL_CONFIG_11_SPEC> {
77        USBPLL_SSC_GAIN_W::new(self, 12)
78    }
79    #[doc = "Bit 16"]
80    #[inline(always)]
81    #[must_use]
82    pub fn usbpll_ssc_en(&mut self) -> USBPLL_SSC_EN_W<WIFI_PLL_CONFIG_11_SPEC> {
83        USBPLL_SSC_EN_W::new(self, 16)
84    }
85    #[doc = r" Writes raw bits to the register."]
86    #[doc = r""]
87    #[doc = r" # Safety"]
88    #[doc = r""]
89    #[doc = r" Passing incorrect value can cause undefined behaviour. See reference manual"]
90    #[inline(always)]
91    pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
92        self.bits = bits;
93        self
94    }
95}
96#[doc = "Wireless Fidelity Phase-Locked Loop configuration 11\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`wifi_pll_config_11::R`](R).  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`wifi_pll_config_11::W`](W). You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
97pub struct WIFI_PLL_CONFIG_11_SPEC;
98impl crate::RegisterSpec for WIFI_PLL_CONFIG_11_SPEC {
99    type Ux = u32;
100}
101#[doc = "`read()` method returns [`wifi_pll_config_11::R`](R) reader structure"]
102impl crate::Readable for WIFI_PLL_CONFIG_11_SPEC {}
103#[doc = "`write(|w| ..)` method takes [`wifi_pll_config_11::W`](W) writer structure"]
104impl crate::Writable for WIFI_PLL_CONFIG_11_SPEC {
105    const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
106    const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
107}
108#[doc = "`reset()` method sets wifi_pll_config_11 to value 0"]
109impl crate::Resettable for WIFI_PLL_CONFIG_11_SPEC {
110    const RESET_VALUE: Self::Ux = 0;
111}