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"Ethernet Controller Channel 0"]
28unsafe impl ::core::marker::Send for super::Etherc0 {}
29unsafe impl ::core::marker::Sync for super::Etherc0 {}
30impl super::Etherc0 {
31 #[allow(unused)]
32 #[inline(always)]
33 pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34 self.ptr
35 }
36
37 #[doc = "ETHERC Mode Register"]
38 #[inline(always)]
39 pub const fn ecmr(&self) -> &'static crate::common::Reg<self::Ecmr_SPEC, crate::common::RW> {
40 unsafe {
41 crate::common::Reg::<self::Ecmr_SPEC, crate::common::RW>::from_ptr(
42 self._svd2pac_as_ptr().add(0usize),
43 )
44 }
45 }
46
47 #[doc = "Receive Frame Maximum Length Register"]
48 #[inline(always)]
49 pub const fn rflr(&self) -> &'static crate::common::Reg<self::Rflr_SPEC, crate::common::RW> {
50 unsafe {
51 crate::common::Reg::<self::Rflr_SPEC, crate::common::RW>::from_ptr(
52 self._svd2pac_as_ptr().add(8usize),
53 )
54 }
55 }
56
57 #[doc = "ETHERC Status Register"]
58 #[inline(always)]
59 pub const fn ecsr(&self) -> &'static crate::common::Reg<self::Ecsr_SPEC, crate::common::RW> {
60 unsafe {
61 crate::common::Reg::<self::Ecsr_SPEC, crate::common::RW>::from_ptr(
62 self._svd2pac_as_ptr().add(16usize),
63 )
64 }
65 }
66
67 #[doc = "ETHERC Interrupt Enable Register"]
68 #[inline(always)]
69 pub const fn ecsipr(
70 &self,
71 ) -> &'static crate::common::Reg<self::Ecsipr_SPEC, crate::common::RW> {
72 unsafe {
73 crate::common::Reg::<self::Ecsipr_SPEC, crate::common::RW>::from_ptr(
74 self._svd2pac_as_ptr().add(24usize),
75 )
76 }
77 }
78
79 #[doc = "PHY Interface Register"]
80 #[inline(always)]
81 pub const fn pir(&self) -> &'static crate::common::Reg<self::Pir_SPEC, crate::common::RW> {
82 unsafe {
83 crate::common::Reg::<self::Pir_SPEC, crate::common::RW>::from_ptr(
84 self._svd2pac_as_ptr().add(32usize),
85 )
86 }
87 }
88
89 #[doc = "PHY Status Register"]
90 #[inline(always)]
91 pub const fn psr(&self) -> &'static crate::common::Reg<self::Psr_SPEC, crate::common::R> {
92 unsafe {
93 crate::common::Reg::<self::Psr_SPEC, crate::common::R>::from_ptr(
94 self._svd2pac_as_ptr().add(40usize),
95 )
96 }
97 }
98
99 #[doc = "Random Number Generation Counter Upper Limit Setting Register"]
100 #[inline(always)]
101 pub const fn rdmlr(&self) -> &'static crate::common::Reg<self::Rdmlr_SPEC, crate::common::RW> {
102 unsafe {
103 crate::common::Reg::<self::Rdmlr_SPEC, crate::common::RW>::from_ptr(
104 self._svd2pac_as_ptr().add(64usize),
105 )
106 }
107 }
108
109 #[doc = "Interpacket Gap Register"]
110 #[inline(always)]
111 pub const fn ipgr(&self) -> &'static crate::common::Reg<self::Ipgr_SPEC, crate::common::RW> {
112 unsafe {
113 crate::common::Reg::<self::Ipgr_SPEC, crate::common::RW>::from_ptr(
114 self._svd2pac_as_ptr().add(80usize),
115 )
116 }
117 }
118
119 #[doc = "Automatic PAUSE Frame Register"]
120 #[inline(always)]
121 pub const fn apr(&self) -> &'static crate::common::Reg<self::Apr_SPEC, crate::common::RW> {
122 unsafe {
123 crate::common::Reg::<self::Apr_SPEC, crate::common::RW>::from_ptr(
124 self._svd2pac_as_ptr().add(84usize),
125 )
126 }
127 }
128
129 #[doc = "Manual PAUSE Frame Register"]
130 #[inline(always)]
131 pub const fn mpr(&self) -> &'static crate::common::Reg<self::Mpr_SPEC, crate::common::RW> {
132 unsafe {
133 crate::common::Reg::<self::Mpr_SPEC, crate::common::RW>::from_ptr(
134 self._svd2pac_as_ptr().add(88usize),
135 )
136 }
137 }
138
139 #[doc = "Received PAUSE Frame Counter"]
140 #[inline(always)]
141 pub const fn rfcf(&self) -> &'static crate::common::Reg<self::Rfcf_SPEC, crate::common::R> {
142 unsafe {
143 crate::common::Reg::<self::Rfcf_SPEC, crate::common::R>::from_ptr(
144 self._svd2pac_as_ptr().add(96usize),
145 )
146 }
147 }
148
149 #[doc = "PAUSE Frame Retransmit Count Setting Register"]
150 #[inline(always)]
151 pub const fn tpauser(
152 &self,
153 ) -> &'static crate::common::Reg<self::Tpauser_SPEC, crate::common::RW> {
154 unsafe {
155 crate::common::Reg::<self::Tpauser_SPEC, crate::common::RW>::from_ptr(
156 self._svd2pac_as_ptr().add(100usize),
157 )
158 }
159 }
160
161 #[doc = "PAUSE Frame Retransmit Counter"]
162 #[inline(always)]
163 pub const fn tpausecr(
164 &self,
165 ) -> &'static crate::common::Reg<self::Tpausecr_SPEC, crate::common::R> {
166 unsafe {
167 crate::common::Reg::<self::Tpausecr_SPEC, crate::common::R>::from_ptr(
168 self._svd2pac_as_ptr().add(104usize),
169 )
170 }
171 }
172
173 #[doc = "Broadcast Frame Receive Count Setting Register"]
174 #[inline(always)]
175 pub const fn bcfrr(&self) -> &'static crate::common::Reg<self::Bcfrr_SPEC, crate::common::RW> {
176 unsafe {
177 crate::common::Reg::<self::Bcfrr_SPEC, crate::common::RW>::from_ptr(
178 self._svd2pac_as_ptr().add(108usize),
179 )
180 }
181 }
182
183 #[doc = "MAC Address Upper Bit Register"]
184 #[inline(always)]
185 pub const fn mahr(&self) -> &'static crate::common::Reg<self::Mahr_SPEC, crate::common::RW> {
186 unsafe {
187 crate::common::Reg::<self::Mahr_SPEC, crate::common::RW>::from_ptr(
188 self._svd2pac_as_ptr().add(192usize),
189 )
190 }
191 }
192
193 #[doc = "MAC Address Lower Bit Register"]
194 #[inline(always)]
195 pub const fn malr(&self) -> &'static crate::common::Reg<self::Malr_SPEC, crate::common::RW> {
196 unsafe {
197 crate::common::Reg::<self::Malr_SPEC, crate::common::RW>::from_ptr(
198 self._svd2pac_as_ptr().add(200usize),
199 )
200 }
201 }
202
203 #[doc = "Transmit Retry Over Counter Register"]
204 #[inline(always)]
205 pub const fn trocr(&self) -> &'static crate::common::Reg<self::Trocr_SPEC, crate::common::RW> {
206 unsafe {
207 crate::common::Reg::<self::Trocr_SPEC, crate::common::RW>::from_ptr(
208 self._svd2pac_as_ptr().add(208usize),
209 )
210 }
211 }
212
213 #[doc = "Late Collision Detect Counter Register"]
214 #[inline(always)]
215 pub const fn cdcr(&self) -> &'static crate::common::Reg<self::Cdcr_SPEC, crate::common::RW> {
216 unsafe {
217 crate::common::Reg::<self::Cdcr_SPEC, crate::common::RW>::from_ptr(
218 self._svd2pac_as_ptr().add(212usize),
219 )
220 }
221 }
222
223 #[doc = "Lost Carrier Counter Register"]
224 #[inline(always)]
225 pub const fn lccr(&self) -> &'static crate::common::Reg<self::Lccr_SPEC, crate::common::RW> {
226 unsafe {
227 crate::common::Reg::<self::Lccr_SPEC, crate::common::RW>::from_ptr(
228 self._svd2pac_as_ptr().add(216usize),
229 )
230 }
231 }
232
233 #[doc = "Carrier Not Detect Counter Register"]
234 #[inline(always)]
235 pub const fn cndcr(&self) -> &'static crate::common::Reg<self::Cndcr_SPEC, crate::common::RW> {
236 unsafe {
237 crate::common::Reg::<self::Cndcr_SPEC, crate::common::RW>::from_ptr(
238 self._svd2pac_as_ptr().add(220usize),
239 )
240 }
241 }
242
243 #[doc = "CRC Error Frame Receive Counter Register"]
244 #[inline(always)]
245 pub const fn cefcr(&self) -> &'static crate::common::Reg<self::Cefcr_SPEC, crate::common::RW> {
246 unsafe {
247 crate::common::Reg::<self::Cefcr_SPEC, crate::common::RW>::from_ptr(
248 self._svd2pac_as_ptr().add(228usize),
249 )
250 }
251 }
252
253 #[doc = "Too-Short Frame Receive Counter Register"]
254 #[inline(always)]
255 pub const fn tsfrcr(
256 &self,
257 ) -> &'static crate::common::Reg<self::Tsfrcr_SPEC, crate::common::RW> {
258 unsafe {
259 crate::common::Reg::<self::Tsfrcr_SPEC, crate::common::RW>::from_ptr(
260 self._svd2pac_as_ptr().add(236usize),
261 )
262 }
263 }
264
265 #[doc = "Too-Long Frame Receive Counter Register"]
266 #[inline(always)]
267 pub const fn tlfrcr(
268 &self,
269 ) -> &'static crate::common::Reg<self::Tlfrcr_SPEC, crate::common::RW> {
270 unsafe {
271 crate::common::Reg::<self::Tlfrcr_SPEC, crate::common::RW>::from_ptr(
272 self._svd2pac_as_ptr().add(240usize),
273 )
274 }
275 }
276
277 #[doc = "Received Alignment Error Frame Counter Register"]
278 #[inline(always)]
279 pub const fn rfcr(&self) -> &'static crate::common::Reg<self::Rfcr_SPEC, crate::common::RW> {
280 unsafe {
281 crate::common::Reg::<self::Rfcr_SPEC, crate::common::RW>::from_ptr(
282 self._svd2pac_as_ptr().add(244usize),
283 )
284 }
285 }
286
287 #[doc = "Multicast Address Frame Receive Counter Register"]
288 #[inline(always)]
289 pub const fn mafcr(&self) -> &'static crate::common::Reg<self::Mafcr_SPEC, crate::common::RW> {
290 unsafe {
291 crate::common::Reg::<self::Mafcr_SPEC, crate::common::RW>::from_ptr(
292 self._svd2pac_as_ptr().add(248usize),
293 )
294 }
295 }
296}
297#[doc(hidden)]
298#[derive(Copy, Clone, Eq, PartialEq)]
299pub struct Ecmr_SPEC;
300impl crate::sealed::RegSpec for Ecmr_SPEC {
301 type DataType = u32;
302}
303
304#[doc = "ETHERC Mode Register"]
305pub type Ecmr = crate::RegValueT<Ecmr_SPEC>;
306
307impl Ecmr {
308 #[doc = "Promiscuous Mode"]
309 #[inline(always)]
310 pub fn prm(
311 self,
312 ) -> crate::common::RegisterField<
313 0,
314 0x1,
315 1,
316 0,
317 ecmr::Prm,
318 ecmr::Prm,
319 Ecmr_SPEC,
320 crate::common::RW,
321 > {
322 crate::common::RegisterField::<
323 0,
324 0x1,
325 1,
326 0,
327 ecmr::Prm,
328 ecmr::Prm,
329 Ecmr_SPEC,
330 crate::common::RW,
331 >::from_register(self, 0)
332 }
333
334 #[doc = "Duplex Mode"]
335 #[inline(always)]
336 pub fn dm(
337 self,
338 ) -> crate::common::RegisterField<1, 0x1, 1, 0, ecmr::Dm, ecmr::Dm, Ecmr_SPEC, crate::common::RW>
339 {
340 crate::common::RegisterField::<1,0x1,1,0,ecmr::Dm,ecmr::Dm,Ecmr_SPEC,crate::common::RW>::from_register(self,0)
341 }
342
343 #[doc = "Bit Rate"]
344 #[inline(always)]
345 pub fn rtm(
346 self,
347 ) -> crate::common::RegisterField<
348 2,
349 0x1,
350 1,
351 0,
352 ecmr::Rtm,
353 ecmr::Rtm,
354 Ecmr_SPEC,
355 crate::common::RW,
356 > {
357 crate::common::RegisterField::<
358 2,
359 0x1,
360 1,
361 0,
362 ecmr::Rtm,
363 ecmr::Rtm,
364 Ecmr_SPEC,
365 crate::common::RW,
366 >::from_register(self, 0)
367 }
368
369 #[doc = "Internal Loopback Mode"]
370 #[inline(always)]
371 pub fn ilb(
372 self,
373 ) -> crate::common::RegisterField<
374 3,
375 0x1,
376 1,
377 0,
378 ecmr::Ilb,
379 ecmr::Ilb,
380 Ecmr_SPEC,
381 crate::common::RW,
382 > {
383 crate::common::RegisterField::<
384 3,
385 0x1,
386 1,
387 0,
388 ecmr::Ilb,
389 ecmr::Ilb,
390 Ecmr_SPEC,
391 crate::common::RW,
392 >::from_register(self, 0)
393 }
394
395 #[doc = "Transmission Enable"]
396 #[inline(always)]
397 pub fn te(
398 self,
399 ) -> crate::common::RegisterField<5, 0x1, 1, 0, ecmr::Te, ecmr::Te, Ecmr_SPEC, crate::common::RW>
400 {
401 crate::common::RegisterField::<5,0x1,1,0,ecmr::Te,ecmr::Te,Ecmr_SPEC,crate::common::RW>::from_register(self,0)
402 }
403
404 #[doc = "Reception Enable"]
405 #[inline(always)]
406 pub fn re(
407 self,
408 ) -> crate::common::RegisterField<6, 0x1, 1, 0, ecmr::Re, ecmr::Re, Ecmr_SPEC, crate::common::RW>
409 {
410 crate::common::RegisterField::<6,0x1,1,0,ecmr::Re,ecmr::Re,Ecmr_SPEC,crate::common::RW>::from_register(self,0)
411 }
412
413 #[doc = "Magic Packet Detection Enable"]
414 #[inline(always)]
415 pub fn mpde(
416 self,
417 ) -> crate::common::RegisterField<
418 9,
419 0x1,
420 1,
421 0,
422 ecmr::Mpde,
423 ecmr::Mpde,
424 Ecmr_SPEC,
425 crate::common::RW,
426 > {
427 crate::common::RegisterField::<
428 9,
429 0x1,
430 1,
431 0,
432 ecmr::Mpde,
433 ecmr::Mpde,
434 Ecmr_SPEC,
435 crate::common::RW,
436 >::from_register(self, 0)
437 }
438
439 #[doc = "CRC Error Frame Receive Mode"]
440 #[inline(always)]
441 pub fn prcef(
442 self,
443 ) -> crate::common::RegisterField<
444 12,
445 0x1,
446 1,
447 0,
448 ecmr::Prcef,
449 ecmr::Prcef,
450 Ecmr_SPEC,
451 crate::common::RW,
452 > {
453 crate::common::RegisterField::<
454 12,
455 0x1,
456 1,
457 0,
458 ecmr::Prcef,
459 ecmr::Prcef,
460 Ecmr_SPEC,
461 crate::common::RW,
462 >::from_register(self, 0)
463 }
464
465 #[doc = "Transmit Flow Control Operating Mode"]
466 #[inline(always)]
467 pub fn txf(
468 self,
469 ) -> crate::common::RegisterField<
470 16,
471 0x1,
472 1,
473 0,
474 ecmr::Txf,
475 ecmr::Txf,
476 Ecmr_SPEC,
477 crate::common::RW,
478 > {
479 crate::common::RegisterField::<
480 16,
481 0x1,
482 1,
483 0,
484 ecmr::Txf,
485 ecmr::Txf,
486 Ecmr_SPEC,
487 crate::common::RW,
488 >::from_register(self, 0)
489 }
490
491 #[doc = "Receive Flow Control Operating Mode"]
492 #[inline(always)]
493 pub fn rxf(
494 self,
495 ) -> crate::common::RegisterField<
496 17,
497 0x1,
498 1,
499 0,
500 ecmr::Rxf,
501 ecmr::Rxf,
502 Ecmr_SPEC,
503 crate::common::RW,
504 > {
505 crate::common::RegisterField::<
506 17,
507 0x1,
508 1,
509 0,
510 ecmr::Rxf,
511 ecmr::Rxf,
512 Ecmr_SPEC,
513 crate::common::RW,
514 >::from_register(self, 0)
515 }
516
517 #[doc = "PAUSE Frame Receive Mode"]
518 #[inline(always)]
519 pub fn pfr(
520 self,
521 ) -> crate::common::RegisterField<
522 18,
523 0x1,
524 1,
525 0,
526 ecmr::Pfr,
527 ecmr::Pfr,
528 Ecmr_SPEC,
529 crate::common::RW,
530 > {
531 crate::common::RegisterField::<
532 18,
533 0x1,
534 1,
535 0,
536 ecmr::Pfr,
537 ecmr::Pfr,
538 Ecmr_SPEC,
539 crate::common::RW,
540 >::from_register(self, 0)
541 }
542
543 #[doc = "0 Time PAUSE Frame Enable"]
544 #[inline(always)]
545 pub fn zpf(
546 self,
547 ) -> crate::common::RegisterField<
548 19,
549 0x1,
550 1,
551 0,
552 ecmr::Zpf,
553 ecmr::Zpf,
554 Ecmr_SPEC,
555 crate::common::RW,
556 > {
557 crate::common::RegisterField::<
558 19,
559 0x1,
560 1,
561 0,
562 ecmr::Zpf,
563 ecmr::Zpf,
564 Ecmr_SPEC,
565 crate::common::RW,
566 >::from_register(self, 0)
567 }
568
569 #[doc = "PAUSE Frame Transmit"]
570 #[inline(always)]
571 pub fn tpc(
572 self,
573 ) -> crate::common::RegisterField<
574 20,
575 0x1,
576 1,
577 0,
578 ecmr::Tpc,
579 ecmr::Tpc,
580 Ecmr_SPEC,
581 crate::common::RW,
582 > {
583 crate::common::RegisterField::<
584 20,
585 0x1,
586 1,
587 0,
588 ecmr::Tpc,
589 ecmr::Tpc,
590 Ecmr_SPEC,
591 crate::common::RW,
592 >::from_register(self, 0)
593 }
594}
595impl ::core::default::Default for Ecmr {
596 #[inline(always)]
597 fn default() -> Ecmr {
598 <crate::RegValueT<Ecmr_SPEC> as RegisterValue<_>>::new(0)
599 }
600}
601pub mod ecmr {
602
603 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
604 pub struct Prm_SPEC;
605 pub type Prm = crate::EnumBitfieldStruct<u8, Prm_SPEC>;
606 impl Prm {
607 #[doc = "Disable promiscuous mode"]
608 pub const _0: Self = Self::new(0);
609
610 #[doc = "Enable promiscuous mode."]
611 pub const _1: Self = Self::new(1);
612 }
613 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
614 pub struct Dm_SPEC;
615 pub type Dm = crate::EnumBitfieldStruct<u8, Dm_SPEC>;
616 impl Dm {
617 #[doc = "Half-duplex mode"]
618 pub const _0: Self = Self::new(0);
619
620 #[doc = "Full-duplex mode."]
621 pub const _1: Self = Self::new(1);
622 }
623 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
624 pub struct Rtm_SPEC;
625 pub type Rtm = crate::EnumBitfieldStruct<u8, Rtm_SPEC>;
626 impl Rtm {
627 #[doc = "10 Mbps"]
628 pub const _0: Self = Self::new(0);
629
630 #[doc = "100 Mbps."]
631 pub const _1: Self = Self::new(1);
632 }
633 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
634 pub struct Ilb_SPEC;
635 pub type Ilb = crate::EnumBitfieldStruct<u8, Ilb_SPEC>;
636 impl Ilb {
637 #[doc = "Perform normal data transmission or reception"]
638 pub const _0: Self = Self::new(0);
639
640 #[doc = "Loop data back in the ETHERC when full-duplex mode is selected."]
641 pub const _1: Self = Self::new(1);
642 }
643 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
644 pub struct Te_SPEC;
645 pub type Te = crate::EnumBitfieldStruct<u8, Te_SPEC>;
646 impl Te {
647 #[doc = "Disable transmit function"]
648 pub const _0: Self = Self::new(0);
649
650 #[doc = "Enable transmit function."]
651 pub const _1: Self = Self::new(1);
652 }
653 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
654 pub struct Re_SPEC;
655 pub type Re = crate::EnumBitfieldStruct<u8, Re_SPEC>;
656 impl Re {
657 #[doc = "Disable receive function"]
658 pub const _0: Self = Self::new(0);
659
660 #[doc = "Enable receive function."]
661 pub const _1: Self = Self::new(1);
662 }
663 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
664 pub struct Mpde_SPEC;
665 pub type Mpde = crate::EnumBitfieldStruct<u8, Mpde_SPEC>;
666 impl Mpde {
667 #[doc = "Disable Magic Packet detection"]
668 pub const _0: Self = Self::new(0);
669
670 #[doc = "Enable Magic Packet detection."]
671 pub const _1: Self = Self::new(1);
672 }
673 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
674 pub struct Prcef_SPEC;
675 pub type Prcef = crate::EnumBitfieldStruct<u8, Prcef_SPEC>;
676 impl Prcef {
677 #[doc = "Notify EDMAC of a CRC error"]
678 pub const _0: Self = Self::new(0);
679
680 #[doc = "Do not notify EDMAC of a CRC error."]
681 pub const _1: Self = Self::new(1);
682 }
683 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
684 pub struct Txf_SPEC;
685 pub type Txf = crate::EnumBitfieldStruct<u8, Txf_SPEC>;
686 impl Txf {
687 #[doc = "Disable automatic PAUSE frame transmission (PAUSE frame is not automatically transmitted)"]
688 pub const _0: Self = Self::new(0);
689
690 #[doc = "Enable automatic PAUSE frame transmission (PAUSE frame is automatically transmitted as required)."]
691 pub const _1: Self = Self::new(1);
692 }
693 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
694 pub struct Rxf_SPEC;
695 pub type Rxf = crate::EnumBitfieldStruct<u8, Rxf_SPEC>;
696 impl Rxf {
697 #[doc = "Disable PAUSE frame detection"]
698 pub const _0: Self = Self::new(0);
699
700 #[doc = "Enable PAUSE frame detection."]
701 pub const _1: Self = Self::new(1);
702 }
703 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
704 pub struct Pfr_SPEC;
705 pub type Pfr = crate::EnumBitfieldStruct<u8, Pfr_SPEC>;
706 impl Pfr {
707 #[doc = "Do not transfer PAUSE frame to the EDMAC"]
708 pub const _0: Self = Self::new(0);
709
710 #[doc = "Transfer PAUSE frame to the EDMAC."]
711 pub const _1: Self = Self::new(1);
712 }
713 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
714 pub struct Zpf_SPEC;
715 pub type Zpf = crate::EnumBitfieldStruct<u8, Zpf_SPEC>;
716 impl Zpf {
717 #[doc = "Do not use PAUSE frames that containing a pause_time parameter of 0"]
718 pub const _0: Self = Self::new(0);
719
720 #[doc = "Use PAUSE frames that containing a pause_time parameter of 0."]
721 pub const _1: Self = Self::new(1);
722 }
723 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
724 pub struct Tpc_SPEC;
725 pub type Tpc = crate::EnumBitfieldStruct<u8, Tpc_SPEC>;
726 impl Tpc {
727 #[doc = "Transmit PAUSE frame even during a PAUSE period"]
728 pub const _0: Self = Self::new(0);
729
730 #[doc = "Do not transmit PAUSE frame during a PAUSE period."]
731 pub const _1: Self = Self::new(1);
732 }
733}
734#[doc(hidden)]
735#[derive(Copy, Clone, Eq, PartialEq)]
736pub struct Rflr_SPEC;
737impl crate::sealed::RegSpec for Rflr_SPEC {
738 type DataType = u32;
739}
740
741#[doc = "Receive Frame Maximum Length Register"]
742pub type Rflr = crate::RegValueT<Rflr_SPEC>;
743
744impl Rflr {
745 #[doc = "Receive Frame Maximum Length"]
746 #[inline(always)]
747 pub fn rfl(
748 self,
749 ) -> crate::common::RegisterField<0, 0xfff, 1, 0, u16, u16, Rflr_SPEC, crate::common::RW> {
750 crate::common::RegisterField::<0,0xfff,1,0,u16,u16,Rflr_SPEC,crate::common::RW>::from_register(self,0)
751 }
752}
753impl ::core::default::Default for Rflr {
754 #[inline(always)]
755 fn default() -> Rflr {
756 <crate::RegValueT<Rflr_SPEC> as RegisterValue<_>>::new(0)
757 }
758}
759
760#[doc(hidden)]
761#[derive(Copy, Clone, Eq, PartialEq)]
762pub struct Ecsr_SPEC;
763impl crate::sealed::RegSpec for Ecsr_SPEC {
764 type DataType = u32;
765}
766
767#[doc = "ETHERC Status Register"]
768pub type Ecsr = crate::RegValueT<Ecsr_SPEC>;
769
770impl Ecsr {
771 #[doc = "False Carrier Detect Flag"]
772 #[inline(always)]
773 pub fn icd(
774 self,
775 ) -> crate::common::RegisterField<
776 0,
777 0x1,
778 1,
779 0,
780 ecsr::Icd,
781 ecsr::Icd,
782 Ecsr_SPEC,
783 crate::common::RW,
784 > {
785 crate::common::RegisterField::<
786 0,
787 0x1,
788 1,
789 0,
790 ecsr::Icd,
791 ecsr::Icd,
792 Ecsr_SPEC,
793 crate::common::RW,
794 >::from_register(self, 0)
795 }
796
797 #[doc = "Magic Packet Detect Flag"]
798 #[inline(always)]
799 pub fn mpd(
800 self,
801 ) -> crate::common::RegisterField<
802 1,
803 0x1,
804 1,
805 0,
806 ecsr::Mpd,
807 ecsr::Mpd,
808 Ecsr_SPEC,
809 crate::common::RW,
810 > {
811 crate::common::RegisterField::<
812 1,
813 0x1,
814 1,
815 0,
816 ecsr::Mpd,
817 ecsr::Mpd,
818 Ecsr_SPEC,
819 crate::common::RW,
820 >::from_register(self, 0)
821 }
822
823 #[doc = "Link Signal Change Flag"]
824 #[inline(always)]
825 pub fn lchng(
826 self,
827 ) -> crate::common::RegisterField<
828 2,
829 0x1,
830 1,
831 0,
832 ecsr::Lchng,
833 ecsr::Lchng,
834 Ecsr_SPEC,
835 crate::common::RW,
836 > {
837 crate::common::RegisterField::<
838 2,
839 0x1,
840 1,
841 0,
842 ecsr::Lchng,
843 ecsr::Lchng,
844 Ecsr_SPEC,
845 crate::common::RW,
846 >::from_register(self, 0)
847 }
848
849 #[doc = "PAUSE Frame Retransmit Over Flag"]
850 #[inline(always)]
851 pub fn psrto(
852 self,
853 ) -> crate::common::RegisterField<
854 4,
855 0x1,
856 1,
857 0,
858 ecsr::Psrto,
859 ecsr::Psrto,
860 Ecsr_SPEC,
861 crate::common::RW,
862 > {
863 crate::common::RegisterField::<
864 4,
865 0x1,
866 1,
867 0,
868 ecsr::Psrto,
869 ecsr::Psrto,
870 Ecsr_SPEC,
871 crate::common::RW,
872 >::from_register(self, 0)
873 }
874
875 #[doc = "Continuous Broadcast Frame Reception Flag"]
876 #[inline(always)]
877 pub fn bfr(
878 self,
879 ) -> crate::common::RegisterField<
880 5,
881 0x1,
882 1,
883 0,
884 ecsr::Bfr,
885 ecsr::Bfr,
886 Ecsr_SPEC,
887 crate::common::RW,
888 > {
889 crate::common::RegisterField::<
890 5,
891 0x1,
892 1,
893 0,
894 ecsr::Bfr,
895 ecsr::Bfr,
896 Ecsr_SPEC,
897 crate::common::RW,
898 >::from_register(self, 0)
899 }
900}
901impl ::core::default::Default for Ecsr {
902 #[inline(always)]
903 fn default() -> Ecsr {
904 <crate::RegValueT<Ecsr_SPEC> as RegisterValue<_>>::new(0)
905 }
906}
907pub mod ecsr {
908
909 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
910 pub struct Icd_SPEC;
911 pub type Icd = crate::EnumBitfieldStruct<u8, Icd_SPEC>;
912 impl Icd {
913 #[doc = "PHY-LSI has not detected a false carrier on the line"]
914 pub const _0: Self = Self::new(0);
915
916 #[doc = "PHY-LSI detected a false carrier on the line."]
917 pub const _1: Self = Self::new(1);
918 }
919 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
920 pub struct Mpd_SPEC;
921 pub type Mpd = crate::EnumBitfieldStruct<u8, Mpd_SPEC>;
922 impl Mpd {
923 #[doc = "Magic Packet not detected"]
924 pub const _0: Self = Self::new(0);
925
926 #[doc = "Magic Packet detected."]
927 pub const _1: Self = Self::new(1);
928 }
929 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
930 pub struct Lchng_SPEC;
931 pub type Lchng = crate::EnumBitfieldStruct<u8, Lchng_SPEC>;
932 impl Lchng {
933 #[doc = "Change in the ET0_LINKSTA signal not detected"]
934 pub const _0: Self = Self::new(0);
935
936 #[doc = "Change in the ET0_LINKSTA signal detected (high to low, or low to high)."]
937 pub const _1: Self = Self::new(1);
938 }
939 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
940 pub struct Psrto_SPEC;
941 pub type Psrto = crate::EnumBitfieldStruct<u8, Psrto_SPEC>;
942 impl Psrto {
943 #[doc = "PAUSE frame retransmit count has not reached the upper limit"]
944 pub const _0: Self = Self::new(0);
945
946 #[doc = "PAUSE frame retransmit count reached the upper limit."]
947 pub const _1: Self = Self::new(1);
948 }
949 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
950 pub struct Bfr_SPEC;
951 pub type Bfr = crate::EnumBitfieldStruct<u8, Bfr_SPEC>;
952 impl Bfr {
953 #[doc = "Continuous reception of broadcast frames not detected"]
954 pub const _0: Self = Self::new(0);
955
956 #[doc = "Continuous reception of broadcast frames detected."]
957 pub const _1: Self = Self::new(1);
958 }
959}
960#[doc(hidden)]
961#[derive(Copy, Clone, Eq, PartialEq)]
962pub struct Ecsipr_SPEC;
963impl crate::sealed::RegSpec for Ecsipr_SPEC {
964 type DataType = u32;
965}
966
967#[doc = "ETHERC Interrupt Enable Register"]
968pub type Ecsipr = crate::RegValueT<Ecsipr_SPEC>;
969
970impl Ecsipr {
971 #[doc = "False Carrier Detect Interrupt Enable"]
972 #[inline(always)]
973 pub fn icdip(
974 self,
975 ) -> crate::common::RegisterField<
976 0,
977 0x1,
978 1,
979 0,
980 ecsipr::Icdip,
981 ecsipr::Icdip,
982 Ecsipr_SPEC,
983 crate::common::RW,
984 > {
985 crate::common::RegisterField::<
986 0,
987 0x1,
988 1,
989 0,
990 ecsipr::Icdip,
991 ecsipr::Icdip,
992 Ecsipr_SPEC,
993 crate::common::RW,
994 >::from_register(self, 0)
995 }
996
997 #[doc = "Magic Packet Detect Interrupt Enable"]
998 #[inline(always)]
999 pub fn mpdip(
1000 self,
1001 ) -> crate::common::RegisterField<
1002 1,
1003 0x1,
1004 1,
1005 0,
1006 ecsipr::Mpdip,
1007 ecsipr::Mpdip,
1008 Ecsipr_SPEC,
1009 crate::common::RW,
1010 > {
1011 crate::common::RegisterField::<
1012 1,
1013 0x1,
1014 1,
1015 0,
1016 ecsipr::Mpdip,
1017 ecsipr::Mpdip,
1018 Ecsipr_SPEC,
1019 crate::common::RW,
1020 >::from_register(self, 0)
1021 }
1022
1023 #[doc = "LINK Signal Change Interrupt Enable"]
1024 #[inline(always)]
1025 pub fn lchngip(
1026 self,
1027 ) -> crate::common::RegisterField<
1028 2,
1029 0x1,
1030 1,
1031 0,
1032 ecsipr::Lchngip,
1033 ecsipr::Lchngip,
1034 Ecsipr_SPEC,
1035 crate::common::RW,
1036 > {
1037 crate::common::RegisterField::<
1038 2,
1039 0x1,
1040 1,
1041 0,
1042 ecsipr::Lchngip,
1043 ecsipr::Lchngip,
1044 Ecsipr_SPEC,
1045 crate::common::RW,
1046 >::from_register(self, 0)
1047 }
1048
1049 #[doc = "PAUSE Frame Retransmit Over Interrupt Enable"]
1050 #[inline(always)]
1051 pub fn psrtoip(
1052 self,
1053 ) -> crate::common::RegisterField<
1054 4,
1055 0x1,
1056 1,
1057 0,
1058 ecsipr::Psrtoip,
1059 ecsipr::Psrtoip,
1060 Ecsipr_SPEC,
1061 crate::common::RW,
1062 > {
1063 crate::common::RegisterField::<
1064 4,
1065 0x1,
1066 1,
1067 0,
1068 ecsipr::Psrtoip,
1069 ecsipr::Psrtoip,
1070 Ecsipr_SPEC,
1071 crate::common::RW,
1072 >::from_register(self, 0)
1073 }
1074
1075 #[doc = "Continuous Broadcast Frame Reception Interrupt Enable"]
1076 #[inline(always)]
1077 pub fn bfsipr(
1078 self,
1079 ) -> crate::common::RegisterField<
1080 5,
1081 0x1,
1082 1,
1083 0,
1084 ecsipr::Bfsipr,
1085 ecsipr::Bfsipr,
1086 Ecsipr_SPEC,
1087 crate::common::RW,
1088 > {
1089 crate::common::RegisterField::<
1090 5,
1091 0x1,
1092 1,
1093 0,
1094 ecsipr::Bfsipr,
1095 ecsipr::Bfsipr,
1096 Ecsipr_SPEC,
1097 crate::common::RW,
1098 >::from_register(self, 0)
1099 }
1100}
1101impl ::core::default::Default for Ecsipr {
1102 #[inline(always)]
1103 fn default() -> Ecsipr {
1104 <crate::RegValueT<Ecsipr_SPEC> as RegisterValue<_>>::new(0)
1105 }
1106}
1107pub mod ecsipr {
1108
1109 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1110 pub struct Icdip_SPEC;
1111 pub type Icdip = crate::EnumBitfieldStruct<u8, Icdip_SPEC>;
1112 impl Icdip {
1113 #[doc = "Disable interrupt notification"]
1114 pub const _0: Self = Self::new(0);
1115
1116 #[doc = "Enable interrupt notification."]
1117 pub const _1: Self = Self::new(1);
1118 }
1119 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1120 pub struct Mpdip_SPEC;
1121 pub type Mpdip = crate::EnumBitfieldStruct<u8, Mpdip_SPEC>;
1122 impl Mpdip {
1123 #[doc = "Disable interrupt notification"]
1124 pub const _0: Self = Self::new(0);
1125
1126 #[doc = "Enable interrupt notification."]
1127 pub const _1: Self = Self::new(1);
1128 }
1129 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1130 pub struct Lchngip_SPEC;
1131 pub type Lchngip = crate::EnumBitfieldStruct<u8, Lchngip_SPEC>;
1132 impl Lchngip {
1133 #[doc = "Disable interrupt notification"]
1134 pub const _0: Self = Self::new(0);
1135
1136 #[doc = "Enable interrupt notification."]
1137 pub const _1: Self = Self::new(1);
1138 }
1139 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1140 pub struct Psrtoip_SPEC;
1141 pub type Psrtoip = crate::EnumBitfieldStruct<u8, Psrtoip_SPEC>;
1142 impl Psrtoip {
1143 #[doc = "Disable interrupt notification"]
1144 pub const _0: Self = Self::new(0);
1145
1146 #[doc = "Enable interrupt notification."]
1147 pub const _1: Self = Self::new(1);
1148 }
1149 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1150 pub struct Bfsipr_SPEC;
1151 pub type Bfsipr = crate::EnumBitfieldStruct<u8, Bfsipr_SPEC>;
1152 impl Bfsipr {
1153 #[doc = "Disable interrupt notification"]
1154 pub const _0: Self = Self::new(0);
1155
1156 #[doc = "Enable interrupt notification."]
1157 pub const _1: Self = Self::new(1);
1158 }
1159}
1160#[doc(hidden)]
1161#[derive(Copy, Clone, Eq, PartialEq)]
1162pub struct Pir_SPEC;
1163impl crate::sealed::RegSpec for Pir_SPEC {
1164 type DataType = u32;
1165}
1166
1167#[doc = "PHY Interface Register"]
1168pub type Pir = crate::RegValueT<Pir_SPEC>;
1169
1170impl Pir {
1171 #[doc = "RMII Management Data Clock"]
1172 #[inline(always)]
1173 pub fn mdc(self) -> crate::common::RegisterFieldBool<0, 1, 0, Pir_SPEC, crate::common::RW> {
1174 crate::common::RegisterFieldBool::<0, 1, 0, Pir_SPEC, crate::common::RW>::from_register(
1175 self, 0,
1176 )
1177 }
1178
1179 #[doc = "RMII Management Mode"]
1180 #[inline(always)]
1181 pub fn mmd(
1182 self,
1183 ) -> crate::common::RegisterField<1, 0x1, 1, 0, pir::Mmd, pir::Mmd, Pir_SPEC, crate::common::RW>
1184 {
1185 crate::common::RegisterField::<1,0x1,1,0,pir::Mmd,pir::Mmd,Pir_SPEC,crate::common::RW>::from_register(self,0)
1186 }
1187
1188 #[doc = "RMII Management Data-Out"]
1189 #[inline(always)]
1190 pub fn mdo(self) -> crate::common::RegisterFieldBool<2, 1, 0, Pir_SPEC, crate::common::RW> {
1191 crate::common::RegisterFieldBool::<2, 1, 0, Pir_SPEC, crate::common::RW>::from_register(
1192 self, 0,
1193 )
1194 }
1195
1196 #[doc = "RMII Management Data-In"]
1197 #[inline(always)]
1198 pub fn mdi(self) -> crate::common::RegisterFieldBool<3, 1, 0, Pir_SPEC, crate::common::R> {
1199 crate::common::RegisterFieldBool::<3, 1, 0, Pir_SPEC, crate::common::R>::from_register(
1200 self, 0,
1201 )
1202 }
1203}
1204impl ::core::default::Default for Pir {
1205 #[inline(always)]
1206 fn default() -> Pir {
1207 <crate::RegValueT<Pir_SPEC> as RegisterValue<_>>::new(0)
1208 }
1209}
1210pub mod pir {
1211
1212 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1213 pub struct Mmd_SPEC;
1214 pub type Mmd = crate::EnumBitfieldStruct<u8, Mmd_SPEC>;
1215 impl Mmd {
1216 #[doc = "Read"]
1217 pub const _0: Self = Self::new(0);
1218
1219 #[doc = "Write."]
1220 pub const _1: Self = Self::new(1);
1221 }
1222}
1223#[doc(hidden)]
1224#[derive(Copy, Clone, Eq, PartialEq)]
1225pub struct Psr_SPEC;
1226impl crate::sealed::RegSpec for Psr_SPEC {
1227 type DataType = u32;
1228}
1229
1230#[doc = "PHY Status Register"]
1231pub type Psr = crate::RegValueT<Psr_SPEC>;
1232
1233impl Psr {
1234 #[doc = "ET0_LINKSTA Pin Status Flag"]
1235 #[inline(always)]
1236 pub fn lmon(self) -> crate::common::RegisterFieldBool<0, 1, 0, Psr_SPEC, crate::common::R> {
1237 crate::common::RegisterFieldBool::<0, 1, 0, Psr_SPEC, crate::common::R>::from_register(
1238 self, 0,
1239 )
1240 }
1241}
1242impl ::core::default::Default for Psr {
1243 #[inline(always)]
1244 fn default() -> Psr {
1245 <crate::RegValueT<Psr_SPEC> as RegisterValue<_>>::new(0)
1246 }
1247}
1248
1249#[doc(hidden)]
1250#[derive(Copy, Clone, Eq, PartialEq)]
1251pub struct Rdmlr_SPEC;
1252impl crate::sealed::RegSpec for Rdmlr_SPEC {
1253 type DataType = u32;
1254}
1255
1256#[doc = "Random Number Generation Counter Upper Limit Setting Register"]
1257pub type Rdmlr = crate::RegValueT<Rdmlr_SPEC>;
1258
1259impl Rdmlr {
1260 #[doc = "Random Number Generation Counter"]
1261 #[inline(always)]
1262 pub fn rmd(
1263 self,
1264 ) -> crate::common::RegisterField<0, 0xfffff, 1, 0, u32, u32, Rdmlr_SPEC, crate::common::RW>
1265 {
1266 crate::common::RegisterField::<0,0xfffff,1,0,u32,u32,Rdmlr_SPEC,crate::common::RW>::from_register(self,0)
1267 }
1268}
1269impl ::core::default::Default for Rdmlr {
1270 #[inline(always)]
1271 fn default() -> Rdmlr {
1272 <crate::RegValueT<Rdmlr_SPEC> as RegisterValue<_>>::new(0)
1273 }
1274}
1275
1276#[doc(hidden)]
1277#[derive(Copy, Clone, Eq, PartialEq)]
1278pub struct Ipgr_SPEC;
1279impl crate::sealed::RegSpec for Ipgr_SPEC {
1280 type DataType = u32;
1281}
1282
1283#[doc = "Interpacket Gap Register"]
1284pub type Ipgr = crate::RegValueT<Ipgr_SPEC>;
1285
1286impl Ipgr {
1287 #[inline(always)]
1288 pub fn ipg(
1289 self,
1290 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Ipgr_SPEC, crate::common::RW> {
1291 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Ipgr_SPEC,crate::common::RW>::from_register(self,0)
1292 }
1293}
1294impl ::core::default::Default for Ipgr {
1295 #[inline(always)]
1296 fn default() -> Ipgr {
1297 <crate::RegValueT<Ipgr_SPEC> as RegisterValue<_>>::new(20)
1298 }
1299}
1300
1301#[doc(hidden)]
1302#[derive(Copy, Clone, Eq, PartialEq)]
1303pub struct Apr_SPEC;
1304impl crate::sealed::RegSpec for Apr_SPEC {
1305 type DataType = u32;
1306}
1307
1308#[doc = "Automatic PAUSE Frame Register"]
1309pub type Apr = crate::RegValueT<Apr_SPEC>;
1310
1311impl Apr {
1312 #[doc = "Automatic PAUSE Time Setting"]
1313 #[inline(always)]
1314 pub fn ap(
1315 self,
1316 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Apr_SPEC, crate::common::RW> {
1317 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Apr_SPEC,crate::common::RW>::from_register(self,0)
1318 }
1319}
1320impl ::core::default::Default for Apr {
1321 #[inline(always)]
1322 fn default() -> Apr {
1323 <crate::RegValueT<Apr_SPEC> as RegisterValue<_>>::new(0)
1324 }
1325}
1326
1327#[doc(hidden)]
1328#[derive(Copy, Clone, Eq, PartialEq)]
1329pub struct Mpr_SPEC;
1330impl crate::sealed::RegSpec for Mpr_SPEC {
1331 type DataType = u32;
1332}
1333
1334#[doc = "Manual PAUSE Frame Register"]
1335pub type Mpr = crate::RegValueT<Mpr_SPEC>;
1336
1337impl Mpr {
1338 #[doc = "Manual PAUSE Time Setting"]
1339 #[inline(always)]
1340 pub fn mp(
1341 self,
1342 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Mpr_SPEC, crate::common::RW> {
1343 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Mpr_SPEC,crate::common::RW>::from_register(self,0)
1344 }
1345}
1346impl ::core::default::Default for Mpr {
1347 #[inline(always)]
1348 fn default() -> Mpr {
1349 <crate::RegValueT<Mpr_SPEC> as RegisterValue<_>>::new(0)
1350 }
1351}
1352
1353#[doc(hidden)]
1354#[derive(Copy, Clone, Eq, PartialEq)]
1355pub struct Rfcf_SPEC;
1356impl crate::sealed::RegSpec for Rfcf_SPEC {
1357 type DataType = u32;
1358}
1359
1360#[doc = "Received PAUSE Frame Counter"]
1361pub type Rfcf = crate::RegValueT<Rfcf_SPEC>;
1362
1363impl Rfcf {
1364 #[doc = "Received PAUSE Frame Count"]
1365 #[inline(always)]
1366 pub fn rpause(
1367 self,
1368 ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Rfcf_SPEC, crate::common::R> {
1369 crate::common::RegisterField::<0,0xff,1,0,u8,u8,Rfcf_SPEC,crate::common::R>::from_register(self,0)
1370 }
1371}
1372impl ::core::default::Default for Rfcf {
1373 #[inline(always)]
1374 fn default() -> Rfcf {
1375 <crate::RegValueT<Rfcf_SPEC> as RegisterValue<_>>::new(0)
1376 }
1377}
1378
1379#[doc(hidden)]
1380#[derive(Copy, Clone, Eq, PartialEq)]
1381pub struct Tpauser_SPEC;
1382impl crate::sealed::RegSpec for Tpauser_SPEC {
1383 type DataType = u32;
1384}
1385
1386#[doc = "PAUSE Frame Retransmit Count Setting Register"]
1387pub type Tpauser = crate::RegValueT<Tpauser_SPEC>;
1388
1389impl Tpauser {
1390 #[inline(always)]
1391 pub fn tpause(
1392 self,
1393 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Tpauser_SPEC, crate::common::RW>
1394 {
1395 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Tpauser_SPEC,crate::common::RW>::from_register(self,0)
1396 }
1397}
1398impl ::core::default::Default for Tpauser {
1399 #[inline(always)]
1400 fn default() -> Tpauser {
1401 <crate::RegValueT<Tpauser_SPEC> as RegisterValue<_>>::new(0)
1402 }
1403}
1404
1405#[doc(hidden)]
1406#[derive(Copy, Clone, Eq, PartialEq)]
1407pub struct Tpausecr_SPEC;
1408impl crate::sealed::RegSpec for Tpausecr_SPEC {
1409 type DataType = u32;
1410}
1411
1412#[doc = "PAUSE Frame Retransmit Counter"]
1413pub type Tpausecr = crate::RegValueT<Tpausecr_SPEC>;
1414
1415impl Tpausecr {
1416 #[doc = "PAUSE Frame Retransmit Count"]
1417 #[inline(always)]
1418 pub fn txp(
1419 self,
1420 ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Tpausecr_SPEC, crate::common::R> {
1421 crate::common::RegisterField::<0,0xff,1,0,u8,u8,Tpausecr_SPEC,crate::common::R>::from_register(self,0)
1422 }
1423}
1424impl ::core::default::Default for Tpausecr {
1425 #[inline(always)]
1426 fn default() -> Tpausecr {
1427 <crate::RegValueT<Tpausecr_SPEC> as RegisterValue<_>>::new(0)
1428 }
1429}
1430
1431#[doc(hidden)]
1432#[derive(Copy, Clone, Eq, PartialEq)]
1433pub struct Bcfrr_SPEC;
1434impl crate::sealed::RegSpec for Bcfrr_SPEC {
1435 type DataType = u32;
1436}
1437
1438#[doc = "Broadcast Frame Receive Count Setting Register"]
1439pub type Bcfrr = crate::RegValueT<Bcfrr_SPEC>;
1440
1441impl Bcfrr {
1442 #[inline(always)]
1443 pub fn bcf(
1444 self,
1445 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Bcfrr_SPEC, crate::common::RW>
1446 {
1447 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Bcfrr_SPEC,crate::common::RW>::from_register(self,0)
1448 }
1449}
1450impl ::core::default::Default for Bcfrr {
1451 #[inline(always)]
1452 fn default() -> Bcfrr {
1453 <crate::RegValueT<Bcfrr_SPEC> as RegisterValue<_>>::new(0)
1454 }
1455}
1456
1457#[doc(hidden)]
1458#[derive(Copy, Clone, Eq, PartialEq)]
1459pub struct Mahr_SPEC;
1460impl crate::sealed::RegSpec for Mahr_SPEC {
1461 type DataType = u32;
1462}
1463
1464#[doc = "MAC Address Upper Bit Register"]
1465pub type Mahr = crate::RegValueT<Mahr_SPEC>;
1466
1467impl Mahr {
1468 #[doc = "MAC Address Upper Bit"]
1469 #[inline(always)]
1470 pub fn mahr(
1471 self,
1472 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Mahr_SPEC, crate::common::RW>
1473 {
1474 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Mahr_SPEC,crate::common::RW>::from_register(self,0)
1475 }
1476}
1477impl ::core::default::Default for Mahr {
1478 #[inline(always)]
1479 fn default() -> Mahr {
1480 <crate::RegValueT<Mahr_SPEC> as RegisterValue<_>>::new(0)
1481 }
1482}
1483
1484#[doc(hidden)]
1485#[derive(Copy, Clone, Eq, PartialEq)]
1486pub struct Malr_SPEC;
1487impl crate::sealed::RegSpec for Malr_SPEC {
1488 type DataType = u32;
1489}
1490
1491#[doc = "MAC Address Lower Bit Register"]
1492pub type Malr = crate::RegValueT<Malr_SPEC>;
1493
1494impl Malr {
1495 #[doc = "MAC Address Lower Bit"]
1496 #[inline(always)]
1497 pub fn malr(
1498 self,
1499 ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Malr_SPEC, crate::common::RW> {
1500 crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Malr_SPEC,crate::common::RW>::from_register(self,0)
1501 }
1502}
1503impl ::core::default::Default for Malr {
1504 #[inline(always)]
1505 fn default() -> Malr {
1506 <crate::RegValueT<Malr_SPEC> as RegisterValue<_>>::new(0)
1507 }
1508}
1509
1510#[doc(hidden)]
1511#[derive(Copy, Clone, Eq, PartialEq)]
1512pub struct Trocr_SPEC;
1513impl crate::sealed::RegSpec for Trocr_SPEC {
1514 type DataType = u32;
1515}
1516
1517#[doc = "Transmit Retry Over Counter Register"]
1518pub type Trocr = crate::RegValueT<Trocr_SPEC>;
1519
1520impl Trocr {
1521 #[doc = "Transmit Retry Over Counter"]
1522 #[inline(always)]
1523 pub fn trocr(
1524 self,
1525 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Trocr_SPEC, crate::common::RW>
1526 {
1527 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Trocr_SPEC,crate::common::RW>::from_register(self,0)
1528 }
1529}
1530impl ::core::default::Default for Trocr {
1531 #[inline(always)]
1532 fn default() -> Trocr {
1533 <crate::RegValueT<Trocr_SPEC> as RegisterValue<_>>::new(0)
1534 }
1535}
1536
1537#[doc(hidden)]
1538#[derive(Copy, Clone, Eq, PartialEq)]
1539pub struct Cdcr_SPEC;
1540impl crate::sealed::RegSpec for Cdcr_SPEC {
1541 type DataType = u32;
1542}
1543
1544#[doc = "Late Collision Detect Counter Register"]
1545pub type Cdcr = crate::RegValueT<Cdcr_SPEC>;
1546
1547impl Cdcr {
1548 #[doc = "Late Collision Detect Counter"]
1549 #[inline(always)]
1550 pub fn cdcr(
1551 self,
1552 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Cdcr_SPEC, crate::common::RW>
1553 {
1554 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Cdcr_SPEC,crate::common::RW>::from_register(self,0)
1555 }
1556}
1557impl ::core::default::Default for Cdcr {
1558 #[inline(always)]
1559 fn default() -> Cdcr {
1560 <crate::RegValueT<Cdcr_SPEC> as RegisterValue<_>>::new(0)
1561 }
1562}
1563
1564#[doc(hidden)]
1565#[derive(Copy, Clone, Eq, PartialEq)]
1566pub struct Lccr_SPEC;
1567impl crate::sealed::RegSpec for Lccr_SPEC {
1568 type DataType = u32;
1569}
1570
1571#[doc = "Lost Carrier Counter Register"]
1572pub type Lccr = crate::RegValueT<Lccr_SPEC>;
1573
1574impl Lccr {
1575 #[doc = "Lost Carrier Counter"]
1576 #[inline(always)]
1577 pub fn lccr(
1578 self,
1579 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Lccr_SPEC, crate::common::RW>
1580 {
1581 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Lccr_SPEC,crate::common::RW>::from_register(self,0)
1582 }
1583}
1584impl ::core::default::Default for Lccr {
1585 #[inline(always)]
1586 fn default() -> Lccr {
1587 <crate::RegValueT<Lccr_SPEC> as RegisterValue<_>>::new(0)
1588 }
1589}
1590
1591#[doc(hidden)]
1592#[derive(Copy, Clone, Eq, PartialEq)]
1593pub struct Cndcr_SPEC;
1594impl crate::sealed::RegSpec for Cndcr_SPEC {
1595 type DataType = u32;
1596}
1597
1598#[doc = "Carrier Not Detect Counter Register"]
1599pub type Cndcr = crate::RegValueT<Cndcr_SPEC>;
1600
1601impl Cndcr {
1602 #[doc = "Carrier Not Detect Counter"]
1603 #[inline(always)]
1604 pub fn cndcr(
1605 self,
1606 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Cndcr_SPEC, crate::common::RW>
1607 {
1608 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Cndcr_SPEC,crate::common::RW>::from_register(self,0)
1609 }
1610}
1611impl ::core::default::Default for Cndcr {
1612 #[inline(always)]
1613 fn default() -> Cndcr {
1614 <crate::RegValueT<Cndcr_SPEC> as RegisterValue<_>>::new(0)
1615 }
1616}
1617
1618#[doc(hidden)]
1619#[derive(Copy, Clone, Eq, PartialEq)]
1620pub struct Cefcr_SPEC;
1621impl crate::sealed::RegSpec for Cefcr_SPEC {
1622 type DataType = u32;
1623}
1624
1625#[doc = "CRC Error Frame Receive Counter Register"]
1626pub type Cefcr = crate::RegValueT<Cefcr_SPEC>;
1627
1628impl Cefcr {
1629 #[doc = "CRC Error Frame Receive Counter"]
1630 #[inline(always)]
1631 pub fn cefcr(
1632 self,
1633 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Cefcr_SPEC, crate::common::RW>
1634 {
1635 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Cefcr_SPEC,crate::common::RW>::from_register(self,0)
1636 }
1637}
1638impl ::core::default::Default for Cefcr {
1639 #[inline(always)]
1640 fn default() -> Cefcr {
1641 <crate::RegValueT<Cefcr_SPEC> as RegisterValue<_>>::new(0)
1642 }
1643}
1644
1645#[doc(hidden)]
1646#[derive(Copy, Clone, Eq, PartialEq)]
1647pub struct Tsfrcr_SPEC;
1648impl crate::sealed::RegSpec for Tsfrcr_SPEC {
1649 type DataType = u32;
1650}
1651
1652#[doc = "Too-Short Frame Receive Counter Register"]
1653pub type Tsfrcr = crate::RegValueT<Tsfrcr_SPEC>;
1654
1655impl Tsfrcr {
1656 #[doc = "Too-Short Frame Receive Counter"]
1657 #[inline(always)]
1658 pub fn tsfrcr(
1659 self,
1660 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Tsfrcr_SPEC, crate::common::RW>
1661 {
1662 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Tsfrcr_SPEC,crate::common::RW>::from_register(self,0)
1663 }
1664}
1665impl ::core::default::Default for Tsfrcr {
1666 #[inline(always)]
1667 fn default() -> Tsfrcr {
1668 <crate::RegValueT<Tsfrcr_SPEC> as RegisterValue<_>>::new(0)
1669 }
1670}
1671
1672#[doc(hidden)]
1673#[derive(Copy, Clone, Eq, PartialEq)]
1674pub struct Tlfrcr_SPEC;
1675impl crate::sealed::RegSpec for Tlfrcr_SPEC {
1676 type DataType = u32;
1677}
1678
1679#[doc = "Too-Long Frame Receive Counter Register"]
1680pub type Tlfrcr = crate::RegValueT<Tlfrcr_SPEC>;
1681
1682impl Tlfrcr {
1683 #[doc = "Too-Long Frame Receive Counter"]
1684 #[inline(always)]
1685 pub fn tlfrcr(
1686 self,
1687 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Tlfrcr_SPEC, crate::common::RW>
1688 {
1689 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Tlfrcr_SPEC,crate::common::RW>::from_register(self,0)
1690 }
1691}
1692impl ::core::default::Default for Tlfrcr {
1693 #[inline(always)]
1694 fn default() -> Tlfrcr {
1695 <crate::RegValueT<Tlfrcr_SPEC> as RegisterValue<_>>::new(0)
1696 }
1697}
1698
1699#[doc(hidden)]
1700#[derive(Copy, Clone, Eq, PartialEq)]
1701pub struct Rfcr_SPEC;
1702impl crate::sealed::RegSpec for Rfcr_SPEC {
1703 type DataType = u32;
1704}
1705
1706#[doc = "Received Alignment Error Frame Counter Register"]
1707pub type Rfcr = crate::RegValueT<Rfcr_SPEC>;
1708
1709impl Rfcr {
1710 #[doc = "Received Alignment Error Frame Counter"]
1711 #[inline(always)]
1712 pub fn rfcr(
1713 self,
1714 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Rfcr_SPEC, crate::common::RW>
1715 {
1716 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Rfcr_SPEC,crate::common::RW>::from_register(self,0)
1717 }
1718}
1719impl ::core::default::Default for Rfcr {
1720 #[inline(always)]
1721 fn default() -> Rfcr {
1722 <crate::RegValueT<Rfcr_SPEC> as RegisterValue<_>>::new(0)
1723 }
1724}
1725
1726#[doc(hidden)]
1727#[derive(Copy, Clone, Eq, PartialEq)]
1728pub struct Mafcr_SPEC;
1729impl crate::sealed::RegSpec for Mafcr_SPEC {
1730 type DataType = u32;
1731}
1732
1733#[doc = "Multicast Address Frame Receive Counter Register"]
1734pub type Mafcr = crate::RegValueT<Mafcr_SPEC>;
1735
1736impl Mafcr {
1737 #[doc = "Multicast Address Frame Receive Counter"]
1738 #[inline(always)]
1739 pub fn mafcr(
1740 self,
1741 ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, u32, Mafcr_SPEC, crate::common::RW>
1742 {
1743 crate::common::RegisterField::<0,0xffffffff,1,0,u32,u32,Mafcr_SPEC,crate::common::RW>::from_register(self,0)
1744 }
1745}
1746impl ::core::default::Default for Mafcr {
1747 #[inline(always)]
1748 fn default() -> Mafcr {
1749 <crate::RegValueT<Mafcr_SPEC> as RegisterValue<_>>::new(0)
1750 }
1751}