1#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"DMA Controller for the Ethernet Controller Channel 0"]
28unsafe impl ::core::marker::Send for super::Edmac0 {}
29unsafe impl ::core::marker::Sync for super::Edmac0 {}
30impl super::Edmac0 {
31 #[allow(unused)]
32 #[inline(always)]
33 pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34 self.ptr
35 }
36
37 #[doc = "EDMAC Mode Register"]
38 #[inline(always)]
39 pub const fn edmr(&self) -> &'static crate::common::Reg<self::Edmr_SPEC, crate::common::RW> {
40 unsafe {
41 crate::common::Reg::<self::Edmr_SPEC, crate::common::RW>::from_ptr(
42 self._svd2pac_as_ptr().add(0usize),
43 )
44 }
45 }
46
47 #[doc = "EDMAC Transmit Request Register"]
48 #[inline(always)]
49 pub const fn edtrr(&self) -> &'static crate::common::Reg<self::Edtrr_SPEC, crate::common::RW> {
50 unsafe {
51 crate::common::Reg::<self::Edtrr_SPEC, crate::common::RW>::from_ptr(
52 self._svd2pac_as_ptr().add(8usize),
53 )
54 }
55 }
56
57 #[doc = "EDMAC Receive Request Register"]
58 #[inline(always)]
59 pub const fn edrrr(&self) -> &'static crate::common::Reg<self::Edrrr_SPEC, crate::common::RW> {
60 unsafe {
61 crate::common::Reg::<self::Edrrr_SPEC, crate::common::RW>::from_ptr(
62 self._svd2pac_as_ptr().add(16usize),
63 )
64 }
65 }
66
67 #[doc = "Transmit Descriptor List Start Address Register"]
68 #[inline(always)]
69 pub const fn tdlar(&self) -> &'static crate::common::Reg<self::Tdlar_SPEC, crate::common::RW> {
70 unsafe {
71 crate::common::Reg::<self::Tdlar_SPEC, crate::common::RW>::from_ptr(
72 self._svd2pac_as_ptr().add(24usize),
73 )
74 }
75 }
76
77 #[doc = "Receive Descriptor List Start Address Register"]
78 #[inline(always)]
79 pub const fn rdlar(&self) -> &'static crate::common::Reg<self::Rdlar_SPEC, crate::common::RW> {
80 unsafe {
81 crate::common::Reg::<self::Rdlar_SPEC, crate::common::RW>::from_ptr(
82 self._svd2pac_as_ptr().add(32usize),
83 )
84 }
85 }
86
87 #[doc = "ETHERC/EDMAC Status Register"]
88 #[inline(always)]
89 pub const fn eesr(&self) -> &'static crate::common::Reg<self::Eesr_SPEC, crate::common::RW> {
90 unsafe {
91 crate::common::Reg::<self::Eesr_SPEC, crate::common::RW>::from_ptr(
92 self._svd2pac_as_ptr().add(40usize),
93 )
94 }
95 }
96
97 #[doc = "ETHERC/EDMAC Status Interrupt Enable Register"]
98 #[inline(always)]
99 pub const fn eesipr(
100 &self,
101 ) -> &'static crate::common::Reg<self::Eesipr_SPEC, crate::common::RW> {
102 unsafe {
103 crate::common::Reg::<self::Eesipr_SPEC, crate::common::RW>::from_ptr(
104 self._svd2pac_as_ptr().add(48usize),
105 )
106 }
107 }
108
109 #[doc = "ETHERC/EDMAC Transmit/Receive Status Copy Enable Register"]
110 #[inline(always)]
111 pub const fn trscer(
112 &self,
113 ) -> &'static crate::common::Reg<self::Trscer_SPEC, crate::common::RW> {
114 unsafe {
115 crate::common::Reg::<self::Trscer_SPEC, crate::common::RW>::from_ptr(
116 self._svd2pac_as_ptr().add(56usize),
117 )
118 }
119 }
120
121 #[doc = "Missed-Frame Counter Register"]
122 #[inline(always)]
123 pub const fn rmfcr(&self) -> &'static crate::common::Reg<self::Rmfcr_SPEC, crate::common::RW> {
124 unsafe {
125 crate::common::Reg::<self::Rmfcr_SPEC, crate::common::RW>::from_ptr(
126 self._svd2pac_as_ptr().add(64usize),
127 )
128 }
129 }
130
131 #[doc = "Transmit FIFO Threshold Register"]
132 #[inline(always)]
133 pub const fn tftr(&self) -> &'static crate::common::Reg<self::Tftr_SPEC, crate::common::RW> {
134 unsafe {
135 crate::common::Reg::<self::Tftr_SPEC, crate::common::RW>::from_ptr(
136 self._svd2pac_as_ptr().add(72usize),
137 )
138 }
139 }
140
141 #[doc = "FIFO Depth Register"]
142 #[inline(always)]
143 pub const fn fdr(&self) -> &'static crate::common::Reg<self::Fdr_SPEC, crate::common::RW> {
144 unsafe {
145 crate::common::Reg::<self::Fdr_SPEC, crate::common::RW>::from_ptr(
146 self._svd2pac_as_ptr().add(80usize),
147 )
148 }
149 }
150
151 #[doc = "Receive Method Control Register"]
152 #[inline(always)]
153 pub const fn rmcr(&self) -> &'static crate::common::Reg<self::Rmcr_SPEC, crate::common::RW> {
154 unsafe {
155 crate::common::Reg::<self::Rmcr_SPEC, crate::common::RW>::from_ptr(
156 self._svd2pac_as_ptr().add(88usize),
157 )
158 }
159 }
160
161 #[doc = "Transmit FIFO Underflow Counter"]
162 #[inline(always)]
163 pub const fn tfucr(&self) -> &'static crate::common::Reg<self::Tfucr_SPEC, crate::common::RW> {
164 unsafe {
165 crate::common::Reg::<self::Tfucr_SPEC, crate::common::RW>::from_ptr(
166 self._svd2pac_as_ptr().add(100usize),
167 )
168 }
169 }
170
171 #[doc = "Receive FIFO Overflow Counter"]
172 #[inline(always)]
173 pub const fn rfocr(&self) -> &'static crate::common::Reg<self::Rfocr_SPEC, crate::common::RW> {
174 unsafe {
175 crate::common::Reg::<self::Rfocr_SPEC, crate::common::RW>::from_ptr(
176 self._svd2pac_as_ptr().add(104usize),
177 )
178 }
179 }
180
181 #[doc = "Independent Output Signal Setting Register"]
182 #[inline(always)]
183 pub const fn iosr(&self) -> &'static crate::common::Reg<self::Iosr_SPEC, crate::common::RW> {
184 unsafe {
185 crate::common::Reg::<self::Iosr_SPEC, crate::common::RW>::from_ptr(
186 self._svd2pac_as_ptr().add(108usize),
187 )
188 }
189 }
190
191 #[doc = "Flow Control Start FIFO Threshold Setting Register"]
192 #[inline(always)]
193 pub const fn fcftr(&self) -> &'static crate::common::Reg<self::Fcftr_SPEC, crate::common::RW> {
194 unsafe {
195 crate::common::Reg::<self::Fcftr_SPEC, crate::common::RW>::from_ptr(
196 self._svd2pac_as_ptr().add(112usize),
197 )
198 }
199 }
200
201 #[doc = "Receive Data Padding Insert Register"]
202 #[inline(always)]
203 pub const fn rpadir(
204 &self,
205 ) -> &'static crate::common::Reg<self::Rpadir_SPEC, crate::common::RW> {
206 unsafe {
207 crate::common::Reg::<self::Rpadir_SPEC, crate::common::RW>::from_ptr(
208 self._svd2pac_as_ptr().add(120usize),
209 )
210 }
211 }
212
213 #[doc = "Transmit Interrupt Setting Register"]
214 #[inline(always)]
215 pub const fn trimd(&self) -> &'static crate::common::Reg<self::Trimd_SPEC, crate::common::RW> {
216 unsafe {
217 crate::common::Reg::<self::Trimd_SPEC, crate::common::RW>::from_ptr(
218 self._svd2pac_as_ptr().add(124usize),
219 )
220 }
221 }
222
223 #[doc = "Receive Buffer Write Address Register"]
224 #[inline(always)]
225 pub const fn rbwar(&self) -> &'static crate::common::Reg<self::Rbwar_SPEC, crate::common::R> {
226 unsafe {
227 crate::common::Reg::<self::Rbwar_SPEC, crate::common::R>::from_ptr(
228 self._svd2pac_as_ptr().add(200usize),
229 )
230 }
231 }
232
233 #[doc = "Receive Descriptor Fetch Address Register"]
234 #[inline(always)]
235 pub const fn rdfar(&self) -> &'static crate::common::Reg<self::Rdfar_SPEC, crate::common::R> {
236 unsafe {
237 crate::common::Reg::<self::Rdfar_SPEC, crate::common::R>::from_ptr(
238 self._svd2pac_as_ptr().add(204usize),
239 )
240 }
241 }
242
243 #[doc = "Transmit Buffer Read Address Register"]
244 #[inline(always)]
245 pub const fn tbrar(&self) -> &'static crate::common::Reg<self::Tbrar_SPEC, crate::common::R> {
246 unsafe {
247 crate::common::Reg::<self::Tbrar_SPEC, crate::common::R>::from_ptr(
248 self._svd2pac_as_ptr().add(212usize),
249 )
250 }
251 }
252
253 #[doc = "Transmit Descriptor Fetch Address Register"]
254 #[inline(always)]
255 pub const fn tdfar(&self) -> &'static crate::common::Reg<self::Tdfar_SPEC, crate::common::R> {
256 unsafe {
257 crate::common::Reg::<self::Tdfar_SPEC, crate::common::R>::from_ptr(
258 self._svd2pac_as_ptr().add(216usize),
259 )
260 }
261 }
262}
263#[doc(hidden)]
264#[derive(Copy, Clone, Eq, PartialEq)]
265pub struct Edmr_SPEC;
266impl crate::sealed::RegSpec for Edmr_SPEC {
267 type DataType = u32;
268}
269
270#[doc = "EDMAC Mode Register"]
271pub type Edmr = crate::RegValueT<Edmr_SPEC>;
272
273impl Edmr {
274 #[doc = "Software Reset"]
275 #[inline(always)]
276 pub fn swr(self) -> crate::common::RegisterFieldBool<0, 1, 0, Edmr_SPEC, crate::common::RW> {
277 crate::common::RegisterFieldBool::<0, 1, 0, Edmr_SPEC, crate::common::RW>::from_register(
278 self, 0,
279 )
280 }
281
282 #[doc = "Transmit/Receive Descriptor Length"]
283 #[inline(always)]
284 pub fn dl(
285 self,
286 ) -> crate::common::RegisterField<4, 0x3, 1, 0, edmr::Dl, edmr::Dl, Edmr_SPEC, crate::common::RW>
287 {
288 crate::common::RegisterField::<4,0x3,1,0,edmr::Dl,edmr::Dl,Edmr_SPEC,crate::common::RW>::from_register(self,0)
289 }
290
291 #[doc = "Big Endian Mode/Little Endian Mode"]
292 #[inline(always)]
293 pub fn de(
294 self,
295 ) -> crate::common::RegisterField<6, 0x1, 1, 0, edmr::De, edmr::De, Edmr_SPEC, crate::common::RW>
296 {
297 crate::common::RegisterField::<6,0x1,1,0,edmr::De,edmr::De,Edmr_SPEC,crate::common::RW>::from_register(self,0)
298 }
299}
300impl ::core::default::Default for Edmr {
301 #[inline(always)]
302 fn default() -> Edmr {
303 <crate::RegValueT<Edmr_SPEC> as RegisterValue<_>>::new(0)
304 }
305}
306pub mod edmr {
307
308 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
309 pub struct Dl_SPEC;
310 pub type Dl = crate::EnumBitfieldStruct<u8, Dl_SPEC>;
311 impl Dl {
312 #[doc = "16 bytes"]
313 pub const _00: Self = Self::new(0);
314
315 #[doc = "32 bytes"]
316 pub const _01: Self = Self::new(1);
317
318 #[doc = "64 bytes"]
319 pub const _10: Self = Self::new(2);
320
321 #[doc = "16 bytes."]
322 pub const _11: Self = Self::new(3);
323 }
324 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
325 pub struct De_SPEC;
326 pub type De = crate::EnumBitfieldStruct<u8, De_SPEC>;
327 impl De {
328 #[doc = "Big endian mode"]
329 pub const _0: Self = Self::new(0);
330
331 #[doc = "Little endian mode."]
332 pub const _1: Self = Self::new(1);
333 }
334}
335#[doc(hidden)]
336#[derive(Copy, Clone, Eq, PartialEq)]
337pub struct Edtrr_SPEC;
338impl crate::sealed::RegSpec for Edtrr_SPEC {
339 type DataType = u32;
340}
341
342#[doc = "EDMAC Transmit Request Register"]
343pub type Edtrr = crate::RegValueT<Edtrr_SPEC>;
344
345impl Edtrr {
346 #[doc = "Transmit Request"]
347 #[inline(always)]
348 pub fn tr(self) -> crate::common::RegisterFieldBool<0, 1, 0, Edtrr_SPEC, crate::common::RW> {
349 crate::common::RegisterFieldBool::<0, 1, 0, Edtrr_SPEC, crate::common::RW>::from_register(
350 self, 0,
351 )
352 }
353}
354impl ::core::default::Default for Edtrr {
355 #[inline(always)]
356 fn default() -> Edtrr {
357 <crate::RegValueT<Edtrr_SPEC> as RegisterValue<_>>::new(0)
358 }
359}
360
361#[doc(hidden)]
362#[derive(Copy, Clone, Eq, PartialEq)]
363pub struct Edrrr_SPEC;
364impl crate::sealed::RegSpec for Edrrr_SPEC {
365 type DataType = u32;
366}
367
368#[doc = "EDMAC Receive Request Register"]
369pub type Edrrr = crate::RegValueT<Edrrr_SPEC>;
370
371impl Edrrr {
372 #[doc = "Receive Request"]
373 #[inline(always)]
374 pub fn rr(
375 self,
376 ) -> crate::common::RegisterField<
377 0,
378 0x1,
379 1,
380 0,
381 edrrr::Rr,
382 edrrr::Rr,
383 Edrrr_SPEC,
384 crate::common::RW,
385 > {
386 crate::common::RegisterField::<
387 0,
388 0x1,
389 1,
390 0,
391 edrrr::Rr,
392 edrrr::Rr,
393 Edrrr_SPEC,
394 crate::common::RW,
395 >::from_register(self, 0)
396 }
397}
398impl ::core::default::Default for Edrrr {
399 #[inline(always)]
400 fn default() -> Edrrr {
401 <crate::RegValueT<Edrrr_SPEC> as RegisterValue<_>>::new(0)
402 }
403}
404pub mod edrrr {
405
406 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
407 pub struct Rr_SPEC;
408 pub type Rr = crate::EnumBitfieldStruct<u8, Rr_SPEC>;
409 impl Rr {
410 #[doc = "Disable the receive function"]
411 pub const _0: Self = Self::new(0);
412
413 #[doc = "Read receive descriptor and enable the receive function."]
414 pub const _1: Self = Self::new(1);
415 }
416}
417#[doc(hidden)]
418#[derive(Copy, Clone, Eq, PartialEq)]
419pub struct Tdlar_SPEC;
420impl crate::sealed::RegSpec for Tdlar_SPEC {
421 type DataType = u32;
422}
423
424#[doc = "Transmit Descriptor List Start Address Register"]
425pub type Tdlar = crate::RegValueT<Tdlar_SPEC>;
426
427impl NoBitfieldReg<Tdlar_SPEC> for Tdlar {}
428impl ::core::default::Default for Tdlar {
429 #[inline(always)]
430 fn default() -> Tdlar {
431 <crate::RegValueT<Tdlar_SPEC> as RegisterValue<_>>::new(0)
432 }
433}
434
435#[doc(hidden)]
436#[derive(Copy, Clone, Eq, PartialEq)]
437pub struct Rdlar_SPEC;
438impl crate::sealed::RegSpec for Rdlar_SPEC {
439 type DataType = u32;
440}
441
442#[doc = "Receive Descriptor List Start Address Register"]
443pub type Rdlar = crate::RegValueT<Rdlar_SPEC>;
444
445impl NoBitfieldReg<Rdlar_SPEC> for Rdlar {}
446impl ::core::default::Default for Rdlar {
447 #[inline(always)]
448 fn default() -> Rdlar {
449 <crate::RegValueT<Rdlar_SPEC> as RegisterValue<_>>::new(0)
450 }
451}
452
453#[doc(hidden)]
454#[derive(Copy, Clone, Eq, PartialEq)]
455pub struct Eesr_SPEC;
456impl crate::sealed::RegSpec for Eesr_SPEC {
457 type DataType = u32;
458}
459
460#[doc = "ETHERC/EDMAC Status Register"]
461pub type Eesr = crate::RegValueT<Eesr_SPEC>;
462
463impl Eesr {
464 #[doc = "CRC Error Flag"]
465 #[inline(always)]
466 pub fn cerf(
467 self,
468 ) -> crate::common::RegisterField<
469 0,
470 0x1,
471 1,
472 0,
473 eesr::Cerf,
474 eesr::Cerf,
475 Eesr_SPEC,
476 crate::common::RW,
477 > {
478 crate::common::RegisterField::<
479 0,
480 0x1,
481 1,
482 0,
483 eesr::Cerf,
484 eesr::Cerf,
485 Eesr_SPEC,
486 crate::common::RW,
487 >::from_register(self, 0)
488 }
489
490 #[doc = "PHY-LSI Receive Error Flag"]
491 #[inline(always)]
492 pub fn pre(
493 self,
494 ) -> crate::common::RegisterField<
495 1,
496 0x1,
497 1,
498 0,
499 eesr::Pre,
500 eesr::Pre,
501 Eesr_SPEC,
502 crate::common::RW,
503 > {
504 crate::common::RegisterField::<
505 1,
506 0x1,
507 1,
508 0,
509 eesr::Pre,
510 eesr::Pre,
511 Eesr_SPEC,
512 crate::common::RW,
513 >::from_register(self, 0)
514 }
515
516 #[doc = "Frame-Too-Short Error Flag"]
517 #[inline(always)]
518 pub fn rtsf(
519 self,
520 ) -> crate::common::RegisterField<
521 2,
522 0x1,
523 1,
524 0,
525 eesr::Rtsf,
526 eesr::Rtsf,
527 Eesr_SPEC,
528 crate::common::RW,
529 > {
530 crate::common::RegisterField::<
531 2,
532 0x1,
533 1,
534 0,
535 eesr::Rtsf,
536 eesr::Rtsf,
537 Eesr_SPEC,
538 crate::common::RW,
539 >::from_register(self, 0)
540 }
541
542 #[doc = "Frame-Too-Long Error Flag"]
543 #[inline(always)]
544 pub fn rtlf(
545 self,
546 ) -> crate::common::RegisterField<
547 3,
548 0x1,
549 1,
550 0,
551 eesr::Rtlf,
552 eesr::Rtlf,
553 Eesr_SPEC,
554 crate::common::RW,
555 > {
556 crate::common::RegisterField::<
557 3,
558 0x1,
559 1,
560 0,
561 eesr::Rtlf,
562 eesr::Rtlf,
563 Eesr_SPEC,
564 crate::common::RW,
565 >::from_register(self, 0)
566 }
567
568 #[doc = "Alignment Error Flag"]
569 #[inline(always)]
570 pub fn rrf(
571 self,
572 ) -> crate::common::RegisterField<
573 4,
574 0x1,
575 1,
576 0,
577 eesr::Rrf,
578 eesr::Rrf,
579 Eesr_SPEC,
580 crate::common::RW,
581 > {
582 crate::common::RegisterField::<
583 4,
584 0x1,
585 1,
586 0,
587 eesr::Rrf,
588 eesr::Rrf,
589 Eesr_SPEC,
590 crate::common::RW,
591 >::from_register(self, 0)
592 }
593
594 #[doc = "Multicast Address Frame Receive Flag"]
595 #[inline(always)]
596 pub fn rmaf(
597 self,
598 ) -> crate::common::RegisterField<
599 7,
600 0x1,
601 1,
602 0,
603 eesr::Rmaf,
604 eesr::Rmaf,
605 Eesr_SPEC,
606 crate::common::RW,
607 > {
608 crate::common::RegisterField::<
609 7,
610 0x1,
611 1,
612 0,
613 eesr::Rmaf,
614 eesr::Rmaf,
615 Eesr_SPEC,
616 crate::common::RW,
617 >::from_register(self, 0)
618 }
619
620 #[doc = "Transmit Retry Over Flag"]
621 #[inline(always)]
622 pub fn tro(
623 self,
624 ) -> crate::common::RegisterField<
625 8,
626 0x1,
627 1,
628 0,
629 eesr::Tro,
630 eesr::Tro,
631 Eesr_SPEC,
632 crate::common::RW,
633 > {
634 crate::common::RegisterField::<
635 8,
636 0x1,
637 1,
638 0,
639 eesr::Tro,
640 eesr::Tro,
641 Eesr_SPEC,
642 crate::common::RW,
643 >::from_register(self, 0)
644 }
645
646 #[doc = "Late Collision Detect Flag"]
647 #[inline(always)]
648 pub fn cd(
649 self,
650 ) -> crate::common::RegisterField<9, 0x1, 1, 0, eesr::Cd, eesr::Cd, Eesr_SPEC, crate::common::RW>
651 {
652 crate::common::RegisterField::<9,0x1,1,0,eesr::Cd,eesr::Cd,Eesr_SPEC,crate::common::RW>::from_register(self,0)
653 }
654
655 #[doc = "Loss of Carrier Detect Flag"]
656 #[inline(always)]
657 pub fn dlc(
658 self,
659 ) -> crate::common::RegisterField<
660 10,
661 0x1,
662 1,
663 0,
664 eesr::Dlc,
665 eesr::Dlc,
666 Eesr_SPEC,
667 crate::common::RW,
668 > {
669 crate::common::RegisterField::<
670 10,
671 0x1,
672 1,
673 0,
674 eesr::Dlc,
675 eesr::Dlc,
676 Eesr_SPEC,
677 crate::common::RW,
678 >::from_register(self, 0)
679 }
680
681 #[doc = "Carrier Not Detect Flag"]
682 #[inline(always)]
683 pub fn cnd(
684 self,
685 ) -> crate::common::RegisterField<
686 11,
687 0x1,
688 1,
689 0,
690 eesr::Cnd,
691 eesr::Cnd,
692 Eesr_SPEC,
693 crate::common::RW,
694 > {
695 crate::common::RegisterField::<
696 11,
697 0x1,
698 1,
699 0,
700 eesr::Cnd,
701 eesr::Cnd,
702 Eesr_SPEC,
703 crate::common::RW,
704 >::from_register(self, 0)
705 }
706
707 #[doc = "Receive FIFO Overflow Flag"]
708 #[inline(always)]
709 pub fn rfof(
710 self,
711 ) -> crate::common::RegisterField<
712 16,
713 0x1,
714 1,
715 0,
716 eesr::Rfof,
717 eesr::Rfof,
718 Eesr_SPEC,
719 crate::common::RW,
720 > {
721 crate::common::RegisterField::<
722 16,
723 0x1,
724 1,
725 0,
726 eesr::Rfof,
727 eesr::Rfof,
728 Eesr_SPEC,
729 crate::common::RW,
730 >::from_register(self, 0)
731 }
732
733 #[doc = "Receive Descriptor Empty Flag"]
734 #[inline(always)]
735 pub fn rde(
736 self,
737 ) -> crate::common::RegisterField<
738 17,
739 0x1,
740 1,
741 0,
742 eesr::Rde,
743 eesr::Rde,
744 Eesr_SPEC,
745 crate::common::RW,
746 > {
747 crate::common::RegisterField::<
748 17,
749 0x1,
750 1,
751 0,
752 eesr::Rde,
753 eesr::Rde,
754 Eesr_SPEC,
755 crate::common::RW,
756 >::from_register(self, 0)
757 }
758
759 #[doc = "Frame Receive Flag"]
760 #[inline(always)]
761 pub fn fr(
762 self,
763 ) -> crate::common::RegisterField<18, 0x1, 1, 0, eesr::Fr, eesr::Fr, Eesr_SPEC, crate::common::RW>
764 {
765 crate::common::RegisterField::<
766 18,
767 0x1,
768 1,
769 0,
770 eesr::Fr,
771 eesr::Fr,
772 Eesr_SPEC,
773 crate::common::RW,
774 >::from_register(self, 0)
775 }
776
777 #[doc = "Transmit FIFO Underflow Flag"]
778 #[inline(always)]
779 pub fn tfuf(
780 self,
781 ) -> crate::common::RegisterField<
782 19,
783 0x1,
784 1,
785 0,
786 eesr::Tfuf,
787 eesr::Tfuf,
788 Eesr_SPEC,
789 crate::common::RW,
790 > {
791 crate::common::RegisterField::<
792 19,
793 0x1,
794 1,
795 0,
796 eesr::Tfuf,
797 eesr::Tfuf,
798 Eesr_SPEC,
799 crate::common::RW,
800 >::from_register(self, 0)
801 }
802
803 #[doc = "Transmit Descriptor Empty Flag"]
804 #[inline(always)]
805 pub fn tde(
806 self,
807 ) -> crate::common::RegisterField<
808 20,
809 0x1,
810 1,
811 0,
812 eesr::Tde,
813 eesr::Tde,
814 Eesr_SPEC,
815 crate::common::RW,
816 > {
817 crate::common::RegisterField::<
818 20,
819 0x1,
820 1,
821 0,
822 eesr::Tde,
823 eesr::Tde,
824 Eesr_SPEC,
825 crate::common::RW,
826 >::from_register(self, 0)
827 }
828
829 #[doc = "Frame Transfer Complete Flag"]
830 #[inline(always)]
831 pub fn tc(
832 self,
833 ) -> crate::common::RegisterField<21, 0x1, 1, 0, eesr::Tc, eesr::Tc, Eesr_SPEC, crate::common::RW>
834 {
835 crate::common::RegisterField::<
836 21,
837 0x1,
838 1,
839 0,
840 eesr::Tc,
841 eesr::Tc,
842 Eesr_SPEC,
843 crate::common::RW,
844 >::from_register(self, 0)
845 }
846
847 #[doc = "ETHERC Status Register Source Flag"]
848 #[inline(always)]
849 pub fn eci(
850 self,
851 ) -> crate::common::RegisterField<
852 22,
853 0x1,
854 1,
855 0,
856 eesr::Eci,
857 eesr::Eci,
858 Eesr_SPEC,
859 crate::common::R,
860 > {
861 crate::common::RegisterField::<
862 22,
863 0x1,
864 1,
865 0,
866 eesr::Eci,
867 eesr::Eci,
868 Eesr_SPEC,
869 crate::common::R,
870 >::from_register(self, 0)
871 }
872
873 #[doc = "Address Error Flag"]
874 #[inline(always)]
875 pub fn ade(
876 self,
877 ) -> crate::common::RegisterField<
878 23,
879 0x1,
880 1,
881 0,
882 eesr::Ade,
883 eesr::Ade,
884 Eesr_SPEC,
885 crate::common::RW,
886 > {
887 crate::common::RegisterField::<
888 23,
889 0x1,
890 1,
891 0,
892 eesr::Ade,
893 eesr::Ade,
894 Eesr_SPEC,
895 crate::common::RW,
896 >::from_register(self, 0)
897 }
898
899 #[doc = "Receive Frame Counter Overflow Flag"]
900 #[inline(always)]
901 pub fn rfcof(
902 self,
903 ) -> crate::common::RegisterField<
904 24,
905 0x1,
906 1,
907 0,
908 eesr::Rfcof,
909 eesr::Rfcof,
910 Eesr_SPEC,
911 crate::common::RW,
912 > {
913 crate::common::RegisterField::<
914 24,
915 0x1,
916 1,
917 0,
918 eesr::Rfcof,
919 eesr::Rfcof,
920 Eesr_SPEC,
921 crate::common::RW,
922 >::from_register(self, 0)
923 }
924
925 #[doc = "Receive Abort Detect Flag"]
926 #[inline(always)]
927 pub fn rabt(
928 self,
929 ) -> crate::common::RegisterField<
930 25,
931 0x1,
932 1,
933 0,
934 eesr::Rabt,
935 eesr::Rabt,
936 Eesr_SPEC,
937 crate::common::RW,
938 > {
939 crate::common::RegisterField::<
940 25,
941 0x1,
942 1,
943 0,
944 eesr::Rabt,
945 eesr::Rabt,
946 Eesr_SPEC,
947 crate::common::RW,
948 >::from_register(self, 0)
949 }
950
951 #[doc = "Transmit Abort Detect Flag"]
952 #[inline(always)]
953 pub fn tabt(
954 self,
955 ) -> crate::common::RegisterField<
956 26,
957 0x1,
958 1,
959 0,
960 eesr::Tabt,
961 eesr::Tabt,
962 Eesr_SPEC,
963 crate::common::RW,
964 > {
965 crate::common::RegisterField::<
966 26,
967 0x1,
968 1,
969 0,
970 eesr::Tabt,
971 eesr::Tabt,
972 Eesr_SPEC,
973 crate::common::RW,
974 >::from_register(self, 0)
975 }
976
977 #[doc = "Write-Back Complete Flag"]
978 #[inline(always)]
979 pub fn twb(
980 self,
981 ) -> crate::common::RegisterField<
982 30,
983 0x1,
984 1,
985 0,
986 eesr::Twb,
987 eesr::Twb,
988 Eesr_SPEC,
989 crate::common::RW,
990 > {
991 crate::common::RegisterField::<
992 30,
993 0x1,
994 1,
995 0,
996 eesr::Twb,
997 eesr::Twb,
998 Eesr_SPEC,
999 crate::common::RW,
1000 >::from_register(self, 0)
1001 }
1002}
1003impl ::core::default::Default for Eesr {
1004 #[inline(always)]
1005 fn default() -> Eesr {
1006 <crate::RegValueT<Eesr_SPEC> as RegisterValue<_>>::new(0)
1007 }
1008}
1009pub mod eesr {
1010
1011 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1012 pub struct Cerf_SPEC;
1013 pub type Cerf = crate::EnumBitfieldStruct<u8, Cerf_SPEC>;
1014 impl Cerf {
1015 #[doc = "CRC error not detected"]
1016 pub const _0: Self = Self::new(0);
1017
1018 #[doc = "CRC error detected."]
1019 pub const _1: Self = Self::new(1);
1020 }
1021 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1022 pub struct Pre_SPEC;
1023 pub type Pre = crate::EnumBitfieldStruct<u8, Pre_SPEC>;
1024 impl Pre {
1025 #[doc = "PHY-LSI receive error not detected"]
1026 pub const _0: Self = Self::new(0);
1027
1028 #[doc = "PHY-LSI receive error detected."]
1029 pub const _1: Self = Self::new(1);
1030 }
1031 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1032 pub struct Rtsf_SPEC;
1033 pub type Rtsf = crate::EnumBitfieldStruct<u8, Rtsf_SPEC>;
1034 impl Rtsf {
1035 #[doc = "Frame-too-short error not detected"]
1036 pub const _0: Self = Self::new(0);
1037
1038 #[doc = "Frame-too-short error detected."]
1039 pub const _1: Self = Self::new(1);
1040 }
1041 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1042 pub struct Rtlf_SPEC;
1043 pub type Rtlf = crate::EnumBitfieldStruct<u8, Rtlf_SPEC>;
1044 impl Rtlf {
1045 #[doc = "Frame-too-long error not detected"]
1046 pub const _0: Self = Self::new(0);
1047
1048 #[doc = "Frame-too-long error detected."]
1049 pub const _1: Self = Self::new(1);
1050 }
1051 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1052 pub struct Rrf_SPEC;
1053 pub type Rrf = crate::EnumBitfieldStruct<u8, Rrf_SPEC>;
1054 impl Rrf {
1055 #[doc = "Alignment error not detected"]
1056 pub const _0: Self = Self::new(0);
1057
1058 #[doc = "Alignment error detected."]
1059 pub const _1: Self = Self::new(1);
1060 }
1061 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1062 pub struct Rmaf_SPEC;
1063 pub type Rmaf = crate::EnumBitfieldStruct<u8, Rmaf_SPEC>;
1064 impl Rmaf {
1065 #[doc = "Multicast address frame not received"]
1066 pub const _0: Self = Self::new(0);
1067
1068 #[doc = "Multicast address frame received."]
1069 pub const _1: Self = Self::new(1);
1070 }
1071 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1072 pub struct Tro_SPEC;
1073 pub type Tro = crate::EnumBitfieldStruct<u8, Tro_SPEC>;
1074 impl Tro {
1075 #[doc = "Transmit retry-over condition not detected"]
1076 pub const _0: Self = Self::new(0);
1077
1078 #[doc = "Transmit retry-over condition detected."]
1079 pub const _1: Self = Self::new(1);
1080 }
1081 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1082 pub struct Cd_SPEC;
1083 pub type Cd = crate::EnumBitfieldStruct<u8, Cd_SPEC>;
1084 impl Cd {
1085 #[doc = "Late collision not detected"]
1086 pub const _0: Self = Self::new(0);
1087
1088 #[doc = "Late collision detected during frame transmission."]
1089 pub const _1: Self = Self::new(1);
1090 }
1091 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1092 pub struct Dlc_SPEC;
1093 pub type Dlc = crate::EnumBitfieldStruct<u8, Dlc_SPEC>;
1094 impl Dlc {
1095 #[doc = "Loss of carrier not detected"]
1096 pub const _0: Self = Self::new(0);
1097
1098 #[doc = "Loss of carrier detected during frame transmission."]
1099 pub const _1: Self = Self::new(1);
1100 }
1101 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1102 pub struct Cnd_SPEC;
1103 pub type Cnd = crate::EnumBitfieldStruct<u8, Cnd_SPEC>;
1104 impl Cnd {
1105 #[doc = "Carrier detected when transmission started"]
1106 pub const _0: Self = Self::new(0);
1107
1108 #[doc = "Carrier not detected during preamble transmission."]
1109 pub const _1: Self = Self::new(1);
1110 }
1111 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1112 pub struct Rfof_SPEC;
1113 pub type Rfof = crate::EnumBitfieldStruct<u8, Rfof_SPEC>;
1114 impl Rfof {
1115 #[doc = "No overflow occurred"]
1116 pub const _0: Self = Self::new(0);
1117
1118 #[doc = "Overflow occurred."]
1119 pub const _1: Self = Self::new(1);
1120 }
1121 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1122 pub struct Rde_SPEC;
1123 pub type Rde = crate::EnumBitfieldStruct<u8, Rde_SPEC>;
1124 impl Rde {
1125 #[doc = "EDMAC detected that the receive descriptor valid bit (RD0.RACT) is 1"]
1126 pub const _0: Self = Self::new(0);
1127
1128 #[doc = "EDMAC detected that the receive descriptor valid bit (RD0.RACT) is 0."]
1129 pub const _1: Self = Self::new(1);
1130 }
1131 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1132 pub struct Fr_SPEC;
1133 pub type Fr = crate::EnumBitfieldStruct<u8, Fr_SPEC>;
1134 impl Fr {
1135 #[doc = "Frame not received"]
1136 pub const _0: Self = Self::new(0);
1137
1138 #[doc = "Frame received and update of the receive descriptor is complete."]
1139 pub const _1: Self = Self::new(1);
1140 }
1141 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1142 pub struct Tfuf_SPEC;
1143 pub type Tfuf = crate::EnumBitfieldStruct<u8, Tfuf_SPEC>;
1144 impl Tfuf {
1145 #[doc = "No underflow occurred"]
1146 pub const _0: Self = Self::new(0);
1147
1148 #[doc = "Underflow occurred."]
1149 pub const _1: Self = Self::new(1);
1150 }
1151 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1152 pub struct Tde_SPEC;
1153 pub type Tde = crate::EnumBitfieldStruct<u8, Tde_SPEC>;
1154 impl Tde {
1155 #[doc = "EDMAC detected that the transmit descriptor valid bit (TD0.TACT) is 1"]
1156 pub const _0: Self = Self::new(0);
1157
1158 #[doc = "EDMAC detected that the transmit descriptor valid bit (TD0.TACT) is 0."]
1159 pub const _1: Self = Self::new(1);
1160 }
1161 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1162 pub struct Tc_SPEC;
1163 pub type Tc = crate::EnumBitfieldStruct<u8, Tc_SPEC>;
1164 impl Tc {
1165 #[doc = "Transfer not complete or no transfer requested"]
1166 pub const _0: Self = Self::new(0);
1167
1168 #[doc = "All frames indicated in the transmit descriptor were completely transferred to the transmit FIFO."]
1169 pub const _1: Self = Self::new(1);
1170 }
1171 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1172 pub struct Eci_SPEC;
1173 pub type Eci = crate::EnumBitfieldStruct<u8, Eci_SPEC>;
1174 impl Eci {
1175 #[doc = "ETHERC status interrupt source not detected"]
1176 pub const _0: Self = Self::new(0);
1177
1178 #[doc = "ETHERC status interrupt source detected."]
1179 pub const _1: Self = Self::new(1);
1180 }
1181 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1182 pub struct Ade_SPEC;
1183 pub type Ade = crate::EnumBitfieldStruct<u8, Ade_SPEC>;
1184 impl Ade {
1185 #[doc = "Invalid memory address not detected (normal operation)"]
1186 pub const _0: Self = Self::new(0);
1187
1188 #[doc = "Invalid memory address detected."]
1189 pub const _1: Self = Self::new(1);
1190 }
1191 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1192 pub struct Rfcof_SPEC;
1193 pub type Rfcof = crate::EnumBitfieldStruct<u8, Rfcof_SPEC>;
1194 impl Rfcof {
1195 #[doc = "Receive frame counter did not overflow"]
1196 pub const _0: Self = Self::new(0);
1197
1198 #[doc = "Receive frame counter overflowed."]
1199 pub const _1: Self = Self::new(1);
1200 }
1201 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1202 pub struct Rabt_SPEC;
1203 pub type Rabt = crate::EnumBitfieldStruct<u8, Rabt_SPEC>;
1204 impl Rabt {
1205 #[doc = "Frame reception not aborted or no reception requested"]
1206 pub const _0: Self = Self::new(0);
1207
1208 #[doc = "Frame reception aborted."]
1209 pub const _1: Self = Self::new(1);
1210 }
1211 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1212 pub struct Tabt_SPEC;
1213 pub type Tabt = crate::EnumBitfieldStruct<u8, Tabt_SPEC>;
1214 impl Tabt {
1215 #[doc = "Frame transmission not aborted or no transmission requested."]
1216 pub const _0: Self = Self::new(0);
1217
1218 #[doc = "Frame transmission aborted."]
1219 pub const _1: Self = Self::new(1);
1220 }
1221 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1222 pub struct Twb_SPEC;
1223 pub type Twb = crate::EnumBitfieldStruct<u8, Twb_SPEC>;
1224 impl Twb {
1225 #[doc = "Write-back not complete or no transmission requested"]
1226 pub const _0: Self = Self::new(0);
1227
1228 #[doc = "Write-back to the transmit descriptor completed."]
1229 pub const _1: Self = Self::new(1);
1230 }
1231}
1232#[doc(hidden)]
1233#[derive(Copy, Clone, Eq, PartialEq)]
1234pub struct Eesipr_SPEC;
1235impl crate::sealed::RegSpec for Eesipr_SPEC {
1236 type DataType = u32;
1237}
1238
1239#[doc = "ETHERC/EDMAC Status Interrupt Enable Register"]
1240pub type Eesipr = crate::RegValueT<Eesipr_SPEC>;
1241
1242impl Eesipr {
1243 #[doc = "CRC Error Interrupt Request Enable"]
1244 #[inline(always)]
1245 pub fn cerfip(
1246 self,
1247 ) -> crate::common::RegisterField<
1248 0,
1249 0x1,
1250 1,
1251 0,
1252 eesipr::Cerfip,
1253 eesipr::Cerfip,
1254 Eesipr_SPEC,
1255 crate::common::RW,
1256 > {
1257 crate::common::RegisterField::<
1258 0,
1259 0x1,
1260 1,
1261 0,
1262 eesipr::Cerfip,
1263 eesipr::Cerfip,
1264 Eesipr_SPEC,
1265 crate::common::RW,
1266 >::from_register(self, 0)
1267 }
1268
1269 #[doc = "PHY-LSI Receive Error Interrupt Request Enable"]
1270 #[inline(always)]
1271 pub fn preip(
1272 self,
1273 ) -> crate::common::RegisterField<
1274 1,
1275 0x1,
1276 1,
1277 0,
1278 eesipr::Preip,
1279 eesipr::Preip,
1280 Eesipr_SPEC,
1281 crate::common::RW,
1282 > {
1283 crate::common::RegisterField::<
1284 1,
1285 0x1,
1286 1,
1287 0,
1288 eesipr::Preip,
1289 eesipr::Preip,
1290 Eesipr_SPEC,
1291 crate::common::RW,
1292 >::from_register(self, 0)
1293 }
1294
1295 #[doc = "Frame-Too-Short Error Interrupt Request Enable"]
1296 #[inline(always)]
1297 pub fn rtsfip(
1298 self,
1299 ) -> crate::common::RegisterField<
1300 2,
1301 0x1,
1302 1,
1303 0,
1304 eesipr::Rtsfip,
1305 eesipr::Rtsfip,
1306 Eesipr_SPEC,
1307 crate::common::RW,
1308 > {
1309 crate::common::RegisterField::<
1310 2,
1311 0x1,
1312 1,
1313 0,
1314 eesipr::Rtsfip,
1315 eesipr::Rtsfip,
1316 Eesipr_SPEC,
1317 crate::common::RW,
1318 >::from_register(self, 0)
1319 }
1320
1321 #[doc = "Frame-Too-Long Error Interrupt Request Enable"]
1322 #[inline(always)]
1323 pub fn rtlfip(
1324 self,
1325 ) -> crate::common::RegisterField<
1326 3,
1327 0x1,
1328 1,
1329 0,
1330 eesipr::Rtlfip,
1331 eesipr::Rtlfip,
1332 Eesipr_SPEC,
1333 crate::common::RW,
1334 > {
1335 crate::common::RegisterField::<
1336 3,
1337 0x1,
1338 1,
1339 0,
1340 eesipr::Rtlfip,
1341 eesipr::Rtlfip,
1342 Eesipr_SPEC,
1343 crate::common::RW,
1344 >::from_register(self, 0)
1345 }
1346
1347 #[doc = "Alignment Error Interrupt Request Enable"]
1348 #[inline(always)]
1349 pub fn rrfip(
1350 self,
1351 ) -> crate::common::RegisterField<
1352 4,
1353 0x1,
1354 1,
1355 0,
1356 eesipr::Rrfip,
1357 eesipr::Rrfip,
1358 Eesipr_SPEC,
1359 crate::common::RW,
1360 > {
1361 crate::common::RegisterField::<
1362 4,
1363 0x1,
1364 1,
1365 0,
1366 eesipr::Rrfip,
1367 eesipr::Rrfip,
1368 Eesipr_SPEC,
1369 crate::common::RW,
1370 >::from_register(self, 0)
1371 }
1372
1373 #[doc = "Multicast Address Frame Receive Interrupt Request Enable"]
1374 #[inline(always)]
1375 pub fn rmafip(
1376 self,
1377 ) -> crate::common::RegisterField<
1378 7,
1379 0x1,
1380 1,
1381 0,
1382 eesipr::Rmafip,
1383 eesipr::Rmafip,
1384 Eesipr_SPEC,
1385 crate::common::RW,
1386 > {
1387 crate::common::RegisterField::<
1388 7,
1389 0x1,
1390 1,
1391 0,
1392 eesipr::Rmafip,
1393 eesipr::Rmafip,
1394 Eesipr_SPEC,
1395 crate::common::RW,
1396 >::from_register(self, 0)
1397 }
1398
1399 #[doc = "Transmit Retry Over Interrupt Request Enable"]
1400 #[inline(always)]
1401 pub fn troip(
1402 self,
1403 ) -> crate::common::RegisterField<
1404 8,
1405 0x1,
1406 1,
1407 0,
1408 eesipr::Troip,
1409 eesipr::Troip,
1410 Eesipr_SPEC,
1411 crate::common::RW,
1412 > {
1413 crate::common::RegisterField::<
1414 8,
1415 0x1,
1416 1,
1417 0,
1418 eesipr::Troip,
1419 eesipr::Troip,
1420 Eesipr_SPEC,
1421 crate::common::RW,
1422 >::from_register(self, 0)
1423 }
1424
1425 #[doc = "Late Collision Detect Interrupt Request Enable"]
1426 #[inline(always)]
1427 pub fn cdip(
1428 self,
1429 ) -> crate::common::RegisterField<
1430 9,
1431 0x1,
1432 1,
1433 0,
1434 eesipr::Cdip,
1435 eesipr::Cdip,
1436 Eesipr_SPEC,
1437 crate::common::RW,
1438 > {
1439 crate::common::RegisterField::<
1440 9,
1441 0x1,
1442 1,
1443 0,
1444 eesipr::Cdip,
1445 eesipr::Cdip,
1446 Eesipr_SPEC,
1447 crate::common::RW,
1448 >::from_register(self, 0)
1449 }
1450
1451 #[doc = "Loss of Carrier Detect Interrupt Request Enable"]
1452 #[inline(always)]
1453 pub fn dlcip(
1454 self,
1455 ) -> crate::common::RegisterField<
1456 10,
1457 0x1,
1458 1,
1459 0,
1460 eesipr::Dlcip,
1461 eesipr::Dlcip,
1462 Eesipr_SPEC,
1463 crate::common::RW,
1464 > {
1465 crate::common::RegisterField::<
1466 10,
1467 0x1,
1468 1,
1469 0,
1470 eesipr::Dlcip,
1471 eesipr::Dlcip,
1472 Eesipr_SPEC,
1473 crate::common::RW,
1474 >::from_register(self, 0)
1475 }
1476
1477 #[doc = "Carrier Not Detect Interrupt Request Enable"]
1478 #[inline(always)]
1479 pub fn cndip(
1480 self,
1481 ) -> crate::common::RegisterField<
1482 11,
1483 0x1,
1484 1,
1485 0,
1486 eesipr::Cndip,
1487 eesipr::Cndip,
1488 Eesipr_SPEC,
1489 crate::common::RW,
1490 > {
1491 crate::common::RegisterField::<
1492 11,
1493 0x1,
1494 1,
1495 0,
1496 eesipr::Cndip,
1497 eesipr::Cndip,
1498 Eesipr_SPEC,
1499 crate::common::RW,
1500 >::from_register(self, 0)
1501 }
1502
1503 #[doc = "Receive FIFO Overflow Interrupt Request Enable"]
1504 #[inline(always)]
1505 pub fn rfofip(
1506 self,
1507 ) -> crate::common::RegisterField<
1508 16,
1509 0x1,
1510 1,
1511 0,
1512 eesipr::Rfofip,
1513 eesipr::Rfofip,
1514 Eesipr_SPEC,
1515 crate::common::RW,
1516 > {
1517 crate::common::RegisterField::<
1518 16,
1519 0x1,
1520 1,
1521 0,
1522 eesipr::Rfofip,
1523 eesipr::Rfofip,
1524 Eesipr_SPEC,
1525 crate::common::RW,
1526 >::from_register(self, 0)
1527 }
1528
1529 #[doc = "Receive Descriptor Empty Interrupt Request Enable"]
1530 #[inline(always)]
1531 pub fn rdeip(
1532 self,
1533 ) -> crate::common::RegisterField<
1534 17,
1535 0x1,
1536 1,
1537 0,
1538 eesipr::Rdeip,
1539 eesipr::Rdeip,
1540 Eesipr_SPEC,
1541 crate::common::RW,
1542 > {
1543 crate::common::RegisterField::<
1544 17,
1545 0x1,
1546 1,
1547 0,
1548 eesipr::Rdeip,
1549 eesipr::Rdeip,
1550 Eesipr_SPEC,
1551 crate::common::RW,
1552 >::from_register(self, 0)
1553 }
1554
1555 #[doc = "Frame Receive Interrupt Request Enable"]
1556 #[inline(always)]
1557 pub fn frip(
1558 self,
1559 ) -> crate::common::RegisterField<
1560 18,
1561 0x1,
1562 1,
1563 0,
1564 eesipr::Frip,
1565 eesipr::Frip,
1566 Eesipr_SPEC,
1567 crate::common::RW,
1568 > {
1569 crate::common::RegisterField::<
1570 18,
1571 0x1,
1572 1,
1573 0,
1574 eesipr::Frip,
1575 eesipr::Frip,
1576 Eesipr_SPEC,
1577 crate::common::RW,
1578 >::from_register(self, 0)
1579 }
1580
1581 #[doc = "Transmit FIFO Underflow Interrupt Request Enable"]
1582 #[inline(always)]
1583 pub fn tfufip(
1584 self,
1585 ) -> crate::common::RegisterField<
1586 19,
1587 0x1,
1588 1,
1589 0,
1590 eesipr::Tfufip,
1591 eesipr::Tfufip,
1592 Eesipr_SPEC,
1593 crate::common::RW,
1594 > {
1595 crate::common::RegisterField::<
1596 19,
1597 0x1,
1598 1,
1599 0,
1600 eesipr::Tfufip,
1601 eesipr::Tfufip,
1602 Eesipr_SPEC,
1603 crate::common::RW,
1604 >::from_register(self, 0)
1605 }
1606
1607 #[doc = "Transmit Descriptor Empty Interrupt Request Enable"]
1608 #[inline(always)]
1609 pub fn tdeip(
1610 self,
1611 ) -> crate::common::RegisterField<
1612 20,
1613 0x1,
1614 1,
1615 0,
1616 eesipr::Tdeip,
1617 eesipr::Tdeip,
1618 Eesipr_SPEC,
1619 crate::common::RW,
1620 > {
1621 crate::common::RegisterField::<
1622 20,
1623 0x1,
1624 1,
1625 0,
1626 eesipr::Tdeip,
1627 eesipr::Tdeip,
1628 Eesipr_SPEC,
1629 crate::common::RW,
1630 >::from_register(self, 0)
1631 }
1632
1633 #[doc = "Frame Transfer Complete Interrupt Request Enable"]
1634 #[inline(always)]
1635 pub fn tcip(
1636 self,
1637 ) -> crate::common::RegisterField<
1638 21,
1639 0x1,
1640 1,
1641 0,
1642 eesipr::Tcip,
1643 eesipr::Tcip,
1644 Eesipr_SPEC,
1645 crate::common::RW,
1646 > {
1647 crate::common::RegisterField::<
1648 21,
1649 0x1,
1650 1,
1651 0,
1652 eesipr::Tcip,
1653 eesipr::Tcip,
1654 Eesipr_SPEC,
1655 crate::common::RW,
1656 >::from_register(self, 0)
1657 }
1658
1659 #[doc = "ETHERC Status Register Source Interrupt Request Enable"]
1660 #[inline(always)]
1661 pub fn eciip(
1662 self,
1663 ) -> crate::common::RegisterField<
1664 22,
1665 0x1,
1666 1,
1667 0,
1668 eesipr::Eciip,
1669 eesipr::Eciip,
1670 Eesipr_SPEC,
1671 crate::common::RW,
1672 > {
1673 crate::common::RegisterField::<
1674 22,
1675 0x1,
1676 1,
1677 0,
1678 eesipr::Eciip,
1679 eesipr::Eciip,
1680 Eesipr_SPEC,
1681 crate::common::RW,
1682 >::from_register(self, 0)
1683 }
1684
1685 #[doc = "Address Error Interrupt Request Enable"]
1686 #[inline(always)]
1687 pub fn adeip(
1688 self,
1689 ) -> crate::common::RegisterField<
1690 23,
1691 0x1,
1692 1,
1693 0,
1694 eesipr::Adeip,
1695 eesipr::Adeip,
1696 Eesipr_SPEC,
1697 crate::common::RW,
1698 > {
1699 crate::common::RegisterField::<
1700 23,
1701 0x1,
1702 1,
1703 0,
1704 eesipr::Adeip,
1705 eesipr::Adeip,
1706 Eesipr_SPEC,
1707 crate::common::RW,
1708 >::from_register(self, 0)
1709 }
1710
1711 #[doc = "Receive Frame Counter Overflow Interrupt Request Enable"]
1712 #[inline(always)]
1713 pub fn rfcofip(
1714 self,
1715 ) -> crate::common::RegisterField<
1716 24,
1717 0x1,
1718 1,
1719 0,
1720 eesipr::Rfcofip,
1721 eesipr::Rfcofip,
1722 Eesipr_SPEC,
1723 crate::common::RW,
1724 > {
1725 crate::common::RegisterField::<
1726 24,
1727 0x1,
1728 1,
1729 0,
1730 eesipr::Rfcofip,
1731 eesipr::Rfcofip,
1732 Eesipr_SPEC,
1733 crate::common::RW,
1734 >::from_register(self, 0)
1735 }
1736
1737 #[doc = "Receive Abort Detect Interrupt Request Enable"]
1738 #[inline(always)]
1739 pub fn rabtip(
1740 self,
1741 ) -> crate::common::RegisterField<
1742 25,
1743 0x1,
1744 1,
1745 0,
1746 eesipr::Rabtip,
1747 eesipr::Rabtip,
1748 Eesipr_SPEC,
1749 crate::common::RW,
1750 > {
1751 crate::common::RegisterField::<
1752 25,
1753 0x1,
1754 1,
1755 0,
1756 eesipr::Rabtip,
1757 eesipr::Rabtip,
1758 Eesipr_SPEC,
1759 crate::common::RW,
1760 >::from_register(self, 0)
1761 }
1762
1763 #[doc = "Transmit Abort Detect Interrupt Request Enable"]
1764 #[inline(always)]
1765 pub fn tabtip(
1766 self,
1767 ) -> crate::common::RegisterField<
1768 26,
1769 0x1,
1770 1,
1771 0,
1772 eesipr::Tabtip,
1773 eesipr::Tabtip,
1774 Eesipr_SPEC,
1775 crate::common::RW,
1776 > {
1777 crate::common::RegisterField::<
1778 26,
1779 0x1,
1780 1,
1781 0,
1782 eesipr::Tabtip,
1783 eesipr::Tabtip,
1784 Eesipr_SPEC,
1785 crate::common::RW,
1786 >::from_register(self, 0)
1787 }
1788
1789 #[doc = "Write-Back Complete Interrupt Request Enable"]
1790 #[inline(always)]
1791 pub fn twbip(
1792 self,
1793 ) -> crate::common::RegisterField<
1794 30,
1795 0x1,
1796 1,
1797 0,
1798 eesipr::Twbip,
1799 eesipr::Twbip,
1800 Eesipr_SPEC,
1801 crate::common::RW,
1802 > {
1803 crate::common::RegisterField::<
1804 30,
1805 0x1,
1806 1,
1807 0,
1808 eesipr::Twbip,
1809 eesipr::Twbip,
1810 Eesipr_SPEC,
1811 crate::common::RW,
1812 >::from_register(self, 0)
1813 }
1814}
1815impl ::core::default::Default for Eesipr {
1816 #[inline(always)]
1817 fn default() -> Eesipr {
1818 <crate::RegValueT<Eesipr_SPEC> as RegisterValue<_>>::new(0)
1819 }
1820}
1821pub mod eesipr {
1822
1823 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1824 pub struct Cerfip_SPEC;
1825 pub type Cerfip = crate::EnumBitfieldStruct<u8, Cerfip_SPEC>;
1826 impl Cerfip {
1827 #[doc = "Disable CRC error interrupt requests"]
1828 pub const _0: Self = Self::new(0);
1829
1830 #[doc = "Enable CRC error interrupt requests."]
1831 pub const _1: Self = Self::new(1);
1832 }
1833 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1834 pub struct Preip_SPEC;
1835 pub type Preip = crate::EnumBitfieldStruct<u8, Preip_SPEC>;
1836 impl Preip {
1837 #[doc = "Disable PHY-LSI receive error interrupt requests"]
1838 pub const _0: Self = Self::new(0);
1839
1840 #[doc = "Enable PHY-LSI receive error interrupt requests."]
1841 pub const _1: Self = Self::new(1);
1842 }
1843 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1844 pub struct Rtsfip_SPEC;
1845 pub type Rtsfip = crate::EnumBitfieldStruct<u8, Rtsfip_SPEC>;
1846 impl Rtsfip {
1847 #[doc = "Disable frame-too-short error interrupt requests"]
1848 pub const _0: Self = Self::new(0);
1849
1850 #[doc = "Enable frame-too-short error interrupt requests."]
1851 pub const _1: Self = Self::new(1);
1852 }
1853 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1854 pub struct Rtlfip_SPEC;
1855 pub type Rtlfip = crate::EnumBitfieldStruct<u8, Rtlfip_SPEC>;
1856 impl Rtlfip {
1857 #[doc = "Disable frame-too-long error interrupt requests"]
1858 pub const _0: Self = Self::new(0);
1859
1860 #[doc = "Enable frame-too-long error interrupt requests."]
1861 pub const _1: Self = Self::new(1);
1862 }
1863 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1864 pub struct Rrfip_SPEC;
1865 pub type Rrfip = crate::EnumBitfieldStruct<u8, Rrfip_SPEC>;
1866 impl Rrfip {
1867 #[doc = "Disable alignment error interrupt requests"]
1868 pub const _0: Self = Self::new(0);
1869
1870 #[doc = "Enable alignment error interrupt requests."]
1871 pub const _1: Self = Self::new(1);
1872 }
1873 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1874 pub struct Rmafip_SPEC;
1875 pub type Rmafip = crate::EnumBitfieldStruct<u8, Rmafip_SPEC>;
1876 impl Rmafip {
1877 #[doc = "Disable multicast address frame receive interrupt requests"]
1878 pub const _0: Self = Self::new(0);
1879
1880 #[doc = "Enable multicast address frame receive interrupt requests."]
1881 pub const _1: Self = Self::new(1);
1882 }
1883 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1884 pub struct Troip_SPEC;
1885 pub type Troip = crate::EnumBitfieldStruct<u8, Troip_SPEC>;
1886 impl Troip {
1887 #[doc = "Disable transmit retry over interrupt requests"]
1888 pub const _0: Self = Self::new(0);
1889
1890 #[doc = "Enable transmit retry over interrupt requests."]
1891 pub const _1: Self = Self::new(1);
1892 }
1893 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1894 pub struct Cdip_SPEC;
1895 pub type Cdip = crate::EnumBitfieldStruct<u8, Cdip_SPEC>;
1896 impl Cdip {
1897 #[doc = "Disable late collision detected interrupt requests"]
1898 pub const _0: Self = Self::new(0);
1899
1900 #[doc = "Enable late collision detected interrupt requests."]
1901 pub const _1: Self = Self::new(1);
1902 }
1903 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1904 pub struct Dlcip_SPEC;
1905 pub type Dlcip = crate::EnumBitfieldStruct<u8, Dlcip_SPEC>;
1906 impl Dlcip {
1907 #[doc = "Disable loss of carrier detected interrupt requests"]
1908 pub const _0: Self = Self::new(0);
1909
1910 #[doc = "Enable loss of carrier detected interrupt requests."]
1911 pub const _1: Self = Self::new(1);
1912 }
1913 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1914 pub struct Cndip_SPEC;
1915 pub type Cndip = crate::EnumBitfieldStruct<u8, Cndip_SPEC>;
1916 impl Cndip {
1917 #[doc = "Disable carrier not detected interrupt requests"]
1918 pub const _0: Self = Self::new(0);
1919
1920 #[doc = "Enable carrier not detected interrupt requests."]
1921 pub const _1: Self = Self::new(1);
1922 }
1923 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1924 pub struct Rfofip_SPEC;
1925 pub type Rfofip = crate::EnumBitfieldStruct<u8, Rfofip_SPEC>;
1926 impl Rfofip {
1927 #[doc = "Disable overflow interrupt requests"]
1928 pub const _0: Self = Self::new(0);
1929
1930 #[doc = "Enable overflow interrupt requests."]
1931 pub const _1: Self = Self::new(1);
1932 }
1933 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1934 pub struct Rdeip_SPEC;
1935 pub type Rdeip = crate::EnumBitfieldStruct<u8, Rdeip_SPEC>;
1936 impl Rdeip {
1937 #[doc = "Disable receive descriptor empty interrupt requests"]
1938 pub const _0: Self = Self::new(0);
1939
1940 #[doc = "Enable receive descriptor empty interrupt requests."]
1941 pub const _1: Self = Self::new(1);
1942 }
1943 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1944 pub struct Frip_SPEC;
1945 pub type Frip = crate::EnumBitfieldStruct<u8, Frip_SPEC>;
1946 impl Frip {
1947 #[doc = "Disable frame reception interrupt requests"]
1948 pub const _0: Self = Self::new(0);
1949
1950 #[doc = "Enable frame reception interrupt requests."]
1951 pub const _1: Self = Self::new(1);
1952 }
1953 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1954 pub struct Tfufip_SPEC;
1955 pub type Tfufip = crate::EnumBitfieldStruct<u8, Tfufip_SPEC>;
1956 impl Tfufip {
1957 #[doc = "Disable underflow interrupt requests"]
1958 pub const _0: Self = Self::new(0);
1959
1960 #[doc = "Enable underflow interrupt requests."]
1961 pub const _1: Self = Self::new(1);
1962 }
1963 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1964 pub struct Tdeip_SPEC;
1965 pub type Tdeip = crate::EnumBitfieldStruct<u8, Tdeip_SPEC>;
1966 impl Tdeip {
1967 #[doc = "Disable transmit descriptor empty interrupt requests"]
1968 pub const _0: Self = Self::new(0);
1969
1970 #[doc = "Enable transmit descriptor empty interrupt requests."]
1971 pub const _1: Self = Self::new(1);
1972 }
1973 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1974 pub struct Tcip_SPEC;
1975 pub type Tcip = crate::EnumBitfieldStruct<u8, Tcip_SPEC>;
1976 impl Tcip {
1977 #[doc = "Disable frame transmission complete interrupt requests"]
1978 pub const _0: Self = Self::new(0);
1979
1980 #[doc = "Enable frame transmission complete interrupt requests."]
1981 pub const _1: Self = Self::new(1);
1982 }
1983 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1984 pub struct Eciip_SPEC;
1985 pub type Eciip = crate::EnumBitfieldStruct<u8, Eciip_SPEC>;
1986 impl Eciip {
1987 #[doc = "Disable ETHERC status interrupt requests"]
1988 pub const _0: Self = Self::new(0);
1989
1990 #[doc = "Enable ETHERC status interrupt requests."]
1991 pub const _1: Self = Self::new(1);
1992 }
1993 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1994 pub struct Adeip_SPEC;
1995 pub type Adeip = crate::EnumBitfieldStruct<u8, Adeip_SPEC>;
1996 impl Adeip {
1997 #[doc = "Disable address error interrupt requests"]
1998 pub const _0: Self = Self::new(0);
1999
2000 #[doc = "Enable address error interrupt requests."]
2001 pub const _1: Self = Self::new(1);
2002 }
2003 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2004 pub struct Rfcofip_SPEC;
2005 pub type Rfcofip = crate::EnumBitfieldStruct<u8, Rfcofip_SPEC>;
2006 impl Rfcofip {
2007 #[doc = "Disable receive frame counter overflow interrupt requests"]
2008 pub const _0: Self = Self::new(0);
2009
2010 #[doc = "Enable receive frame counter overflow interrupt requests."]
2011 pub const _1: Self = Self::new(1);
2012 }
2013 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2014 pub struct Rabtip_SPEC;
2015 pub type Rabtip = crate::EnumBitfieldStruct<u8, Rabtip_SPEC>;
2016 impl Rabtip {
2017 #[doc = "Disable receive abort detected interrupt requests"]
2018 pub const _0: Self = Self::new(0);
2019
2020 #[doc = "Enable receive abort detected interrupt requests."]
2021 pub const _1: Self = Self::new(1);
2022 }
2023 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2024 pub struct Tabtip_SPEC;
2025 pub type Tabtip = crate::EnumBitfieldStruct<u8, Tabtip_SPEC>;
2026 impl Tabtip {
2027 #[doc = "Disable transmit abort detected interrupt requests"]
2028 pub const _0: Self = Self::new(0);
2029
2030 #[doc = "Enable transmit abort detected interrupt requests."]
2031 pub const _1: Self = Self::new(1);
2032 }
2033 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2034 pub struct Twbip_SPEC;
2035 pub type Twbip = crate::EnumBitfieldStruct<u8, Twbip_SPEC>;
2036 impl Twbip {
2037 #[doc = "Disable write-back complete interrupt requests"]
2038 pub const _0: Self = Self::new(0);
2039
2040 #[doc = "Enable write-back complete interrupt requests."]
2041 pub const _1: Self = Self::new(1);
2042 }
2043}
2044#[doc(hidden)]
2045#[derive(Copy, Clone, Eq, PartialEq)]
2046pub struct Trscer_SPEC;
2047impl crate::sealed::RegSpec for Trscer_SPEC {
2048 type DataType = u32;
2049}
2050
2051#[doc = "ETHERC/EDMAC Transmit/Receive Status Copy Enable Register"]
2052pub type Trscer = crate::RegValueT<Trscer_SPEC>;
2053
2054impl Trscer {
2055 #[doc = "RRF Flag Copy Enable"]
2056 #[inline(always)]
2057 pub fn rrfce(
2058 self,
2059 ) -> crate::common::RegisterField<
2060 4,
2061 0x1,
2062 1,
2063 0,
2064 trscer::Rrfce,
2065 trscer::Rrfce,
2066 Trscer_SPEC,
2067 crate::common::RW,
2068 > {
2069 crate::common::RegisterField::<
2070 4,
2071 0x1,
2072 1,
2073 0,
2074 trscer::Rrfce,
2075 trscer::Rrfce,
2076 Trscer_SPEC,
2077 crate::common::RW,
2078 >::from_register(self, 0)
2079 }
2080
2081 #[doc = "RMAF Flag Copy Enable"]
2082 #[inline(always)]
2083 pub fn rmafce(
2084 self,
2085 ) -> crate::common::RegisterField<
2086 7,
2087 0x1,
2088 1,
2089 0,
2090 trscer::Rmafce,
2091 trscer::Rmafce,
2092 Trscer_SPEC,
2093 crate::common::RW,
2094 > {
2095 crate::common::RegisterField::<
2096 7,
2097 0x1,
2098 1,
2099 0,
2100 trscer::Rmafce,
2101 trscer::Rmafce,
2102 Trscer_SPEC,
2103 crate::common::RW,
2104 >::from_register(self, 0)
2105 }
2106}
2107impl ::core::default::Default for Trscer {
2108 #[inline(always)]
2109 fn default() -> Trscer {
2110 <crate::RegValueT<Trscer_SPEC> as RegisterValue<_>>::new(0)
2111 }
2112}
2113pub mod trscer {
2114
2115 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2116 pub struct Rrfce_SPEC;
2117 pub type Rrfce = crate::EnumBitfieldStruct<u8, Rrfce_SPEC>;
2118 impl Rrfce {
2119 #[doc = "Reflect the EESR.RRF flag status in the RD0.RFE bit of the receive descriptor"]
2120 pub const _0: Self = Self::new(0);
2121
2122 #[doc = "Do not reflect the EESR.RRF flag status in the RD0.RFE bit of the receive descriptor."]
2123 pub const _1: Self = Self::new(1);
2124 }
2125 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2126 pub struct Rmafce_SPEC;
2127 pub type Rmafce = crate::EnumBitfieldStruct<u8, Rmafce_SPEC>;
2128 impl Rmafce {
2129 #[doc = "Reflect the EESR.RMAF flag status in the RD0.RFE bit of the receive descriptor"]
2130 pub const _0: Self = Self::new(0);
2131
2132 #[doc = "Do not reflect the EESR.RMAF flag status in the RD0.RFE bit of the receive descriptor."]
2133 pub const _1: Self = Self::new(1);
2134 }
2135}
2136#[doc(hidden)]
2137#[derive(Copy, Clone, Eq, PartialEq)]
2138pub struct Rmfcr_SPEC;
2139impl crate::sealed::RegSpec for Rmfcr_SPEC {
2140 type DataType = u32;
2141}
2142
2143#[doc = "Missed-Frame Counter Register"]
2144pub type Rmfcr = crate::RegValueT<Rmfcr_SPEC>;
2145
2146impl Rmfcr {
2147 #[doc = "Missed-Frame Counter"]
2148 #[inline(always)]
2149 pub fn mfc(
2150 self,
2151 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Rmfcr_SPEC, crate::common::RW>
2152 {
2153 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Rmfcr_SPEC,crate::common::RW>::from_register(self,0)
2154 }
2155}
2156impl ::core::default::Default for Rmfcr {
2157 #[inline(always)]
2158 fn default() -> Rmfcr {
2159 <crate::RegValueT<Rmfcr_SPEC> as RegisterValue<_>>::new(0)
2160 }
2161}
2162
2163#[doc(hidden)]
2164#[derive(Copy, Clone, Eq, PartialEq)]
2165pub struct Tftr_SPEC;
2166impl crate::sealed::RegSpec for Tftr_SPEC {
2167 type DataType = u32;
2168}
2169
2170#[doc = "Transmit FIFO Threshold Register"]
2171pub type Tftr = crate::RegValueT<Tftr_SPEC>;
2172
2173impl Tftr {
2174 #[doc = "Transmit FIFO Threshold"]
2175 #[inline(always)]
2176 pub fn tft(
2177 self,
2178 ) -> crate::common::RegisterField<0, 0x7ff, 1, 0, u16, u16, Tftr_SPEC, crate::common::RW> {
2179 crate::common::RegisterField::<0,0x7ff,1,0,u16,u16,Tftr_SPEC,crate::common::RW>::from_register(self,0)
2180 }
2181}
2182impl ::core::default::Default for Tftr {
2183 #[inline(always)]
2184 fn default() -> Tftr {
2185 <crate::RegValueT<Tftr_SPEC> as RegisterValue<_>>::new(0)
2186 }
2187}
2188
2189#[doc(hidden)]
2190#[derive(Copy, Clone, Eq, PartialEq)]
2191pub struct Fdr_SPEC;
2192impl crate::sealed::RegSpec for Fdr_SPEC {
2193 type DataType = u32;
2194}
2195
2196#[doc = "FIFO Depth Register"]
2197pub type Fdr = crate::RegValueT<Fdr_SPEC>;
2198
2199impl Fdr {
2200 #[doc = "Receive FIFO Depth"]
2201 #[inline(always)]
2202 pub fn rfd(
2203 self,
2204 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, fdr::Rfd, fdr::Rfd, Fdr_SPEC, crate::common::RW>
2205 {
2206 crate::common::RegisterField::<0,0x1f,1,0,fdr::Rfd,fdr::Rfd,Fdr_SPEC,crate::common::RW>::from_register(self,0)
2207 }
2208
2209 #[doc = "Transmit FIFO Depth"]
2210 #[inline(always)]
2211 pub fn tfd(
2212 self,
2213 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, fdr::Tfd, fdr::Tfd, Fdr_SPEC, crate::common::RW>
2214 {
2215 crate::common::RegisterField::<8,0x1f,1,0,fdr::Tfd,fdr::Tfd,Fdr_SPEC,crate::common::RW>::from_register(self,0)
2216 }
2217}
2218impl ::core::default::Default for Fdr {
2219 #[inline(always)]
2220 fn default() -> Fdr {
2221 <crate::RegValueT<Fdr_SPEC> as RegisterValue<_>>::new(0)
2222 }
2223}
2224pub mod fdr {
2225
2226 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2227 pub struct Rfd_SPEC;
2228 pub type Rfd = crate::EnumBitfieldStruct<u8, Rfd_SPEC>;
2229 impl Rfd {
2230 #[doc = "4096 bytes"]
2231 pub const _0_X_0_F: Self = Self::new(15);
2232
2233 #[doc = "settings prohibited"]
2234 pub const OTHERS: Self = Self::new(0);
2235 }
2236 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2237 pub struct Tfd_SPEC;
2238 pub type Tfd = crate::EnumBitfieldStruct<u8, Tfd_SPEC>;
2239 impl Tfd {
2240 #[doc = "2048 bytes"]
2241 pub const _0_X_07: Self = Self::new(7);
2242
2243 #[doc = "settings prohibited"]
2244 pub const OTHERS: Self = Self::new(0);
2245 }
2246}
2247#[doc(hidden)]
2248#[derive(Copy, Clone, Eq, PartialEq)]
2249pub struct Rmcr_SPEC;
2250impl crate::sealed::RegSpec for Rmcr_SPEC {
2251 type DataType = u32;
2252}
2253
2254#[doc = "Receive Method Control Register"]
2255pub type Rmcr = crate::RegValueT<Rmcr_SPEC>;
2256
2257impl Rmcr {
2258 #[doc = "Receive Request Reset"]
2259 #[inline(always)]
2260 pub fn rnr(
2261 self,
2262 ) -> crate::common::RegisterField<
2263 0,
2264 0x1,
2265 1,
2266 0,
2267 rmcr::Rnr,
2268 rmcr::Rnr,
2269 Rmcr_SPEC,
2270 crate::common::RW,
2271 > {
2272 crate::common::RegisterField::<
2273 0,
2274 0x1,
2275 1,
2276 0,
2277 rmcr::Rnr,
2278 rmcr::Rnr,
2279 Rmcr_SPEC,
2280 crate::common::RW,
2281 >::from_register(self, 0)
2282 }
2283}
2284impl ::core::default::Default for Rmcr {
2285 #[inline(always)]
2286 fn default() -> Rmcr {
2287 <crate::RegValueT<Rmcr_SPEC> as RegisterValue<_>>::new(0)
2288 }
2289}
2290pub mod rmcr {
2291
2292 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2293 pub struct Rnr_SPEC;
2294 pub type Rnr = crate::EnumBitfieldStruct<u8, Rnr_SPEC>;
2295 impl Rnr {
2296 #[doc = "EDRRR.RR bit (receive request bit) is cleared to 0 when one frame is received"]
2297 pub const _0: Self = Self::new(0);
2298
2299 #[doc = "EDRRR.RR bit (receive request bit) is not cleared to 0 when one frame is received."]
2300 pub const _1: Self = Self::new(1);
2301 }
2302}
2303#[doc(hidden)]
2304#[derive(Copy, Clone, Eq, PartialEq)]
2305pub struct Tfucr_SPEC;
2306impl crate::sealed::RegSpec for Tfucr_SPEC {
2307 type DataType = u32;
2308}
2309
2310#[doc = "Transmit FIFO Underflow Counter"]
2311pub type Tfucr = crate::RegValueT<Tfucr_SPEC>;
2312
2313impl Tfucr {
2314 #[doc = "Transmit FIFO Underflow Count"]
2315 #[inline(always)]
2316 pub fn under(
2317 self,
2318 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Tfucr_SPEC, crate::common::RW>
2319 {
2320 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Tfucr_SPEC,crate::common::RW>::from_register(self,0)
2321 }
2322}
2323impl ::core::default::Default for Tfucr {
2324 #[inline(always)]
2325 fn default() -> Tfucr {
2326 <crate::RegValueT<Tfucr_SPEC> as RegisterValue<_>>::new(0)
2327 }
2328}
2329
2330#[doc(hidden)]
2331#[derive(Copy, Clone, Eq, PartialEq)]
2332pub struct Rfocr_SPEC;
2333impl crate::sealed::RegSpec for Rfocr_SPEC {
2334 type DataType = u32;
2335}
2336
2337#[doc = "Receive FIFO Overflow Counter"]
2338pub type Rfocr = crate::RegValueT<Rfocr_SPEC>;
2339
2340impl Rfocr {
2341 #[doc = "Receive FIFO Overflow Count"]
2342 #[inline(always)]
2343 pub fn over(
2344 self,
2345 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Rfocr_SPEC, crate::common::RW>
2346 {
2347 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Rfocr_SPEC,crate::common::RW>::from_register(self,0)
2348 }
2349}
2350impl ::core::default::Default for Rfocr {
2351 #[inline(always)]
2352 fn default() -> Rfocr {
2353 <crate::RegValueT<Rfocr_SPEC> as RegisterValue<_>>::new(0)
2354 }
2355}
2356
2357#[doc(hidden)]
2358#[derive(Copy, Clone, Eq, PartialEq)]
2359pub struct Iosr_SPEC;
2360impl crate::sealed::RegSpec for Iosr_SPEC {
2361 type DataType = u32;
2362}
2363
2364#[doc = "Independent Output Signal Setting Register"]
2365pub type Iosr = crate::RegValueT<Iosr_SPEC>;
2366
2367impl Iosr {
2368 #[doc = "External Loopback Mode"]
2369 #[inline(always)]
2370 pub fn elb(
2371 self,
2372 ) -> crate::common::RegisterField<
2373 0,
2374 0x1,
2375 1,
2376 0,
2377 iosr::Elb,
2378 iosr::Elb,
2379 Iosr_SPEC,
2380 crate::common::RW,
2381 > {
2382 crate::common::RegisterField::<
2383 0,
2384 0x1,
2385 1,
2386 0,
2387 iosr::Elb,
2388 iosr::Elb,
2389 Iosr_SPEC,
2390 crate::common::RW,
2391 >::from_register(self, 0)
2392 }
2393}
2394impl ::core::default::Default for Iosr {
2395 #[inline(always)]
2396 fn default() -> Iosr {
2397 <crate::RegValueT<Iosr_SPEC> as RegisterValue<_>>::new(0)
2398 }
2399}
2400pub mod iosr {
2401
2402 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2403 pub struct Elb_SPEC;
2404 pub type Elb = crate::EnumBitfieldStruct<u8, Elb_SPEC>;
2405 impl Elb {
2406 #[doc = "Output low on the ET0_EXOUT pin"]
2407 pub const _0: Self = Self::new(0);
2408
2409 #[doc = "Output high on the ET0_EXOUT pin."]
2410 pub const _1: Self = Self::new(1);
2411 }
2412}
2413#[doc(hidden)]
2414#[derive(Copy, Clone, Eq, PartialEq)]
2415pub struct Fcftr_SPEC;
2416impl crate::sealed::RegSpec for Fcftr_SPEC {
2417 type DataType = u32;
2418}
2419
2420#[doc = "Flow Control Start FIFO Threshold Setting Register"]
2421pub type Fcftr = crate::RegValueT<Fcftr_SPEC>;
2422
2423impl Fcftr {
2424 #[doc = "Receive FIFO Data PAUSE Output Threshold"]
2425 #[inline(always)]
2426 pub fn rfdo(
2427 self,
2428 ) -> crate::common::RegisterField<0, 0x7, 1, 0, u8, u8, Fcftr_SPEC, crate::common::RW> {
2429 crate::common::RegisterField::<0,0x7,1,0,u8,u8,Fcftr_SPEC,crate::common::RW>::from_register(self,0)
2430 }
2431
2432 #[doc = "Receive FIFO Frame PAUSE Output Threshold"]
2433 #[inline(always)]
2434 pub fn rffo(
2435 self,
2436 ) -> crate::common::RegisterField<16, 0x7, 1, 0, u8, u8, Fcftr_SPEC, crate::common::RW> {
2437 crate::common::RegisterField::<16,0x7,1,0,u8,u8,Fcftr_SPEC,crate::common::RW>::from_register(self,0)
2438 }
2439}
2440impl ::core::default::Default for Fcftr {
2441 #[inline(always)]
2442 fn default() -> Fcftr {
2443 <crate::RegValueT<Fcftr_SPEC> as RegisterValue<_>>::new(458759)
2444 }
2445}
2446
2447#[doc(hidden)]
2448#[derive(Copy, Clone, Eq, PartialEq)]
2449pub struct Rpadir_SPEC;
2450impl crate::sealed::RegSpec for Rpadir_SPEC {
2451 type DataType = u32;
2452}
2453
2454#[doc = "Receive Data Padding Insert Register"]
2455pub type Rpadir = crate::RegValueT<Rpadir_SPEC>;
2456
2457impl Rpadir {
2458 #[doc = "Padding Slot"]
2459 #[inline(always)]
2460 pub fn padr(
2461 self,
2462 ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, u8, Rpadir_SPEC, crate::common::RW> {
2463 crate::common::RegisterField::<0,0x3f,1,0,u8,u8,Rpadir_SPEC,crate::common::RW>::from_register(self,0)
2464 }
2465
2466 #[doc = "Padding Size"]
2467 #[inline(always)]
2468 pub fn pads(
2469 self,
2470 ) -> crate::common::RegisterField<
2471 16,
2472 0x3,
2473 1,
2474 0,
2475 rpadir::Pads,
2476 rpadir::Pads,
2477 Rpadir_SPEC,
2478 crate::common::RW,
2479 > {
2480 crate::common::RegisterField::<
2481 16,
2482 0x3,
2483 1,
2484 0,
2485 rpadir::Pads,
2486 rpadir::Pads,
2487 Rpadir_SPEC,
2488 crate::common::RW,
2489 >::from_register(self, 0)
2490 }
2491}
2492impl ::core::default::Default for Rpadir {
2493 #[inline(always)]
2494 fn default() -> Rpadir {
2495 <crate::RegValueT<Rpadir_SPEC> as RegisterValue<_>>::new(0)
2496 }
2497}
2498pub mod rpadir {
2499
2500 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2501 pub struct Pads_SPEC;
2502 pub type Pads = crate::EnumBitfieldStruct<u8, Pads_SPEC>;
2503 impl Pads {
2504 #[doc = "Do not insert padding"]
2505 pub const _00: Self = Self::new(0);
2506
2507 #[doc = "settings prohibited"]
2508 pub const OTHERS: Self = Self::new(0);
2509 }
2510}
2511#[doc(hidden)]
2512#[derive(Copy, Clone, Eq, PartialEq)]
2513pub struct Trimd_SPEC;
2514impl crate::sealed::RegSpec for Trimd_SPEC {
2515 type DataType = u32;
2516}
2517
2518#[doc = "Transmit Interrupt Setting Register"]
2519pub type Trimd = crate::RegValueT<Trimd_SPEC>;
2520
2521impl Trimd {
2522 #[doc = "Transmit Interrupt Enable"]
2523 #[inline(always)]
2524 pub fn tis(
2525 self,
2526 ) -> crate::common::RegisterField<
2527 0,
2528 0x1,
2529 1,
2530 0,
2531 trimd::Tis,
2532 trimd::Tis,
2533 Trimd_SPEC,
2534 crate::common::RW,
2535 > {
2536 crate::common::RegisterField::<
2537 0,
2538 0x1,
2539 1,
2540 0,
2541 trimd::Tis,
2542 trimd::Tis,
2543 Trimd_SPEC,
2544 crate::common::RW,
2545 >::from_register(self, 0)
2546 }
2547
2548 #[doc = "Transmit Interrupt Mode"]
2549 #[inline(always)]
2550 pub fn tim(
2551 self,
2552 ) -> crate::common::RegisterField<
2553 4,
2554 0x1,
2555 1,
2556 0,
2557 trimd::Tim,
2558 trimd::Tim,
2559 Trimd_SPEC,
2560 crate::common::RW,
2561 > {
2562 crate::common::RegisterField::<
2563 4,
2564 0x1,
2565 1,
2566 0,
2567 trimd::Tim,
2568 trimd::Tim,
2569 Trimd_SPEC,
2570 crate::common::RW,
2571 >::from_register(self, 0)
2572 }
2573}
2574impl ::core::default::Default for Trimd {
2575 #[inline(always)]
2576 fn default() -> Trimd {
2577 <crate::RegValueT<Trimd_SPEC> as RegisterValue<_>>::new(0)
2578 }
2579}
2580pub mod trimd {
2581
2582 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2583 pub struct Tis_SPEC;
2584 pub type Tis = crate::EnumBitfieldStruct<u8, Tis_SPEC>;
2585 impl Tis {
2586 #[doc = "Disable transmit interrupts"]
2587 pub const _0: Self = Self::new(0);
2588
2589 #[doc = "Enable transmit Interrupts."]
2590 pub const _1: Self = Self::new(1);
2591 }
2592 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2593 pub struct Tim_SPEC;
2594 pub type Tim = crate::EnumBitfieldStruct<u8, Tim_SPEC>;
2595 impl Tim {
2596 #[doc = "Select transmission complete interrupt mode, where an interrupt occurs when a frame is transmitted"]
2597 pub const _0: Self = Self::new(0);
2598
2599 #[doc = "Select write-back complete interrupt mode, where an interrupt occurs when write-back to the transmit descriptor is complete while the TWBI bit is 1."]
2600 pub const _1: Self = Self::new(1);
2601 }
2602}
2603#[doc(hidden)]
2604#[derive(Copy, Clone, Eq, PartialEq)]
2605pub struct Rbwar_SPEC;
2606impl crate::sealed::RegSpec for Rbwar_SPEC {
2607 type DataType = u32;
2608}
2609
2610#[doc = "Receive Buffer Write Address Register"]
2611pub type Rbwar = crate::RegValueT<Rbwar_SPEC>;
2612
2613impl NoBitfieldReg<Rbwar_SPEC> for Rbwar {}
2614impl ::core::default::Default for Rbwar {
2615 #[inline(always)]
2616 fn default() -> Rbwar {
2617 <crate::RegValueT<Rbwar_SPEC> as RegisterValue<_>>::new(0)
2618 }
2619}
2620
2621#[doc(hidden)]
2622#[derive(Copy, Clone, Eq, PartialEq)]
2623pub struct Rdfar_SPEC;
2624impl crate::sealed::RegSpec for Rdfar_SPEC {
2625 type DataType = u32;
2626}
2627
2628#[doc = "Receive Descriptor Fetch Address Register"]
2629pub type Rdfar = crate::RegValueT<Rdfar_SPEC>;
2630
2631impl NoBitfieldReg<Rdfar_SPEC> for Rdfar {}
2632impl ::core::default::Default for Rdfar {
2633 #[inline(always)]
2634 fn default() -> Rdfar {
2635 <crate::RegValueT<Rdfar_SPEC> as RegisterValue<_>>::new(0)
2636 }
2637}
2638
2639#[doc(hidden)]
2640#[derive(Copy, Clone, Eq, PartialEq)]
2641pub struct Tbrar_SPEC;
2642impl crate::sealed::RegSpec for Tbrar_SPEC {
2643 type DataType = u32;
2644}
2645
2646#[doc = "Transmit Buffer Read Address Register"]
2647pub type Tbrar = crate::RegValueT<Tbrar_SPEC>;
2648
2649impl NoBitfieldReg<Tbrar_SPEC> for Tbrar {}
2650impl ::core::default::Default for Tbrar {
2651 #[inline(always)]
2652 fn default() -> Tbrar {
2653 <crate::RegValueT<Tbrar_SPEC> as RegisterValue<_>>::new(0)
2654 }
2655}
2656
2657#[doc(hidden)]
2658#[derive(Copy, Clone, Eq, PartialEq)]
2659pub struct Tdfar_SPEC;
2660impl crate::sealed::RegSpec for Tdfar_SPEC {
2661 type DataType = u32;
2662}
2663
2664#[doc = "Transmit Descriptor Fetch Address Register"]
2665pub type Tdfar = crate::RegValueT<Tdfar_SPEC>;
2666
2667impl NoBitfieldReg<Tdfar_SPEC> for Tdfar {}
2668impl ::core::default::Default for Tdfar {
2669 #[inline(always)]
2670 fn default() -> Tdfar {
2671 <crate::RegValueT<Tdfar_SPEC> as RegisterValue<_>>::new(0)
2672 }
2673}