atsamd51n/mclk/
ahbmask.rs

1#[doc = "Register `AHBMASK` reader"]
2pub type R = crate::R<AhbmaskSpec>;
3#[doc = "Register `AHBMASK` writer"]
4pub type W = crate::W<AhbmaskSpec>;
5#[doc = "Field `HPB0_` reader - HPB0 AHB Clock Mask"]
6pub type Hpb0_R = crate::BitReader;
7#[doc = "Field `HPB0_` writer - HPB0 AHB Clock Mask"]
8pub type Hpb0_W<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `HPB1_` reader - HPB1 AHB Clock Mask"]
10pub type Hpb1_R = crate::BitReader;
11#[doc = "Field `HPB1_` writer - HPB1 AHB Clock Mask"]
12pub type Hpb1_W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `HPB2_` reader - HPB2 AHB Clock Mask"]
14pub type Hpb2_R = crate::BitReader;
15#[doc = "Field `HPB2_` writer - HPB2 AHB Clock Mask"]
16pub type Hpb2_W<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `HPB3_` reader - HPB3 AHB Clock Mask"]
18pub type Hpb3_R = crate::BitReader;
19#[doc = "Field `HPB3_` writer - HPB3 AHB Clock Mask"]
20pub type Hpb3_W<'a, REG> = crate::BitWriter<'a, REG>;
21#[doc = "Field `DSU_` reader - DSU AHB Clock Mask"]
22pub type Dsu_R = crate::BitReader;
23#[doc = "Field `DSU_` writer - DSU AHB Clock Mask"]
24pub type Dsu_W<'a, REG> = crate::BitWriter<'a, REG>;
25#[doc = "Field `NVMCTRL_` reader - NVMCTRL AHB Clock Mask"]
26pub type Nvmctrl_R = crate::BitReader;
27#[doc = "Field `NVMCTRL_` writer - NVMCTRL AHB Clock Mask"]
28pub type Nvmctrl_W<'a, REG> = crate::BitWriter<'a, REG>;
29#[doc = "Field `CMCC_` reader - CMCC AHB Clock Mask"]
30pub type Cmcc_R = crate::BitReader;
31#[doc = "Field `CMCC_` writer - CMCC AHB Clock Mask"]
32pub type Cmcc_W<'a, REG> = crate::BitWriter<'a, REG>;
33#[doc = "Field `DMAC_` reader - DMAC AHB Clock Mask"]
34pub type Dmac_R = crate::BitReader;
35#[doc = "Field `DMAC_` writer - DMAC AHB Clock Mask"]
36pub type Dmac_W<'a, REG> = crate::BitWriter<'a, REG>;
37#[doc = "Field `USB_` reader - USB AHB Clock Mask"]
38pub type Usb_R = crate::BitReader;
39#[doc = "Field `USB_` writer - USB AHB Clock Mask"]
40pub type Usb_W<'a, REG> = crate::BitWriter<'a, REG>;
41#[doc = "Field `PAC_` reader - PAC AHB Clock Mask"]
42pub type Pac_R = crate::BitReader;
43#[doc = "Field `PAC_` writer - PAC AHB Clock Mask"]
44pub type Pac_W<'a, REG> = crate::BitWriter<'a, REG>;
45#[doc = "Field `QSPI_` reader - QSPI AHB Clock Mask"]
46pub type Qspi_R = crate::BitReader;
47#[doc = "Field `QSPI_` writer - QSPI AHB Clock Mask"]
48pub type Qspi_W<'a, REG> = crate::BitWriter<'a, REG>;
49#[doc = "Field `SDHC0_` reader - SDHC0 AHB Clock Mask"]
50pub type Sdhc0_R = crate::BitReader;
51#[doc = "Field `SDHC0_` writer - SDHC0 AHB Clock Mask"]
52pub type Sdhc0_W<'a, REG> = crate::BitWriter<'a, REG>;
53#[doc = "Field `SDHC1_` reader - SDHC1 AHB Clock Mask"]
54pub type Sdhc1_R = crate::BitReader;
55#[doc = "Field `SDHC1_` writer - SDHC1 AHB Clock Mask"]
56pub type Sdhc1_W<'a, REG> = crate::BitWriter<'a, REG>;
57#[doc = "Field `ICM_` reader - ICM AHB Clock Mask"]
58pub type Icm_R = crate::BitReader;
59#[doc = "Field `ICM_` writer - ICM AHB Clock Mask"]
60pub type Icm_W<'a, REG> = crate::BitWriter<'a, REG>;
61#[doc = "Field `PUKCC_` reader - PUKCC AHB Clock Mask"]
62pub type Pukcc_R = crate::BitReader;
63#[doc = "Field `PUKCC_` writer - PUKCC AHB Clock Mask"]
64pub type Pukcc_W<'a, REG> = crate::BitWriter<'a, REG>;
65#[doc = "Field `QSPI_2X_` reader - QSPI_2X AHB Clock Mask"]
66pub type Qspi2x_R = crate::BitReader;
67#[doc = "Field `QSPI_2X_` writer - QSPI_2X AHB Clock Mask"]
68pub type Qspi2x_W<'a, REG> = crate::BitWriter<'a, REG>;
69#[doc = "Field `NVMCTRL_SMEEPROM_` reader - NVMCTRL_SMEEPROM AHB Clock Mask"]
70pub type NvmctrlSmeeprom_R = crate::BitReader;
71#[doc = "Field `NVMCTRL_SMEEPROM_` writer - NVMCTRL_SMEEPROM AHB Clock Mask"]
72pub type NvmctrlSmeeprom_W<'a, REG> = crate::BitWriter<'a, REG>;
73#[doc = "Field `NVMCTRL_CACHE_` reader - NVMCTRL_CACHE AHB Clock Mask"]
74pub type NvmctrlCache_R = crate::BitReader;
75#[doc = "Field `NVMCTRL_CACHE_` writer - NVMCTRL_CACHE AHB Clock Mask"]
76pub type NvmctrlCache_W<'a, REG> = crate::BitWriter<'a, REG>;
77impl R {
78    #[doc = "Bit 0 - HPB0 AHB Clock Mask"]
79    #[inline(always)]
80    pub fn hpb0_(&self) -> Hpb0_R {
81        Hpb0_R::new((self.bits & 1) != 0)
82    }
83    #[doc = "Bit 1 - HPB1 AHB Clock Mask"]
84    #[inline(always)]
85    pub fn hpb1_(&self) -> Hpb1_R {
86        Hpb1_R::new(((self.bits >> 1) & 1) != 0)
87    }
88    #[doc = "Bit 2 - HPB2 AHB Clock Mask"]
89    #[inline(always)]
90    pub fn hpb2_(&self) -> Hpb2_R {
91        Hpb2_R::new(((self.bits >> 2) & 1) != 0)
92    }
93    #[doc = "Bit 3 - HPB3 AHB Clock Mask"]
94    #[inline(always)]
95    pub fn hpb3_(&self) -> Hpb3_R {
96        Hpb3_R::new(((self.bits >> 3) & 1) != 0)
97    }
98    #[doc = "Bit 4 - DSU AHB Clock Mask"]
99    #[inline(always)]
100    pub fn dsu_(&self) -> Dsu_R {
101        Dsu_R::new(((self.bits >> 4) & 1) != 0)
102    }
103    #[doc = "Bit 6 - NVMCTRL AHB Clock Mask"]
104    #[inline(always)]
105    pub fn nvmctrl_(&self) -> Nvmctrl_R {
106        Nvmctrl_R::new(((self.bits >> 6) & 1) != 0)
107    }
108    #[doc = "Bit 8 - CMCC AHB Clock Mask"]
109    #[inline(always)]
110    pub fn cmcc_(&self) -> Cmcc_R {
111        Cmcc_R::new(((self.bits >> 8) & 1) != 0)
112    }
113    #[doc = "Bit 9 - DMAC AHB Clock Mask"]
114    #[inline(always)]
115    pub fn dmac_(&self) -> Dmac_R {
116        Dmac_R::new(((self.bits >> 9) & 1) != 0)
117    }
118    #[doc = "Bit 10 - USB AHB Clock Mask"]
119    #[inline(always)]
120    pub fn usb_(&self) -> Usb_R {
121        Usb_R::new(((self.bits >> 10) & 1) != 0)
122    }
123    #[doc = "Bit 12 - PAC AHB Clock Mask"]
124    #[inline(always)]
125    pub fn pac_(&self) -> Pac_R {
126        Pac_R::new(((self.bits >> 12) & 1) != 0)
127    }
128    #[doc = "Bit 13 - QSPI AHB Clock Mask"]
129    #[inline(always)]
130    pub fn qspi_(&self) -> Qspi_R {
131        Qspi_R::new(((self.bits >> 13) & 1) != 0)
132    }
133    #[doc = "Bit 15 - SDHC0 AHB Clock Mask"]
134    #[inline(always)]
135    pub fn sdhc0_(&self) -> Sdhc0_R {
136        Sdhc0_R::new(((self.bits >> 15) & 1) != 0)
137    }
138    #[doc = "Bit 16 - SDHC1 AHB Clock Mask"]
139    #[inline(always)]
140    pub fn sdhc1_(&self) -> Sdhc1_R {
141        Sdhc1_R::new(((self.bits >> 16) & 1) != 0)
142    }
143    #[doc = "Bit 19 - ICM AHB Clock Mask"]
144    #[inline(always)]
145    pub fn icm_(&self) -> Icm_R {
146        Icm_R::new(((self.bits >> 19) & 1) != 0)
147    }
148    #[doc = "Bit 20 - PUKCC AHB Clock Mask"]
149    #[inline(always)]
150    pub fn pukcc_(&self) -> Pukcc_R {
151        Pukcc_R::new(((self.bits >> 20) & 1) != 0)
152    }
153    #[doc = "Bit 21 - QSPI_2X AHB Clock Mask"]
154    #[inline(always)]
155    pub fn qspi_2x_(&self) -> Qspi2x_R {
156        Qspi2x_R::new(((self.bits >> 21) & 1) != 0)
157    }
158    #[doc = "Bit 22 - NVMCTRL_SMEEPROM AHB Clock Mask"]
159    #[inline(always)]
160    pub fn nvmctrl_smeeprom_(&self) -> NvmctrlSmeeprom_R {
161        NvmctrlSmeeprom_R::new(((self.bits >> 22) & 1) != 0)
162    }
163    #[doc = "Bit 23 - NVMCTRL_CACHE AHB Clock Mask"]
164    #[inline(always)]
165    pub fn nvmctrl_cache_(&self) -> NvmctrlCache_R {
166        NvmctrlCache_R::new(((self.bits >> 23) & 1) != 0)
167    }
168}
169impl W {
170    #[doc = "Bit 0 - HPB0 AHB Clock Mask"]
171    #[inline(always)]
172    #[must_use]
173    pub fn hpb0_(&mut self) -> Hpb0_W<AhbmaskSpec> {
174        Hpb0_W::new(self, 0)
175    }
176    #[doc = "Bit 1 - HPB1 AHB Clock Mask"]
177    #[inline(always)]
178    #[must_use]
179    pub fn hpb1_(&mut self) -> Hpb1_W<AhbmaskSpec> {
180        Hpb1_W::new(self, 1)
181    }
182    #[doc = "Bit 2 - HPB2 AHB Clock Mask"]
183    #[inline(always)]
184    #[must_use]
185    pub fn hpb2_(&mut self) -> Hpb2_W<AhbmaskSpec> {
186        Hpb2_W::new(self, 2)
187    }
188    #[doc = "Bit 3 - HPB3 AHB Clock Mask"]
189    #[inline(always)]
190    #[must_use]
191    pub fn hpb3_(&mut self) -> Hpb3_W<AhbmaskSpec> {
192        Hpb3_W::new(self, 3)
193    }
194    #[doc = "Bit 4 - DSU AHB Clock Mask"]
195    #[inline(always)]
196    #[must_use]
197    pub fn dsu_(&mut self) -> Dsu_W<AhbmaskSpec> {
198        Dsu_W::new(self, 4)
199    }
200    #[doc = "Bit 6 - NVMCTRL AHB Clock Mask"]
201    #[inline(always)]
202    #[must_use]
203    pub fn nvmctrl_(&mut self) -> Nvmctrl_W<AhbmaskSpec> {
204        Nvmctrl_W::new(self, 6)
205    }
206    #[doc = "Bit 8 - CMCC AHB Clock Mask"]
207    #[inline(always)]
208    #[must_use]
209    pub fn cmcc_(&mut self) -> Cmcc_W<AhbmaskSpec> {
210        Cmcc_W::new(self, 8)
211    }
212    #[doc = "Bit 9 - DMAC AHB Clock Mask"]
213    #[inline(always)]
214    #[must_use]
215    pub fn dmac_(&mut self) -> Dmac_W<AhbmaskSpec> {
216        Dmac_W::new(self, 9)
217    }
218    #[doc = "Bit 10 - USB AHB Clock Mask"]
219    #[inline(always)]
220    #[must_use]
221    pub fn usb_(&mut self) -> Usb_W<AhbmaskSpec> {
222        Usb_W::new(self, 10)
223    }
224    #[doc = "Bit 12 - PAC AHB Clock Mask"]
225    #[inline(always)]
226    #[must_use]
227    pub fn pac_(&mut self) -> Pac_W<AhbmaskSpec> {
228        Pac_W::new(self, 12)
229    }
230    #[doc = "Bit 13 - QSPI AHB Clock Mask"]
231    #[inline(always)]
232    #[must_use]
233    pub fn qspi_(&mut self) -> Qspi_W<AhbmaskSpec> {
234        Qspi_W::new(self, 13)
235    }
236    #[doc = "Bit 15 - SDHC0 AHB Clock Mask"]
237    #[inline(always)]
238    #[must_use]
239    pub fn sdhc0_(&mut self) -> Sdhc0_W<AhbmaskSpec> {
240        Sdhc0_W::new(self, 15)
241    }
242    #[doc = "Bit 16 - SDHC1 AHB Clock Mask"]
243    #[inline(always)]
244    #[must_use]
245    pub fn sdhc1_(&mut self) -> Sdhc1_W<AhbmaskSpec> {
246        Sdhc1_W::new(self, 16)
247    }
248    #[doc = "Bit 19 - ICM AHB Clock Mask"]
249    #[inline(always)]
250    #[must_use]
251    pub fn icm_(&mut self) -> Icm_W<AhbmaskSpec> {
252        Icm_W::new(self, 19)
253    }
254    #[doc = "Bit 20 - PUKCC AHB Clock Mask"]
255    #[inline(always)]
256    #[must_use]
257    pub fn pukcc_(&mut self) -> Pukcc_W<AhbmaskSpec> {
258        Pukcc_W::new(self, 20)
259    }
260    #[doc = "Bit 21 - QSPI_2X AHB Clock Mask"]
261    #[inline(always)]
262    #[must_use]
263    pub fn qspi_2x_(&mut self) -> Qspi2x_W<AhbmaskSpec> {
264        Qspi2x_W::new(self, 21)
265    }
266    #[doc = "Bit 22 - NVMCTRL_SMEEPROM AHB Clock Mask"]
267    #[inline(always)]
268    #[must_use]
269    pub fn nvmctrl_smeeprom_(&mut self) -> NvmctrlSmeeprom_W<AhbmaskSpec> {
270        NvmctrlSmeeprom_W::new(self, 22)
271    }
272    #[doc = "Bit 23 - NVMCTRL_CACHE AHB Clock Mask"]
273    #[inline(always)]
274    #[must_use]
275    pub fn nvmctrl_cache_(&mut self) -> NvmctrlCache_W<AhbmaskSpec> {
276        NvmctrlCache_W::new(self, 23)
277    }
278}
279#[doc = "AHB Mask\n\nYou can [`read`](crate::Reg::read) this register and get [`ahbmask::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ahbmask::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
280pub struct AhbmaskSpec;
281impl crate::RegisterSpec for AhbmaskSpec {
282    type Ux = u32;
283}
284#[doc = "`read()` method returns [`ahbmask::R`](R) reader structure"]
285impl crate::Readable for AhbmaskSpec {}
286#[doc = "`write(|w| ..)` method takes [`ahbmask::W`](W) writer structure"]
287impl crate::Writable for AhbmaskSpec {
288    type Safety = crate::Unsafe;
289    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
290    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
291}
292#[doc = "`reset()` method sets AHBMASK to value 0x00ff_ffff"]
293impl crate::Resettable for AhbmaskSpec {
294    const RESET_VALUE: u32 = 0x00ff_ffff;
295}