1#[doc = "Register `PKFB_FIFOCTRL` reader"]
2pub struct R(crate::R<PKFB_FIFOCTRL_SPEC>);
3impl core::ops::Deref for R {
4 type Target = crate::R<PKFB_FIFOCTRL_SPEC>;
5 #[inline(always)]
6 fn deref(&self) -> &Self::Target {
7 &self.0
8 }
9}
10impl From<crate::R<PKFB_FIFOCTRL_SPEC>> for R {
11 #[inline(always)]
12 fn from(reader: crate::R<PKFB_FIFOCTRL_SPEC>) -> Self {
13 R(reader)
14 }
15}
16#[doc = "Register `PKFB_FIFOCTRL` writer"]
17pub struct W(crate::W<PKFB_FIFOCTRL_SPEC>);
18impl core::ops::Deref for W {
19 type Target = crate::W<PKFB_FIFOCTRL_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<PKFB_FIFOCTRL_SPEC>> for W {
32 #[inline(always)]
33 fn from(writer: crate::W<PKFB_FIFOCTRL_SPEC>) -> Self {
34 W(writer)
35 }
36}
37#[doc = "Set to enable the Packet FIFO\n\nValue on reset: 0"]
38#[derive(Clone, Copy, Debug, PartialEq)]
39pub enum PF0_EN_A {
40 #[doc = "0: Disable the packet FIFO"]
41 DISABLE = 0,
42 #[doc = "1: Enable the packet FIFO"]
43 ENABLE = 1,
44}
45impl From<PF0_EN_A> for bool {
46 #[inline(always)]
47 fn from(variant: PF0_EN_A) -> Self {
48 variant as u8 != 0
49 }
50}
51#[doc = "Field `pf0_en` reader - Set to enable the Packet FIFO"]
52pub struct PF0_EN_R(crate::FieldReader<bool, PF0_EN_A>);
53impl PF0_EN_R {
54 #[inline(always)]
55 pub(crate) fn new(bits: bool) -> Self {
56 PF0_EN_R(crate::FieldReader::new(bits))
57 }
58 #[doc = r"Get enumerated values variant"]
59 #[inline(always)]
60 pub fn variant(&self) -> PF0_EN_A {
61 match self.bits {
62 false => PF0_EN_A::DISABLE,
63 true => PF0_EN_A::ENABLE,
64 }
65 }
66 #[doc = "Checks if the value of the field is `DISABLE`"]
67 #[inline(always)]
68 pub fn is_disable(&self) -> bool {
69 **self == PF0_EN_A::DISABLE
70 }
71 #[doc = "Checks if the value of the field is `ENABLE`"]
72 #[inline(always)]
73 pub fn is_enable(&self) -> bool {
74 **self == PF0_EN_A::ENABLE
75 }
76}
77impl core::ops::Deref for PF0_EN_R {
78 type Target = crate::FieldReader<bool, PF0_EN_A>;
79 #[inline(always)]
80 fn deref(&self) -> &Self::Target {
81 &self.0
82 }
83}
84#[doc = "Field `pf0_en` writer - Set to enable the Packet FIFO"]
85pub struct PF0_EN_W<'a> {
86 w: &'a mut W,
87}
88impl<'a> PF0_EN_W<'a> {
89 #[doc = r"Writes `variant` to the field"]
90 #[inline(always)]
91 pub fn variant(self, variant: PF0_EN_A) -> &'a mut W {
92 self.bit(variant.into())
93 }
94 #[doc = "Disable the packet FIFO"]
95 #[inline(always)]
96 pub fn disable(self) -> &'a mut W {
97 self.variant(PF0_EN_A::DISABLE)
98 }
99 #[doc = "Enable the packet FIFO"]
100 #[inline(always)]
101 pub fn enable(self) -> &'a mut W {
102 self.variant(PF0_EN_A::ENABLE)
103 }
104 #[doc = r"Sets the field bit"]
105 #[inline(always)]
106 pub fn set_bit(self) -> &'a mut W {
107 self.bit(true)
108 }
109 #[doc = r"Clears the field bit"]
110 #[inline(always)]
111 pub fn clear_bit(self) -> &'a mut W {
112 self.bit(false)
113 }
114 #[doc = r"Writes raw bits to the field"]
115 #[inline(always)]
116 pub fn bit(self, value: bool) -> &'a mut W {
117 self.w.bits = (self.w.bits & !0x01) | (value as u32 & 0x01);
118 self.w
119 }
120}
121#[doc = "Select which subsystem controls the push operation\n\nValue on reset: 0"]
122#[derive(Clone, Copy, Debug, PartialEq)]
123pub enum PF0_PUSH_MUX_A {
124 #[doc = "0: Select the M4 subsystem to control the FIFO"]
125 M4 = 0,
126 #[doc = "1: Select the FFE subsystem to control the FIFO"]
127 FFE = 1,
128}
129impl From<PF0_PUSH_MUX_A> for bool {
130 #[inline(always)]
131 fn from(variant: PF0_PUSH_MUX_A) -> Self {
132 variant as u8 != 0
133 }
134}
135#[doc = "Field `pf0_push_mux` reader - Select which subsystem controls the push operation"]
136pub struct PF0_PUSH_MUX_R(crate::FieldReader<bool, PF0_PUSH_MUX_A>);
137impl PF0_PUSH_MUX_R {
138 #[inline(always)]
139 pub(crate) fn new(bits: bool) -> Self {
140 PF0_PUSH_MUX_R(crate::FieldReader::new(bits))
141 }
142 #[doc = r"Get enumerated values variant"]
143 #[inline(always)]
144 pub fn variant(&self) -> PF0_PUSH_MUX_A {
145 match self.bits {
146 false => PF0_PUSH_MUX_A::M4,
147 true => PF0_PUSH_MUX_A::FFE,
148 }
149 }
150 #[doc = "Checks if the value of the field is `M4`"]
151 #[inline(always)]
152 pub fn is_m4(&self) -> bool {
153 **self == PF0_PUSH_MUX_A::M4
154 }
155 #[doc = "Checks if the value of the field is `FFE`"]
156 #[inline(always)]
157 pub fn is_ffe(&self) -> bool {
158 **self == PF0_PUSH_MUX_A::FFE
159 }
160}
161impl core::ops::Deref for PF0_PUSH_MUX_R {
162 type Target = crate::FieldReader<bool, PF0_PUSH_MUX_A>;
163 #[inline(always)]
164 fn deref(&self) -> &Self::Target {
165 &self.0
166 }
167}
168#[doc = "Field `pf0_push_mux` writer - Select which subsystem controls the push operation"]
169pub struct PF0_PUSH_MUX_W<'a> {
170 w: &'a mut W,
171}
172impl<'a> PF0_PUSH_MUX_W<'a> {
173 #[doc = r"Writes `variant` to the field"]
174 #[inline(always)]
175 pub fn variant(self, variant: PF0_PUSH_MUX_A) -> &'a mut W {
176 self.bit(variant.into())
177 }
178 #[doc = "Select the M4 subsystem to control the FIFO"]
179 #[inline(always)]
180 pub fn m4(self) -> &'a mut W {
181 self.variant(PF0_PUSH_MUX_A::M4)
182 }
183 #[doc = "Select the FFE subsystem to control the FIFO"]
184 #[inline(always)]
185 pub fn ffe(self) -> &'a mut W {
186 self.variant(PF0_PUSH_MUX_A::FFE)
187 }
188 #[doc = r"Sets the field bit"]
189 #[inline(always)]
190 pub fn set_bit(self) -> &'a mut W {
191 self.bit(true)
192 }
193 #[doc = r"Clears the field bit"]
194 #[inline(always)]
195 pub fn clear_bit(self) -> &'a mut W {
196 self.bit(false)
197 }
198 #[doc = r"Writes raw bits to the field"]
199 #[inline(always)]
200 pub fn bit(self, value: bool) -> &'a mut W {
201 self.w.bits =
202 (self.w.bits & !(0x01 << 1)) | ((value as u32 & 0x01) << 1);
203 self.w
204 }
205}
206#[doc = "Select which subsystem controls the pop operation\n\nValue on reset: 0"]
207#[derive(Clone, Copy, Debug, PartialEq)]
208pub enum PF0_POP_MUX_A {
209 #[doc = "0: Select the M4 subsystem to control the FIFO"]
210 M4 = 0,
211 #[doc = "1: Select the AP subsystem to control the FIFO"]
212 AP = 1,
213}
214impl From<PF0_POP_MUX_A> for bool {
215 #[inline(always)]
216 fn from(variant: PF0_POP_MUX_A) -> Self {
217 variant as u8 != 0
218 }
219}
220#[doc = "Field `pf0_pop_mux` reader - Select which subsystem controls the pop operation"]
221pub struct PF0_POP_MUX_R(crate::FieldReader<bool, PF0_POP_MUX_A>);
222impl PF0_POP_MUX_R {
223 #[inline(always)]
224 pub(crate) fn new(bits: bool) -> Self {
225 PF0_POP_MUX_R(crate::FieldReader::new(bits))
226 }
227 #[doc = r"Get enumerated values variant"]
228 #[inline(always)]
229 pub fn variant(&self) -> PF0_POP_MUX_A {
230 match self.bits {
231 false => PF0_POP_MUX_A::M4,
232 true => PF0_POP_MUX_A::AP,
233 }
234 }
235 #[doc = "Checks if the value of the field is `M4`"]
236 #[inline(always)]
237 pub fn is_m4(&self) -> bool {
238 **self == PF0_POP_MUX_A::M4
239 }
240 #[doc = "Checks if the value of the field is `AP`"]
241 #[inline(always)]
242 pub fn is_ap(&self) -> bool {
243 **self == PF0_POP_MUX_A::AP
244 }
245}
246impl core::ops::Deref for PF0_POP_MUX_R {
247 type Target = crate::FieldReader<bool, PF0_POP_MUX_A>;
248 #[inline(always)]
249 fn deref(&self) -> &Self::Target {
250 &self.0
251 }
252}
253#[doc = "Field `pf0_pop_mux` writer - Select which subsystem controls the pop operation"]
254pub struct PF0_POP_MUX_W<'a> {
255 w: &'a mut W,
256}
257impl<'a> PF0_POP_MUX_W<'a> {
258 #[doc = r"Writes `variant` to the field"]
259 #[inline(always)]
260 pub fn variant(self, variant: PF0_POP_MUX_A) -> &'a mut W {
261 self.bit(variant.into())
262 }
263 #[doc = "Select the M4 subsystem to control the FIFO"]
264 #[inline(always)]
265 pub fn m4(self) -> &'a mut W {
266 self.variant(PF0_POP_MUX_A::M4)
267 }
268 #[doc = "Select the AP subsystem to control the FIFO"]
269 #[inline(always)]
270 pub fn ap(self) -> &'a mut W {
271 self.variant(PF0_POP_MUX_A::AP)
272 }
273 #[doc = r"Sets the field bit"]
274 #[inline(always)]
275 pub fn set_bit(self) -> &'a mut W {
276 self.bit(true)
277 }
278 #[doc = r"Clears the field bit"]
279 #[inline(always)]
280 pub fn clear_bit(self) -> &'a mut W {
281 self.bit(false)
282 }
283 #[doc = r"Writes raw bits to the field"]
284 #[inline(always)]
285 pub fn bit(self, value: bool) -> &'a mut W {
286 self.w.bits =
287 (self.w.bits & !(0x01 << 2)) | ((value as u32 & 0x01) << 2);
288 self.w
289 }
290}
291#[doc = "Select which subsystem manages the push interrupt\n\nValue on reset: 0"]
292#[derive(Clone, Copy, Debug, PartialEq)]
293pub enum PF0_PUSH_INT_MUX_A {
294 #[doc = "0: Select the M4 subsystem to control the FIFO"]
295 M4 = 0,
296 #[doc = "1: Select the AP subsystem to control the FIFO"]
297 AP = 1,
298}
299impl From<PF0_PUSH_INT_MUX_A> for bool {
300 #[inline(always)]
301 fn from(variant: PF0_PUSH_INT_MUX_A) -> Self {
302 variant as u8 != 0
303 }
304}
305#[doc = "Field `pf0_push_int_mux` reader - Select which subsystem manages the push interrupt"]
306pub struct PF0_PUSH_INT_MUX_R(crate::FieldReader<bool, PF0_PUSH_INT_MUX_A>);
307impl PF0_PUSH_INT_MUX_R {
308 #[inline(always)]
309 pub(crate) fn new(bits: bool) -> Self {
310 PF0_PUSH_INT_MUX_R(crate::FieldReader::new(bits))
311 }
312 #[doc = r"Get enumerated values variant"]
313 #[inline(always)]
314 pub fn variant(&self) -> PF0_PUSH_INT_MUX_A {
315 match self.bits {
316 false => PF0_PUSH_INT_MUX_A::M4,
317 true => PF0_PUSH_INT_MUX_A::AP,
318 }
319 }
320 #[doc = "Checks if the value of the field is `M4`"]
321 #[inline(always)]
322 pub fn is_m4(&self) -> bool {
323 **self == PF0_PUSH_INT_MUX_A::M4
324 }
325 #[doc = "Checks if the value of the field is `AP`"]
326 #[inline(always)]
327 pub fn is_ap(&self) -> bool {
328 **self == PF0_PUSH_INT_MUX_A::AP
329 }
330}
331impl core::ops::Deref for PF0_PUSH_INT_MUX_R {
332 type Target = crate::FieldReader<bool, PF0_PUSH_INT_MUX_A>;
333 #[inline(always)]
334 fn deref(&self) -> &Self::Target {
335 &self.0
336 }
337}
338#[doc = "Field `pf0_push_int_mux` writer - Select which subsystem manages the push interrupt"]
339pub struct PF0_PUSH_INT_MUX_W<'a> {
340 w: &'a mut W,
341}
342impl<'a> PF0_PUSH_INT_MUX_W<'a> {
343 #[doc = r"Writes `variant` to the field"]
344 #[inline(always)]
345 pub fn variant(self, variant: PF0_PUSH_INT_MUX_A) -> &'a mut W {
346 self.bit(variant.into())
347 }
348 #[doc = "Select the M4 subsystem to control the FIFO"]
349 #[inline(always)]
350 pub fn m4(self) -> &'a mut W {
351 self.variant(PF0_PUSH_INT_MUX_A::M4)
352 }
353 #[doc = "Select the AP subsystem to control the FIFO"]
354 #[inline(always)]
355 pub fn ap(self) -> &'a mut W {
356 self.variant(PF0_PUSH_INT_MUX_A::AP)
357 }
358 #[doc = r"Sets the field bit"]
359 #[inline(always)]
360 pub fn set_bit(self) -> &'a mut W {
361 self.bit(true)
362 }
363 #[doc = r"Clears the field bit"]
364 #[inline(always)]
365 pub fn clear_bit(self) -> &'a mut W {
366 self.bit(false)
367 }
368 #[doc = r"Writes raw bits to the field"]
369 #[inline(always)]
370 pub fn bit(self, value: bool) -> &'a mut W {
371 self.w.bits =
372 (self.w.bits & !(0x01 << 3)) | ((value as u32 & 0x01) << 3);
373 self.w
374 }
375}
376#[doc = "Select which subsystem manages the pop interrupt\n\nValue on reset: 0"]
377#[derive(Clone, Copy, Debug, PartialEq)]
378pub enum PF0_POP_INT_MUX_A {
379 #[doc = "0: Select the M4 subsystem to control the FIFO"]
380 M4 = 0,
381 #[doc = "1: Select the AP subsystem to control the FIFO"]
382 AP = 1,
383}
384impl From<PF0_POP_INT_MUX_A> for bool {
385 #[inline(always)]
386 fn from(variant: PF0_POP_INT_MUX_A) -> Self {
387 variant as u8 != 0
388 }
389}
390#[doc = "Field `pf0_pop_int_mux` reader - Select which subsystem manages the pop interrupt"]
391pub struct PF0_POP_INT_MUX_R(crate::FieldReader<bool, PF0_POP_INT_MUX_A>);
392impl PF0_POP_INT_MUX_R {
393 #[inline(always)]
394 pub(crate) fn new(bits: bool) -> Self {
395 PF0_POP_INT_MUX_R(crate::FieldReader::new(bits))
396 }
397 #[doc = r"Get enumerated values variant"]
398 #[inline(always)]
399 pub fn variant(&self) -> PF0_POP_INT_MUX_A {
400 match self.bits {
401 false => PF0_POP_INT_MUX_A::M4,
402 true => PF0_POP_INT_MUX_A::AP,
403 }
404 }
405 #[doc = "Checks if the value of the field is `M4`"]
406 #[inline(always)]
407 pub fn is_m4(&self) -> bool {
408 **self == PF0_POP_INT_MUX_A::M4
409 }
410 #[doc = "Checks if the value of the field is `AP`"]
411 #[inline(always)]
412 pub fn is_ap(&self) -> bool {
413 **self == PF0_POP_INT_MUX_A::AP
414 }
415}
416impl core::ops::Deref for PF0_POP_INT_MUX_R {
417 type Target = crate::FieldReader<bool, PF0_POP_INT_MUX_A>;
418 #[inline(always)]
419 fn deref(&self) -> &Self::Target {
420 &self.0
421 }
422}
423#[doc = "Field `pf0_pop_int_mux` writer - Select which subsystem manages the pop interrupt"]
424pub struct PF0_POP_INT_MUX_W<'a> {
425 w: &'a mut W,
426}
427impl<'a> PF0_POP_INT_MUX_W<'a> {
428 #[doc = r"Writes `variant` to the field"]
429 #[inline(always)]
430 pub fn variant(self, variant: PF0_POP_INT_MUX_A) -> &'a mut W {
431 self.bit(variant.into())
432 }
433 #[doc = "Select the M4 subsystem to control the FIFO"]
434 #[inline(always)]
435 pub fn m4(self) -> &'a mut W {
436 self.variant(PF0_POP_INT_MUX_A::M4)
437 }
438 #[doc = "Select the AP subsystem to control the FIFO"]
439 #[inline(always)]
440 pub fn ap(self) -> &'a mut W {
441 self.variant(PF0_POP_INT_MUX_A::AP)
442 }
443 #[doc = r"Sets the field bit"]
444 #[inline(always)]
445 pub fn set_bit(self) -> &'a mut W {
446 self.bit(true)
447 }
448 #[doc = r"Clears the field bit"]
449 #[inline(always)]
450 pub fn clear_bit(self) -> &'a mut W {
451 self.bit(false)
452 }
453 #[doc = r"Writes raw bits to the field"]
454 #[inline(always)]
455 pub fn bit(self, value: bool) -> &'a mut W {
456 self.w.bits =
457 (self.w.bits & !(0x01 << 4)) | ((value as u32 & 0x01) << 4);
458 self.w
459 }
460}
461#[doc = "If FFE is the controller, select which instance of FFE will be used for control\n\nValue on reset: 0"]
462#[derive(Clone, Copy, Debug, PartialEq)]
463pub enum PF0_FFE_SEL_A {
464 #[doc = "0: when FFE is the controller of the FIFO, select FFE0 as the controller"]
465 FFE0 = 0,
466 #[doc = "1: when FFE is the controller of the FIFO, select FFE1 as the controller"]
467 FFE1 = 1,
468}
469impl From<PF0_FFE_SEL_A> for bool {
470 #[inline(always)]
471 fn from(variant: PF0_FFE_SEL_A) -> Self {
472 variant as u8 != 0
473 }
474}
475#[doc = "Field `pf0_ffe_sel` reader - If FFE is the controller, select which instance of FFE will be used for control"]
476pub struct PF0_FFE_SEL_R(crate::FieldReader<bool, PF0_FFE_SEL_A>);
477impl PF0_FFE_SEL_R {
478 #[inline(always)]
479 pub(crate) fn new(bits: bool) -> Self {
480 PF0_FFE_SEL_R(crate::FieldReader::new(bits))
481 }
482 #[doc = r"Get enumerated values variant"]
483 #[inline(always)]
484 pub fn variant(&self) -> PF0_FFE_SEL_A {
485 match self.bits {
486 false => PF0_FFE_SEL_A::FFE0,
487 true => PF0_FFE_SEL_A::FFE1,
488 }
489 }
490 #[doc = "Checks if the value of the field is `FFE0`"]
491 #[inline(always)]
492 pub fn is_ffe0(&self) -> bool {
493 **self == PF0_FFE_SEL_A::FFE0
494 }
495 #[doc = "Checks if the value of the field is `FFE1`"]
496 #[inline(always)]
497 pub fn is_ffe1(&self) -> bool {
498 **self == PF0_FFE_SEL_A::FFE1
499 }
500}
501impl core::ops::Deref for PF0_FFE_SEL_R {
502 type Target = crate::FieldReader<bool, PF0_FFE_SEL_A>;
503 #[inline(always)]
504 fn deref(&self) -> &Self::Target {
505 &self.0
506 }
507}
508#[doc = "Field `pf0_ffe_sel` writer - If FFE is the controller, select which instance of FFE will be used for control"]
509pub struct PF0_FFE_SEL_W<'a> {
510 w: &'a mut W,
511}
512impl<'a> PF0_FFE_SEL_W<'a> {
513 #[doc = r"Writes `variant` to the field"]
514 #[inline(always)]
515 pub fn variant(self, variant: PF0_FFE_SEL_A) -> &'a mut W {
516 self.bit(variant.into())
517 }
518 #[doc = "when FFE is the controller of the FIFO, select FFE0 as the controller"]
519 #[inline(always)]
520 pub fn ffe0(self) -> &'a mut W {
521 self.variant(PF0_FFE_SEL_A::FFE0)
522 }
523 #[doc = "when FFE is the controller of the FIFO, select FFE1 as the controller"]
524 #[inline(always)]
525 pub fn ffe1(self) -> &'a mut W {
526 self.variant(PF0_FFE_SEL_A::FFE1)
527 }
528 #[doc = r"Sets the field bit"]
529 #[inline(always)]
530 pub fn set_bit(self) -> &'a mut W {
531 self.bit(true)
532 }
533 #[doc = r"Clears the field bit"]
534 #[inline(always)]
535 pub fn clear_bit(self) -> &'a mut W {
536 self.bit(false)
537 }
538 #[doc = r"Writes raw bits to the field"]
539 #[inline(always)]
540 pub fn bit(self, value: bool) -> &'a mut W {
541 self.w.bits =
542 (self.w.bits & !(0x01 << 5)) | ((value as u32 & 0x01) << 5);
543 self.w
544 }
545}
546#[doc = "Set to enable the Packet FIFO"]
547pub type PF1_EN_A = PF0_EN_A;
548#[doc = "Field `pf1_en` reader - Set to enable the Packet FIFO"]
549pub type PF1_EN_R = PF0_EN_R;
550#[doc = "Field `pf1_en` writer - Set to enable the Packet FIFO"]
551pub struct PF1_EN_W<'a> {
552 w: &'a mut W,
553}
554impl<'a> PF1_EN_W<'a> {
555 #[doc = r"Writes `variant` to the field"]
556 #[inline(always)]
557 pub fn variant(self, variant: PF1_EN_A) -> &'a mut W {
558 self.bit(variant.into())
559 }
560 #[doc = "Disable the packet FIFO"]
561 #[inline(always)]
562 pub fn disable(self) -> &'a mut W {
563 self.variant(PF1_EN_A::DISABLE)
564 }
565 #[doc = "Enable the packet FIFO"]
566 #[inline(always)]
567 pub fn enable(self) -> &'a mut W {
568 self.variant(PF1_EN_A::ENABLE)
569 }
570 #[doc = r"Sets the field bit"]
571 #[inline(always)]
572 pub fn set_bit(self) -> &'a mut W {
573 self.bit(true)
574 }
575 #[doc = r"Clears the field bit"]
576 #[inline(always)]
577 pub fn clear_bit(self) -> &'a mut W {
578 self.bit(false)
579 }
580 #[doc = r"Writes raw bits to the field"]
581 #[inline(always)]
582 pub fn bit(self, value: bool) -> &'a mut W {
583 self.w.bits =
584 (self.w.bits & !(0x01 << 8)) | ((value as u32 & 0x01) << 8);
585 self.w
586 }
587}
588#[doc = "Select which subsystem controls the push operation"]
589pub type PF1_PUSH_MUX_A = PF0_PUSH_MUX_A;
590#[doc = "Field `pf1_push_mux` reader - Select which subsystem controls the push operation"]
591pub type PF1_PUSH_MUX_R = PF0_PUSH_MUX_R;
592#[doc = "Field `pf1_push_mux` writer - Select which subsystem controls the push operation"]
593pub struct PF1_PUSH_MUX_W<'a> {
594 w: &'a mut W,
595}
596impl<'a> PF1_PUSH_MUX_W<'a> {
597 #[doc = r"Writes `variant` to the field"]
598 #[inline(always)]
599 pub fn variant(self, variant: PF1_PUSH_MUX_A) -> &'a mut W {
600 self.bit(variant.into())
601 }
602 #[doc = "Select the M4 subsystem to control the FIFO"]
603 #[inline(always)]
604 pub fn m4(self) -> &'a mut W {
605 self.variant(PF1_PUSH_MUX_A::M4)
606 }
607 #[doc = "Select the FFE subsystem to control the FIFO"]
608 #[inline(always)]
609 pub fn ffe(self) -> &'a mut W {
610 self.variant(PF1_PUSH_MUX_A::FFE)
611 }
612 #[doc = r"Sets the field bit"]
613 #[inline(always)]
614 pub fn set_bit(self) -> &'a mut W {
615 self.bit(true)
616 }
617 #[doc = r"Clears the field bit"]
618 #[inline(always)]
619 pub fn clear_bit(self) -> &'a mut W {
620 self.bit(false)
621 }
622 #[doc = r"Writes raw bits to the field"]
623 #[inline(always)]
624 pub fn bit(self, value: bool) -> &'a mut W {
625 self.w.bits =
626 (self.w.bits & !(0x01 << 9)) | ((value as u32 & 0x01) << 9);
627 self.w
628 }
629}
630#[doc = "Select which subsystem controls the pop operation"]
631pub type PF1_POP_MUX_A = PF0_POP_MUX_A;
632#[doc = "Field `pf1_pop_mux` reader - Select which subsystem controls the pop operation"]
633pub type PF1_POP_MUX_R = PF0_POP_MUX_R;
634#[doc = "Field `pf1_pop_mux` writer - Select which subsystem controls the pop operation"]
635pub struct PF1_POP_MUX_W<'a> {
636 w: &'a mut W,
637}
638impl<'a> PF1_POP_MUX_W<'a> {
639 #[doc = r"Writes `variant` to the field"]
640 #[inline(always)]
641 pub fn variant(self, variant: PF1_POP_MUX_A) -> &'a mut W {
642 self.bit(variant.into())
643 }
644 #[doc = "Select the M4 subsystem to control the FIFO"]
645 #[inline(always)]
646 pub fn m4(self) -> &'a mut W {
647 self.variant(PF1_POP_MUX_A::M4)
648 }
649 #[doc = "Select the AP subsystem to control the FIFO"]
650 #[inline(always)]
651 pub fn ap(self) -> &'a mut W {
652 self.variant(PF1_POP_MUX_A::AP)
653 }
654 #[doc = r"Sets the field bit"]
655 #[inline(always)]
656 pub fn set_bit(self) -> &'a mut W {
657 self.bit(true)
658 }
659 #[doc = r"Clears the field bit"]
660 #[inline(always)]
661 pub fn clear_bit(self) -> &'a mut W {
662 self.bit(false)
663 }
664 #[doc = r"Writes raw bits to the field"]
665 #[inline(always)]
666 pub fn bit(self, value: bool) -> &'a mut W {
667 self.w.bits =
668 (self.w.bits & !(0x01 << 10)) | ((value as u32 & 0x01) << 10);
669 self.w
670 }
671}
672#[doc = "Select which subsystem manages the push interrupt"]
673pub type PF1_PUSH_INT_MUX_A = PF0_PUSH_INT_MUX_A;
674#[doc = "Field `pf1_push_int_mux` reader - Select which subsystem manages the push interrupt"]
675pub type PF1_PUSH_INT_MUX_R = PF0_PUSH_INT_MUX_R;
676#[doc = "Field `pf1_push_int_mux` writer - Select which subsystem manages the push interrupt"]
677pub struct PF1_PUSH_INT_MUX_W<'a> {
678 w: &'a mut W,
679}
680impl<'a> PF1_PUSH_INT_MUX_W<'a> {
681 #[doc = r"Writes `variant` to the field"]
682 #[inline(always)]
683 pub fn variant(self, variant: PF1_PUSH_INT_MUX_A) -> &'a mut W {
684 self.bit(variant.into())
685 }
686 #[doc = "Select the M4 subsystem to control the FIFO"]
687 #[inline(always)]
688 pub fn m4(self) -> &'a mut W {
689 self.variant(PF1_PUSH_INT_MUX_A::M4)
690 }
691 #[doc = "Select the AP subsystem to control the FIFO"]
692 #[inline(always)]
693 pub fn ap(self) -> &'a mut W {
694 self.variant(PF1_PUSH_INT_MUX_A::AP)
695 }
696 #[doc = r"Sets the field bit"]
697 #[inline(always)]
698 pub fn set_bit(self) -> &'a mut W {
699 self.bit(true)
700 }
701 #[doc = r"Clears the field bit"]
702 #[inline(always)]
703 pub fn clear_bit(self) -> &'a mut W {
704 self.bit(false)
705 }
706 #[doc = r"Writes raw bits to the field"]
707 #[inline(always)]
708 pub fn bit(self, value: bool) -> &'a mut W {
709 self.w.bits =
710 (self.w.bits & !(0x01 << 11)) | ((value as u32 & 0x01) << 11);
711 self.w
712 }
713}
714#[doc = "Select which subsystem manages the pop interrupt"]
715pub type PF1_POP_INT_MUX_A = PF0_POP_INT_MUX_A;
716#[doc = "Field `pf1_pop_int_mux` reader - Select which subsystem manages the pop interrupt"]
717pub type PF1_POP_INT_MUX_R = PF0_POP_INT_MUX_R;
718#[doc = "Field `pf1_pop_int_mux` writer - Select which subsystem manages the pop interrupt"]
719pub struct PF1_POP_INT_MUX_W<'a> {
720 w: &'a mut W,
721}
722impl<'a> PF1_POP_INT_MUX_W<'a> {
723 #[doc = r"Writes `variant` to the field"]
724 #[inline(always)]
725 pub fn variant(self, variant: PF1_POP_INT_MUX_A) -> &'a mut W {
726 self.bit(variant.into())
727 }
728 #[doc = "Select the M4 subsystem to control the FIFO"]
729 #[inline(always)]
730 pub fn m4(self) -> &'a mut W {
731 self.variant(PF1_POP_INT_MUX_A::M4)
732 }
733 #[doc = "Select the AP subsystem to control the FIFO"]
734 #[inline(always)]
735 pub fn ap(self) -> &'a mut W {
736 self.variant(PF1_POP_INT_MUX_A::AP)
737 }
738 #[doc = r"Sets the field bit"]
739 #[inline(always)]
740 pub fn set_bit(self) -> &'a mut W {
741 self.bit(true)
742 }
743 #[doc = r"Clears the field bit"]
744 #[inline(always)]
745 pub fn clear_bit(self) -> &'a mut W {
746 self.bit(false)
747 }
748 #[doc = r"Writes raw bits to the field"]
749 #[inline(always)]
750 pub fn bit(self, value: bool) -> &'a mut W {
751 self.w.bits =
752 (self.w.bits & !(0x01 << 12)) | ((value as u32 & 0x01) << 12);
753 self.w
754 }
755}
756#[doc = "If FFE is the controller, select which instance of FFE will be used for control"]
757pub type PF1_FFE_SEL_A = PF0_FFE_SEL_A;
758#[doc = "Field `pf1_ffe_sel` reader - If FFE is the controller, select which instance of FFE will be used for control"]
759pub type PF1_FFE_SEL_R = PF0_FFE_SEL_R;
760#[doc = "Field `pf1_ffe_sel` writer - If FFE is the controller, select which instance of FFE will be used for control"]
761pub struct PF1_FFE_SEL_W<'a> {
762 w: &'a mut W,
763}
764impl<'a> PF1_FFE_SEL_W<'a> {
765 #[doc = r"Writes `variant` to the field"]
766 #[inline(always)]
767 pub fn variant(self, variant: PF1_FFE_SEL_A) -> &'a mut W {
768 self.bit(variant.into())
769 }
770 #[doc = "when FFE is the controller of the FIFO, select FFE0 as the controller"]
771 #[inline(always)]
772 pub fn ffe0(self) -> &'a mut W {
773 self.variant(PF1_FFE_SEL_A::FFE0)
774 }
775 #[doc = "when FFE is the controller of the FIFO, select FFE1 as the controller"]
776 #[inline(always)]
777 pub fn ffe1(self) -> &'a mut W {
778 self.variant(PF1_FFE_SEL_A::FFE1)
779 }
780 #[doc = r"Sets the field bit"]
781 #[inline(always)]
782 pub fn set_bit(self) -> &'a mut W {
783 self.bit(true)
784 }
785 #[doc = r"Clears the field bit"]
786 #[inline(always)]
787 pub fn clear_bit(self) -> &'a mut W {
788 self.bit(false)
789 }
790 #[doc = r"Writes raw bits to the field"]
791 #[inline(always)]
792 pub fn bit(self, value: bool) -> &'a mut W {
793 self.w.bits =
794 (self.w.bits & !(0x01 << 13)) | ((value as u32 & 0x01) << 13);
795 self.w
796 }
797}
798#[doc = "Set to enable the Packet FIFO"]
799pub type PF2_EN_A = PF0_EN_A;
800#[doc = "Field `pf2_en` reader - Set to enable the Packet FIFO"]
801pub type PF2_EN_R = PF0_EN_R;
802#[doc = "Field `pf2_en` writer - Set to enable the Packet FIFO"]
803pub struct PF2_EN_W<'a> {
804 w: &'a mut W,
805}
806impl<'a> PF2_EN_W<'a> {
807 #[doc = r"Writes `variant` to the field"]
808 #[inline(always)]
809 pub fn variant(self, variant: PF2_EN_A) -> &'a mut W {
810 self.bit(variant.into())
811 }
812 #[doc = "Disable the packet FIFO"]
813 #[inline(always)]
814 pub fn disable(self) -> &'a mut W {
815 self.variant(PF2_EN_A::DISABLE)
816 }
817 #[doc = "Enable the packet FIFO"]
818 #[inline(always)]
819 pub fn enable(self) -> &'a mut W {
820 self.variant(PF2_EN_A::ENABLE)
821 }
822 #[doc = r"Sets the field bit"]
823 #[inline(always)]
824 pub fn set_bit(self) -> &'a mut W {
825 self.bit(true)
826 }
827 #[doc = r"Clears the field bit"]
828 #[inline(always)]
829 pub fn clear_bit(self) -> &'a mut W {
830 self.bit(false)
831 }
832 #[doc = r"Writes raw bits to the field"]
833 #[inline(always)]
834 pub fn bit(self, value: bool) -> &'a mut W {
835 self.w.bits =
836 (self.w.bits & !(0x01 << 16)) | ((value as u32 & 0x01) << 16);
837 self.w
838 }
839}
840#[doc = "Select which subsystem controls the push operation"]
841pub type PF2_PUSH_MUX_A = PF0_PUSH_MUX_A;
842#[doc = "Field `pf2_push_mux` reader - Select which subsystem controls the push operation"]
843pub type PF2_PUSH_MUX_R = PF0_PUSH_MUX_R;
844#[doc = "Field `pf2_push_mux` writer - Select which subsystem controls the push operation"]
845pub struct PF2_PUSH_MUX_W<'a> {
846 w: &'a mut W,
847}
848impl<'a> PF2_PUSH_MUX_W<'a> {
849 #[doc = r"Writes `variant` to the field"]
850 #[inline(always)]
851 pub fn variant(self, variant: PF2_PUSH_MUX_A) -> &'a mut W {
852 self.bit(variant.into())
853 }
854 #[doc = "Select the M4 subsystem to control the FIFO"]
855 #[inline(always)]
856 pub fn m4(self) -> &'a mut W {
857 self.variant(PF2_PUSH_MUX_A::M4)
858 }
859 #[doc = "Select the FFE subsystem to control the FIFO"]
860 #[inline(always)]
861 pub fn ffe(self) -> &'a mut W {
862 self.variant(PF2_PUSH_MUX_A::FFE)
863 }
864 #[doc = r"Sets the field bit"]
865 #[inline(always)]
866 pub fn set_bit(self) -> &'a mut W {
867 self.bit(true)
868 }
869 #[doc = r"Clears the field bit"]
870 #[inline(always)]
871 pub fn clear_bit(self) -> &'a mut W {
872 self.bit(false)
873 }
874 #[doc = r"Writes raw bits to the field"]
875 #[inline(always)]
876 pub fn bit(self, value: bool) -> &'a mut W {
877 self.w.bits =
878 (self.w.bits & !(0x01 << 17)) | ((value as u32 & 0x01) << 17);
879 self.w
880 }
881}
882#[doc = "Select which subsystem controls the pop operation"]
883pub type PF2_POP_MUX_A = PF0_POP_MUX_A;
884#[doc = "Field `pf2_pop_mux` reader - Select which subsystem controls the pop operation"]
885pub type PF2_POP_MUX_R = PF0_POP_MUX_R;
886#[doc = "Field `pf2_pop_mux` writer - Select which subsystem controls the pop operation"]
887pub struct PF2_POP_MUX_W<'a> {
888 w: &'a mut W,
889}
890impl<'a> PF2_POP_MUX_W<'a> {
891 #[doc = r"Writes `variant` to the field"]
892 #[inline(always)]
893 pub fn variant(self, variant: PF2_POP_MUX_A) -> &'a mut W {
894 self.bit(variant.into())
895 }
896 #[doc = "Select the M4 subsystem to control the FIFO"]
897 #[inline(always)]
898 pub fn m4(self) -> &'a mut W {
899 self.variant(PF2_POP_MUX_A::M4)
900 }
901 #[doc = "Select the AP subsystem to control the FIFO"]
902 #[inline(always)]
903 pub fn ap(self) -> &'a mut W {
904 self.variant(PF2_POP_MUX_A::AP)
905 }
906 #[doc = r"Sets the field bit"]
907 #[inline(always)]
908 pub fn set_bit(self) -> &'a mut W {
909 self.bit(true)
910 }
911 #[doc = r"Clears the field bit"]
912 #[inline(always)]
913 pub fn clear_bit(self) -> &'a mut W {
914 self.bit(false)
915 }
916 #[doc = r"Writes raw bits to the field"]
917 #[inline(always)]
918 pub fn bit(self, value: bool) -> &'a mut W {
919 self.w.bits =
920 (self.w.bits & !(0x01 << 18)) | ((value as u32 & 0x01) << 18);
921 self.w
922 }
923}
924#[doc = "Select which subsystem manages the push interrupt"]
925pub type PF2_PUSH_INT_MUX_A = PF0_PUSH_INT_MUX_A;
926#[doc = "Field `pf2_push_int_mux` reader - Select which subsystem manages the push interrupt"]
927pub type PF2_PUSH_INT_MUX_R = PF0_PUSH_INT_MUX_R;
928#[doc = "Field `pf2_push_int_mux` writer - Select which subsystem manages the push interrupt"]
929pub struct PF2_PUSH_INT_MUX_W<'a> {
930 w: &'a mut W,
931}
932impl<'a> PF2_PUSH_INT_MUX_W<'a> {
933 #[doc = r"Writes `variant` to the field"]
934 #[inline(always)]
935 pub fn variant(self, variant: PF2_PUSH_INT_MUX_A) -> &'a mut W {
936 self.bit(variant.into())
937 }
938 #[doc = "Select the M4 subsystem to control the FIFO"]
939 #[inline(always)]
940 pub fn m4(self) -> &'a mut W {
941 self.variant(PF2_PUSH_INT_MUX_A::M4)
942 }
943 #[doc = "Select the AP subsystem to control the FIFO"]
944 #[inline(always)]
945 pub fn ap(self) -> &'a mut W {
946 self.variant(PF2_PUSH_INT_MUX_A::AP)
947 }
948 #[doc = r"Sets the field bit"]
949 #[inline(always)]
950 pub fn set_bit(self) -> &'a mut W {
951 self.bit(true)
952 }
953 #[doc = r"Clears the field bit"]
954 #[inline(always)]
955 pub fn clear_bit(self) -> &'a mut W {
956 self.bit(false)
957 }
958 #[doc = r"Writes raw bits to the field"]
959 #[inline(always)]
960 pub fn bit(self, value: bool) -> &'a mut W {
961 self.w.bits =
962 (self.w.bits & !(0x01 << 19)) | ((value as u32 & 0x01) << 19);
963 self.w
964 }
965}
966#[doc = "Select which subsystem manages the pop interrupt"]
967pub type PF2_POP_INT_MUX_A = PF0_POP_INT_MUX_A;
968#[doc = "Field `pf2_pop_int_mux` reader - Select which subsystem manages the pop interrupt"]
969pub type PF2_POP_INT_MUX_R = PF0_POP_INT_MUX_R;
970#[doc = "Field `pf2_pop_int_mux` writer - Select which subsystem manages the pop interrupt"]
971pub struct PF2_POP_INT_MUX_W<'a> {
972 w: &'a mut W,
973}
974impl<'a> PF2_POP_INT_MUX_W<'a> {
975 #[doc = r"Writes `variant` to the field"]
976 #[inline(always)]
977 pub fn variant(self, variant: PF2_POP_INT_MUX_A) -> &'a mut W {
978 self.bit(variant.into())
979 }
980 #[doc = "Select the M4 subsystem to control the FIFO"]
981 #[inline(always)]
982 pub fn m4(self) -> &'a mut W {
983 self.variant(PF2_POP_INT_MUX_A::M4)
984 }
985 #[doc = "Select the AP subsystem to control the FIFO"]
986 #[inline(always)]
987 pub fn ap(self) -> &'a mut W {
988 self.variant(PF2_POP_INT_MUX_A::AP)
989 }
990 #[doc = r"Sets the field bit"]
991 #[inline(always)]
992 pub fn set_bit(self) -> &'a mut W {
993 self.bit(true)
994 }
995 #[doc = r"Clears the field bit"]
996 #[inline(always)]
997 pub fn clear_bit(self) -> &'a mut W {
998 self.bit(false)
999 }
1000 #[doc = r"Writes raw bits to the field"]
1001 #[inline(always)]
1002 pub fn bit(self, value: bool) -> &'a mut W {
1003 self.w.bits =
1004 (self.w.bits & !(0x01 << 20)) | ((value as u32 & 0x01) << 20);
1005 self.w
1006 }
1007}
1008#[doc = "If FFE is the controller, select which instance of FFE will be used for control"]
1009pub type PF2_FFE_SEL_A = PF0_FFE_SEL_A;
1010#[doc = "Field `pf2_ffe_sel` reader - If FFE is the controller, select which instance of FFE will be used for control"]
1011pub type PF2_FFE_SEL_R = PF0_FFE_SEL_R;
1012#[doc = "Field `pf2_ffe_sel` writer - If FFE is the controller, select which instance of FFE will be used for control"]
1013pub struct PF2_FFE_SEL_W<'a> {
1014 w: &'a mut W,
1015}
1016impl<'a> PF2_FFE_SEL_W<'a> {
1017 #[doc = r"Writes `variant` to the field"]
1018 #[inline(always)]
1019 pub fn variant(self, variant: PF2_FFE_SEL_A) -> &'a mut W {
1020 self.bit(variant.into())
1021 }
1022 #[doc = "when FFE is the controller of the FIFO, select FFE0 as the controller"]
1023 #[inline(always)]
1024 pub fn ffe0(self) -> &'a mut W {
1025 self.variant(PF2_FFE_SEL_A::FFE0)
1026 }
1027 #[doc = "when FFE is the controller of the FIFO, select FFE1 as the controller"]
1028 #[inline(always)]
1029 pub fn ffe1(self) -> &'a mut W {
1030 self.variant(PF2_FFE_SEL_A::FFE1)
1031 }
1032 #[doc = r"Sets the field bit"]
1033 #[inline(always)]
1034 pub fn set_bit(self) -> &'a mut W {
1035 self.bit(true)
1036 }
1037 #[doc = r"Clears the field bit"]
1038 #[inline(always)]
1039 pub fn clear_bit(self) -> &'a mut W {
1040 self.bit(false)
1041 }
1042 #[doc = r"Writes raw bits to the field"]
1043 #[inline(always)]
1044 pub fn bit(self, value: bool) -> &'a mut W {
1045 self.w.bits =
1046 (self.w.bits & !(0x01 << 21)) | ((value as u32 & 0x01) << 21);
1047 self.w
1048 }
1049}
1050#[doc = "Set to enable the Packet FIFO"]
1051pub type PF8K_EN_A = PF0_EN_A;
1052#[doc = "Field `pf8k_en` reader - Set to enable the Packet FIFO"]
1053pub type PF8K_EN_R = PF0_EN_R;
1054#[doc = "Field `pf8k_en` writer - Set to enable the Packet FIFO"]
1055pub struct PF8K_EN_W<'a> {
1056 w: &'a mut W,
1057}
1058impl<'a> PF8K_EN_W<'a> {
1059 #[doc = r"Writes `variant` to the field"]
1060 #[inline(always)]
1061 pub fn variant(self, variant: PF8K_EN_A) -> &'a mut W {
1062 self.bit(variant.into())
1063 }
1064 #[doc = "Disable the packet FIFO"]
1065 #[inline(always)]
1066 pub fn disable(self) -> &'a mut W {
1067 self.variant(PF8K_EN_A::DISABLE)
1068 }
1069 #[doc = "Enable the packet FIFO"]
1070 #[inline(always)]
1071 pub fn enable(self) -> &'a mut W {
1072 self.variant(PF8K_EN_A::ENABLE)
1073 }
1074 #[doc = r"Sets the field bit"]
1075 #[inline(always)]
1076 pub fn set_bit(self) -> &'a mut W {
1077 self.bit(true)
1078 }
1079 #[doc = r"Clears the field bit"]
1080 #[inline(always)]
1081 pub fn clear_bit(self) -> &'a mut W {
1082 self.bit(false)
1083 }
1084 #[doc = r"Writes raw bits to the field"]
1085 #[inline(always)]
1086 pub fn bit(self, value: bool) -> &'a mut W {
1087 self.w.bits =
1088 (self.w.bits & !(0x01 << 24)) | ((value as u32 & 0x01) << 24);
1089 self.w
1090 }
1091}
1092#[doc = "Select which subsystem controls the push operation"]
1093pub type PF8K_PUSH_MUX_A = PF0_PUSH_MUX_A;
1094#[doc = "Field `pf8k_push_mux` reader - Select which subsystem controls the push operation"]
1095pub type PF8K_PUSH_MUX_R = PF0_PUSH_MUX_R;
1096#[doc = "Field `pf8k_push_mux` writer - Select which subsystem controls the push operation"]
1097pub struct PF8K_PUSH_MUX_W<'a> {
1098 w: &'a mut W,
1099}
1100impl<'a> PF8K_PUSH_MUX_W<'a> {
1101 #[doc = r"Writes `variant` to the field"]
1102 #[inline(always)]
1103 pub fn variant(self, variant: PF8K_PUSH_MUX_A) -> &'a mut W {
1104 self.bit(variant.into())
1105 }
1106 #[doc = "Select the M4 subsystem to control the FIFO"]
1107 #[inline(always)]
1108 pub fn m4(self) -> &'a mut W {
1109 self.variant(PF8K_PUSH_MUX_A::M4)
1110 }
1111 #[doc = "Select the FFE subsystem to control the FIFO"]
1112 #[inline(always)]
1113 pub fn ffe(self) -> &'a mut W {
1114 self.variant(PF8K_PUSH_MUX_A::FFE)
1115 }
1116 #[doc = r"Sets the field bit"]
1117 #[inline(always)]
1118 pub fn set_bit(self) -> &'a mut W {
1119 self.bit(true)
1120 }
1121 #[doc = r"Clears the field bit"]
1122 #[inline(always)]
1123 pub fn clear_bit(self) -> &'a mut W {
1124 self.bit(false)
1125 }
1126 #[doc = r"Writes raw bits to the field"]
1127 #[inline(always)]
1128 pub fn bit(self, value: bool) -> &'a mut W {
1129 self.w.bits =
1130 (self.w.bits & !(0x01 << 25)) | ((value as u32 & 0x01) << 25);
1131 self.w
1132 }
1133}
1134#[doc = "Select which subsystem controls the pop operation"]
1135pub type PF8K_POP_MUX_A = PF0_POP_MUX_A;
1136#[doc = "Field `pf8k_pop_mux` reader - Select which subsystem controls the pop operation"]
1137pub type PF8K_POP_MUX_R = PF0_POP_MUX_R;
1138#[doc = "Field `pf8k_pop_mux` writer - Select which subsystem controls the pop operation"]
1139pub struct PF8K_POP_MUX_W<'a> {
1140 w: &'a mut W,
1141}
1142impl<'a> PF8K_POP_MUX_W<'a> {
1143 #[doc = r"Writes `variant` to the field"]
1144 #[inline(always)]
1145 pub fn variant(self, variant: PF8K_POP_MUX_A) -> &'a mut W {
1146 self.bit(variant.into())
1147 }
1148 #[doc = "Select the M4 subsystem to control the FIFO"]
1149 #[inline(always)]
1150 pub fn m4(self) -> &'a mut W {
1151 self.variant(PF8K_POP_MUX_A::M4)
1152 }
1153 #[doc = "Select the AP subsystem to control the FIFO"]
1154 #[inline(always)]
1155 pub fn ap(self) -> &'a mut W {
1156 self.variant(PF8K_POP_MUX_A::AP)
1157 }
1158 #[doc = r"Sets the field bit"]
1159 #[inline(always)]
1160 pub fn set_bit(self) -> &'a mut W {
1161 self.bit(true)
1162 }
1163 #[doc = r"Clears the field bit"]
1164 #[inline(always)]
1165 pub fn clear_bit(self) -> &'a mut W {
1166 self.bit(false)
1167 }
1168 #[doc = r"Writes raw bits to the field"]
1169 #[inline(always)]
1170 pub fn bit(self, value: bool) -> &'a mut W {
1171 self.w.bits =
1172 (self.w.bits & !(0x01 << 26)) | ((value as u32 & 0x01) << 26);
1173 self.w
1174 }
1175}
1176#[doc = "Select which subsystem manages the push interrupt"]
1177pub type PF8K_PUSH_INT_MUX_A = PF0_PUSH_INT_MUX_A;
1178#[doc = "Field `pf8k_push_int_mux` reader - Select which subsystem manages the push interrupt"]
1179pub type PF8K_PUSH_INT_MUX_R = PF0_PUSH_INT_MUX_R;
1180#[doc = "Field `pf8k_push_int_mux` writer - Select which subsystem manages the push interrupt"]
1181pub struct PF8K_PUSH_INT_MUX_W<'a> {
1182 w: &'a mut W,
1183}
1184impl<'a> PF8K_PUSH_INT_MUX_W<'a> {
1185 #[doc = r"Writes `variant` to the field"]
1186 #[inline(always)]
1187 pub fn variant(self, variant: PF8K_PUSH_INT_MUX_A) -> &'a mut W {
1188 self.bit(variant.into())
1189 }
1190 #[doc = "Select the M4 subsystem to control the FIFO"]
1191 #[inline(always)]
1192 pub fn m4(self) -> &'a mut W {
1193 self.variant(PF8K_PUSH_INT_MUX_A::M4)
1194 }
1195 #[doc = "Select the AP subsystem to control the FIFO"]
1196 #[inline(always)]
1197 pub fn ap(self) -> &'a mut W {
1198 self.variant(PF8K_PUSH_INT_MUX_A::AP)
1199 }
1200 #[doc = r"Sets the field bit"]
1201 #[inline(always)]
1202 pub fn set_bit(self) -> &'a mut W {
1203 self.bit(true)
1204 }
1205 #[doc = r"Clears the field bit"]
1206 #[inline(always)]
1207 pub fn clear_bit(self) -> &'a mut W {
1208 self.bit(false)
1209 }
1210 #[doc = r"Writes raw bits to the field"]
1211 #[inline(always)]
1212 pub fn bit(self, value: bool) -> &'a mut W {
1213 self.w.bits =
1214 (self.w.bits & !(0x01 << 27)) | ((value as u32 & 0x01) << 27);
1215 self.w
1216 }
1217}
1218#[doc = "Select which subsystem manages the pop interrupt"]
1219pub type PF8K_POP_INT_MUX_A = PF0_POP_INT_MUX_A;
1220#[doc = "Field `pf8k_pop_int_mux` reader - Select which subsystem manages the pop interrupt"]
1221pub type PF8K_POP_INT_MUX_R = PF0_POP_INT_MUX_R;
1222#[doc = "Field `pf8k_pop_int_mux` writer - Select which subsystem manages the pop interrupt"]
1223pub struct PF8K_POP_INT_MUX_W<'a> {
1224 w: &'a mut W,
1225}
1226impl<'a> PF8K_POP_INT_MUX_W<'a> {
1227 #[doc = r"Writes `variant` to the field"]
1228 #[inline(always)]
1229 pub fn variant(self, variant: PF8K_POP_INT_MUX_A) -> &'a mut W {
1230 self.bit(variant.into())
1231 }
1232 #[doc = "Select the M4 subsystem to control the FIFO"]
1233 #[inline(always)]
1234 pub fn m4(self) -> &'a mut W {
1235 self.variant(PF8K_POP_INT_MUX_A::M4)
1236 }
1237 #[doc = "Select the AP subsystem to control the FIFO"]
1238 #[inline(always)]
1239 pub fn ap(self) -> &'a mut W {
1240 self.variant(PF8K_POP_INT_MUX_A::AP)
1241 }
1242 #[doc = r"Sets the field bit"]
1243 #[inline(always)]
1244 pub fn set_bit(self) -> &'a mut W {
1245 self.bit(true)
1246 }
1247 #[doc = r"Clears the field bit"]
1248 #[inline(always)]
1249 pub fn clear_bit(self) -> &'a mut W {
1250 self.bit(false)
1251 }
1252 #[doc = r"Writes raw bits to the field"]
1253 #[inline(always)]
1254 pub fn bit(self, value: bool) -> &'a mut W {
1255 self.w.bits =
1256 (self.w.bits & !(0x01 << 28)) | ((value as u32 & 0x01) << 28);
1257 self.w
1258 }
1259}
1260#[doc = "If FFE is the controller, select which instance of FFE will be used for control"]
1261pub type PF8K_FFE_SEL_A = PF0_FFE_SEL_A;
1262#[doc = "Field `pf8k_ffe_sel` reader - If FFE is the controller, select which instance of FFE will be used for control"]
1263pub type PF8K_FFE_SEL_R = PF0_FFE_SEL_R;
1264#[doc = "Field `pf8k_ffe_sel` writer - If FFE is the controller, select which instance of FFE will be used for control"]
1265pub struct PF8K_FFE_SEL_W<'a> {
1266 w: &'a mut W,
1267}
1268impl<'a> PF8K_FFE_SEL_W<'a> {
1269 #[doc = r"Writes `variant` to the field"]
1270 #[inline(always)]
1271 pub fn variant(self, variant: PF8K_FFE_SEL_A) -> &'a mut W {
1272 self.bit(variant.into())
1273 }
1274 #[doc = "when FFE is the controller of the FIFO, select FFE0 as the controller"]
1275 #[inline(always)]
1276 pub fn ffe0(self) -> &'a mut W {
1277 self.variant(PF8K_FFE_SEL_A::FFE0)
1278 }
1279 #[doc = "when FFE is the controller of the FIFO, select FFE1 as the controller"]
1280 #[inline(always)]
1281 pub fn ffe1(self) -> &'a mut W {
1282 self.variant(PF8K_FFE_SEL_A::FFE1)
1283 }
1284 #[doc = r"Sets the field bit"]
1285 #[inline(always)]
1286 pub fn set_bit(self) -> &'a mut W {
1287 self.bit(true)
1288 }
1289 #[doc = r"Clears the field bit"]
1290 #[inline(always)]
1291 pub fn clear_bit(self) -> &'a mut W {
1292 self.bit(false)
1293 }
1294 #[doc = r"Writes raw bits to the field"]
1295 #[inline(always)]
1296 pub fn bit(self, value: bool) -> &'a mut W {
1297 self.w.bits =
1298 (self.w.bits & !(0x01 << 29)) | ((value as u32 & 0x01) << 29);
1299 self.w
1300 }
1301}
1302impl R {
1303 #[doc = "Bit 0 - Set to enable the Packet FIFO"]
1304 #[inline(always)]
1305 pub fn pf0_en(&self) -> PF0_EN_R {
1306 PF0_EN_R::new((self.bits & 0x01) != 0)
1307 }
1308 #[doc = "Bit 1 - Select which subsystem controls the push operation"]
1309 #[inline(always)]
1310 pub fn pf0_push_mux(&self) -> PF0_PUSH_MUX_R {
1311 PF0_PUSH_MUX_R::new(((self.bits >> 1) & 0x01) != 0)
1312 }
1313 #[doc = "Bit 2 - Select which subsystem controls the pop operation"]
1314 #[inline(always)]
1315 pub fn pf0_pop_mux(&self) -> PF0_POP_MUX_R {
1316 PF0_POP_MUX_R::new(((self.bits >> 2) & 0x01) != 0)
1317 }
1318 #[doc = "Bit 3 - Select which subsystem manages the push interrupt"]
1319 #[inline(always)]
1320 pub fn pf0_push_int_mux(&self) -> PF0_PUSH_INT_MUX_R {
1321 PF0_PUSH_INT_MUX_R::new(((self.bits >> 3) & 0x01) != 0)
1322 }
1323 #[doc = "Bit 4 - Select which subsystem manages the pop interrupt"]
1324 #[inline(always)]
1325 pub fn pf0_pop_int_mux(&self) -> PF0_POP_INT_MUX_R {
1326 PF0_POP_INT_MUX_R::new(((self.bits >> 4) & 0x01) != 0)
1327 }
1328 #[doc = "Bit 5 - If FFE is the controller, select which instance of FFE will be used for control"]
1329 #[inline(always)]
1330 pub fn pf0_ffe_sel(&self) -> PF0_FFE_SEL_R {
1331 PF0_FFE_SEL_R::new(((self.bits >> 5) & 0x01) != 0)
1332 }
1333 #[doc = "Bit 8 - Set to enable the Packet FIFO"]
1334 #[inline(always)]
1335 pub fn pf1_en(&self) -> PF1_EN_R {
1336 PF1_EN_R::new(((self.bits >> 8) & 0x01) != 0)
1337 }
1338 #[doc = "Bit 9 - Select which subsystem controls the push operation"]
1339 #[inline(always)]
1340 pub fn pf1_push_mux(&self) -> PF1_PUSH_MUX_R {
1341 PF1_PUSH_MUX_R::new(((self.bits >> 9) & 0x01) != 0)
1342 }
1343 #[doc = "Bit 10 - Select which subsystem controls the pop operation"]
1344 #[inline(always)]
1345 pub fn pf1_pop_mux(&self) -> PF1_POP_MUX_R {
1346 PF1_POP_MUX_R::new(((self.bits >> 10) & 0x01) != 0)
1347 }
1348 #[doc = "Bit 11 - Select which subsystem manages the push interrupt"]
1349 #[inline(always)]
1350 pub fn pf1_push_int_mux(&self) -> PF1_PUSH_INT_MUX_R {
1351 PF1_PUSH_INT_MUX_R::new(((self.bits >> 11) & 0x01) != 0)
1352 }
1353 #[doc = "Bit 12 - Select which subsystem manages the pop interrupt"]
1354 #[inline(always)]
1355 pub fn pf1_pop_int_mux(&self) -> PF1_POP_INT_MUX_R {
1356 PF1_POP_INT_MUX_R::new(((self.bits >> 12) & 0x01) != 0)
1357 }
1358 #[doc = "Bit 13 - If FFE is the controller, select which instance of FFE will be used for control"]
1359 #[inline(always)]
1360 pub fn pf1_ffe_sel(&self) -> PF1_FFE_SEL_R {
1361 PF1_FFE_SEL_R::new(((self.bits >> 13) & 0x01) != 0)
1362 }
1363 #[doc = "Bit 16 - Set to enable the Packet FIFO"]
1364 #[inline(always)]
1365 pub fn pf2_en(&self) -> PF2_EN_R {
1366 PF2_EN_R::new(((self.bits >> 16) & 0x01) != 0)
1367 }
1368 #[doc = "Bit 17 - Select which subsystem controls the push operation"]
1369 #[inline(always)]
1370 pub fn pf2_push_mux(&self) -> PF2_PUSH_MUX_R {
1371 PF2_PUSH_MUX_R::new(((self.bits >> 17) & 0x01) != 0)
1372 }
1373 #[doc = "Bit 18 - Select which subsystem controls the pop operation"]
1374 #[inline(always)]
1375 pub fn pf2_pop_mux(&self) -> PF2_POP_MUX_R {
1376 PF2_POP_MUX_R::new(((self.bits >> 18) & 0x01) != 0)
1377 }
1378 #[doc = "Bit 19 - Select which subsystem manages the push interrupt"]
1379 #[inline(always)]
1380 pub fn pf2_push_int_mux(&self) -> PF2_PUSH_INT_MUX_R {
1381 PF2_PUSH_INT_MUX_R::new(((self.bits >> 19) & 0x01) != 0)
1382 }
1383 #[doc = "Bit 20 - Select which subsystem manages the pop interrupt"]
1384 #[inline(always)]
1385 pub fn pf2_pop_int_mux(&self) -> PF2_POP_INT_MUX_R {
1386 PF2_POP_INT_MUX_R::new(((self.bits >> 20) & 0x01) != 0)
1387 }
1388 #[doc = "Bit 21 - If FFE is the controller, select which instance of FFE will be used for control"]
1389 #[inline(always)]
1390 pub fn pf2_ffe_sel(&self) -> PF2_FFE_SEL_R {
1391 PF2_FFE_SEL_R::new(((self.bits >> 21) & 0x01) != 0)
1392 }
1393 #[doc = "Bit 24 - Set to enable the Packet FIFO"]
1394 #[inline(always)]
1395 pub fn pf8k_en(&self) -> PF8K_EN_R {
1396 PF8K_EN_R::new(((self.bits >> 24) & 0x01) != 0)
1397 }
1398 #[doc = "Bit 25 - Select which subsystem controls the push operation"]
1399 #[inline(always)]
1400 pub fn pf8k_push_mux(&self) -> PF8K_PUSH_MUX_R {
1401 PF8K_PUSH_MUX_R::new(((self.bits >> 25) & 0x01) != 0)
1402 }
1403 #[doc = "Bit 26 - Select which subsystem controls the pop operation"]
1404 #[inline(always)]
1405 pub fn pf8k_pop_mux(&self) -> PF8K_POP_MUX_R {
1406 PF8K_POP_MUX_R::new(((self.bits >> 26) & 0x01) != 0)
1407 }
1408 #[doc = "Bit 27 - Select which subsystem manages the push interrupt"]
1409 #[inline(always)]
1410 pub fn pf8k_push_int_mux(&self) -> PF8K_PUSH_INT_MUX_R {
1411 PF8K_PUSH_INT_MUX_R::new(((self.bits >> 27) & 0x01) != 0)
1412 }
1413 #[doc = "Bit 28 - Select which subsystem manages the pop interrupt"]
1414 #[inline(always)]
1415 pub fn pf8k_pop_int_mux(&self) -> PF8K_POP_INT_MUX_R {
1416 PF8K_POP_INT_MUX_R::new(((self.bits >> 28) & 0x01) != 0)
1417 }
1418 #[doc = "Bit 29 - If FFE is the controller, select which instance of FFE will be used for control"]
1419 #[inline(always)]
1420 pub fn pf8k_ffe_sel(&self) -> PF8K_FFE_SEL_R {
1421 PF8K_FFE_SEL_R::new(((self.bits >> 29) & 0x01) != 0)
1422 }
1423}
1424impl W {
1425 #[doc = "Bit 0 - Set to enable the Packet FIFO"]
1426 #[inline(always)]
1427 pub fn pf0_en(&mut self) -> PF0_EN_W {
1428 PF0_EN_W { w: self }
1429 }
1430 #[doc = "Bit 1 - Select which subsystem controls the push operation"]
1431 #[inline(always)]
1432 pub fn pf0_push_mux(&mut self) -> PF0_PUSH_MUX_W {
1433 PF0_PUSH_MUX_W { w: self }
1434 }
1435 #[doc = "Bit 2 - Select which subsystem controls the pop operation"]
1436 #[inline(always)]
1437 pub fn pf0_pop_mux(&mut self) -> PF0_POP_MUX_W {
1438 PF0_POP_MUX_W { w: self }
1439 }
1440 #[doc = "Bit 3 - Select which subsystem manages the push interrupt"]
1441 #[inline(always)]
1442 pub fn pf0_push_int_mux(&mut self) -> PF0_PUSH_INT_MUX_W {
1443 PF0_PUSH_INT_MUX_W { w: self }
1444 }
1445 #[doc = "Bit 4 - Select which subsystem manages the pop interrupt"]
1446 #[inline(always)]
1447 pub fn pf0_pop_int_mux(&mut self) -> PF0_POP_INT_MUX_W {
1448 PF0_POP_INT_MUX_W { w: self }
1449 }
1450 #[doc = "Bit 5 - If FFE is the controller, select which instance of FFE will be used for control"]
1451 #[inline(always)]
1452 pub fn pf0_ffe_sel(&mut self) -> PF0_FFE_SEL_W {
1453 PF0_FFE_SEL_W { w: self }
1454 }
1455 #[doc = "Bit 8 - Set to enable the Packet FIFO"]
1456 #[inline(always)]
1457 pub fn pf1_en(&mut self) -> PF1_EN_W {
1458 PF1_EN_W { w: self }
1459 }
1460 #[doc = "Bit 9 - Select which subsystem controls the push operation"]
1461 #[inline(always)]
1462 pub fn pf1_push_mux(&mut self) -> PF1_PUSH_MUX_W {
1463 PF1_PUSH_MUX_W { w: self }
1464 }
1465 #[doc = "Bit 10 - Select which subsystem controls the pop operation"]
1466 #[inline(always)]
1467 pub fn pf1_pop_mux(&mut self) -> PF1_POP_MUX_W {
1468 PF1_POP_MUX_W { w: self }
1469 }
1470 #[doc = "Bit 11 - Select which subsystem manages the push interrupt"]
1471 #[inline(always)]
1472 pub fn pf1_push_int_mux(&mut self) -> PF1_PUSH_INT_MUX_W {
1473 PF1_PUSH_INT_MUX_W { w: self }
1474 }
1475 #[doc = "Bit 12 - Select which subsystem manages the pop interrupt"]
1476 #[inline(always)]
1477 pub fn pf1_pop_int_mux(&mut self) -> PF1_POP_INT_MUX_W {
1478 PF1_POP_INT_MUX_W { w: self }
1479 }
1480 #[doc = "Bit 13 - If FFE is the controller, select which instance of FFE will be used for control"]
1481 #[inline(always)]
1482 pub fn pf1_ffe_sel(&mut self) -> PF1_FFE_SEL_W {
1483 PF1_FFE_SEL_W { w: self }
1484 }
1485 #[doc = "Bit 16 - Set to enable the Packet FIFO"]
1486 #[inline(always)]
1487 pub fn pf2_en(&mut self) -> PF2_EN_W {
1488 PF2_EN_W { w: self }
1489 }
1490 #[doc = "Bit 17 - Select which subsystem controls the push operation"]
1491 #[inline(always)]
1492 pub fn pf2_push_mux(&mut self) -> PF2_PUSH_MUX_W {
1493 PF2_PUSH_MUX_W { w: self }
1494 }
1495 #[doc = "Bit 18 - Select which subsystem controls the pop operation"]
1496 #[inline(always)]
1497 pub fn pf2_pop_mux(&mut self) -> PF2_POP_MUX_W {
1498 PF2_POP_MUX_W { w: self }
1499 }
1500 #[doc = "Bit 19 - Select which subsystem manages the push interrupt"]
1501 #[inline(always)]
1502 pub fn pf2_push_int_mux(&mut self) -> PF2_PUSH_INT_MUX_W {
1503 PF2_PUSH_INT_MUX_W { w: self }
1504 }
1505 #[doc = "Bit 20 - Select which subsystem manages the pop interrupt"]
1506 #[inline(always)]
1507 pub fn pf2_pop_int_mux(&mut self) -> PF2_POP_INT_MUX_W {
1508 PF2_POP_INT_MUX_W { w: self }
1509 }
1510 #[doc = "Bit 21 - If FFE is the controller, select which instance of FFE will be used for control"]
1511 #[inline(always)]
1512 pub fn pf2_ffe_sel(&mut self) -> PF2_FFE_SEL_W {
1513 PF2_FFE_SEL_W { w: self }
1514 }
1515 #[doc = "Bit 24 - Set to enable the Packet FIFO"]
1516 #[inline(always)]
1517 pub fn pf8k_en(&mut self) -> PF8K_EN_W {
1518 PF8K_EN_W { w: self }
1519 }
1520 #[doc = "Bit 25 - Select which subsystem controls the push operation"]
1521 #[inline(always)]
1522 pub fn pf8k_push_mux(&mut self) -> PF8K_PUSH_MUX_W {
1523 PF8K_PUSH_MUX_W { w: self }
1524 }
1525 #[doc = "Bit 26 - Select which subsystem controls the pop operation"]
1526 #[inline(always)]
1527 pub fn pf8k_pop_mux(&mut self) -> PF8K_POP_MUX_W {
1528 PF8K_POP_MUX_W { w: self }
1529 }
1530 #[doc = "Bit 27 - Select which subsystem manages the push interrupt"]
1531 #[inline(always)]
1532 pub fn pf8k_push_int_mux(&mut self) -> PF8K_PUSH_INT_MUX_W {
1533 PF8K_PUSH_INT_MUX_W { w: self }
1534 }
1535 #[doc = "Bit 28 - Select which subsystem manages the pop interrupt"]
1536 #[inline(always)]
1537 pub fn pf8k_pop_int_mux(&mut self) -> PF8K_POP_INT_MUX_W {
1538 PF8K_POP_INT_MUX_W { w: self }
1539 }
1540 #[doc = "Bit 29 - If FFE is the controller, select which instance of FFE will be used for control"]
1541 #[inline(always)]
1542 pub fn pf8k_ffe_sel(&mut self) -> PF8K_FFE_SEL_W {
1543 PF8K_FFE_SEL_W { w: self }
1544 }
1545 #[doc = "Writes raw bits to the register."]
1546 #[inline(always)]
1547 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
1548 self.0.bits(bits);
1549 self
1550 }
1551}
1552#[doc = "Packet FIFO Bank control\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 [pkfb_fifoctrl](index.html) module"]
1553pub struct PKFB_FIFOCTRL_SPEC;
1554impl crate::RegisterSpec for PKFB_FIFOCTRL_SPEC {
1555 type Ux = u32;
1556}
1557#[doc = "`read()` method returns [pkfb_fifoctrl::R](R) reader structure"]
1558impl crate::Readable for PKFB_FIFOCTRL_SPEC {
1559 type Reader = R;
1560}
1561#[doc = "`write(|w| ..)` method takes [pkfb_fifoctrl::W](W) writer structure"]
1562impl crate::Writable for PKFB_FIFOCTRL_SPEC {
1563 type Writer = W;
1564}
1565#[doc = "`reset()` method sets PKFB_FIFOCTRL to value 0"]
1566impl crate::Resettable for PKFB_FIFOCTRL_SPEC {
1567 #[inline(always)]
1568 fn reset_value() -> Self::Ux {
1569 0
1570 }
1571}