bl702_pac/usb/
usb_int_sts.rs

1#[doc = "Register `usb_int_sts` reader"]
2pub struct R(crate::R<USB_INT_STS_SPEC>);
3impl core::ops::Deref for R {
4    type Target = crate::R<USB_INT_STS_SPEC>;
5    #[inline(always)]
6    fn deref(&self) -> &Self::Target {
7        &self.0
8    }
9}
10impl From<crate::R<USB_INT_STS_SPEC>> for R {
11    #[inline(always)]
12    fn from(reader: crate::R<USB_INT_STS_SPEC>) -> Self {
13        R(reader)
14    }
15}
16#[doc = "Register `usb_int_sts` writer"]
17pub struct W(crate::W<USB_INT_STS_SPEC>);
18impl core::ops::Deref for W {
19    type Target = crate::W<USB_INT_STS_SPEC>;
20    #[inline(always)]
21    fn deref(&self) -> &Self::Target {
22        &self.0
23    }
24}
25impl core::ops::DerefMut for W {
26    #[inline(always)]
27    fn deref_mut(&mut self) -> &mut Self::Target {
28        &mut self.0
29    }
30}
31impl From<crate::W<USB_INT_STS_SPEC>> for W {
32    #[inline(always)]
33    fn from(writer: crate::W<USB_INT_STS_SPEC>) -> Self {
34        W(writer)
35    }
36}
37#[doc = "Field `sof_int` reader - "]
38pub type SOF_INT_R = crate::BitReader<bool>;
39#[doc = "Field `sof_int` writer - "]
40pub type SOF_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
41#[doc = "Field `usb_reset_int` reader - "]
42pub type USB_RESET_INT_R = crate::BitReader<bool>;
43#[doc = "Field `usb_reset_int` writer - "]
44pub type USB_RESET_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
45#[doc = "Field `vbus_tgl_int` reader - "]
46pub type VBUS_TGL_INT_R = crate::BitReader<bool>;
47#[doc = "Field `vbus_tgl_int` writer - "]
48pub type VBUS_TGL_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
49#[doc = "Field `get_dct_cmd_int` reader - "]
50pub type GET_DCT_CMD_INT_R = crate::BitReader<bool>;
51#[doc = "Field `get_dct_cmd_int` writer - "]
52pub type GET_DCT_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
53#[doc = "Field `ep0_setup_cmd_int` reader - "]
54pub type EP0_SETUP_CMD_INT_R = crate::BitReader<bool>;
55#[doc = "Field `ep0_setup_cmd_int` writer - "]
56pub type EP0_SETUP_CMD_INT_W<'a, const O: u8> =
57    crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
58#[doc = "Field `ep0_setup_done_int` reader - "]
59pub type EP0_SETUP_DONE_INT_R = crate::BitReader<bool>;
60#[doc = "Field `ep0_setup_done_int` writer - "]
61pub type EP0_SETUP_DONE_INT_W<'a, const O: u8> =
62    crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
63#[doc = "Field `ep0_in_cmd_int` reader - "]
64pub type EP0_IN_CMD_INT_R = crate::BitReader<bool>;
65#[doc = "Field `ep0_in_cmd_int` writer - "]
66pub type EP0_IN_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
67#[doc = "Field `ep0_in_done_int` reader - "]
68pub type EP0_IN_DONE_INT_R = crate::BitReader<bool>;
69#[doc = "Field `ep0_in_done_int` writer - "]
70pub type EP0_IN_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
71#[doc = "Field `ep0_out_cmd_int` reader - "]
72pub type EP0_OUT_CMD_INT_R = crate::BitReader<bool>;
73#[doc = "Field `ep0_out_cmd_int` writer - "]
74pub type EP0_OUT_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
75#[doc = "Field `ep0_out_done_int` reader - "]
76pub type EP0_OUT_DONE_INT_R = crate::BitReader<bool>;
77#[doc = "Field `ep0_out_done_int` writer - "]
78pub type EP0_OUT_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
79#[doc = "Field `ep1_cmd_int` reader - "]
80pub type EP1_CMD_INT_R = crate::BitReader<bool>;
81#[doc = "Field `ep1_cmd_int` writer - "]
82pub type EP1_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
83#[doc = "Field `ep1_done_int` reader - "]
84pub type EP1_DONE_INT_R = crate::BitReader<bool>;
85#[doc = "Field `ep1_done_int` writer - "]
86pub type EP1_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
87#[doc = "Field `ep2_cmd_int` reader - "]
88pub type EP2_CMD_INT_R = crate::BitReader<bool>;
89#[doc = "Field `ep2_cmd_int` writer - "]
90pub type EP2_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
91#[doc = "Field `ep2_done_int` reader - "]
92pub type EP2_DONE_INT_R = crate::BitReader<bool>;
93#[doc = "Field `ep2_done_int` writer - "]
94pub type EP2_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
95#[doc = "Field `ep3_cmd_int` reader - "]
96pub type EP3_CMD_INT_R = crate::BitReader<bool>;
97#[doc = "Field `ep3_cmd_int` writer - "]
98pub type EP3_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
99#[doc = "Field `ep3_done_int` reader - "]
100pub type EP3_DONE_INT_R = crate::BitReader<bool>;
101#[doc = "Field `ep3_done_int` writer - "]
102pub type EP3_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
103#[doc = "Field `ep4_cmd_int` reader - "]
104pub type EP4_CMD_INT_R = crate::BitReader<bool>;
105#[doc = "Field `ep4_cmd_int` writer - "]
106pub type EP4_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
107#[doc = "Field `ep4_done_int` reader - "]
108pub type EP4_DONE_INT_R = crate::BitReader<bool>;
109#[doc = "Field `ep4_done_int` writer - "]
110pub type EP4_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
111#[doc = "Field `ep5_cmd_int` reader - "]
112pub type EP5_CMD_INT_R = crate::BitReader<bool>;
113#[doc = "Field `ep5_cmd_int` writer - "]
114pub type EP5_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
115#[doc = "Field `ep5_done_int` reader - "]
116pub type EP5_DONE_INT_R = crate::BitReader<bool>;
117#[doc = "Field `ep5_done_int` writer - "]
118pub type EP5_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
119#[doc = "Field `ep6_cmd_int` reader - "]
120pub type EP6_CMD_INT_R = crate::BitReader<bool>;
121#[doc = "Field `ep6_cmd_int` writer - "]
122pub type EP6_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
123#[doc = "Field `ep6_done_int` reader - "]
124pub type EP6_DONE_INT_R = crate::BitReader<bool>;
125#[doc = "Field `ep6_done_int` writer - "]
126pub type EP6_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
127#[doc = "Field `ep7_cmd_int` reader - "]
128pub type EP7_CMD_INT_R = crate::BitReader<bool>;
129#[doc = "Field `ep7_cmd_int` writer - "]
130pub type EP7_CMD_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
131#[doc = "Field `ep7_done_int` reader - "]
132pub type EP7_DONE_INT_R = crate::BitReader<bool>;
133#[doc = "Field `ep7_done_int` writer - "]
134pub type EP7_DONE_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
135#[doc = "Field `rsvd_27_24` reader - "]
136pub type RSVD_27_24_R = crate::FieldReader<u8, u8>;
137#[doc = "Field `rsvd_27_24` writer - "]
138pub type RSVD_27_24_W<'a, const O: u8> =
139    crate::FieldWriter<'a, u32, USB_INT_STS_SPEC, u8, u8, 4, O>;
140#[doc = "Field `lpm_wkup_int` reader - "]
141pub type LPM_WKUP_INT_R = crate::BitReader<bool>;
142#[doc = "Field `lpm_wkup_int` writer - "]
143pub type LPM_WKUP_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
144#[doc = "Field `lpm_pkt_int` reader - "]
145pub type LPM_PKT_INT_R = crate::BitReader<bool>;
146#[doc = "Field `lpm_pkt_int` writer - "]
147pub type LPM_PKT_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
148#[doc = "Field `sof_3ms_int` reader - "]
149pub type SOF_3MS_INT_R = crate::BitReader<bool>;
150#[doc = "Field `sof_3ms_int` writer - "]
151pub type SOF_3MS_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
152#[doc = "Field `usb_err_int` reader - "]
153pub type USB_ERR_INT_R = crate::BitReader<bool>;
154#[doc = "Field `usb_err_int` writer - "]
155pub type USB_ERR_INT_W<'a, const O: u8> = crate::BitWriter<'a, u32, USB_INT_STS_SPEC, bool, O>;
156impl R {
157    #[doc = "Bit 0"]
158    #[inline(always)]
159    pub fn sof_int(&self) -> SOF_INT_R {
160        SOF_INT_R::new((self.bits & 1) != 0)
161    }
162    #[doc = "Bit 1"]
163    #[inline(always)]
164    pub fn usb_reset_int(&self) -> USB_RESET_INT_R {
165        USB_RESET_INT_R::new(((self.bits >> 1) & 1) != 0)
166    }
167    #[doc = "Bit 2"]
168    #[inline(always)]
169    pub fn vbus_tgl_int(&self) -> VBUS_TGL_INT_R {
170        VBUS_TGL_INT_R::new(((self.bits >> 2) & 1) != 0)
171    }
172    #[doc = "Bit 3"]
173    #[inline(always)]
174    pub fn get_dct_cmd_int(&self) -> GET_DCT_CMD_INT_R {
175        GET_DCT_CMD_INT_R::new(((self.bits >> 3) & 1) != 0)
176    }
177    #[doc = "Bit 4"]
178    #[inline(always)]
179    pub fn ep0_setup_cmd_int(&self) -> EP0_SETUP_CMD_INT_R {
180        EP0_SETUP_CMD_INT_R::new(((self.bits >> 4) & 1) != 0)
181    }
182    #[doc = "Bit 5"]
183    #[inline(always)]
184    pub fn ep0_setup_done_int(&self) -> EP0_SETUP_DONE_INT_R {
185        EP0_SETUP_DONE_INT_R::new(((self.bits >> 5) & 1) != 0)
186    }
187    #[doc = "Bit 6"]
188    #[inline(always)]
189    pub fn ep0_in_cmd_int(&self) -> EP0_IN_CMD_INT_R {
190        EP0_IN_CMD_INT_R::new(((self.bits >> 6) & 1) != 0)
191    }
192    #[doc = "Bit 7"]
193    #[inline(always)]
194    pub fn ep0_in_done_int(&self) -> EP0_IN_DONE_INT_R {
195        EP0_IN_DONE_INT_R::new(((self.bits >> 7) & 1) != 0)
196    }
197    #[doc = "Bit 8"]
198    #[inline(always)]
199    pub fn ep0_out_cmd_int(&self) -> EP0_OUT_CMD_INT_R {
200        EP0_OUT_CMD_INT_R::new(((self.bits >> 8) & 1) != 0)
201    }
202    #[doc = "Bit 9"]
203    #[inline(always)]
204    pub fn ep0_out_done_int(&self) -> EP0_OUT_DONE_INT_R {
205        EP0_OUT_DONE_INT_R::new(((self.bits >> 9) & 1) != 0)
206    }
207    #[doc = "Bit 10"]
208    #[inline(always)]
209    pub fn ep1_cmd_int(&self) -> EP1_CMD_INT_R {
210        EP1_CMD_INT_R::new(((self.bits >> 10) & 1) != 0)
211    }
212    #[doc = "Bit 11"]
213    #[inline(always)]
214    pub fn ep1_done_int(&self) -> EP1_DONE_INT_R {
215        EP1_DONE_INT_R::new(((self.bits >> 11) & 1) != 0)
216    }
217    #[doc = "Bit 12"]
218    #[inline(always)]
219    pub fn ep2_cmd_int(&self) -> EP2_CMD_INT_R {
220        EP2_CMD_INT_R::new(((self.bits >> 12) & 1) != 0)
221    }
222    #[doc = "Bit 13"]
223    #[inline(always)]
224    pub fn ep2_done_int(&self) -> EP2_DONE_INT_R {
225        EP2_DONE_INT_R::new(((self.bits >> 13) & 1) != 0)
226    }
227    #[doc = "Bit 14"]
228    #[inline(always)]
229    pub fn ep3_cmd_int(&self) -> EP3_CMD_INT_R {
230        EP3_CMD_INT_R::new(((self.bits >> 14) & 1) != 0)
231    }
232    #[doc = "Bit 15"]
233    #[inline(always)]
234    pub fn ep3_done_int(&self) -> EP3_DONE_INT_R {
235        EP3_DONE_INT_R::new(((self.bits >> 15) & 1) != 0)
236    }
237    #[doc = "Bit 16"]
238    #[inline(always)]
239    pub fn ep4_cmd_int(&self) -> EP4_CMD_INT_R {
240        EP4_CMD_INT_R::new(((self.bits >> 16) & 1) != 0)
241    }
242    #[doc = "Bit 17"]
243    #[inline(always)]
244    pub fn ep4_done_int(&self) -> EP4_DONE_INT_R {
245        EP4_DONE_INT_R::new(((self.bits >> 17) & 1) != 0)
246    }
247    #[doc = "Bit 18"]
248    #[inline(always)]
249    pub fn ep5_cmd_int(&self) -> EP5_CMD_INT_R {
250        EP5_CMD_INT_R::new(((self.bits >> 18) & 1) != 0)
251    }
252    #[doc = "Bit 19"]
253    #[inline(always)]
254    pub fn ep5_done_int(&self) -> EP5_DONE_INT_R {
255        EP5_DONE_INT_R::new(((self.bits >> 19) & 1) != 0)
256    }
257    #[doc = "Bit 20"]
258    #[inline(always)]
259    pub fn ep6_cmd_int(&self) -> EP6_CMD_INT_R {
260        EP6_CMD_INT_R::new(((self.bits >> 20) & 1) != 0)
261    }
262    #[doc = "Bit 21"]
263    #[inline(always)]
264    pub fn ep6_done_int(&self) -> EP6_DONE_INT_R {
265        EP6_DONE_INT_R::new(((self.bits >> 21) & 1) != 0)
266    }
267    #[doc = "Bit 22"]
268    #[inline(always)]
269    pub fn ep7_cmd_int(&self) -> EP7_CMD_INT_R {
270        EP7_CMD_INT_R::new(((self.bits >> 22) & 1) != 0)
271    }
272    #[doc = "Bit 23"]
273    #[inline(always)]
274    pub fn ep7_done_int(&self) -> EP7_DONE_INT_R {
275        EP7_DONE_INT_R::new(((self.bits >> 23) & 1) != 0)
276    }
277    #[doc = "Bits 24:27"]
278    #[inline(always)]
279    pub fn rsvd_27_24(&self) -> RSVD_27_24_R {
280        RSVD_27_24_R::new(((self.bits >> 24) & 0x0f) as u8)
281    }
282    #[doc = "Bit 28"]
283    #[inline(always)]
284    pub fn lpm_wkup_int(&self) -> LPM_WKUP_INT_R {
285        LPM_WKUP_INT_R::new(((self.bits >> 28) & 1) != 0)
286    }
287    #[doc = "Bit 29"]
288    #[inline(always)]
289    pub fn lpm_pkt_int(&self) -> LPM_PKT_INT_R {
290        LPM_PKT_INT_R::new(((self.bits >> 29) & 1) != 0)
291    }
292    #[doc = "Bit 30"]
293    #[inline(always)]
294    pub fn sof_3ms_int(&self) -> SOF_3MS_INT_R {
295        SOF_3MS_INT_R::new(((self.bits >> 30) & 1) != 0)
296    }
297    #[doc = "Bit 31"]
298    #[inline(always)]
299    pub fn usb_err_int(&self) -> USB_ERR_INT_R {
300        USB_ERR_INT_R::new(((self.bits >> 31) & 1) != 0)
301    }
302}
303impl W {
304    #[doc = "Bit 0"]
305    #[inline(always)]
306    #[must_use]
307    pub fn sof_int(&mut self) -> SOF_INT_W<0> {
308        SOF_INT_W::new(self)
309    }
310    #[doc = "Bit 1"]
311    #[inline(always)]
312    #[must_use]
313    pub fn usb_reset_int(&mut self) -> USB_RESET_INT_W<1> {
314        USB_RESET_INT_W::new(self)
315    }
316    #[doc = "Bit 2"]
317    #[inline(always)]
318    #[must_use]
319    pub fn vbus_tgl_int(&mut self) -> VBUS_TGL_INT_W<2> {
320        VBUS_TGL_INT_W::new(self)
321    }
322    #[doc = "Bit 3"]
323    #[inline(always)]
324    #[must_use]
325    pub fn get_dct_cmd_int(&mut self) -> GET_DCT_CMD_INT_W<3> {
326        GET_DCT_CMD_INT_W::new(self)
327    }
328    #[doc = "Bit 4"]
329    #[inline(always)]
330    #[must_use]
331    pub fn ep0_setup_cmd_int(&mut self) -> EP0_SETUP_CMD_INT_W<4> {
332        EP0_SETUP_CMD_INT_W::new(self)
333    }
334    #[doc = "Bit 5"]
335    #[inline(always)]
336    #[must_use]
337    pub fn ep0_setup_done_int(&mut self) -> EP0_SETUP_DONE_INT_W<5> {
338        EP0_SETUP_DONE_INT_W::new(self)
339    }
340    #[doc = "Bit 6"]
341    #[inline(always)]
342    #[must_use]
343    pub fn ep0_in_cmd_int(&mut self) -> EP0_IN_CMD_INT_W<6> {
344        EP0_IN_CMD_INT_W::new(self)
345    }
346    #[doc = "Bit 7"]
347    #[inline(always)]
348    #[must_use]
349    pub fn ep0_in_done_int(&mut self) -> EP0_IN_DONE_INT_W<7> {
350        EP0_IN_DONE_INT_W::new(self)
351    }
352    #[doc = "Bit 8"]
353    #[inline(always)]
354    #[must_use]
355    pub fn ep0_out_cmd_int(&mut self) -> EP0_OUT_CMD_INT_W<8> {
356        EP0_OUT_CMD_INT_W::new(self)
357    }
358    #[doc = "Bit 9"]
359    #[inline(always)]
360    #[must_use]
361    pub fn ep0_out_done_int(&mut self) -> EP0_OUT_DONE_INT_W<9> {
362        EP0_OUT_DONE_INT_W::new(self)
363    }
364    #[doc = "Bit 10"]
365    #[inline(always)]
366    #[must_use]
367    pub fn ep1_cmd_int(&mut self) -> EP1_CMD_INT_W<10> {
368        EP1_CMD_INT_W::new(self)
369    }
370    #[doc = "Bit 11"]
371    #[inline(always)]
372    #[must_use]
373    pub fn ep1_done_int(&mut self) -> EP1_DONE_INT_W<11> {
374        EP1_DONE_INT_W::new(self)
375    }
376    #[doc = "Bit 12"]
377    #[inline(always)]
378    #[must_use]
379    pub fn ep2_cmd_int(&mut self) -> EP2_CMD_INT_W<12> {
380        EP2_CMD_INT_W::new(self)
381    }
382    #[doc = "Bit 13"]
383    #[inline(always)]
384    #[must_use]
385    pub fn ep2_done_int(&mut self) -> EP2_DONE_INT_W<13> {
386        EP2_DONE_INT_W::new(self)
387    }
388    #[doc = "Bit 14"]
389    #[inline(always)]
390    #[must_use]
391    pub fn ep3_cmd_int(&mut self) -> EP3_CMD_INT_W<14> {
392        EP3_CMD_INT_W::new(self)
393    }
394    #[doc = "Bit 15"]
395    #[inline(always)]
396    #[must_use]
397    pub fn ep3_done_int(&mut self) -> EP3_DONE_INT_W<15> {
398        EP3_DONE_INT_W::new(self)
399    }
400    #[doc = "Bit 16"]
401    #[inline(always)]
402    #[must_use]
403    pub fn ep4_cmd_int(&mut self) -> EP4_CMD_INT_W<16> {
404        EP4_CMD_INT_W::new(self)
405    }
406    #[doc = "Bit 17"]
407    #[inline(always)]
408    #[must_use]
409    pub fn ep4_done_int(&mut self) -> EP4_DONE_INT_W<17> {
410        EP4_DONE_INT_W::new(self)
411    }
412    #[doc = "Bit 18"]
413    #[inline(always)]
414    #[must_use]
415    pub fn ep5_cmd_int(&mut self) -> EP5_CMD_INT_W<18> {
416        EP5_CMD_INT_W::new(self)
417    }
418    #[doc = "Bit 19"]
419    #[inline(always)]
420    #[must_use]
421    pub fn ep5_done_int(&mut self) -> EP5_DONE_INT_W<19> {
422        EP5_DONE_INT_W::new(self)
423    }
424    #[doc = "Bit 20"]
425    #[inline(always)]
426    #[must_use]
427    pub fn ep6_cmd_int(&mut self) -> EP6_CMD_INT_W<20> {
428        EP6_CMD_INT_W::new(self)
429    }
430    #[doc = "Bit 21"]
431    #[inline(always)]
432    #[must_use]
433    pub fn ep6_done_int(&mut self) -> EP6_DONE_INT_W<21> {
434        EP6_DONE_INT_W::new(self)
435    }
436    #[doc = "Bit 22"]
437    #[inline(always)]
438    #[must_use]
439    pub fn ep7_cmd_int(&mut self) -> EP7_CMD_INT_W<22> {
440        EP7_CMD_INT_W::new(self)
441    }
442    #[doc = "Bit 23"]
443    #[inline(always)]
444    #[must_use]
445    pub fn ep7_done_int(&mut self) -> EP7_DONE_INT_W<23> {
446        EP7_DONE_INT_W::new(self)
447    }
448    #[doc = "Bits 24:27"]
449    #[inline(always)]
450    #[must_use]
451    pub fn rsvd_27_24(&mut self) -> RSVD_27_24_W<24> {
452        RSVD_27_24_W::new(self)
453    }
454    #[doc = "Bit 28"]
455    #[inline(always)]
456    #[must_use]
457    pub fn lpm_wkup_int(&mut self) -> LPM_WKUP_INT_W<28> {
458        LPM_WKUP_INT_W::new(self)
459    }
460    #[doc = "Bit 29"]
461    #[inline(always)]
462    #[must_use]
463    pub fn lpm_pkt_int(&mut self) -> LPM_PKT_INT_W<29> {
464        LPM_PKT_INT_W::new(self)
465    }
466    #[doc = "Bit 30"]
467    #[inline(always)]
468    #[must_use]
469    pub fn sof_3ms_int(&mut self) -> SOF_3MS_INT_W<30> {
470        SOF_3MS_INT_W::new(self)
471    }
472    #[doc = "Bit 31"]
473    #[inline(always)]
474    #[must_use]
475    pub fn usb_err_int(&mut self) -> USB_ERR_INT_W<31> {
476        USB_ERR_INT_W::new(self)
477    }
478    #[doc = "Writes raw bits to the register."]
479    #[inline(always)]
480    pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
481        self.0.bits(bits);
482        self
483    }
484}
485#[doc = "USB interrupt status\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [usb_int_sts](index.html) module"]
486pub struct USB_INT_STS_SPEC;
487impl crate::RegisterSpec for USB_INT_STS_SPEC {
488    type Ux = u32;
489}
490#[doc = "`read()` method returns [usb_int_sts::R](R) reader structure"]
491impl crate::Readable for USB_INT_STS_SPEC {
492    type Reader = R;
493}
494#[doc = "`write(|w| ..)` method takes [usb_int_sts::W](W) writer structure"]
495impl crate::Writable for USB_INT_STS_SPEC {
496    type Writer = W;
497    const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
498    const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
499}
500#[doc = "`reset()` method sets usb_int_sts to value 0"]
501impl crate::Resettable for USB_INT_STS_SPEC {
502    const RESET_VALUE: Self::Ux = 0;
503}