ra4e2_pac/
canfd_b.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.30.00, with svd2pac 0.4.0 on Sat, 12 Apr 2025 22:15:35 +0000
19
20#![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"CANFD"]
28unsafe impl ::core::marker::Send for super::CanfdB {}
29unsafe impl ::core::marker::Sync for super::CanfdB {}
30impl super::CanfdB {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36    #[doc = "Channel 0 Nominal Bitrate Configuration Register"]
37    #[inline(always)]
38    pub const fn cfdc0ncfg(
39        &self,
40    ) -> &'static crate::common::Reg<self::Cfdc0Ncfg_SPEC, crate::common::RW> {
41        unsafe {
42            crate::common::Reg::<self::Cfdc0Ncfg_SPEC, crate::common::RW>::from_ptr(
43                self._svd2pac_as_ptr().add(0usize),
44            )
45        }
46    }
47
48    #[doc = "Channel 0 Control Register"]
49    #[inline(always)]
50    pub const fn cfdc0ctr(
51        &self,
52    ) -> &'static crate::common::Reg<self::Cfdc0Ctr_SPEC, crate::common::RW> {
53        unsafe {
54            crate::common::Reg::<self::Cfdc0Ctr_SPEC, crate::common::RW>::from_ptr(
55                self._svd2pac_as_ptr().add(4usize),
56            )
57        }
58    }
59
60    #[doc = "Channel 0 Status Register"]
61    #[inline(always)]
62    pub const fn cfdc0sts(
63        &self,
64    ) -> &'static crate::common::Reg<self::Cfdc0Sts_SPEC, crate::common::RW> {
65        unsafe {
66            crate::common::Reg::<self::Cfdc0Sts_SPEC, crate::common::RW>::from_ptr(
67                self._svd2pac_as_ptr().add(8usize),
68            )
69        }
70    }
71
72    #[doc = "Channel 0 Error Flag Register"]
73    #[inline(always)]
74    pub const fn cfdc0erfl(
75        &self,
76    ) -> &'static crate::common::Reg<self::Cfdc0Erfl_SPEC, crate::common::RW> {
77        unsafe {
78            crate::common::Reg::<self::Cfdc0Erfl_SPEC, crate::common::RW>::from_ptr(
79                self._svd2pac_as_ptr().add(12usize),
80            )
81        }
82    }
83
84    #[doc = "Global Configuration Register"]
85    #[inline(always)]
86    pub const fn cfdgcfg(
87        &self,
88    ) -> &'static crate::common::Reg<self::Cfdgcfg_SPEC, crate::common::RW> {
89        unsafe {
90            crate::common::Reg::<self::Cfdgcfg_SPEC, crate::common::RW>::from_ptr(
91                self._svd2pac_as_ptr().add(20usize),
92            )
93        }
94    }
95
96    #[doc = "Global Control Register"]
97    #[inline(always)]
98    pub const fn cfdgctr(
99        &self,
100    ) -> &'static crate::common::Reg<self::Cfdgctr_SPEC, crate::common::RW> {
101        unsafe {
102            crate::common::Reg::<self::Cfdgctr_SPEC, crate::common::RW>::from_ptr(
103                self._svd2pac_as_ptr().add(24usize),
104            )
105        }
106    }
107
108    #[doc = "Global Status Register"]
109    #[inline(always)]
110    pub const fn cfdgsts(
111        &self,
112    ) -> &'static crate::common::Reg<self::Cfdgsts_SPEC, crate::common::R> {
113        unsafe {
114            crate::common::Reg::<self::Cfdgsts_SPEC, crate::common::R>::from_ptr(
115                self._svd2pac_as_ptr().add(28usize),
116            )
117        }
118    }
119
120    #[doc = "Global Error Flag Register"]
121    #[inline(always)]
122    pub const fn cfdgerfl(
123        &self,
124    ) -> &'static crate::common::Reg<self::Cfdgerfl_SPEC, crate::common::RW> {
125        unsafe {
126            crate::common::Reg::<self::Cfdgerfl_SPEC, crate::common::RW>::from_ptr(
127                self._svd2pac_as_ptr().add(32usize),
128            )
129        }
130    }
131
132    #[doc = "Global Timestamp Counter Register"]
133    #[inline(always)]
134    pub const fn cfdgtsc(
135        &self,
136    ) -> &'static crate::common::Reg<self::Cfdgtsc_SPEC, crate::common::R> {
137        unsafe {
138            crate::common::Reg::<self::Cfdgtsc_SPEC, crate::common::R>::from_ptr(
139                self._svd2pac_as_ptr().add(36usize),
140            )
141        }
142    }
143
144    #[doc = "Global Acceptance Filter List Entry Control Register"]
145    #[inline(always)]
146    pub const fn cfdgaflectr(
147        &self,
148    ) -> &'static crate::common::Reg<self::Cfdgaflectr_SPEC, crate::common::RW> {
149        unsafe {
150            crate::common::Reg::<self::Cfdgaflectr_SPEC, crate::common::RW>::from_ptr(
151                self._svd2pac_as_ptr().add(40usize),
152            )
153        }
154    }
155
156    #[doc = "Global Acceptance Filter List Configuration Register"]
157    #[inline(always)]
158    pub const fn cfdgaflcfg(
159        &self,
160    ) -> &'static crate::common::Reg<self::Cfdgaflcfg_SPEC, crate::common::RW> {
161        unsafe {
162            crate::common::Reg::<self::Cfdgaflcfg_SPEC, crate::common::RW>::from_ptr(
163                self._svd2pac_as_ptr().add(44usize),
164            )
165        }
166    }
167
168    #[doc = "RX Message Buffer Number Register"]
169    #[inline(always)]
170    pub const fn cfdrmnb(
171        &self,
172    ) -> &'static crate::common::Reg<self::Cfdrmnb_SPEC, crate::common::RW> {
173        unsafe {
174            crate::common::Reg::<self::Cfdrmnb_SPEC, crate::common::RW>::from_ptr(
175                self._svd2pac_as_ptr().add(48usize),
176            )
177        }
178    }
179
180    #[doc = "RX Message Buffer New Data Register"]
181    #[inline(always)]
182    pub const fn cfdrmnd(
183        &self,
184    ) -> &'static crate::common::Reg<self::Cfdrmnd_SPEC, crate::common::RW> {
185        unsafe {
186            crate::common::Reg::<self::Cfdrmnd_SPEC, crate::common::RW>::from_ptr(
187                self._svd2pac_as_ptr().add(52usize),
188            )
189        }
190    }
191
192    #[doc = "RX Message Buffer Interrupt Enable Configuration Register"]
193    #[inline(always)]
194    pub const fn cfdrmiec(
195        &self,
196    ) -> &'static crate::common::Reg<self::Cfdrmiec_SPEC, crate::common::RW> {
197        unsafe {
198            crate::common::Reg::<self::Cfdrmiec_SPEC, crate::common::RW>::from_ptr(
199                self._svd2pac_as_ptr().add(56usize),
200            )
201        }
202    }
203
204    #[doc = "RX FIFO Configuration/Control Registers %s"]
205    #[inline(always)]
206    pub const fn cfdrfcc(
207        &self,
208    ) -> &'static crate::common::ClusterRegisterArray<
209        crate::common::Reg<self::Cfdrfcc_SPEC, crate::common::RW>,
210        2,
211        0x4,
212    > {
213        unsafe {
214            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x3cusize))
215        }
216    }
217
218    #[doc = "RX FIFO Status Registers %s"]
219    #[inline(always)]
220    pub const fn cfdrfsts(
221        &self,
222    ) -> &'static crate::common::ClusterRegisterArray<
223        crate::common::Reg<self::Cfdrfsts_SPEC, crate::common::RW>,
224        2,
225        0x4,
226    > {
227        unsafe {
228            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x44usize))
229        }
230    }
231
232    #[doc = "RX FIFO Pointer Control Registers %s"]
233    #[inline(always)]
234    pub const fn cfdrfpctr(
235        &self,
236    ) -> &'static crate::common::ClusterRegisterArray<
237        crate::common::Reg<self::Cfdrfpctr_SPEC, crate::common::W>,
238        2,
239        0x4,
240    > {
241        unsafe {
242            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x4cusize))
243        }
244    }
245
246    #[doc = "Common FIFO Configuration/Control Register"]
247    #[inline(always)]
248    pub const fn cfdcfcc(
249        &self,
250    ) -> &'static crate::common::Reg<self::Cfdcfcc_SPEC, crate::common::RW> {
251        unsafe {
252            crate::common::Reg::<self::Cfdcfcc_SPEC, crate::common::RW>::from_ptr(
253                self._svd2pac_as_ptr().add(84usize),
254            )
255        }
256    }
257
258    #[doc = "Common FIFO Status Register"]
259    #[inline(always)]
260    pub const fn cfdcfsts(
261        &self,
262    ) -> &'static crate::common::Reg<self::Cfdcfsts_SPEC, crate::common::RW> {
263        unsafe {
264            crate::common::Reg::<self::Cfdcfsts_SPEC, crate::common::RW>::from_ptr(
265                self._svd2pac_as_ptr().add(88usize),
266            )
267        }
268    }
269
270    #[doc = "Common FIFO Pointer Control Register"]
271    #[inline(always)]
272    pub const fn cfdcfpctr(
273        &self,
274    ) -> &'static crate::common::Reg<self::Cfdcfpctr_SPEC, crate::common::W> {
275        unsafe {
276            crate::common::Reg::<self::Cfdcfpctr_SPEC, crate::common::W>::from_ptr(
277                self._svd2pac_as_ptr().add(92usize),
278            )
279        }
280    }
281
282    #[doc = "FIFO Empty Status Register"]
283    #[inline(always)]
284    pub const fn cfdfests(
285        &self,
286    ) -> &'static crate::common::Reg<self::Cfdfests_SPEC, crate::common::R> {
287        unsafe {
288            crate::common::Reg::<self::Cfdfests_SPEC, crate::common::R>::from_ptr(
289                self._svd2pac_as_ptr().add(96usize),
290            )
291        }
292    }
293
294    #[doc = "FIFO Full Status Register"]
295    #[inline(always)]
296    pub const fn cfdffsts(
297        &self,
298    ) -> &'static crate::common::Reg<self::Cfdffsts_SPEC, crate::common::R> {
299        unsafe {
300            crate::common::Reg::<self::Cfdffsts_SPEC, crate::common::R>::from_ptr(
301                self._svd2pac_as_ptr().add(100usize),
302            )
303        }
304    }
305
306    #[doc = "FIFO Message Lost Status Register"]
307    #[inline(always)]
308    pub const fn cfdfmsts(
309        &self,
310    ) -> &'static crate::common::Reg<self::Cfdfmsts_SPEC, crate::common::R> {
311        unsafe {
312            crate::common::Reg::<self::Cfdfmsts_SPEC, crate::common::R>::from_ptr(
313                self._svd2pac_as_ptr().add(104usize),
314            )
315        }
316    }
317
318    #[doc = "RX FIFO Interrupt Flag Status Register"]
319    #[inline(always)]
320    pub const fn cfdrfists(
321        &self,
322    ) -> &'static crate::common::Reg<self::Cfdrfists_SPEC, crate::common::R> {
323        unsafe {
324            crate::common::Reg::<self::Cfdrfists_SPEC, crate::common::R>::from_ptr(
325                self._svd2pac_as_ptr().add(108usize),
326            )
327        }
328    }
329
330    #[doc = "TX Message Buffer Control Registers %s"]
331    #[inline(always)]
332    pub const fn cfdtmc(
333        &self,
334    ) -> &'static crate::common::ClusterRegisterArray<
335        crate::common::Reg<self::Cfdtmc_SPEC, crate::common::RW>,
336        4,
337        0x1,
338    > {
339        unsafe {
340            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x70usize))
341        }
342    }
343
344    #[doc = "TX Message Buffer Status Registers %s"]
345    #[inline(always)]
346    pub const fn cfdtmsts(
347        &self,
348    ) -> &'static crate::common::ClusterRegisterArray<
349        crate::common::Reg<self::Cfdtmsts_SPEC, crate::common::RW>,
350        4,
351        0x1,
352    > {
353        unsafe {
354            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x74usize))
355        }
356    }
357
358    #[doc = "TX Message Buffer Transmission Request Status Register"]
359    #[inline(always)]
360    pub const fn cfdtmtrsts(
361        &self,
362    ) -> &'static crate::common::Reg<self::Cfdtmtrsts_SPEC, crate::common::R> {
363        unsafe {
364            crate::common::Reg::<self::Cfdtmtrsts_SPEC, crate::common::R>::from_ptr(
365                self._svd2pac_as_ptr().add(120usize),
366            )
367        }
368    }
369
370    #[doc = "TX Message Buffer Transmission Abort Request Status Register"]
371    #[inline(always)]
372    pub const fn cfdtmtarsts(
373        &self,
374    ) -> &'static crate::common::Reg<self::Cfdtmtarsts_SPEC, crate::common::R> {
375        unsafe {
376            crate::common::Reg::<self::Cfdtmtarsts_SPEC, crate::common::R>::from_ptr(
377                self._svd2pac_as_ptr().add(124usize),
378            )
379        }
380    }
381
382    #[doc = "TX Message Buffer Transmission Completion Status Register"]
383    #[inline(always)]
384    pub const fn cfdtmtcsts(
385        &self,
386    ) -> &'static crate::common::Reg<self::Cfdtmtcsts_SPEC, crate::common::R> {
387        unsafe {
388            crate::common::Reg::<self::Cfdtmtcsts_SPEC, crate::common::R>::from_ptr(
389                self._svd2pac_as_ptr().add(128usize),
390            )
391        }
392    }
393
394    #[doc = "TX Message Buffer Transmission Abort Status Register"]
395    #[inline(always)]
396    pub const fn cfdtmtasts(
397        &self,
398    ) -> &'static crate::common::Reg<self::Cfdtmtasts_SPEC, crate::common::R> {
399        unsafe {
400            crate::common::Reg::<self::Cfdtmtasts_SPEC, crate::common::R>::from_ptr(
401                self._svd2pac_as_ptr().add(132usize),
402            )
403        }
404    }
405
406    #[doc = "TX Message Buffer Interrupt Enable Configuration Register"]
407    #[inline(always)]
408    pub const fn cfdtmiec(
409        &self,
410    ) -> &'static crate::common::Reg<self::Cfdtmiec_SPEC, crate::common::RW> {
411        unsafe {
412            crate::common::Reg::<self::Cfdtmiec_SPEC, crate::common::RW>::from_ptr(
413                self._svd2pac_as_ptr().add(136usize),
414            )
415        }
416    }
417
418    #[doc = "TX Queue Configuration/Control Register"]
419    #[inline(always)]
420    pub const fn cfdtxqcc(
421        &self,
422    ) -> &'static crate::common::Reg<self::Cfdtxqcc_SPEC, crate::common::RW> {
423        unsafe {
424            crate::common::Reg::<self::Cfdtxqcc_SPEC, crate::common::RW>::from_ptr(
425                self._svd2pac_as_ptr().add(140usize),
426            )
427        }
428    }
429
430    #[doc = "TX Queue Status Register"]
431    #[inline(always)]
432    pub const fn cfdtxqsts(
433        &self,
434    ) -> &'static crate::common::Reg<self::Cfdtxqsts_SPEC, crate::common::RW> {
435        unsafe {
436            crate::common::Reg::<self::Cfdtxqsts_SPEC, crate::common::RW>::from_ptr(
437                self._svd2pac_as_ptr().add(144usize),
438            )
439        }
440    }
441
442    #[doc = "TX Queue Pointer Control Register"]
443    #[inline(always)]
444    pub const fn cfdtxqpctr(
445        &self,
446    ) -> &'static crate::common::Reg<self::Cfdtxqpctr_SPEC, crate::common::RW> {
447        unsafe {
448            crate::common::Reg::<self::Cfdtxqpctr_SPEC, crate::common::RW>::from_ptr(
449                self._svd2pac_as_ptr().add(148usize),
450            )
451        }
452    }
453
454    #[doc = "TX History List Configuration/Control Register"]
455    #[inline(always)]
456    pub const fn cfdthlcc(
457        &self,
458    ) -> &'static crate::common::Reg<self::Cfdthlcc_SPEC, crate::common::RW> {
459        unsafe {
460            crate::common::Reg::<self::Cfdthlcc_SPEC, crate::common::RW>::from_ptr(
461                self._svd2pac_as_ptr().add(152usize),
462            )
463        }
464    }
465
466    #[doc = "TX History List Status Register"]
467    #[inline(always)]
468    pub const fn cfdthlsts(
469        &self,
470    ) -> &'static crate::common::Reg<self::Cfdthlsts_SPEC, crate::common::RW> {
471        unsafe {
472            crate::common::Reg::<self::Cfdthlsts_SPEC, crate::common::RW>::from_ptr(
473                self._svd2pac_as_ptr().add(156usize),
474            )
475        }
476    }
477
478    #[doc = "TX History List Pointer Control Register"]
479    #[inline(always)]
480    pub const fn cfdthlpctr(
481        &self,
482    ) -> &'static crate::common::Reg<self::Cfdthlpctr_SPEC, crate::common::W> {
483        unsafe {
484            crate::common::Reg::<self::Cfdthlpctr_SPEC, crate::common::W>::from_ptr(
485                self._svd2pac_as_ptr().add(160usize),
486            )
487        }
488    }
489
490    #[doc = "Global TX Interrupt Status Register"]
491    #[inline(always)]
492    pub const fn cfdgtintsts(
493        &self,
494    ) -> &'static crate::common::Reg<self::Cfdgtintsts_SPEC, crate::common::R> {
495        unsafe {
496            crate::common::Reg::<self::Cfdgtintsts_SPEC, crate::common::R>::from_ptr(
497                self._svd2pac_as_ptr().add(164usize),
498            )
499        }
500    }
501
502    #[doc = "Global Test Configuration Register"]
503    #[inline(always)]
504    pub const fn cfdgtstcfg(
505        &self,
506    ) -> &'static crate::common::Reg<self::Cfdgtstcfg_SPEC, crate::common::RW> {
507        unsafe {
508            crate::common::Reg::<self::Cfdgtstcfg_SPEC, crate::common::RW>::from_ptr(
509                self._svd2pac_as_ptr().add(168usize),
510            )
511        }
512    }
513
514    #[doc = "Global Test Control Register"]
515    #[inline(always)]
516    pub const fn cfdgtstctr(
517        &self,
518    ) -> &'static crate::common::Reg<self::Cfdgtstctr_SPEC, crate::common::RW> {
519        unsafe {
520            crate::common::Reg::<self::Cfdgtstctr_SPEC, crate::common::RW>::from_ptr(
521                self._svd2pac_as_ptr().add(172usize),
522            )
523        }
524    }
525
526    #[doc = "Global FD Configuration Register"]
527    #[inline(always)]
528    pub const fn cfdgfdcfg(
529        &self,
530    ) -> &'static crate::common::Reg<self::Cfdgfdcfg_SPEC, crate::common::RW> {
531        unsafe {
532            crate::common::Reg::<self::Cfdgfdcfg_SPEC, crate::common::RW>::from_ptr(
533                self._svd2pac_as_ptr().add(176usize),
534            )
535        }
536    }
537
538    #[doc = "Global Lock Key Register"]
539    #[inline(always)]
540    pub const fn cfdglockk(
541        &self,
542    ) -> &'static crate::common::Reg<self::Cfdglockk_SPEC, crate::common::W> {
543        unsafe {
544            crate::common::Reg::<self::Cfdglockk_SPEC, crate::common::W>::from_ptr(
545                self._svd2pac_as_ptr().add(184usize),
546            )
547        }
548    }
549
550    #[doc = "Global AFL Ignore Entry Register"]
551    #[inline(always)]
552    pub const fn cfdgaflignent(
553        &self,
554    ) -> &'static crate::common::Reg<self::Cfdgaflignent_SPEC, crate::common::RW> {
555        unsafe {
556            crate::common::Reg::<self::Cfdgaflignent_SPEC, crate::common::RW>::from_ptr(
557                self._svd2pac_as_ptr().add(192usize),
558            )
559        }
560    }
561
562    #[doc = "Global AFL Ignore Control Register"]
563    #[inline(always)]
564    pub const fn cfdgaflignctr(
565        &self,
566    ) -> &'static crate::common::Reg<self::Cfdgaflignctr_SPEC, crate::common::RW> {
567        unsafe {
568            crate::common::Reg::<self::Cfdgaflignctr_SPEC, crate::common::RW>::from_ptr(
569                self._svd2pac_as_ptr().add(196usize),
570            )
571        }
572    }
573
574    #[doc = "DMA Transfer Control Register"]
575    #[inline(always)]
576    pub const fn cfdcdtct(
577        &self,
578    ) -> &'static crate::common::Reg<self::Cfdcdtct_SPEC, crate::common::RW> {
579        unsafe {
580            crate::common::Reg::<self::Cfdcdtct_SPEC, crate::common::RW>::from_ptr(
581                self._svd2pac_as_ptr().add(200usize),
582            )
583        }
584    }
585
586    #[doc = "DMA Transfer Status Register"]
587    #[inline(always)]
588    pub const fn cfdcdtsts(
589        &self,
590    ) -> &'static crate::common::Reg<self::Cfdcdtsts_SPEC, crate::common::R> {
591        unsafe {
592            crate::common::Reg::<self::Cfdcdtsts_SPEC, crate::common::R>::from_ptr(
593                self._svd2pac_as_ptr().add(204usize),
594            )
595        }
596    }
597
598    #[doc = "Global SW reset Register"]
599    #[inline(always)]
600    pub const fn cfdgrstc(
601        &self,
602    ) -> &'static crate::common::Reg<self::Cfdgrstc_SPEC, crate::common::RW> {
603        unsafe {
604            crate::common::Reg::<self::Cfdgrstc_SPEC, crate::common::RW>::from_ptr(
605                self._svd2pac_as_ptr().add(216usize),
606            )
607        }
608    }
609
610    #[doc = "Channel 0 Data Bitrate Configuration Register"]
611    #[inline(always)]
612    pub const fn cfdc0dcfg(
613        &self,
614    ) -> &'static crate::common::Reg<self::Cfdc0Dcfg_SPEC, crate::common::RW> {
615        unsafe {
616            crate::common::Reg::<self::Cfdc0Dcfg_SPEC, crate::common::RW>::from_ptr(
617                self._svd2pac_as_ptr().add(256usize),
618            )
619        }
620    }
621
622    #[doc = "Channel 0 CANFD Configuration Register"]
623    #[inline(always)]
624    pub const fn cfdc0fdcfg(
625        &self,
626    ) -> &'static crate::common::Reg<self::Cfdc0Fdcfg_SPEC, crate::common::RW> {
627        unsafe {
628            crate::common::Reg::<self::Cfdc0Fdcfg_SPEC, crate::common::RW>::from_ptr(
629                self._svd2pac_as_ptr().add(260usize),
630            )
631        }
632    }
633
634    #[doc = "Channel 0 CANFD Control Register"]
635    #[inline(always)]
636    pub const fn cfdc0fdctr(
637        &self,
638    ) -> &'static crate::common::Reg<self::Cfdc0Fdctr_SPEC, crate::common::RW> {
639        unsafe {
640            crate::common::Reg::<self::Cfdc0Fdctr_SPEC, crate::common::RW>::from_ptr(
641                self._svd2pac_as_ptr().add(264usize),
642            )
643        }
644    }
645
646    #[doc = "Channel 0 CANFD Status Register"]
647    #[inline(always)]
648    pub const fn cfdc0fdsts(
649        &self,
650    ) -> &'static crate::common::Reg<self::Cfdc0Fdsts_SPEC, crate::common::RW> {
651        unsafe {
652            crate::common::Reg::<self::Cfdc0Fdsts_SPEC, crate::common::RW>::from_ptr(
653                self._svd2pac_as_ptr().add(268usize),
654            )
655        }
656    }
657
658    #[doc = "Channel 0 CANFD CRC Register"]
659    #[inline(always)]
660    pub const fn cfdc0fdcrc(
661        &self,
662    ) -> &'static crate::common::Reg<self::Cfdc0Fdcrc_SPEC, crate::common::RW> {
663        unsafe {
664            crate::common::Reg::<self::Cfdc0Fdcrc_SPEC, crate::common::RW>::from_ptr(
665                self._svd2pac_as_ptr().add(272usize),
666            )
667        }
668    }
669
670    #[doc = "Global Acceptance Filter List ID Registers"]
671    #[inline(always)]
672    pub const fn cfdgaflid(
673        &self,
674    ) -> &'static crate::common::ClusterRegisterArray<
675        crate::common::Reg<self::Cfdgaflid_SPEC, crate::common::RW>,
676        16,
677        0x10,
678    > {
679        unsafe {
680            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x120usize))
681        }
682    }
683
684    #[doc = "Global Acceptance Filter List Mask Registers"]
685    #[inline(always)]
686    pub const fn cfdgaflm(
687        &self,
688    ) -> &'static crate::common::ClusterRegisterArray<
689        crate::common::Reg<self::Cfdgaflm_SPEC, crate::common::RW>,
690        16,
691        0x10,
692    > {
693        unsafe {
694            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x124usize))
695        }
696    }
697
698    #[doc = "Global Acceptance Filter List Pointer 0 Registers"]
699    #[inline(always)]
700    pub const fn cfdgaflp0(
701        &self,
702    ) -> &'static crate::common::ClusterRegisterArray<
703        crate::common::Reg<self::Cfdgaflp0_SPEC, crate::common::RW>,
704        16,
705        0x10,
706    > {
707        unsafe {
708            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x128usize))
709        }
710    }
711
712    #[doc = "Global Acceptance Filter List Pointer 1 Registers"]
713    #[inline(always)]
714    pub const fn cfdgaflp1(
715        &self,
716    ) -> &'static crate::common::ClusterRegisterArray<
717        crate::common::Reg<self::Cfdgaflp1_SPEC, crate::common::RW>,
718        16,
719        0x10,
720    > {
721        unsafe {
722            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x12cusize))
723        }
724    }
725
726    #[doc = "RAM Test Page Access Registers %s"]
727    #[inline(always)]
728    pub const fn cfdrpgacc(
729        &self,
730    ) -> &'static crate::common::ClusterRegisterArray<
731        crate::common::Reg<self::Cfdrpgacc_SPEC, crate::common::RW>,
732        64,
733        0x4,
734    > {
735        unsafe {
736            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x280usize))
737        }
738    }
739
740    #[doc = "RX FIFO Access ID Register %s"]
741    #[inline(always)]
742    pub const fn cfdrfid(
743        &self,
744    ) -> &'static crate::common::ClusterRegisterArray<
745        crate::common::Reg<self::Cfdrfid_SPEC, crate::common::R>,
746        2,
747        0x4c,
748    > {
749        unsafe {
750            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x520usize))
751        }
752    }
753
754    #[doc = "RX FIFO Access Pointer Register %s"]
755    #[inline(always)]
756    pub const fn cfdrfptr(
757        &self,
758    ) -> &'static crate::common::ClusterRegisterArray<
759        crate::common::Reg<self::Cfdrfptr_SPEC, crate::common::R>,
760        2,
761        0x4c,
762    > {
763        unsafe {
764            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x524usize))
765        }
766    }
767
768    #[doc = "RX FIFO Access CANFD Status Register %s"]
769    #[inline(always)]
770    pub const fn cfdrffdsts(
771        &self,
772    ) -> &'static crate::common::ClusterRegisterArray<
773        crate::common::Reg<self::Cfdrffdsts_SPEC, crate::common::R>,
774        2,
775        0x4c,
776    > {
777        unsafe {
778            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x528usize))
779        }
780    }
781
782    #[doc = "RX FIFO Access Data Field 0 Register %s"]
783    #[inline(always)]
784    pub const fn cfdrfdf_0(
785        &self,
786    ) -> &'static crate::common::ClusterRegisterArray<
787        crate::common::Reg<self::Cfdrfdf0_SPEC, crate::common::R>,
788        2,
789        0x4c,
790    > {
791        unsafe {
792            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x52cusize))
793        }
794    }
795
796    #[doc = "RX FIFO Access Data Field 1 Register %s"]
797    #[inline(always)]
798    pub const fn cfdrfdf_1(
799        &self,
800    ) -> &'static crate::common::ClusterRegisterArray<
801        crate::common::Reg<self::Cfdrfdf1_SPEC, crate::common::R>,
802        2,
803        0x4c,
804    > {
805        unsafe {
806            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x530usize))
807        }
808    }
809
810    #[doc = "RX FIFO Access Data Field 2 Register %s"]
811    #[inline(always)]
812    pub const fn cfdrfdf_2(
813        &self,
814    ) -> &'static crate::common::ClusterRegisterArray<
815        crate::common::Reg<self::Cfdrfdf2_SPEC, crate::common::R>,
816        2,
817        0x4c,
818    > {
819        unsafe {
820            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x534usize))
821        }
822    }
823
824    #[doc = "RX FIFO Access Data Field 3 Register %s"]
825    #[inline(always)]
826    pub const fn cfdrfdf_3(
827        &self,
828    ) -> &'static crate::common::ClusterRegisterArray<
829        crate::common::Reg<self::Cfdrfdf3_SPEC, crate::common::R>,
830        2,
831        0x4c,
832    > {
833        unsafe {
834            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x538usize))
835        }
836    }
837
838    #[doc = "RX FIFO Access Data Field 4 Register %s"]
839    #[inline(always)]
840    pub const fn cfdrfdf_4(
841        &self,
842    ) -> &'static crate::common::ClusterRegisterArray<
843        crate::common::Reg<self::Cfdrfdf4_SPEC, crate::common::R>,
844        2,
845        0x4c,
846    > {
847        unsafe {
848            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x53cusize))
849        }
850    }
851
852    #[doc = "RX FIFO Access Data Field 5 Register %s"]
853    #[inline(always)]
854    pub const fn cfdrfdf_5(
855        &self,
856    ) -> &'static crate::common::ClusterRegisterArray<
857        crate::common::Reg<self::Cfdrfdf5_SPEC, crate::common::R>,
858        2,
859        0x4c,
860    > {
861        unsafe {
862            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x540usize))
863        }
864    }
865
866    #[doc = "RX FIFO Access Data Field 6 Register %s"]
867    #[inline(always)]
868    pub const fn cfdrfdf_6(
869        &self,
870    ) -> &'static crate::common::ClusterRegisterArray<
871        crate::common::Reg<self::Cfdrfdf6_SPEC, crate::common::R>,
872        2,
873        0x4c,
874    > {
875        unsafe {
876            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x544usize))
877        }
878    }
879
880    #[doc = "RX FIFO Access Data Field 7 Register %s"]
881    #[inline(always)]
882    pub const fn cfdrfdf_7(
883        &self,
884    ) -> &'static crate::common::ClusterRegisterArray<
885        crate::common::Reg<self::Cfdrfdf7_SPEC, crate::common::R>,
886        2,
887        0x4c,
888    > {
889        unsafe {
890            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x548usize))
891        }
892    }
893
894    #[doc = "RX FIFO Access Data Field 8 Register %s"]
895    #[inline(always)]
896    pub const fn cfdrfdf_8(
897        &self,
898    ) -> &'static crate::common::ClusterRegisterArray<
899        crate::common::Reg<self::Cfdrfdf8_SPEC, crate::common::R>,
900        2,
901        0x4c,
902    > {
903        unsafe {
904            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x54cusize))
905        }
906    }
907
908    #[doc = "RX FIFO Access Data Field 9 Register %s"]
909    #[inline(always)]
910    pub const fn cfdrfdf_9(
911        &self,
912    ) -> &'static crate::common::ClusterRegisterArray<
913        crate::common::Reg<self::Cfdrfdf9_SPEC, crate::common::R>,
914        2,
915        0x4c,
916    > {
917        unsafe {
918            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x550usize))
919        }
920    }
921
922    #[doc = "RX FIFO Access Data Field 10 Register %s"]
923    #[inline(always)]
924    pub const fn cfdrfdf_10(
925        &self,
926    ) -> &'static crate::common::ClusterRegisterArray<
927        crate::common::Reg<self::Cfdrfdf10_SPEC, crate::common::R>,
928        2,
929        0x4c,
930    > {
931        unsafe {
932            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x554usize))
933        }
934    }
935
936    #[doc = "RX FIFO Access Data Field 11 Register %s"]
937    #[inline(always)]
938    pub const fn cfdrfdf_11(
939        &self,
940    ) -> &'static crate::common::ClusterRegisterArray<
941        crate::common::Reg<self::Cfdrfdf11_SPEC, crate::common::R>,
942        2,
943        0x4c,
944    > {
945        unsafe {
946            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x558usize))
947        }
948    }
949
950    #[doc = "RX FIFO Access Data Field 12 Register %s"]
951    #[inline(always)]
952    pub const fn cfdrfdf_12(
953        &self,
954    ) -> &'static crate::common::ClusterRegisterArray<
955        crate::common::Reg<self::Cfdrfdf12_SPEC, crate::common::R>,
956        2,
957        0x4c,
958    > {
959        unsafe {
960            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x55cusize))
961        }
962    }
963
964    #[doc = "RX FIFO Access Data Field 13 Register %s"]
965    #[inline(always)]
966    pub const fn cfdrfdf_13(
967        &self,
968    ) -> &'static crate::common::ClusterRegisterArray<
969        crate::common::Reg<self::Cfdrfdf13_SPEC, crate::common::R>,
970        2,
971        0x4c,
972    > {
973        unsafe {
974            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x560usize))
975        }
976    }
977
978    #[doc = "RX FIFO Access Data Field 14 Register %s"]
979    #[inline(always)]
980    pub const fn cfdrfdf_14(
981        &self,
982    ) -> &'static crate::common::ClusterRegisterArray<
983        crate::common::Reg<self::Cfdrfdf14_SPEC, crate::common::R>,
984        2,
985        0x4c,
986    > {
987        unsafe {
988            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x564usize))
989        }
990    }
991
992    #[doc = "RX FIFO Access Data Field 15 Register %s"]
993    #[inline(always)]
994    pub const fn cfdrfdf_15(
995        &self,
996    ) -> &'static crate::common::ClusterRegisterArray<
997        crate::common::Reg<self::Cfdrfdf15_SPEC, crate::common::R>,
998        2,
999        0x4c,
1000    > {
1001        unsafe {
1002            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x568usize))
1003        }
1004    }
1005
1006    #[doc = "Common FIFO Access ID Register"]
1007    #[inline(always)]
1008    pub const fn cfdcfid(
1009        &self,
1010    ) -> &'static crate::common::Reg<self::Cfdcfid_SPEC, crate::common::RW> {
1011        unsafe {
1012            crate::common::Reg::<self::Cfdcfid_SPEC, crate::common::RW>::from_ptr(
1013                self._svd2pac_as_ptr().add(1464usize),
1014            )
1015        }
1016    }
1017
1018    #[doc = "Common FIFO Access Pointer Register"]
1019    #[inline(always)]
1020    pub const fn cfdcfptr(
1021        &self,
1022    ) -> &'static crate::common::Reg<self::Cfdcfptr_SPEC, crate::common::RW> {
1023        unsafe {
1024            crate::common::Reg::<self::Cfdcfptr_SPEC, crate::common::RW>::from_ptr(
1025                self._svd2pac_as_ptr().add(1468usize),
1026            )
1027        }
1028    }
1029
1030    #[doc = "Common FIFO Access CANFD Control/Status Register"]
1031    #[inline(always)]
1032    pub const fn cfdcffdcsts(
1033        &self,
1034    ) -> &'static crate::common::Reg<self::Cfdcffdcsts_SPEC, crate::common::RW> {
1035        unsafe {
1036            crate::common::Reg::<self::Cfdcffdcsts_SPEC, crate::common::RW>::from_ptr(
1037                self._svd2pac_as_ptr().add(1472usize),
1038            )
1039        }
1040    }
1041
1042    #[doc = "Common FIFO Access Data Field %s Registers"]
1043    #[inline(always)]
1044    pub const fn cfdcfdf(
1045        &self,
1046    ) -> &'static crate::common::ClusterRegisterArray<
1047        crate::common::Reg<self::Cfdcfdf_SPEC, crate::common::RW>,
1048        16,
1049        0x4,
1050    > {
1051        unsafe {
1052            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x5c4usize))
1053        }
1054    }
1055
1056    #[doc = "TX Message Buffer ID Registers"]
1057    #[inline(always)]
1058    pub const fn cfdtmid(
1059        &self,
1060    ) -> &'static crate::common::ClusterRegisterArray<
1061        crate::common::Reg<self::Cfdtmid_SPEC, crate::common::RW>,
1062        4,
1063        0x4c,
1064    > {
1065        unsafe {
1066            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x604usize))
1067        }
1068    }
1069
1070    #[doc = "TX Message Buffer Pointer Register"]
1071    #[inline(always)]
1072    pub const fn cfdtmptr(
1073        &self,
1074    ) -> &'static crate::common::ClusterRegisterArray<
1075        crate::common::Reg<self::Cfdtmptr_SPEC, crate::common::RW>,
1076        4,
1077        0x4c,
1078    > {
1079        unsafe {
1080            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x608usize))
1081        }
1082    }
1083
1084    #[doc = "TX Message Buffer CANFD Control Register"]
1085    #[inline(always)]
1086    pub const fn cfdtmfdctr(
1087        &self,
1088    ) -> &'static crate::common::ClusterRegisterArray<
1089        crate::common::Reg<self::Cfdtmfdctr_SPEC, crate::common::RW>,
1090        4,
1091        0x4c,
1092    > {
1093        unsafe {
1094            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x60cusize))
1095        }
1096    }
1097
1098    #[doc = "TX Message Buffer Data Field Register"]
1099    #[inline(always)]
1100    pub const fn cfdtmdf_0(
1101        &self,
1102    ) -> &'static crate::common::ClusterRegisterArray<
1103        crate::common::Reg<self::Cfdtmdf0_SPEC, crate::common::RW>,
1104        4,
1105        0x4c,
1106    > {
1107        unsafe {
1108            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x610usize))
1109        }
1110    }
1111
1112    #[doc = "TX Message Buffer Data Field Register"]
1113    #[inline(always)]
1114    pub const fn cfdtmdf_1(
1115        &self,
1116    ) -> &'static crate::common::ClusterRegisterArray<
1117        crate::common::Reg<self::Cfdtmdf1_SPEC, crate::common::RW>,
1118        4,
1119        0x4c,
1120    > {
1121        unsafe {
1122            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x614usize))
1123        }
1124    }
1125
1126    #[doc = "TX Message Buffer Data Field Register"]
1127    #[inline(always)]
1128    pub const fn cfdtmdf_2(
1129        &self,
1130    ) -> &'static crate::common::ClusterRegisterArray<
1131        crate::common::Reg<self::Cfdtmdf2_SPEC, crate::common::RW>,
1132        4,
1133        0x4c,
1134    > {
1135        unsafe {
1136            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x618usize))
1137        }
1138    }
1139
1140    #[doc = "TX Message Buffer Data Field Register"]
1141    #[inline(always)]
1142    pub const fn cfdtmdf_3(
1143        &self,
1144    ) -> &'static crate::common::ClusterRegisterArray<
1145        crate::common::Reg<self::Cfdtmdf3_SPEC, crate::common::RW>,
1146        4,
1147        0x4c,
1148    > {
1149        unsafe {
1150            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x61cusize))
1151        }
1152    }
1153
1154    #[doc = "TX Message Buffer Data Field Register"]
1155    #[inline(always)]
1156    pub const fn cfdtmdf_4(
1157        &self,
1158    ) -> &'static crate::common::ClusterRegisterArray<
1159        crate::common::Reg<self::Cfdtmdf4_SPEC, crate::common::RW>,
1160        4,
1161        0x4c,
1162    > {
1163        unsafe {
1164            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x620usize))
1165        }
1166    }
1167
1168    #[doc = "TX Message Buffer Data Field Register"]
1169    #[inline(always)]
1170    pub const fn cfdtmdf_5(
1171        &self,
1172    ) -> &'static crate::common::ClusterRegisterArray<
1173        crate::common::Reg<self::Cfdtmdf5_SPEC, crate::common::RW>,
1174        4,
1175        0x4c,
1176    > {
1177        unsafe {
1178            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x624usize))
1179        }
1180    }
1181
1182    #[doc = "TX Message Buffer Data Field Register"]
1183    #[inline(always)]
1184    pub const fn cfdtmdf_6(
1185        &self,
1186    ) -> &'static crate::common::ClusterRegisterArray<
1187        crate::common::Reg<self::Cfdtmdf6_SPEC, crate::common::RW>,
1188        4,
1189        0x4c,
1190    > {
1191        unsafe {
1192            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x628usize))
1193        }
1194    }
1195
1196    #[doc = "TX Message Buffer Data Field Register"]
1197    #[inline(always)]
1198    pub const fn cfdtmdf_7(
1199        &self,
1200    ) -> &'static crate::common::ClusterRegisterArray<
1201        crate::common::Reg<self::Cfdtmdf7_SPEC, crate::common::RW>,
1202        4,
1203        0x4c,
1204    > {
1205        unsafe {
1206            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x62cusize))
1207        }
1208    }
1209
1210    #[doc = "TX Message Buffer Data Field Register"]
1211    #[inline(always)]
1212    pub const fn cfdtmdf_8(
1213        &self,
1214    ) -> &'static crate::common::ClusterRegisterArray<
1215        crate::common::Reg<self::Cfdtmdf8_SPEC, crate::common::RW>,
1216        4,
1217        0x4c,
1218    > {
1219        unsafe {
1220            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x630usize))
1221        }
1222    }
1223
1224    #[doc = "TX Message Buffer Data Field Register"]
1225    #[inline(always)]
1226    pub const fn cfdtmdf_9(
1227        &self,
1228    ) -> &'static crate::common::ClusterRegisterArray<
1229        crate::common::Reg<self::Cfdtmdf9_SPEC, crate::common::RW>,
1230        4,
1231        0x4c,
1232    > {
1233        unsafe {
1234            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x634usize))
1235        }
1236    }
1237
1238    #[doc = "TX Message Buffer Data Field Register"]
1239    #[inline(always)]
1240    pub const fn cfdtmdf_10(
1241        &self,
1242    ) -> &'static crate::common::ClusterRegisterArray<
1243        crate::common::Reg<self::Cfdtmdf10_SPEC, crate::common::RW>,
1244        4,
1245        0x4c,
1246    > {
1247        unsafe {
1248            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x638usize))
1249        }
1250    }
1251
1252    #[doc = "TX Message Buffer Data Field Register"]
1253    #[inline(always)]
1254    pub const fn cfdtmdf_11(
1255        &self,
1256    ) -> &'static crate::common::ClusterRegisterArray<
1257        crate::common::Reg<self::Cfdtmdf11_SPEC, crate::common::RW>,
1258        4,
1259        0x4c,
1260    > {
1261        unsafe {
1262            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x63cusize))
1263        }
1264    }
1265
1266    #[doc = "TX Message Buffer Data Field Register"]
1267    #[inline(always)]
1268    pub const fn cfdtmdf_12(
1269        &self,
1270    ) -> &'static crate::common::ClusterRegisterArray<
1271        crate::common::Reg<self::Cfdtmdf12_SPEC, crate::common::RW>,
1272        4,
1273        0x4c,
1274    > {
1275        unsafe {
1276            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x640usize))
1277        }
1278    }
1279
1280    #[doc = "TX Message Buffer Data Field Register"]
1281    #[inline(always)]
1282    pub const fn cfdtmdf_13(
1283        &self,
1284    ) -> &'static crate::common::ClusterRegisterArray<
1285        crate::common::Reg<self::Cfdtmdf13_SPEC, crate::common::RW>,
1286        4,
1287        0x4c,
1288    > {
1289        unsafe {
1290            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x644usize))
1291        }
1292    }
1293
1294    #[doc = "TX Message Buffer Data Field Register"]
1295    #[inline(always)]
1296    pub const fn cfdtmdf_14(
1297        &self,
1298    ) -> &'static crate::common::ClusterRegisterArray<
1299        crate::common::Reg<self::Cfdtmdf14_SPEC, crate::common::RW>,
1300        4,
1301        0x4c,
1302    > {
1303        unsafe {
1304            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x648usize))
1305        }
1306    }
1307
1308    #[doc = "TX Message Buffer Data Field Register"]
1309    #[inline(always)]
1310    pub const fn cfdtmdf_15(
1311        &self,
1312    ) -> &'static crate::common::ClusterRegisterArray<
1313        crate::common::Reg<self::Cfdtmdf15_SPEC, crate::common::RW>,
1314        4,
1315        0x4c,
1316    > {
1317        unsafe {
1318            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x64cusize))
1319        }
1320    }
1321
1322    #[doc = "TX History List Access Register 0"]
1323    #[inline(always)]
1324    pub const fn cfdthlacc0(
1325        &self,
1326    ) -> &'static crate::common::Reg<self::Cfdthlacc0_SPEC, crate::common::R> {
1327        unsafe {
1328            crate::common::Reg::<self::Cfdthlacc0_SPEC, crate::common::R>::from_ptr(
1329                self._svd2pac_as_ptr().add(1856usize),
1330            )
1331        }
1332    }
1333
1334    #[doc = "TX History List Access Register 1"]
1335    #[inline(always)]
1336    pub const fn cfdthlacc1(
1337        &self,
1338    ) -> &'static crate::common::Reg<self::Cfdthlacc1_SPEC, crate::common::R> {
1339        unsafe {
1340            crate::common::Reg::<self::Cfdthlacc1_SPEC, crate::common::R>::from_ptr(
1341                self._svd2pac_as_ptr().add(1860usize),
1342            )
1343        }
1344    }
1345
1346    #[doc = "RX Message Buffer ID Registers"]
1347    #[inline(always)]
1348    pub const fn cfdrmid(
1349        &self,
1350    ) -> &'static crate::common::ClusterRegisterArray<
1351        crate::common::Reg<self::Cfdrmid_SPEC, crate::common::R>,
1352        8,
1353        0x4c,
1354    > {
1355        unsafe {
1356            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1520usize))
1357        }
1358    }
1359
1360    #[doc = "RX Message Buffer Pointer Registers"]
1361    #[inline(always)]
1362    pub const fn cfdrmptr(
1363        &self,
1364    ) -> &'static crate::common::ClusterRegisterArray<
1365        crate::common::Reg<self::Cfdrmptr_SPEC, crate::common::R>,
1366        8,
1367        0x4c,
1368    > {
1369        unsafe {
1370            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1524usize))
1371        }
1372    }
1373
1374    #[doc = "RX Message Buffer CANFD Status Registers"]
1375    #[inline(always)]
1376    pub const fn cfdrmfdsts(
1377        &self,
1378    ) -> &'static crate::common::ClusterRegisterArray<
1379        crate::common::Reg<self::Cfdrmfdsts_SPEC, crate::common::R>,
1380        8,
1381        0x4c,
1382    > {
1383        unsafe {
1384            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1528usize))
1385        }
1386    }
1387
1388    #[doc = "RX Message Buffer Data Field 0 Registers"]
1389    #[inline(always)]
1390    pub const fn cfdrmdf_0(
1391        &self,
1392    ) -> &'static crate::common::ClusterRegisterArray<
1393        crate::common::Reg<self::Cfdrmdf0_SPEC, crate::common::R>,
1394        8,
1395        0x4c,
1396    > {
1397        unsafe {
1398            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x152cusize))
1399        }
1400    }
1401
1402    #[doc = "RX Message Buffer Data Field 1 Registers"]
1403    #[inline(always)]
1404    pub const fn cfdrmdf_1(
1405        &self,
1406    ) -> &'static crate::common::ClusterRegisterArray<
1407        crate::common::Reg<self::Cfdrmdf1_SPEC, crate::common::R>,
1408        8,
1409        0x4c,
1410    > {
1411        unsafe {
1412            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1530usize))
1413        }
1414    }
1415
1416    #[doc = "RX Message Buffer Data Field 2 Registers"]
1417    #[inline(always)]
1418    pub const fn cfdrmdf_2(
1419        &self,
1420    ) -> &'static crate::common::ClusterRegisterArray<
1421        crate::common::Reg<self::Cfdrmdf2_SPEC, crate::common::R>,
1422        8,
1423        0x4c,
1424    > {
1425        unsafe {
1426            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1534usize))
1427        }
1428    }
1429
1430    #[doc = "RX Message Buffer Data Field 3 Registers"]
1431    #[inline(always)]
1432    pub const fn cfdrmdf_3(
1433        &self,
1434    ) -> &'static crate::common::ClusterRegisterArray<
1435        crate::common::Reg<self::Cfdrmdf3_SPEC, crate::common::R>,
1436        8,
1437        0x4c,
1438    > {
1439        unsafe {
1440            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1538usize))
1441        }
1442    }
1443
1444    #[doc = "RX Message Buffer Data Field 4 Registers"]
1445    #[inline(always)]
1446    pub const fn cfdrmdf_4(
1447        &self,
1448    ) -> &'static crate::common::ClusterRegisterArray<
1449        crate::common::Reg<self::Cfdrmdf4_SPEC, crate::common::R>,
1450        8,
1451        0x4c,
1452    > {
1453        unsafe {
1454            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x153cusize))
1455        }
1456    }
1457
1458    #[doc = "RX Message Buffer Data Field 5 Registers"]
1459    #[inline(always)]
1460    pub const fn cfdrmdf_5(
1461        &self,
1462    ) -> &'static crate::common::ClusterRegisterArray<
1463        crate::common::Reg<self::Cfdrmdf5_SPEC, crate::common::R>,
1464        8,
1465        0x4c,
1466    > {
1467        unsafe {
1468            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1540usize))
1469        }
1470    }
1471
1472    #[doc = "RX Message Buffer Data Field 6 Registers"]
1473    #[inline(always)]
1474    pub const fn cfdrmdf_6(
1475        &self,
1476    ) -> &'static crate::common::ClusterRegisterArray<
1477        crate::common::Reg<self::Cfdrmdf6_SPEC, crate::common::R>,
1478        8,
1479        0x4c,
1480    > {
1481        unsafe {
1482            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1544usize))
1483        }
1484    }
1485
1486    #[doc = "RX Message Buffer Data Field 7 Registers"]
1487    #[inline(always)]
1488    pub const fn cfdrmdf_7(
1489        &self,
1490    ) -> &'static crate::common::ClusterRegisterArray<
1491        crate::common::Reg<self::Cfdrmdf7_SPEC, crate::common::R>,
1492        8,
1493        0x4c,
1494    > {
1495        unsafe {
1496            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1548usize))
1497        }
1498    }
1499
1500    #[doc = "RX Message Buffer Data Field 8 Registers"]
1501    #[inline(always)]
1502    pub const fn cfdrmdf_8(
1503        &self,
1504    ) -> &'static crate::common::ClusterRegisterArray<
1505        crate::common::Reg<self::Cfdrmdf8_SPEC, crate::common::R>,
1506        8,
1507        0x4c,
1508    > {
1509        unsafe {
1510            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x154cusize))
1511        }
1512    }
1513
1514    #[doc = "RX Message Buffer Data Field 9 Registers"]
1515    #[inline(always)]
1516    pub const fn cfdrmdf_9(
1517        &self,
1518    ) -> &'static crate::common::ClusterRegisterArray<
1519        crate::common::Reg<self::Cfdrmdf9_SPEC, crate::common::R>,
1520        8,
1521        0x4c,
1522    > {
1523        unsafe {
1524            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1550usize))
1525        }
1526    }
1527
1528    #[doc = "RX Message Buffer Data Field 10 Registers"]
1529    #[inline(always)]
1530    pub const fn cfdrmdf_10(
1531        &self,
1532    ) -> &'static crate::common::ClusterRegisterArray<
1533        crate::common::Reg<self::Cfdrmdf10_SPEC, crate::common::R>,
1534        8,
1535        0x4c,
1536    > {
1537        unsafe {
1538            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1554usize))
1539        }
1540    }
1541
1542    #[doc = "RX Message Buffer Data Field 11 Registers"]
1543    #[inline(always)]
1544    pub const fn cfdrmdf_11(
1545        &self,
1546    ) -> &'static crate::common::ClusterRegisterArray<
1547        crate::common::Reg<self::Cfdrmdf11_SPEC, crate::common::R>,
1548        8,
1549        0x4c,
1550    > {
1551        unsafe {
1552            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1558usize))
1553        }
1554    }
1555
1556    #[doc = "RX Message Buffer Data Field 12 Registers"]
1557    #[inline(always)]
1558    pub const fn cfdrmdf_12(
1559        &self,
1560    ) -> &'static crate::common::ClusterRegisterArray<
1561        crate::common::Reg<self::Cfdrmdf12_SPEC, crate::common::R>,
1562        8,
1563        0x4c,
1564    > {
1565        unsafe {
1566            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x155cusize))
1567        }
1568    }
1569
1570    #[doc = "RX Message Buffer Data Field 13 Registers"]
1571    #[inline(always)]
1572    pub const fn cfdrmdf_13(
1573        &self,
1574    ) -> &'static crate::common::ClusterRegisterArray<
1575        crate::common::Reg<self::Cfdrmdf13_SPEC, crate::common::R>,
1576        8,
1577        0x4c,
1578    > {
1579        unsafe {
1580            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1560usize))
1581        }
1582    }
1583
1584    #[doc = "RX Message Buffer Data Field 14 Registers"]
1585    #[inline(always)]
1586    pub const fn cfdrmdf_14(
1587        &self,
1588    ) -> &'static crate::common::ClusterRegisterArray<
1589        crate::common::Reg<self::Cfdrmdf14_SPEC, crate::common::R>,
1590        8,
1591        0x4c,
1592    > {
1593        unsafe {
1594            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1564usize))
1595        }
1596    }
1597
1598    #[doc = "RX Message Buffer Data Field 15 Registers"]
1599    #[inline(always)]
1600    pub const fn cfdrmdf_15(
1601        &self,
1602    ) -> &'static crate::common::ClusterRegisterArray<
1603        crate::common::Reg<self::Cfdrmdf15_SPEC, crate::common::R>,
1604        8,
1605        0x4c,
1606    > {
1607        unsafe {
1608            crate::common::ClusterRegisterArray::from_ptr(self._svd2pac_as_ptr().add(0x1568usize))
1609        }
1610    }
1611}
1612#[doc(hidden)]
1613#[derive(Copy, Clone, Eq, PartialEq)]
1614pub struct Cfdc0Ncfg_SPEC;
1615impl crate::sealed::RegSpec for Cfdc0Ncfg_SPEC {
1616    type DataType = u32;
1617}
1618#[doc = "Channel 0 Nominal Bitrate Configuration Register"]
1619pub type Cfdc0Ncfg = crate::RegValueT<Cfdc0Ncfg_SPEC>;
1620
1621impl Cfdc0Ncfg {
1622    #[doc = "Channel Nominal Baud Rate Prescaler"]
1623    #[inline(always)]
1624    pub fn nbrp(
1625        self,
1626    ) -> crate::common::RegisterField<0, 0x3ff, 1, 0, u16, Cfdc0Ncfg_SPEC, crate::common::RW> {
1627        crate::common::RegisterField::<0,0x3ff,1,0,u16, Cfdc0Ncfg_SPEC,crate::common::RW>::from_register(self,0)
1628    }
1629    #[doc = "Resynchronization Jump Width"]
1630    #[inline(always)]
1631    pub fn nsjw(
1632        self,
1633    ) -> crate::common::RegisterField<10, 0x7f, 1, 0, u8, Cfdc0Ncfg_SPEC, crate::common::RW> {
1634        crate::common::RegisterField::<10,0x7f,1,0,u8, Cfdc0Ncfg_SPEC,crate::common::RW>::from_register(self,0)
1635    }
1636    #[doc = "Timing Segment 1"]
1637    #[inline(always)]
1638    pub fn ntseg1(
1639        self,
1640    ) -> crate::common::RegisterField<17, 0xff, 1, 0, u8, Cfdc0Ncfg_SPEC, crate::common::RW> {
1641        crate::common::RegisterField::<17,0xff,1,0,u8, Cfdc0Ncfg_SPEC,crate::common::RW>::from_register(self,0)
1642    }
1643    #[doc = "Timing Segment 2"]
1644    #[inline(always)]
1645    pub fn ntseg2(
1646        self,
1647    ) -> crate::common::RegisterField<25, 0x7f, 1, 0, u8, Cfdc0Ncfg_SPEC, crate::common::RW> {
1648        crate::common::RegisterField::<25,0x7f,1,0,u8, Cfdc0Ncfg_SPEC,crate::common::RW>::from_register(self,0)
1649    }
1650}
1651impl ::core::default::Default for Cfdc0Ncfg {
1652    #[inline(always)]
1653    fn default() -> Cfdc0Ncfg {
1654        <crate::RegValueT<Cfdc0Ncfg_SPEC> as RegisterValue<_>>::new(0)
1655    }
1656}
1657
1658#[doc(hidden)]
1659#[derive(Copy, Clone, Eq, PartialEq)]
1660pub struct Cfdc0Ctr_SPEC;
1661impl crate::sealed::RegSpec for Cfdc0Ctr_SPEC {
1662    type DataType = u32;
1663}
1664#[doc = "Channel 0 Control Register"]
1665pub type Cfdc0Ctr = crate::RegValueT<Cfdc0Ctr_SPEC>;
1666
1667impl Cfdc0Ctr {
1668    #[doc = "Channel Mode Control"]
1669    #[inline(always)]
1670    pub fn chmdc(
1671        self,
1672    ) -> crate::common::RegisterField<0, 0x3, 1, 0, cfdc0ctr::Chmdc, Cfdc0Ctr_SPEC, crate::common::RW>
1673    {
1674        crate::common::RegisterField::<
1675            0,
1676            0x3,
1677            1,
1678            0,
1679            cfdc0ctr::Chmdc,
1680            Cfdc0Ctr_SPEC,
1681            crate::common::RW,
1682        >::from_register(self, 0)
1683    }
1684    #[doc = "Channel Sleep Request"]
1685    #[inline(always)]
1686    pub fn cslpr(
1687        self,
1688    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdc0ctr::Cslpr, Cfdc0Ctr_SPEC, crate::common::RW>
1689    {
1690        crate::common::RegisterField::<
1691            2,
1692            0x1,
1693            1,
1694            0,
1695            cfdc0ctr::Cslpr,
1696            Cfdc0Ctr_SPEC,
1697            crate::common::RW,
1698        >::from_register(self, 0)
1699    }
1700    #[doc = "Return from Bus-Off"]
1701    #[inline(always)]
1702    pub fn rtbo(
1703        self,
1704    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdc0ctr::Rtbo, Cfdc0Ctr_SPEC, crate::common::RW>
1705    {
1706        crate::common::RegisterField::<3,0x1,1,0,cfdc0ctr::Rtbo, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1707    }
1708    #[doc = "Bus Error Interrupt Enable"]
1709    #[inline(always)]
1710    pub fn beie(
1711        self,
1712    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdc0ctr::Beie, Cfdc0Ctr_SPEC, crate::common::RW>
1713    {
1714        crate::common::RegisterField::<8,0x1,1,0,cfdc0ctr::Beie, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1715    }
1716    #[doc = "Error Warning Interrupt Enable"]
1717    #[inline(always)]
1718    pub fn ewie(
1719        self,
1720    ) -> crate::common::RegisterField<9, 0x1, 1, 0, cfdc0ctr::Ewie, Cfdc0Ctr_SPEC, crate::common::RW>
1721    {
1722        crate::common::RegisterField::<9,0x1,1,0,cfdc0ctr::Ewie, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1723    }
1724    #[doc = "Error Passive Interrupt Enable"]
1725    #[inline(always)]
1726    pub fn epie(
1727        self,
1728    ) -> crate::common::RegisterField<10, 0x1, 1, 0, cfdc0ctr::Epie, Cfdc0Ctr_SPEC, crate::common::RW>
1729    {
1730        crate::common::RegisterField::<
1731            10,
1732            0x1,
1733            1,
1734            0,
1735            cfdc0ctr::Epie,
1736            Cfdc0Ctr_SPEC,
1737            crate::common::RW,
1738        >::from_register(self, 0)
1739    }
1740    #[doc = "Bus-Off Entry Interrupt Enable"]
1741    #[inline(always)]
1742    pub fn boeie(
1743        self,
1744    ) -> crate::common::RegisterField<
1745        11,
1746        0x1,
1747        1,
1748        0,
1749        cfdc0ctr::Boeie,
1750        Cfdc0Ctr_SPEC,
1751        crate::common::RW,
1752    > {
1753        crate::common::RegisterField::<
1754            11,
1755            0x1,
1756            1,
1757            0,
1758            cfdc0ctr::Boeie,
1759            Cfdc0Ctr_SPEC,
1760            crate::common::RW,
1761        >::from_register(self, 0)
1762    }
1763    #[doc = "Bus-Off Recovery Interrupt Enable"]
1764    #[inline(always)]
1765    pub fn borie(
1766        self,
1767    ) -> crate::common::RegisterField<
1768        12,
1769        0x1,
1770        1,
1771        0,
1772        cfdc0ctr::Borie,
1773        Cfdc0Ctr_SPEC,
1774        crate::common::RW,
1775    > {
1776        crate::common::RegisterField::<
1777            12,
1778            0x1,
1779            1,
1780            0,
1781            cfdc0ctr::Borie,
1782            Cfdc0Ctr_SPEC,
1783            crate::common::RW,
1784        >::from_register(self, 0)
1785    }
1786    #[doc = "Overload Interrupt Enable"]
1787    #[inline(always)]
1788    pub fn olie(
1789        self,
1790    ) -> crate::common::RegisterField<13, 0x1, 1, 0, cfdc0ctr::Olie, Cfdc0Ctr_SPEC, crate::common::RW>
1791    {
1792        crate::common::RegisterField::<
1793            13,
1794            0x1,
1795            1,
1796            0,
1797            cfdc0ctr::Olie,
1798            Cfdc0Ctr_SPEC,
1799            crate::common::RW,
1800        >::from_register(self, 0)
1801    }
1802    #[doc = "Bus Lock Interrupt Enable"]
1803    #[inline(always)]
1804    pub fn blie(
1805        self,
1806    ) -> crate::common::RegisterField<14, 0x1, 1, 0, cfdc0ctr::Blie, Cfdc0Ctr_SPEC, crate::common::RW>
1807    {
1808        crate::common::RegisterField::<
1809            14,
1810            0x1,
1811            1,
1812            0,
1813            cfdc0ctr::Blie,
1814            Cfdc0Ctr_SPEC,
1815            crate::common::RW,
1816        >::from_register(self, 0)
1817    }
1818    #[doc = "Arbitration Lost Interrupt Enable"]
1819    #[inline(always)]
1820    pub fn alie(
1821        self,
1822    ) -> crate::common::RegisterField<15, 0x1, 1, 0, cfdc0ctr::Alie, Cfdc0Ctr_SPEC, crate::common::RW>
1823    {
1824        crate::common::RegisterField::<
1825            15,
1826            0x1,
1827            1,
1828            0,
1829            cfdc0ctr::Alie,
1830            Cfdc0Ctr_SPEC,
1831            crate::common::RW,
1832        >::from_register(self, 0)
1833    }
1834    #[doc = "Transmission Abort Interrupt Enable"]
1835    #[inline(always)]
1836    pub fn taie(
1837        self,
1838    ) -> crate::common::RegisterField<16, 0x1, 1, 0, cfdc0ctr::Taie, Cfdc0Ctr_SPEC, crate::common::RW>
1839    {
1840        crate::common::RegisterField::<
1841            16,
1842            0x1,
1843            1,
1844            0,
1845            cfdc0ctr::Taie,
1846            Cfdc0Ctr_SPEC,
1847            crate::common::RW,
1848        >::from_register(self, 0)
1849    }
1850    #[doc = "Error Occurrence Counter Overflow Interrupt Enable"]
1851    #[inline(always)]
1852    pub fn eocoie(
1853        self,
1854    ) -> crate::common::RegisterField<
1855        17,
1856        0x1,
1857        1,
1858        0,
1859        cfdc0ctr::Eocoie,
1860        Cfdc0Ctr_SPEC,
1861        crate::common::RW,
1862    > {
1863        crate::common::RegisterField::<
1864            17,
1865            0x1,
1866            1,
1867            0,
1868            cfdc0ctr::Eocoie,
1869            Cfdc0Ctr_SPEC,
1870            crate::common::RW,
1871        >::from_register(self, 0)
1872    }
1873    #[doc = "Successful Occurrence Counter Overflow Interrupt Enable"]
1874    #[inline(always)]
1875    pub fn socoie(
1876        self,
1877    ) -> crate::common::RegisterField<
1878        18,
1879        0x1,
1880        1,
1881        0,
1882        cfdc0ctr::Socoie,
1883        Cfdc0Ctr_SPEC,
1884        crate::common::RW,
1885    > {
1886        crate::common::RegisterField::<
1887            18,
1888            0x1,
1889            1,
1890            0,
1891            cfdc0ctr::Socoie,
1892            Cfdc0Ctr_SPEC,
1893            crate::common::RW,
1894        >::from_register(self, 0)
1895    }
1896    #[doc = "Transceiver Delay Compensation Violation Interrupt Enable"]
1897    #[inline(always)]
1898    pub fn tdcvfie(
1899        self,
1900    ) -> crate::common::RegisterField<
1901        19,
1902        0x1,
1903        1,
1904        0,
1905        cfdc0ctr::Tdcvfie,
1906        Cfdc0Ctr_SPEC,
1907        crate::common::RW,
1908    > {
1909        crate::common::RegisterField::<
1910            19,
1911            0x1,
1912            1,
1913            0,
1914            cfdc0ctr::Tdcvfie,
1915            Cfdc0Ctr_SPEC,
1916            crate::common::RW,
1917        >::from_register(self, 0)
1918    }
1919    #[doc = "Channel Bus-Off Mode"]
1920    #[inline(always)]
1921    pub fn bom(
1922        self,
1923    ) -> crate::common::RegisterField<21, 0x3, 1, 0, cfdc0ctr::Bom, Cfdc0Ctr_SPEC, crate::common::RW>
1924    {
1925        crate::common::RegisterField::<21,0x3,1,0,cfdc0ctr::Bom, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1926    }
1927    #[doc = "Channel Error Display"]
1928    #[inline(always)]
1929    pub fn errd(
1930        self,
1931    ) -> crate::common::RegisterField<23, 0x1, 1, 0, cfdc0ctr::Errd, Cfdc0Ctr_SPEC, crate::common::RW>
1932    {
1933        crate::common::RegisterField::<
1934            23,
1935            0x1,
1936            1,
1937            0,
1938            cfdc0ctr::Errd,
1939            Cfdc0Ctr_SPEC,
1940            crate::common::RW,
1941        >::from_register(self, 0)
1942    }
1943    #[doc = "Channel Test Mode Enable"]
1944    #[inline(always)]
1945    pub fn ctme(
1946        self,
1947    ) -> crate::common::RegisterField<24, 0x1, 1, 0, cfdc0ctr::Ctme, Cfdc0Ctr_SPEC, crate::common::RW>
1948    {
1949        crate::common::RegisterField::<
1950            24,
1951            0x1,
1952            1,
1953            0,
1954            cfdc0ctr::Ctme,
1955            Cfdc0Ctr_SPEC,
1956            crate::common::RW,
1957        >::from_register(self, 0)
1958    }
1959    #[doc = "Channel Test Mode Select"]
1960    #[inline(always)]
1961    pub fn ctms(
1962        self,
1963    ) -> crate::common::RegisterField<25, 0x3, 1, 0, cfdc0ctr::Ctms, Cfdc0Ctr_SPEC, crate::common::RW>
1964    {
1965        crate::common::RegisterField::<
1966            25,
1967            0x3,
1968            1,
1969            0,
1970            cfdc0ctr::Ctms,
1971            Cfdc0Ctr_SPEC,
1972            crate::common::RW,
1973        >::from_register(self, 0)
1974    }
1975    #[doc = "Bit Flip Test"]
1976    #[inline(always)]
1977    pub fn bft(
1978        self,
1979    ) -> crate::common::RegisterField<30, 0x1, 1, 0, cfdc0ctr::Bft, Cfdc0Ctr_SPEC, crate::common::RW>
1980    {
1981        crate::common::RegisterField::<30,0x1,1,0,cfdc0ctr::Bft, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1982    }
1983    #[doc = "Restricted Operation Mode"]
1984    #[inline(always)]
1985    pub fn rom(
1986        self,
1987    ) -> crate::common::RegisterField<31, 0x1, 1, 0, cfdc0ctr::Rom, Cfdc0Ctr_SPEC, crate::common::RW>
1988    {
1989        crate::common::RegisterField::<31,0x1,1,0,cfdc0ctr::Rom, Cfdc0Ctr_SPEC,crate::common::RW>::from_register(self,0)
1990    }
1991}
1992impl ::core::default::Default for Cfdc0Ctr {
1993    #[inline(always)]
1994    fn default() -> Cfdc0Ctr {
1995        <crate::RegValueT<Cfdc0Ctr_SPEC> as RegisterValue<_>>::new(5)
1996    }
1997}
1998pub mod cfdc0ctr {
1999
2000    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2001    pub struct Chmdc_SPEC;
2002    pub type Chmdc = crate::EnumBitfieldStruct<u8, Chmdc_SPEC>;
2003    impl Chmdc {
2004        #[doc = "Channel operation mode request"]
2005        pub const _00: Self = Self::new(0);
2006        #[doc = "Channel reset request"]
2007        pub const _01: Self = Self::new(1);
2008        #[doc = "Channel halt request"]
2009        pub const _10: Self = Self::new(2);
2010        #[doc = "Keep current value"]
2011        pub const _11: Self = Self::new(3);
2012    }
2013    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2014    pub struct Cslpr_SPEC;
2015    pub type Cslpr = crate::EnumBitfieldStruct<u8, Cslpr_SPEC>;
2016    impl Cslpr {
2017        #[doc = "Channel sleep request disabled"]
2018        pub const _0: Self = Self::new(0);
2019        #[doc = "Channel sleep request enabled"]
2020        pub const _1: Self = Self::new(1);
2021    }
2022    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2023    pub struct Rtbo_SPEC;
2024    pub type Rtbo = crate::EnumBitfieldStruct<u8, Rtbo_SPEC>;
2025    impl Rtbo {
2026        #[doc = "Channel is not forced to return from bus-off"]
2027        pub const _0: Self = Self::new(0);
2028        #[doc = "Channel is forced to return from bus-off"]
2029        pub const _1: Self = Self::new(1);
2030    }
2031    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2032    pub struct Beie_SPEC;
2033    pub type Beie = crate::EnumBitfieldStruct<u8, Beie_SPEC>;
2034    impl Beie {
2035        #[doc = "Bus error interrupt disabled"]
2036        pub const _0: Self = Self::new(0);
2037        #[doc = "Bus error interrupt enabled"]
2038        pub const _1: Self = Self::new(1);
2039    }
2040    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2041    pub struct Ewie_SPEC;
2042    pub type Ewie = crate::EnumBitfieldStruct<u8, Ewie_SPEC>;
2043    impl Ewie {
2044        #[doc = "Error warning interrupt disabled"]
2045        pub const _0: Self = Self::new(0);
2046        #[doc = "Error warning interrupt enabled"]
2047        pub const _1: Self = Self::new(1);
2048    }
2049    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2050    pub struct Epie_SPEC;
2051    pub type Epie = crate::EnumBitfieldStruct<u8, Epie_SPEC>;
2052    impl Epie {
2053        #[doc = "Error passive interrupt disabled"]
2054        pub const _0: Self = Self::new(0);
2055        #[doc = "Error passive interrupt enabled"]
2056        pub const _1: Self = Self::new(1);
2057    }
2058    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2059    pub struct Boeie_SPEC;
2060    pub type Boeie = crate::EnumBitfieldStruct<u8, Boeie_SPEC>;
2061    impl Boeie {
2062        #[doc = "Bus-off entry interrupt disabled"]
2063        pub const _0: Self = Self::new(0);
2064        #[doc = "Bus-off entry interrupt enabled"]
2065        pub const _1: Self = Self::new(1);
2066    }
2067    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2068    pub struct Borie_SPEC;
2069    pub type Borie = crate::EnumBitfieldStruct<u8, Borie_SPEC>;
2070    impl Borie {
2071        #[doc = "Bus-off recovery interrupt disabled"]
2072        pub const _0: Self = Self::new(0);
2073        #[doc = "Bus-off recovery interrupt enabled"]
2074        pub const _1: Self = Self::new(1);
2075    }
2076    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2077    pub struct Olie_SPEC;
2078    pub type Olie = crate::EnumBitfieldStruct<u8, Olie_SPEC>;
2079    impl Olie {
2080        #[doc = "Overload interrupt disabled"]
2081        pub const _0: Self = Self::new(0);
2082        #[doc = "Overload interrupt enabled"]
2083        pub const _1: Self = Self::new(1);
2084    }
2085    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2086    pub struct Blie_SPEC;
2087    pub type Blie = crate::EnumBitfieldStruct<u8, Blie_SPEC>;
2088    impl Blie {
2089        #[doc = "Bus lock interrupt disabled"]
2090        pub const _0: Self = Self::new(0);
2091        #[doc = "Bus lock interrupt enabled"]
2092        pub const _1: Self = Self::new(1);
2093    }
2094    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2095    pub struct Alie_SPEC;
2096    pub type Alie = crate::EnumBitfieldStruct<u8, Alie_SPEC>;
2097    impl Alie {
2098        #[doc = "Arbitration lost interrupt disabled"]
2099        pub const _0: Self = Self::new(0);
2100        #[doc = "Arbitration lost interrupt enabled"]
2101        pub const _1: Self = Self::new(1);
2102    }
2103    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2104    pub struct Taie_SPEC;
2105    pub type Taie = crate::EnumBitfieldStruct<u8, Taie_SPEC>;
2106    impl Taie {
2107        #[doc = "TX abort interrupt disabled"]
2108        pub const _0: Self = Self::new(0);
2109        #[doc = "TX abort interrupt enabled"]
2110        pub const _1: Self = Self::new(1);
2111    }
2112    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2113    pub struct Eocoie_SPEC;
2114    pub type Eocoie = crate::EnumBitfieldStruct<u8, Eocoie_SPEC>;
2115    impl Eocoie {
2116        #[doc = "Error occurrence counter overflow interrupt disabled"]
2117        pub const _0: Self = Self::new(0);
2118        #[doc = "Error occurrence counter overflow interrupt enabled"]
2119        pub const _1: Self = Self::new(1);
2120    }
2121    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2122    pub struct Socoie_SPEC;
2123    pub type Socoie = crate::EnumBitfieldStruct<u8, Socoie_SPEC>;
2124    impl Socoie {
2125        #[doc = "Successful occurrence counter overflow interrupt disabled"]
2126        pub const _0: Self = Self::new(0);
2127        #[doc = "Successful occurrence counter overflow interrupt enabled"]
2128        pub const _1: Self = Self::new(1);
2129    }
2130    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2131    pub struct Tdcvfie_SPEC;
2132    pub type Tdcvfie = crate::EnumBitfieldStruct<u8, Tdcvfie_SPEC>;
2133    impl Tdcvfie {
2134        #[doc = "Transceiver delay compensation violation interrupt disabled"]
2135        pub const _0: Self = Self::new(0);
2136        #[doc = "Transceiver delay compensation violation interrupt enabled"]
2137        pub const _1: Self = Self::new(1);
2138    }
2139    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2140    pub struct Bom_SPEC;
2141    pub type Bom = crate::EnumBitfieldStruct<u8, Bom_SPEC>;
2142    impl Bom {
2143        #[doc = "Normal mode (comply with ISO 11898-1)"]
2144        pub const _00: Self = Self::new(0);
2145        #[doc = "Entry to Halt mode automatically at bus-off start"]
2146        pub const _01: Self = Self::new(1);
2147        #[doc = "Entry to Halt mode automatically at bus-off end"]
2148        pub const _10: Self = Self::new(2);
2149        #[doc = "Entry to Halt mode (during bus-off recovery period) by software"]
2150        pub const _11: Self = Self::new(3);
2151    }
2152    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2153    pub struct Errd_SPEC;
2154    pub type Errd = crate::EnumBitfieldStruct<u8, Errd_SPEC>;
2155    impl Errd {
2156        #[doc = "Only the first set of error codes displayed"]
2157        pub const _0: Self = Self::new(0);
2158        #[doc = "Accumulated error codes displayed"]
2159        pub const _1: Self = Self::new(1);
2160    }
2161    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2162    pub struct Ctme_SPEC;
2163    pub type Ctme = crate::EnumBitfieldStruct<u8, Ctme_SPEC>;
2164    impl Ctme {
2165        #[doc = "Channel test mode disabled"]
2166        pub const _0: Self = Self::new(0);
2167        #[doc = "Channel test mode enabled"]
2168        pub const _1: Self = Self::new(1);
2169    }
2170    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2171    pub struct Ctms_SPEC;
2172    pub type Ctms = crate::EnumBitfieldStruct<u8, Ctms_SPEC>;
2173    impl Ctms {
2174        #[doc = "Basic test mode"]
2175        pub const _00: Self = Self::new(0);
2176        #[doc = "Listen-only mode"]
2177        pub const _01: Self = Self::new(1);
2178        #[doc = "Self-test mode 0 (External loopback mode)"]
2179        pub const _10: Self = Self::new(2);
2180        #[doc = "Self-test mode 1 (Internal loopback mode)"]
2181        pub const _11: Self = Self::new(3);
2182    }
2183    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2184    pub struct Bft_SPEC;
2185    pub type Bft = crate::EnumBitfieldStruct<u8, Bft_SPEC>;
2186    impl Bft {
2187        #[doc = "First data bit of reception stream not inverted"]
2188        pub const _0: Self = Self::new(0);
2189        #[doc = "First data bit of reception stream inverted"]
2190        pub const _1: Self = Self::new(1);
2191    }
2192    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2193    pub struct Rom_SPEC;
2194    pub type Rom = crate::EnumBitfieldStruct<u8, Rom_SPEC>;
2195    impl Rom {
2196        #[doc = "Restricted operation mode disabled"]
2197        pub const _0: Self = Self::new(0);
2198        #[doc = "Restricted operation mode enabled"]
2199        pub const _1: Self = Self::new(1);
2200    }
2201}
2202#[doc(hidden)]
2203#[derive(Copy, Clone, Eq, PartialEq)]
2204pub struct Cfdc0Sts_SPEC;
2205impl crate::sealed::RegSpec for Cfdc0Sts_SPEC {
2206    type DataType = u32;
2207}
2208#[doc = "Channel 0 Status Register"]
2209pub type Cfdc0Sts = crate::RegValueT<Cfdc0Sts_SPEC>;
2210
2211impl Cfdc0Sts {
2212    #[doc = "Channel Reset Status"]
2213    #[inline(always)]
2214    pub fn crststs(
2215        self,
2216    ) -> crate::common::RegisterField<
2217        0,
2218        0x1,
2219        1,
2220        0,
2221        cfdc0sts::Crststs,
2222        Cfdc0Sts_SPEC,
2223        crate::common::R,
2224    > {
2225        crate::common::RegisterField::<
2226            0,
2227            0x1,
2228            1,
2229            0,
2230            cfdc0sts::Crststs,
2231            Cfdc0Sts_SPEC,
2232            crate::common::R,
2233        >::from_register(self, 0)
2234    }
2235    #[doc = "Channel Halt Status"]
2236    #[inline(always)]
2237    pub fn chltsts(
2238        self,
2239    ) -> crate::common::RegisterField<
2240        1,
2241        0x1,
2242        1,
2243        0,
2244        cfdc0sts::Chltsts,
2245        Cfdc0Sts_SPEC,
2246        crate::common::R,
2247    > {
2248        crate::common::RegisterField::<
2249            1,
2250            0x1,
2251            1,
2252            0,
2253            cfdc0sts::Chltsts,
2254            Cfdc0Sts_SPEC,
2255            crate::common::R,
2256        >::from_register(self, 0)
2257    }
2258    #[doc = "Channel Sleep Status"]
2259    #[inline(always)]
2260    pub fn cslpsts(
2261        self,
2262    ) -> crate::common::RegisterField<
2263        2,
2264        0x1,
2265        1,
2266        0,
2267        cfdc0sts::Cslpsts,
2268        Cfdc0Sts_SPEC,
2269        crate::common::R,
2270    > {
2271        crate::common::RegisterField::<
2272            2,
2273            0x1,
2274            1,
2275            0,
2276            cfdc0sts::Cslpsts,
2277            Cfdc0Sts_SPEC,
2278            crate::common::R,
2279        >::from_register(self, 0)
2280    }
2281    #[doc = "Channel Error Passive Status"]
2282    #[inline(always)]
2283    pub fn epsts(
2284        self,
2285    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdc0sts::Epsts, Cfdc0Sts_SPEC, crate::common::R>
2286    {
2287        crate::common::RegisterField::<3,0x1,1,0,cfdc0sts::Epsts, Cfdc0Sts_SPEC,crate::common::R>::from_register(self,0)
2288    }
2289    #[doc = "Channel Bus-Off Status"]
2290    #[inline(always)]
2291    pub fn bosts(
2292        self,
2293    ) -> crate::common::RegisterField<4, 0x1, 1, 0, cfdc0sts::Bosts, Cfdc0Sts_SPEC, crate::common::R>
2294    {
2295        crate::common::RegisterField::<4,0x1,1,0,cfdc0sts::Bosts, Cfdc0Sts_SPEC,crate::common::R>::from_register(self,0)
2296    }
2297    #[doc = "Channel Transmit Status"]
2298    #[inline(always)]
2299    pub fn trmsts(
2300        self,
2301    ) -> crate::common::RegisterField<5, 0x1, 1, 0, cfdc0sts::Trmsts, Cfdc0Sts_SPEC, crate::common::R>
2302    {
2303        crate::common::RegisterField::<
2304            5,
2305            0x1,
2306            1,
2307            0,
2308            cfdc0sts::Trmsts,
2309            Cfdc0Sts_SPEC,
2310            crate::common::R,
2311        >::from_register(self, 0)
2312    }
2313    #[doc = "Channel Receive Status"]
2314    #[inline(always)]
2315    pub fn recsts(
2316        self,
2317    ) -> crate::common::RegisterField<6, 0x1, 1, 0, cfdc0sts::Recsts, Cfdc0Sts_SPEC, crate::common::R>
2318    {
2319        crate::common::RegisterField::<
2320            6,
2321            0x1,
2322            1,
2323            0,
2324            cfdc0sts::Recsts,
2325            Cfdc0Sts_SPEC,
2326            crate::common::R,
2327        >::from_register(self, 0)
2328    }
2329    #[doc = "Channel Communication Status"]
2330    #[inline(always)]
2331    pub fn comsts(
2332        self,
2333    ) -> crate::common::RegisterField<7, 0x1, 1, 0, cfdc0sts::Comsts, Cfdc0Sts_SPEC, crate::common::R>
2334    {
2335        crate::common::RegisterField::<
2336            7,
2337            0x1,
2338            1,
2339            0,
2340            cfdc0sts::Comsts,
2341            Cfdc0Sts_SPEC,
2342            crate::common::R,
2343        >::from_register(self, 0)
2344    }
2345    #[doc = "Error State Indication Flag"]
2346    #[inline(always)]
2347    pub fn esif(
2348        self,
2349    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdc0sts::Esif, Cfdc0Sts_SPEC, crate::common::RW>
2350    {
2351        crate::common::RegisterField::<8,0x1,1,0,cfdc0sts::Esif, Cfdc0Sts_SPEC,crate::common::RW>::from_register(self,0)
2352    }
2353    #[doc = "Reception Error Count"]
2354    #[inline(always)]
2355    pub fn rec(
2356        self,
2357    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdc0Sts_SPEC, crate::common::R> {
2358        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdc0Sts_SPEC,crate::common::R>::from_register(self,0)
2359    }
2360    #[doc = "Transmission Error Count"]
2361    #[inline(always)]
2362    pub fn tec(
2363        self,
2364    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdc0Sts_SPEC, crate::common::R> {
2365        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdc0Sts_SPEC,crate::common::R>::from_register(self,0)
2366    }
2367}
2368impl ::core::default::Default for Cfdc0Sts {
2369    #[inline(always)]
2370    fn default() -> Cfdc0Sts {
2371        <crate::RegValueT<Cfdc0Sts_SPEC> as RegisterValue<_>>::new(5)
2372    }
2373}
2374pub mod cfdc0sts {
2375
2376    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2377    pub struct Crststs_SPEC;
2378    pub type Crststs = crate::EnumBitfieldStruct<u8, Crststs_SPEC>;
2379    impl Crststs {
2380        #[doc = "Channel not in Reset mode"]
2381        pub const _0: Self = Self::new(0);
2382        #[doc = "Channel in Reset mode"]
2383        pub const _1: Self = Self::new(1);
2384    }
2385    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2386    pub struct Chltsts_SPEC;
2387    pub type Chltsts = crate::EnumBitfieldStruct<u8, Chltsts_SPEC>;
2388    impl Chltsts {
2389        #[doc = "Channel not in Halt mode"]
2390        pub const _0: Self = Self::new(0);
2391        #[doc = "Channel in Halt mode"]
2392        pub const _1: Self = Self::new(1);
2393    }
2394    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2395    pub struct Cslpsts_SPEC;
2396    pub type Cslpsts = crate::EnumBitfieldStruct<u8, Cslpsts_SPEC>;
2397    impl Cslpsts {
2398        #[doc = "Channel not in Sleep mode"]
2399        pub const _0: Self = Self::new(0);
2400        #[doc = "Channel in Sleep mode"]
2401        pub const _1: Self = Self::new(1);
2402    }
2403    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2404    pub struct Epsts_SPEC;
2405    pub type Epsts = crate::EnumBitfieldStruct<u8, Epsts_SPEC>;
2406    impl Epsts {
2407        #[doc = "Channel not in error passive state"]
2408        pub const _0: Self = Self::new(0);
2409        #[doc = "Channel in error passive state"]
2410        pub const _1: Self = Self::new(1);
2411    }
2412    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2413    pub struct Bosts_SPEC;
2414    pub type Bosts = crate::EnumBitfieldStruct<u8, Bosts_SPEC>;
2415    impl Bosts {
2416        #[doc = "Channel not in bus-off state"]
2417        pub const _0: Self = Self::new(0);
2418        #[doc = "Channel in bus-off state"]
2419        pub const _1: Self = Self::new(1);
2420    }
2421    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2422    pub struct Trmsts_SPEC;
2423    pub type Trmsts = crate::EnumBitfieldStruct<u8, Trmsts_SPEC>;
2424    impl Trmsts {
2425        #[doc = "Channel is not transmitting"]
2426        pub const _0: Self = Self::new(0);
2427        #[doc = "Channel is transmitting"]
2428        pub const _1: Self = Self::new(1);
2429    }
2430    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2431    pub struct Recsts_SPEC;
2432    pub type Recsts = crate::EnumBitfieldStruct<u8, Recsts_SPEC>;
2433    impl Recsts {
2434        #[doc = "Channel is not receiving"]
2435        pub const _0: Self = Self::new(0);
2436        #[doc = "Channel is receiving"]
2437        pub const _1: Self = Self::new(1);
2438    }
2439    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2440    pub struct Comsts_SPEC;
2441    pub type Comsts = crate::EnumBitfieldStruct<u8, Comsts_SPEC>;
2442    impl Comsts {
2443        #[doc = "Channel is not ready for communication"]
2444        pub const _0: Self = Self::new(0);
2445        #[doc = "Channel is ready for communication"]
2446        pub const _1: Self = Self::new(1);
2447    }
2448    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2449    pub struct Esif_SPEC;
2450    pub type Esif = crate::EnumBitfieldStruct<u8, Esif_SPEC>;
2451    impl Esif {
2452        #[doc = "No CANFD message has been received when the ESI flag was set"]
2453        pub const _0: Self = Self::new(0);
2454        #[doc = "At least one CANFD message was received when the ESI flag was set"]
2455        pub const _1: Self = Self::new(1);
2456    }
2457}
2458#[doc(hidden)]
2459#[derive(Copy, Clone, Eq, PartialEq)]
2460pub struct Cfdc0Erfl_SPEC;
2461impl crate::sealed::RegSpec for Cfdc0Erfl_SPEC {
2462    type DataType = u32;
2463}
2464#[doc = "Channel 0 Error Flag Register"]
2465pub type Cfdc0Erfl = crate::RegValueT<Cfdc0Erfl_SPEC>;
2466
2467impl Cfdc0Erfl {
2468    #[doc = "Bus Error Flag"]
2469    #[inline(always)]
2470    pub fn bef(
2471        self,
2472    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdc0erfl::Bef, Cfdc0Erfl_SPEC, crate::common::RW>
2473    {
2474        crate::common::RegisterField::<
2475            0,
2476            0x1,
2477            1,
2478            0,
2479            cfdc0erfl::Bef,
2480            Cfdc0Erfl_SPEC,
2481            crate::common::RW,
2482        >::from_register(self, 0)
2483    }
2484    #[doc = "Error Warning Flag"]
2485    #[inline(always)]
2486    pub fn ewf(
2487        self,
2488    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdc0erfl::Ewf, Cfdc0Erfl_SPEC, crate::common::RW>
2489    {
2490        crate::common::RegisterField::<
2491            1,
2492            0x1,
2493            1,
2494            0,
2495            cfdc0erfl::Ewf,
2496            Cfdc0Erfl_SPEC,
2497            crate::common::RW,
2498        >::from_register(self, 0)
2499    }
2500    #[doc = "Error Passive Flag"]
2501    #[inline(always)]
2502    pub fn epf(
2503        self,
2504    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdc0erfl::Epf, Cfdc0Erfl_SPEC, crate::common::RW>
2505    {
2506        crate::common::RegisterField::<
2507            2,
2508            0x1,
2509            1,
2510            0,
2511            cfdc0erfl::Epf,
2512            Cfdc0Erfl_SPEC,
2513            crate::common::RW,
2514        >::from_register(self, 0)
2515    }
2516    #[doc = "Bus-Off Entry Flag"]
2517    #[inline(always)]
2518    pub fn boef(
2519        self,
2520    ) -> crate::common::RegisterField<
2521        3,
2522        0x1,
2523        1,
2524        0,
2525        cfdc0erfl::Boef,
2526        Cfdc0Erfl_SPEC,
2527        crate::common::RW,
2528    > {
2529        crate::common::RegisterField::<
2530            3,
2531            0x1,
2532            1,
2533            0,
2534            cfdc0erfl::Boef,
2535            Cfdc0Erfl_SPEC,
2536            crate::common::RW,
2537        >::from_register(self, 0)
2538    }
2539    #[doc = "Bus-Off Recovery Flag"]
2540    #[inline(always)]
2541    pub fn borf(
2542        self,
2543    ) -> crate::common::RegisterField<
2544        4,
2545        0x1,
2546        1,
2547        0,
2548        cfdc0erfl::Borf,
2549        Cfdc0Erfl_SPEC,
2550        crate::common::RW,
2551    > {
2552        crate::common::RegisterField::<
2553            4,
2554            0x1,
2555            1,
2556            0,
2557            cfdc0erfl::Borf,
2558            Cfdc0Erfl_SPEC,
2559            crate::common::RW,
2560        >::from_register(self, 0)
2561    }
2562    #[doc = "Overload Flag"]
2563    #[inline(always)]
2564    pub fn ovlf(
2565        self,
2566    ) -> crate::common::RegisterField<
2567        5,
2568        0x1,
2569        1,
2570        0,
2571        cfdc0erfl::Ovlf,
2572        Cfdc0Erfl_SPEC,
2573        crate::common::RW,
2574    > {
2575        crate::common::RegisterField::<
2576            5,
2577            0x1,
2578            1,
2579            0,
2580            cfdc0erfl::Ovlf,
2581            Cfdc0Erfl_SPEC,
2582            crate::common::RW,
2583        >::from_register(self, 0)
2584    }
2585    #[doc = "Bus Lock Flag"]
2586    #[inline(always)]
2587    pub fn blf(
2588        self,
2589    ) -> crate::common::RegisterField<6, 0x1, 1, 0, cfdc0erfl::Blf, Cfdc0Erfl_SPEC, crate::common::RW>
2590    {
2591        crate::common::RegisterField::<
2592            6,
2593            0x1,
2594            1,
2595            0,
2596            cfdc0erfl::Blf,
2597            Cfdc0Erfl_SPEC,
2598            crate::common::RW,
2599        >::from_register(self, 0)
2600    }
2601    #[doc = "Arbitration Lost Flag"]
2602    #[inline(always)]
2603    pub fn alf(
2604        self,
2605    ) -> crate::common::RegisterField<7, 0x1, 1, 0, cfdc0erfl::Alf, Cfdc0Erfl_SPEC, crate::common::RW>
2606    {
2607        crate::common::RegisterField::<
2608            7,
2609            0x1,
2610            1,
2611            0,
2612            cfdc0erfl::Alf,
2613            Cfdc0Erfl_SPEC,
2614            crate::common::RW,
2615        >::from_register(self, 0)
2616    }
2617    #[doc = "Stuff Error"]
2618    #[inline(always)]
2619    pub fn serr(
2620        self,
2621    ) -> crate::common::RegisterField<
2622        8,
2623        0x1,
2624        1,
2625        0,
2626        cfdc0erfl::Serr,
2627        Cfdc0Erfl_SPEC,
2628        crate::common::RW,
2629    > {
2630        crate::common::RegisterField::<
2631            8,
2632            0x1,
2633            1,
2634            0,
2635            cfdc0erfl::Serr,
2636            Cfdc0Erfl_SPEC,
2637            crate::common::RW,
2638        >::from_register(self, 0)
2639    }
2640    #[doc = "Form Error"]
2641    #[inline(always)]
2642    pub fn ferr(
2643        self,
2644    ) -> crate::common::RegisterField<
2645        9,
2646        0x1,
2647        1,
2648        0,
2649        cfdc0erfl::Ferr,
2650        Cfdc0Erfl_SPEC,
2651        crate::common::RW,
2652    > {
2653        crate::common::RegisterField::<
2654            9,
2655            0x1,
2656            1,
2657            0,
2658            cfdc0erfl::Ferr,
2659            Cfdc0Erfl_SPEC,
2660            crate::common::RW,
2661        >::from_register(self, 0)
2662    }
2663    #[doc = "Acknowledge Error"]
2664    #[inline(always)]
2665    pub fn aerr(
2666        self,
2667    ) -> crate::common::RegisterField<
2668        10,
2669        0x1,
2670        1,
2671        0,
2672        cfdc0erfl::Aerr,
2673        Cfdc0Erfl_SPEC,
2674        crate::common::RW,
2675    > {
2676        crate::common::RegisterField::<
2677            10,
2678            0x1,
2679            1,
2680            0,
2681            cfdc0erfl::Aerr,
2682            Cfdc0Erfl_SPEC,
2683            crate::common::RW,
2684        >::from_register(self, 0)
2685    }
2686    #[doc = "CRC Error"]
2687    #[inline(always)]
2688    pub fn cerr(
2689        self,
2690    ) -> crate::common::RegisterField<
2691        11,
2692        0x1,
2693        1,
2694        0,
2695        cfdc0erfl::Cerr,
2696        Cfdc0Erfl_SPEC,
2697        crate::common::RW,
2698    > {
2699        crate::common::RegisterField::<
2700            11,
2701            0x1,
2702            1,
2703            0,
2704            cfdc0erfl::Cerr,
2705            Cfdc0Erfl_SPEC,
2706            crate::common::RW,
2707        >::from_register(self, 0)
2708    }
2709    #[doc = "Bit 1 Error"]
2710    #[inline(always)]
2711    pub fn b1err(
2712        self,
2713    ) -> crate::common::RegisterField<
2714        12,
2715        0x1,
2716        1,
2717        0,
2718        cfdc0erfl::B1Err,
2719        Cfdc0Erfl_SPEC,
2720        crate::common::RW,
2721    > {
2722        crate::common::RegisterField::<
2723            12,
2724            0x1,
2725            1,
2726            0,
2727            cfdc0erfl::B1Err,
2728            Cfdc0Erfl_SPEC,
2729            crate::common::RW,
2730        >::from_register(self, 0)
2731    }
2732    #[doc = "Bit 0 Error"]
2733    #[inline(always)]
2734    pub fn b0err(
2735        self,
2736    ) -> crate::common::RegisterField<
2737        13,
2738        0x1,
2739        1,
2740        0,
2741        cfdc0erfl::B0Err,
2742        Cfdc0Erfl_SPEC,
2743        crate::common::RW,
2744    > {
2745        crate::common::RegisterField::<
2746            13,
2747            0x1,
2748            1,
2749            0,
2750            cfdc0erfl::B0Err,
2751            Cfdc0Erfl_SPEC,
2752            crate::common::RW,
2753        >::from_register(self, 0)
2754    }
2755    #[doc = "Acknowledge Delimiter Error"]
2756    #[inline(always)]
2757    pub fn aderr(
2758        self,
2759    ) -> crate::common::RegisterField<
2760        14,
2761        0x1,
2762        1,
2763        0,
2764        cfdc0erfl::Aderr,
2765        Cfdc0Erfl_SPEC,
2766        crate::common::RW,
2767    > {
2768        crate::common::RegisterField::<
2769            14,
2770            0x1,
2771            1,
2772            0,
2773            cfdc0erfl::Aderr,
2774            Cfdc0Erfl_SPEC,
2775            crate::common::RW,
2776        >::from_register(self, 0)
2777    }
2778    #[doc = "CRC Register value"]
2779    #[inline(always)]
2780    pub fn crcreg(
2781        self,
2782    ) -> crate::common::RegisterField<16, 0x7fff, 1, 0, u16, Cfdc0Erfl_SPEC, crate::common::R> {
2783        crate::common::RegisterField::<16,0x7fff,1,0,u16, Cfdc0Erfl_SPEC,crate::common::R>::from_register(self,0)
2784    }
2785}
2786impl ::core::default::Default for Cfdc0Erfl {
2787    #[inline(always)]
2788    fn default() -> Cfdc0Erfl {
2789        <crate::RegValueT<Cfdc0Erfl_SPEC> as RegisterValue<_>>::new(0)
2790    }
2791}
2792pub mod cfdc0erfl {
2793
2794    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2795    pub struct Bef_SPEC;
2796    pub type Bef = crate::EnumBitfieldStruct<u8, Bef_SPEC>;
2797    impl Bef {
2798        #[doc = "Channel bus error not detected"]
2799        pub const _0: Self = Self::new(0);
2800        #[doc = "Channel bus error detected"]
2801        pub const _1: Self = Self::new(1);
2802    }
2803    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2804    pub struct Ewf_SPEC;
2805    pub type Ewf = crate::EnumBitfieldStruct<u8, Ewf_SPEC>;
2806    impl Ewf {
2807        #[doc = "Channel error warning not detected"]
2808        pub const _0: Self = Self::new(0);
2809        #[doc = "Channel error warning detected"]
2810        pub const _1: Self = Self::new(1);
2811    }
2812    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2813    pub struct Epf_SPEC;
2814    pub type Epf = crate::EnumBitfieldStruct<u8, Epf_SPEC>;
2815    impl Epf {
2816        #[doc = "Channel error passive not detected"]
2817        pub const _0: Self = Self::new(0);
2818        #[doc = "Channel error passive detected"]
2819        pub const _1: Self = Self::new(1);
2820    }
2821    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2822    pub struct Boef_SPEC;
2823    pub type Boef = crate::EnumBitfieldStruct<u8, Boef_SPEC>;
2824    impl Boef {
2825        #[doc = "Channel bus-off entry not detected"]
2826        pub const _0: Self = Self::new(0);
2827        #[doc = "Channel bus-off entry detected"]
2828        pub const _1: Self = Self::new(1);
2829    }
2830    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2831    pub struct Borf_SPEC;
2832    pub type Borf = crate::EnumBitfieldStruct<u8, Borf_SPEC>;
2833    impl Borf {
2834        #[doc = "Channel bus-off recovery not detected"]
2835        pub const _0: Self = Self::new(0);
2836        #[doc = "Channel bus-off recovery detected"]
2837        pub const _1: Self = Self::new(1);
2838    }
2839    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2840    pub struct Ovlf_SPEC;
2841    pub type Ovlf = crate::EnumBitfieldStruct<u8, Ovlf_SPEC>;
2842    impl Ovlf {
2843        #[doc = "Channel overload not detected"]
2844        pub const _0: Self = Self::new(0);
2845        #[doc = "Channel overload detected"]
2846        pub const _1: Self = Self::new(1);
2847    }
2848    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2849    pub struct Blf_SPEC;
2850    pub type Blf = crate::EnumBitfieldStruct<u8, Blf_SPEC>;
2851    impl Blf {
2852        #[doc = "Channel bus lock not detected"]
2853        pub const _0: Self = Self::new(0);
2854        #[doc = "Channel bus lock detected"]
2855        pub const _1: Self = Self::new(1);
2856    }
2857    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2858    pub struct Alf_SPEC;
2859    pub type Alf = crate::EnumBitfieldStruct<u8, Alf_SPEC>;
2860    impl Alf {
2861        #[doc = "Channel arbitration lost not detected"]
2862        pub const _0: Self = Self::new(0);
2863        #[doc = "Channel arbitration lost detected"]
2864        pub const _1: Self = Self::new(1);
2865    }
2866    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2867    pub struct Serr_SPEC;
2868    pub type Serr = crate::EnumBitfieldStruct<u8, Serr_SPEC>;
2869    impl Serr {
2870        #[doc = "Channel stuff error not detected"]
2871        pub const _0: Self = Self::new(0);
2872        #[doc = "Channel stuff error detected"]
2873        pub const _1: Self = Self::new(1);
2874    }
2875    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2876    pub struct Ferr_SPEC;
2877    pub type Ferr = crate::EnumBitfieldStruct<u8, Ferr_SPEC>;
2878    impl Ferr {
2879        #[doc = "Channel form error not detected"]
2880        pub const _0: Self = Self::new(0);
2881        #[doc = "Channel form error detected"]
2882        pub const _1: Self = Self::new(1);
2883    }
2884    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2885    pub struct Aerr_SPEC;
2886    pub type Aerr = crate::EnumBitfieldStruct<u8, Aerr_SPEC>;
2887    impl Aerr {
2888        #[doc = "Channel acknowledge error not detected"]
2889        pub const _0: Self = Self::new(0);
2890        #[doc = "Channel acknowledge error detected"]
2891        pub const _1: Self = Self::new(1);
2892    }
2893    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2894    pub struct Cerr_SPEC;
2895    pub type Cerr = crate::EnumBitfieldStruct<u8, Cerr_SPEC>;
2896    impl Cerr {
2897        #[doc = "Channel CRC error not detected"]
2898        pub const _0: Self = Self::new(0);
2899        #[doc = "Channel CRC error detected"]
2900        pub const _1: Self = Self::new(1);
2901    }
2902    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2903    pub struct B1Err_SPEC;
2904    pub type B1Err = crate::EnumBitfieldStruct<u8, B1Err_SPEC>;
2905    impl B1Err {
2906        #[doc = "Channel bit 1 error not detected"]
2907        pub const _0: Self = Self::new(0);
2908        #[doc = "Channel bit 1 error detected"]
2909        pub const _1: Self = Self::new(1);
2910    }
2911    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2912    pub struct B0Err_SPEC;
2913    pub type B0Err = crate::EnumBitfieldStruct<u8, B0Err_SPEC>;
2914    impl B0Err {
2915        #[doc = "Channel bit 0 error not detected"]
2916        pub const _0: Self = Self::new(0);
2917        #[doc = "Channel bit 0 error detected"]
2918        pub const _1: Self = Self::new(1);
2919    }
2920    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2921    pub struct Aderr_SPEC;
2922    pub type Aderr = crate::EnumBitfieldStruct<u8, Aderr_SPEC>;
2923    impl Aderr {
2924        #[doc = "Channel acknowledge delimiter error not detected"]
2925        pub const _0: Self = Self::new(0);
2926        #[doc = "Channel acknowledge delimiter error detected"]
2927        pub const _1: Self = Self::new(1);
2928    }
2929}
2930#[doc(hidden)]
2931#[derive(Copy, Clone, Eq, PartialEq)]
2932pub struct Cfdgcfg_SPEC;
2933impl crate::sealed::RegSpec for Cfdgcfg_SPEC {
2934    type DataType = u32;
2935}
2936#[doc = "Global Configuration Register"]
2937pub type Cfdgcfg = crate::RegValueT<Cfdgcfg_SPEC>;
2938
2939impl Cfdgcfg {
2940    #[doc = "Transmission Priority"]
2941    #[inline(always)]
2942    pub fn tpri(
2943        self,
2944    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdgcfg::Tpri, Cfdgcfg_SPEC, crate::common::RW>
2945    {
2946        crate::common::RegisterField::<0,0x1,1,0,cfdgcfg::Tpri, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2947    }
2948    #[doc = "DLC Check Enable"]
2949    #[inline(always)]
2950    pub fn dce(
2951        self,
2952    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdgcfg::Dce, Cfdgcfg_SPEC, crate::common::RW>
2953    {
2954        crate::common::RegisterField::<1,0x1,1,0,cfdgcfg::Dce, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2955    }
2956    #[doc = "DLC Replacement Enable"]
2957    #[inline(always)]
2958    pub fn dre(
2959        self,
2960    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdgcfg::Dre, Cfdgcfg_SPEC, crate::common::RW>
2961    {
2962        crate::common::RegisterField::<2,0x1,1,0,cfdgcfg::Dre, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2963    }
2964    #[doc = "Mirror Mode Enable"]
2965    #[inline(always)]
2966    pub fn mme(
2967        self,
2968    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdgcfg::Mme, Cfdgcfg_SPEC, crate::common::RW>
2969    {
2970        crate::common::RegisterField::<3,0x1,1,0,cfdgcfg::Mme, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2971    }
2972    #[doc = "Data Link Controller Clock Select"]
2973    #[inline(always)]
2974    pub fn dcs(
2975        self,
2976    ) -> crate::common::RegisterField<4, 0x1, 1, 0, cfdgcfg::Dcs, Cfdgcfg_SPEC, crate::common::RW>
2977    {
2978        crate::common::RegisterField::<4,0x1,1,0,cfdgcfg::Dcs, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2979    }
2980    #[doc = "CANFD Message Payload Overflow Configuration"]
2981    #[inline(always)]
2982    pub fn cmpoc(
2983        self,
2984    ) -> crate::common::RegisterField<5, 0x1, 1, 0, cfdgcfg::Cmpoc, Cfdgcfg_SPEC, crate::common::RW>
2985    {
2986        crate::common::RegisterField::<5,0x1,1,0,cfdgcfg::Cmpoc, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2987    }
2988    #[doc = "Timestamp Prescaler"]
2989    #[inline(always)]
2990    pub fn tsp(
2991        self,
2992    ) -> crate::common::RegisterField<8, 0xf, 1, 0, u8, Cfdgcfg_SPEC, crate::common::RW> {
2993        crate::common::RegisterField::<8,0xf,1,0,u8, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
2994    }
2995    #[doc = "Timestamp Source Select"]
2996    #[inline(always)]
2997    pub fn tsss(
2998        self,
2999    ) -> crate::common::RegisterField<12, 0x1, 1, 0, cfdgcfg::Tsss, Cfdgcfg_SPEC, crate::common::RW>
3000    {
3001        crate::common::RegisterField::<12,0x1,1,0,cfdgcfg::Tsss, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
3002    }
3003    #[doc = "Interval Timer Reference Clock Prescaler"]
3004    #[inline(always)]
3005    pub fn itrcp(
3006        self,
3007    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdgcfg_SPEC, crate::common::RW> {
3008        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdgcfg_SPEC,crate::common::RW>::from_register(self,0)
3009    }
3010}
3011impl ::core::default::Default for Cfdgcfg {
3012    #[inline(always)]
3013    fn default() -> Cfdgcfg {
3014        <crate::RegValueT<Cfdgcfg_SPEC> as RegisterValue<_>>::new(0)
3015    }
3016}
3017pub mod cfdgcfg {
3018
3019    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3020    pub struct Tpri_SPEC;
3021    pub type Tpri = crate::EnumBitfieldStruct<u8, Tpri_SPEC>;
3022    impl Tpri {
3023        #[doc = "ID priority"]
3024        pub const _0: Self = Self::new(0);
3025        #[doc = "Message buffer number priority"]
3026        pub const _1: Self = Self::new(1);
3027    }
3028    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3029    pub struct Dce_SPEC;
3030    pub type Dce = crate::EnumBitfieldStruct<u8, Dce_SPEC>;
3031    impl Dce {
3032        #[doc = "DLC check disabled"]
3033        pub const _0: Self = Self::new(0);
3034        #[doc = "DLC check enabled"]
3035        pub const _1: Self = Self::new(1);
3036    }
3037    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3038    pub struct Dre_SPEC;
3039    pub type Dre = crate::EnumBitfieldStruct<u8, Dre_SPEC>;
3040    impl Dre {
3041        #[doc = "DLC replacement disabled"]
3042        pub const _0: Self = Self::new(0);
3043        #[doc = "DLC replacement enabled"]
3044        pub const _1: Self = Self::new(1);
3045    }
3046    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3047    pub struct Mme_SPEC;
3048    pub type Mme = crate::EnumBitfieldStruct<u8, Mme_SPEC>;
3049    impl Mme {
3050        #[doc = "Mirror mode disabled"]
3051        pub const _0: Self = Self::new(0);
3052        #[doc = "Mirror mode enabled"]
3053        pub const _1: Self = Self::new(1);
3054    }
3055    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3056    pub struct Dcs_SPEC;
3057    pub type Dcs = crate::EnumBitfieldStruct<u8, Dcs_SPEC>;
3058    impl Dcs {
3059        #[doc = "Internal clean clock"]
3060        pub const _0: Self = Self::new(0);
3061        #[doc = "External clock source connected to CANMCLK pin"]
3062        pub const _1: Self = Self::new(1);
3063    }
3064    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3065    pub struct Cmpoc_SPEC;
3066    pub type Cmpoc = crate::EnumBitfieldStruct<u8, Cmpoc_SPEC>;
3067    impl Cmpoc {
3068        #[doc = "Message is rejected"]
3069        pub const _0: Self = Self::new(0);
3070        #[doc = "Message payload is cut to fit to configured message size"]
3071        pub const _1: Self = Self::new(1);
3072    }
3073    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3074    pub struct Tsss_SPEC;
3075    pub type Tsss = crate::EnumBitfieldStruct<u8, Tsss_SPEC>;
3076    impl Tsss {
3077        #[doc = "Source clock for timestamp counter is peripheral clock"]
3078        pub const _0: Self = Self::new(0);
3079        #[doc = "Source clock for timestamp counter is bit time clock"]
3080        pub const _1: Self = Self::new(1);
3081    }
3082}
3083#[doc(hidden)]
3084#[derive(Copy, Clone, Eq, PartialEq)]
3085pub struct Cfdgctr_SPEC;
3086impl crate::sealed::RegSpec for Cfdgctr_SPEC {
3087    type DataType = u32;
3088}
3089#[doc = "Global Control Register"]
3090pub type Cfdgctr = crate::RegValueT<Cfdgctr_SPEC>;
3091
3092impl Cfdgctr {
3093    #[doc = "Global Mode Control"]
3094    #[inline(always)]
3095    pub fn gmdc(
3096        self,
3097    ) -> crate::common::RegisterField<0, 0x3, 1, 0, cfdgctr::Gmdc, Cfdgctr_SPEC, crate::common::RW>
3098    {
3099        crate::common::RegisterField::<0,0x3,1,0,cfdgctr::Gmdc, Cfdgctr_SPEC,crate::common::RW>::from_register(self,0)
3100    }
3101    #[doc = "Global Sleep Request"]
3102    #[inline(always)]
3103    pub fn gslpr(
3104        self,
3105    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdgctr::Gslpr, Cfdgctr_SPEC, crate::common::RW>
3106    {
3107        crate::common::RegisterField::<2,0x1,1,0,cfdgctr::Gslpr, Cfdgctr_SPEC,crate::common::RW>::from_register(self,0)
3108    }
3109    #[doc = "DLC Check Interrupt Enable"]
3110    #[inline(always)]
3111    pub fn deie(
3112        self,
3113    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdgctr::Deie, Cfdgctr_SPEC, crate::common::RW>
3114    {
3115        crate::common::RegisterField::<8,0x1,1,0,cfdgctr::Deie, Cfdgctr_SPEC,crate::common::RW>::from_register(self,0)
3116    }
3117    #[doc = "Message Lost Error Interrupt Enable"]
3118    #[inline(always)]
3119    pub fn meie(
3120        self,
3121    ) -> crate::common::RegisterField<9, 0x1, 1, 0, cfdgctr::Meie, Cfdgctr_SPEC, crate::common::RW>
3122    {
3123        crate::common::RegisterField::<9,0x1,1,0,cfdgctr::Meie, Cfdgctr_SPEC,crate::common::RW>::from_register(self,0)
3124    }
3125    #[doc = "TX History List Entry Lost Interrupt Enable"]
3126    #[inline(always)]
3127    pub fn thleie(
3128        self,
3129    ) -> crate::common::RegisterField<10, 0x1, 1, 0, cfdgctr::Thleie, Cfdgctr_SPEC, crate::common::RW>
3130    {
3131        crate::common::RegisterField::<
3132            10,
3133            0x1,
3134            1,
3135            0,
3136            cfdgctr::Thleie,
3137            Cfdgctr_SPEC,
3138            crate::common::RW,
3139        >::from_register(self, 0)
3140    }
3141    #[doc = "CANFD Message Payload Overflow Flag Interrupt Enable"]
3142    #[inline(always)]
3143    pub fn cmpofie(
3144        self,
3145    ) -> crate::common::RegisterField<
3146        11,
3147        0x1,
3148        1,
3149        0,
3150        cfdgctr::Cmpofie,
3151        Cfdgctr_SPEC,
3152        crate::common::RW,
3153    > {
3154        crate::common::RegisterField::<
3155            11,
3156            0x1,
3157            1,
3158            0,
3159            cfdgctr::Cmpofie,
3160            Cfdgctr_SPEC,
3161            crate::common::RW,
3162        >::from_register(self, 0)
3163    }
3164    #[doc = "Timestamp Reset"]
3165    #[inline(always)]
3166    pub fn tsrst(
3167        self,
3168    ) -> crate::common::RegisterField<16, 0x1, 1, 0, cfdgctr::Tsrst, Cfdgctr_SPEC, crate::common::RW>
3169    {
3170        crate::common::RegisterField::<16,0x1,1,0,cfdgctr::Tsrst, Cfdgctr_SPEC,crate::common::RW>::from_register(self,0)
3171    }
3172}
3173impl ::core::default::Default for Cfdgctr {
3174    #[inline(always)]
3175    fn default() -> Cfdgctr {
3176        <crate::RegValueT<Cfdgctr_SPEC> as RegisterValue<_>>::new(5)
3177    }
3178}
3179pub mod cfdgctr {
3180
3181    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3182    pub struct Gmdc_SPEC;
3183    pub type Gmdc = crate::EnumBitfieldStruct<u8, Gmdc_SPEC>;
3184    impl Gmdc {
3185        #[doc = "Global operation mode request"]
3186        pub const _00: Self = Self::new(0);
3187        #[doc = "Global reset mode request"]
3188        pub const _01: Self = Self::new(1);
3189        #[doc = "Global halt mode request"]
3190        pub const _10: Self = Self::new(2);
3191        #[doc = "Keep current value"]
3192        pub const _11: Self = Self::new(3);
3193    }
3194    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3195    pub struct Gslpr_SPEC;
3196    pub type Gslpr = crate::EnumBitfieldStruct<u8, Gslpr_SPEC>;
3197    impl Gslpr {
3198        #[doc = "Global sleep request disabled"]
3199        pub const _0: Self = Self::new(0);
3200        #[doc = "Global sleep request enabled"]
3201        pub const _1: Self = Self::new(1);
3202    }
3203    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3204    pub struct Deie_SPEC;
3205    pub type Deie = crate::EnumBitfieldStruct<u8, Deie_SPEC>;
3206    impl Deie {
3207        #[doc = "DLC check interrupt disabled"]
3208        pub const _0: Self = Self::new(0);
3209        #[doc = "DLC check interrupt enabled"]
3210        pub const _1: Self = Self::new(1);
3211    }
3212    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3213    pub struct Meie_SPEC;
3214    pub type Meie = crate::EnumBitfieldStruct<u8, Meie_SPEC>;
3215    impl Meie {
3216        #[doc = "Message lost error interrupt disabled"]
3217        pub const _0: Self = Self::new(0);
3218        #[doc = "Message lost error interrupt enabled"]
3219        pub const _1: Self = Self::new(1);
3220    }
3221    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3222    pub struct Thleie_SPEC;
3223    pub type Thleie = crate::EnumBitfieldStruct<u8, Thleie_SPEC>;
3224    impl Thleie {
3225        #[doc = "TX history list entry lost interrupt disabled"]
3226        pub const _0: Self = Self::new(0);
3227        #[doc = "TX history list entry lost interrupt enabled"]
3228        pub const _1: Self = Self::new(1);
3229    }
3230    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3231    pub struct Cmpofie_SPEC;
3232    pub type Cmpofie = crate::EnumBitfieldStruct<u8, Cmpofie_SPEC>;
3233    impl Cmpofie {
3234        #[doc = "CANFD message payload overflow flag interrupt disabled"]
3235        pub const _0: Self = Self::new(0);
3236        #[doc = "CANFD message payload overflow flag interrupt enabled"]
3237        pub const _1: Self = Self::new(1);
3238    }
3239    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3240    pub struct Tsrst_SPEC;
3241    pub type Tsrst = crate::EnumBitfieldStruct<u8, Tsrst_SPEC>;
3242    impl Tsrst {
3243        #[doc = "Timestamp not reset"]
3244        pub const _0: Self = Self::new(0);
3245        #[doc = "Timestamp reset"]
3246        pub const _1: Self = Self::new(1);
3247    }
3248}
3249#[doc(hidden)]
3250#[derive(Copy, Clone, Eq, PartialEq)]
3251pub struct Cfdgsts_SPEC;
3252impl crate::sealed::RegSpec for Cfdgsts_SPEC {
3253    type DataType = u32;
3254}
3255#[doc = "Global Status Register"]
3256pub type Cfdgsts = crate::RegValueT<Cfdgsts_SPEC>;
3257
3258impl Cfdgsts {
3259    #[doc = "Global Reset Status"]
3260    #[inline(always)]
3261    pub fn grststs(
3262        self,
3263    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdgsts::Grststs, Cfdgsts_SPEC, crate::common::R>
3264    {
3265        crate::common::RegisterField::<0,0x1,1,0,cfdgsts::Grststs, Cfdgsts_SPEC,crate::common::R>::from_register(self,0)
3266    }
3267    #[doc = "Global Halt Status"]
3268    #[inline(always)]
3269    pub fn ghltsts(
3270        self,
3271    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdgsts::Ghltsts, Cfdgsts_SPEC, crate::common::R>
3272    {
3273        crate::common::RegisterField::<1,0x1,1,0,cfdgsts::Ghltsts, Cfdgsts_SPEC,crate::common::R>::from_register(self,0)
3274    }
3275    #[doc = "Global Sleep Status"]
3276    #[inline(always)]
3277    pub fn gslpsts(
3278        self,
3279    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdgsts::Gslpsts, Cfdgsts_SPEC, crate::common::R>
3280    {
3281        crate::common::RegisterField::<2,0x1,1,0,cfdgsts::Gslpsts, Cfdgsts_SPEC,crate::common::R>::from_register(self,0)
3282    }
3283    #[doc = "Global RAM Initialization"]
3284    #[inline(always)]
3285    pub fn graminit(
3286        self,
3287    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdgsts::Graminit, Cfdgsts_SPEC, crate::common::R>
3288    {
3289        crate::common::RegisterField::<
3290            3,
3291            0x1,
3292            1,
3293            0,
3294            cfdgsts::Graminit,
3295            Cfdgsts_SPEC,
3296            crate::common::R,
3297        >::from_register(self, 0)
3298    }
3299}
3300impl ::core::default::Default for Cfdgsts {
3301    #[inline(always)]
3302    fn default() -> Cfdgsts {
3303        <crate::RegValueT<Cfdgsts_SPEC> as RegisterValue<_>>::new(13)
3304    }
3305}
3306pub mod cfdgsts {
3307
3308    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3309    pub struct Grststs_SPEC;
3310    pub type Grststs = crate::EnumBitfieldStruct<u8, Grststs_SPEC>;
3311    impl Grststs {
3312        #[doc = "Not in Reset mode"]
3313        pub const _0: Self = Self::new(0);
3314        #[doc = "In Reset mode"]
3315        pub const _1: Self = Self::new(1);
3316    }
3317    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3318    pub struct Ghltsts_SPEC;
3319    pub type Ghltsts = crate::EnumBitfieldStruct<u8, Ghltsts_SPEC>;
3320    impl Ghltsts {
3321        #[doc = "Not in Halt mode"]
3322        pub const _0: Self = Self::new(0);
3323        #[doc = "In Halt mode"]
3324        pub const _1: Self = Self::new(1);
3325    }
3326    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3327    pub struct Gslpsts_SPEC;
3328    pub type Gslpsts = crate::EnumBitfieldStruct<u8, Gslpsts_SPEC>;
3329    impl Gslpsts {
3330        #[doc = "Not in Sleep mode"]
3331        pub const _0: Self = Self::new(0);
3332        #[doc = "In Sleep mode"]
3333        pub const _1: Self = Self::new(1);
3334    }
3335    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3336    pub struct Graminit_SPEC;
3337    pub type Graminit = crate::EnumBitfieldStruct<u8, Graminit_SPEC>;
3338    impl Graminit {
3339        #[doc = "RAM initialization is complete"]
3340        pub const _0: Self = Self::new(0);
3341        #[doc = "RAM initialization is ongoing"]
3342        pub const _1: Self = Self::new(1);
3343    }
3344}
3345#[doc(hidden)]
3346#[derive(Copy, Clone, Eq, PartialEq)]
3347pub struct Cfdgerfl_SPEC;
3348impl crate::sealed::RegSpec for Cfdgerfl_SPEC {
3349    type DataType = u32;
3350}
3351#[doc = "Global Error Flag Register"]
3352pub type Cfdgerfl = crate::RegValueT<Cfdgerfl_SPEC>;
3353
3354impl Cfdgerfl {
3355    #[doc = "DLC Error Flag"]
3356    #[inline(always)]
3357    pub fn def(
3358        self,
3359    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdgerfl::Def, Cfdgerfl_SPEC, crate::common::RW>
3360    {
3361        crate::common::RegisterField::<0,0x1,1,0,cfdgerfl::Def, Cfdgerfl_SPEC,crate::common::RW>::from_register(self,0)
3362    }
3363    #[doc = "Message Lost Error Status"]
3364    #[inline(always)]
3365    pub fn mes(
3366        self,
3367    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdgerfl::Mes, Cfdgerfl_SPEC, crate::common::R>
3368    {
3369        crate::common::RegisterField::<1,0x1,1,0,cfdgerfl::Mes, Cfdgerfl_SPEC,crate::common::R>::from_register(self,0)
3370    }
3371    #[doc = "TX History List Entry Lost Error Status"]
3372    #[inline(always)]
3373    pub fn thles(
3374        self,
3375    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdgerfl::Thles, Cfdgerfl_SPEC, crate::common::R>
3376    {
3377        crate::common::RegisterField::<2,0x1,1,0,cfdgerfl::Thles, Cfdgerfl_SPEC,crate::common::R>::from_register(self,0)
3378    }
3379    #[doc = "CANFD Message Payload Overflow Flag"]
3380    #[inline(always)]
3381    pub fn cmpof(
3382        self,
3383    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdgerfl::Cmpof, Cfdgerfl_SPEC, crate::common::RW>
3384    {
3385        crate::common::RegisterField::<
3386            3,
3387            0x1,
3388            1,
3389            0,
3390            cfdgerfl::Cmpof,
3391            Cfdgerfl_SPEC,
3392            crate::common::RW,
3393        >::from_register(self, 0)
3394    }
3395    #[doc = "ECC Error Flag"]
3396    #[inline(always)]
3397    pub fn eef0(
3398        self,
3399    ) -> crate::common::RegisterField<16, 0x1, 1, 0, cfdgerfl::Eef0, Cfdgerfl_SPEC, crate::common::RW>
3400    {
3401        crate::common::RegisterField::<
3402            16,
3403            0x1,
3404            1,
3405            0,
3406            cfdgerfl::Eef0,
3407            Cfdgerfl_SPEC,
3408            crate::common::RW,
3409        >::from_register(self, 0)
3410    }
3411}
3412impl ::core::default::Default for Cfdgerfl {
3413    #[inline(always)]
3414    fn default() -> Cfdgerfl {
3415        <crate::RegValueT<Cfdgerfl_SPEC> as RegisterValue<_>>::new(0)
3416    }
3417}
3418pub mod cfdgerfl {
3419
3420    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3421    pub struct Def_SPEC;
3422    pub type Def = crate::EnumBitfieldStruct<u8, Def_SPEC>;
3423    impl Def {
3424        #[doc = "DLC error not detected"]
3425        pub const _0: Self = Self::new(0);
3426        #[doc = "DLC error detected"]
3427        pub const _1: Self = Self::new(1);
3428    }
3429    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3430    pub struct Mes_SPEC;
3431    pub type Mes = crate::EnumBitfieldStruct<u8, Mes_SPEC>;
3432    impl Mes {
3433        #[doc = "Message lost error not detected"]
3434        pub const _0: Self = Self::new(0);
3435        #[doc = "Message lost error detected"]
3436        pub const _1: Self = Self::new(1);
3437    }
3438    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3439    pub struct Thles_SPEC;
3440    pub type Thles = crate::EnumBitfieldStruct<u8, Thles_SPEC>;
3441    impl Thles {
3442        #[doc = "TX history list entry lost error not detected"]
3443        pub const _0: Self = Self::new(0);
3444        #[doc = "TX history list entry lost error detected"]
3445        pub const _1: Self = Self::new(1);
3446    }
3447    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3448    pub struct Cmpof_SPEC;
3449    pub type Cmpof = crate::EnumBitfieldStruct<u8, Cmpof_SPEC>;
3450    impl Cmpof {
3451        #[doc = "CANFD message payload overflow not detected"]
3452        pub const _0: Self = Self::new(0);
3453        #[doc = "CANFD message payload overflow detected"]
3454        pub const _1: Self = Self::new(1);
3455    }
3456    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3457    pub struct Eef0_SPEC;
3458    pub type Eef0 = crate::EnumBitfieldStruct<u8, Eef0_SPEC>;
3459    impl Eef0 {
3460        #[doc = "ECC error not detected during TX-SCAN"]
3461        pub const _0: Self = Self::new(0);
3462        #[doc = "ECC error detected during TX-SCAN"]
3463        pub const _1: Self = Self::new(1);
3464    }
3465}
3466#[doc(hidden)]
3467#[derive(Copy, Clone, Eq, PartialEq)]
3468pub struct Cfdgtsc_SPEC;
3469impl crate::sealed::RegSpec for Cfdgtsc_SPEC {
3470    type DataType = u32;
3471}
3472#[doc = "Global Timestamp Counter Register"]
3473pub type Cfdgtsc = crate::RegValueT<Cfdgtsc_SPEC>;
3474
3475impl Cfdgtsc {
3476    #[doc = "Timestamp value"]
3477    #[inline(always)]
3478    pub fn ts(
3479        self,
3480    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdgtsc_SPEC, crate::common::R> {
3481        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdgtsc_SPEC,crate::common::R>::from_register(self,0)
3482    }
3483}
3484impl ::core::default::Default for Cfdgtsc {
3485    #[inline(always)]
3486    fn default() -> Cfdgtsc {
3487        <crate::RegValueT<Cfdgtsc_SPEC> as RegisterValue<_>>::new(0)
3488    }
3489}
3490
3491#[doc(hidden)]
3492#[derive(Copy, Clone, Eq, PartialEq)]
3493pub struct Cfdgaflectr_SPEC;
3494impl crate::sealed::RegSpec for Cfdgaflectr_SPEC {
3495    type DataType = u32;
3496}
3497#[doc = "Global Acceptance Filter List Entry Control Register"]
3498pub type Cfdgaflectr = crate::RegValueT<Cfdgaflectr_SPEC>;
3499
3500impl Cfdgaflectr {
3501    #[doc = "Acceptance Filter List Page Number"]
3502    #[inline(always)]
3503    pub fn aflpn(
3504        self,
3505    ) -> crate::common::RegisterFieldBool<0, 1, 0, Cfdgaflectr_SPEC, crate::common::RW> {
3506        crate::common::RegisterFieldBool::<0,1,0,Cfdgaflectr_SPEC,crate::common::RW>::from_register(self,0)
3507    }
3508    #[doc = "Acceptance Filter List Data Access Enable"]
3509    #[inline(always)]
3510    pub fn afldae(
3511        self,
3512    ) -> crate::common::RegisterField<
3513        8,
3514        0x1,
3515        1,
3516        0,
3517        cfdgaflectr::Afldae,
3518        Cfdgaflectr_SPEC,
3519        crate::common::RW,
3520    > {
3521        crate::common::RegisterField::<
3522            8,
3523            0x1,
3524            1,
3525            0,
3526            cfdgaflectr::Afldae,
3527            Cfdgaflectr_SPEC,
3528            crate::common::RW,
3529        >::from_register(self, 0)
3530    }
3531}
3532impl ::core::default::Default for Cfdgaflectr {
3533    #[inline(always)]
3534    fn default() -> Cfdgaflectr {
3535        <crate::RegValueT<Cfdgaflectr_SPEC> as RegisterValue<_>>::new(0)
3536    }
3537}
3538pub mod cfdgaflectr {
3539
3540    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3541    pub struct Afldae_SPEC;
3542    pub type Afldae = crate::EnumBitfieldStruct<u8, Afldae_SPEC>;
3543    impl Afldae {
3544        #[doc = "Acceptance Filter List data access disabled"]
3545        pub const _0: Self = Self::new(0);
3546        #[doc = "Acceptance Filter List data access enabled"]
3547        pub const _1: Self = Self::new(1);
3548    }
3549}
3550#[doc(hidden)]
3551#[derive(Copy, Clone, Eq, PartialEq)]
3552pub struct Cfdgaflcfg_SPEC;
3553impl crate::sealed::RegSpec for Cfdgaflcfg_SPEC {
3554    type DataType = u32;
3555}
3556#[doc = "Global Acceptance Filter List Configuration Register"]
3557pub type Cfdgaflcfg = crate::RegValueT<Cfdgaflcfg_SPEC>;
3558
3559impl Cfdgaflcfg {
3560    #[doc = "Rule Number"]
3561    #[inline(always)]
3562    pub fn rnc0(
3563        self,
3564    ) -> crate::common::RegisterField<16, 0x3f, 1, 0, u8, Cfdgaflcfg_SPEC, crate::common::RW> {
3565        crate::common::RegisterField::<16,0x3f,1,0,u8, Cfdgaflcfg_SPEC,crate::common::RW>::from_register(self,0)
3566    }
3567}
3568impl ::core::default::Default for Cfdgaflcfg {
3569    #[inline(always)]
3570    fn default() -> Cfdgaflcfg {
3571        <crate::RegValueT<Cfdgaflcfg_SPEC> as RegisterValue<_>>::new(0)
3572    }
3573}
3574
3575#[doc(hidden)]
3576#[derive(Copy, Clone, Eq, PartialEq)]
3577pub struct Cfdrmnb_SPEC;
3578impl crate::sealed::RegSpec for Cfdrmnb_SPEC {
3579    type DataType = u32;
3580}
3581#[doc = "RX Message Buffer Number Register"]
3582pub type Cfdrmnb = crate::RegValueT<Cfdrmnb_SPEC>;
3583
3584impl Cfdrmnb {
3585    #[doc = "Number of RX Message Buffers"]
3586    #[inline(always)]
3587    pub fn nrxmb(
3588        self,
3589    ) -> crate::common::RegisterField<0, 0x3f, 1, 0, u8, Cfdrmnb_SPEC, crate::common::RW> {
3590        crate::common::RegisterField::<0,0x3f,1,0,u8, Cfdrmnb_SPEC,crate::common::RW>::from_register(self,0)
3591    }
3592    #[doc = "Reception Message Buffer Payload Data Size"]
3593    #[inline(always)]
3594    pub fn rmpls(
3595        self,
3596    ) -> crate::common::RegisterField<8, 0x7, 1, 0, cfdrmnb::Rmpls, Cfdrmnb_SPEC, crate::common::RW>
3597    {
3598        crate::common::RegisterField::<8,0x7,1,0,cfdrmnb::Rmpls, Cfdrmnb_SPEC,crate::common::RW>::from_register(self,0)
3599    }
3600}
3601impl ::core::default::Default for Cfdrmnb {
3602    #[inline(always)]
3603    fn default() -> Cfdrmnb {
3604        <crate::RegValueT<Cfdrmnb_SPEC> as RegisterValue<_>>::new(0)
3605    }
3606}
3607pub mod cfdrmnb {
3608
3609    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3610    pub struct Rmpls_SPEC;
3611    pub type Rmpls = crate::EnumBitfieldStruct<u8, Rmpls_SPEC>;
3612    impl Rmpls {
3613        #[doc = "8 bytes"]
3614        pub const _000: Self = Self::new(0);
3615        #[doc = "12 bytes"]
3616        pub const _001: Self = Self::new(1);
3617        #[doc = "16 bytes"]
3618        pub const _010: Self = Self::new(2);
3619        #[doc = "20 bytes"]
3620        pub const _011: Self = Self::new(3);
3621        #[doc = "24 bytes"]
3622        pub const _100: Self = Self::new(4);
3623        #[doc = "32 bytes"]
3624        pub const _101: Self = Self::new(5);
3625        #[doc = "48 bytes"]
3626        pub const _110: Self = Self::new(6);
3627        #[doc = "64 bytes"]
3628        pub const _111: Self = Self::new(7);
3629    }
3630}
3631#[doc(hidden)]
3632#[derive(Copy, Clone, Eq, PartialEq)]
3633pub struct Cfdrmnd_SPEC;
3634impl crate::sealed::RegSpec for Cfdrmnd_SPEC {
3635    type DataType = u32;
3636}
3637#[doc = "RX Message Buffer New Data Register"]
3638pub type Cfdrmnd = crate::RegValueT<Cfdrmnd_SPEC>;
3639
3640impl Cfdrmnd {
3641    #[doc = "RX Message Buffer New Data Status"]
3642    #[inline(always)]
3643    pub fn rmns(
3644        self,
3645    ) -> crate::common::RegisterField<
3646        0,
3647        0xffffffff,
3648        1,
3649        0,
3650        cfdrmnd::Rmns,
3651        Cfdrmnd_SPEC,
3652        crate::common::RW,
3653    > {
3654        crate::common::RegisterField::<
3655            0,
3656            0xffffffff,
3657            1,
3658            0,
3659            cfdrmnd::Rmns,
3660            Cfdrmnd_SPEC,
3661            crate::common::RW,
3662        >::from_register(self, 0)
3663    }
3664}
3665impl ::core::default::Default for Cfdrmnd {
3666    #[inline(always)]
3667    fn default() -> Cfdrmnd {
3668        <crate::RegValueT<Cfdrmnd_SPEC> as RegisterValue<_>>::new(0)
3669    }
3670}
3671pub mod cfdrmnd {
3672
3673    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3674    pub struct Rmns_SPEC;
3675    pub type Rmns = crate::EnumBitfieldStruct<u8, Rmns_SPEC>;
3676    impl Rmns {
3677        #[doc = "New data not stored in corresponding RX message buffer"]
3678        pub const _0: Self = Self::new(0);
3679        #[doc = "New data stored in corresponding RX message buffer"]
3680        pub const _1: Self = Self::new(1);
3681    }
3682}
3683#[doc(hidden)]
3684#[derive(Copy, Clone, Eq, PartialEq)]
3685pub struct Cfdrmiec_SPEC;
3686impl crate::sealed::RegSpec for Cfdrmiec_SPEC {
3687    type DataType = u32;
3688}
3689#[doc = "RX Message Buffer Interrupt Enable Configuration Register"]
3690pub type Cfdrmiec = crate::RegValueT<Cfdrmiec_SPEC>;
3691
3692impl Cfdrmiec {
3693    #[doc = "RX Message Buffer Interrupt Enable"]
3694    #[inline(always)]
3695    pub fn rmieg(
3696        self,
3697    ) -> crate::common::RegisterField<
3698        0,
3699        0xffffffff,
3700        1,
3701        0,
3702        cfdrmiec::RmiEg,
3703        Cfdrmiec_SPEC,
3704        crate::common::RW,
3705    > {
3706        crate::common::RegisterField::<
3707            0,
3708            0xffffffff,
3709            1,
3710            0,
3711            cfdrmiec::RmiEg,
3712            Cfdrmiec_SPEC,
3713            crate::common::RW,
3714        >::from_register(self, 0)
3715    }
3716}
3717impl ::core::default::Default for Cfdrmiec {
3718    #[inline(always)]
3719    fn default() -> Cfdrmiec {
3720        <crate::RegValueT<Cfdrmiec_SPEC> as RegisterValue<_>>::new(0)
3721    }
3722}
3723pub mod cfdrmiec {
3724
3725    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3726    pub struct RmiEg_SPEC;
3727    pub type RmiEg = crate::EnumBitfieldStruct<u8, RmiEg_SPEC>;
3728    impl RmiEg {
3729        #[doc = "RX Message Buffer Interrupt disabled for corresponding RX message buffer"]
3730        pub const _0: Self = Self::new(0);
3731        #[doc = "RX Message Buffer Interrupt enabled for corresponding RX message buffer"]
3732        pub const _1: Self = Self::new(1);
3733    }
3734}
3735#[doc(hidden)]
3736#[derive(Copy, Clone, Eq, PartialEq)]
3737pub struct Cfdrfcc_SPEC;
3738impl crate::sealed::RegSpec for Cfdrfcc_SPEC {
3739    type DataType = u32;
3740}
3741#[doc = "RX FIFO Configuration/Control Registers %s"]
3742pub type Cfdrfcc = crate::RegValueT<Cfdrfcc_SPEC>;
3743
3744impl Cfdrfcc {
3745    #[doc = "RX FIFO Enable"]
3746    #[inline(always)]
3747    pub fn rfe(
3748        self,
3749    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdrfcc::Rfe, Cfdrfcc_SPEC, crate::common::RW>
3750    {
3751        crate::common::RegisterField::<0,0x1,1,0,cfdrfcc::Rfe, Cfdrfcc_SPEC,crate::common::RW>::from_register(self,0)
3752    }
3753    #[doc = "RX FIFO Interrupt Enable"]
3754    #[inline(always)]
3755    pub fn rfie(
3756        self,
3757    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdrfcc::Rfie, Cfdrfcc_SPEC, crate::common::RW>
3758    {
3759        crate::common::RegisterField::<1,0x1,1,0,cfdrfcc::Rfie, Cfdrfcc_SPEC,crate::common::RW>::from_register(self,0)
3760    }
3761    #[doc = "Rx FIFO Payload Data Size Configuration"]
3762    #[inline(always)]
3763    pub fn rfpls(
3764        self,
3765    ) -> crate::common::RegisterField<4, 0x7, 1, 0, cfdrfcc::Rfpls, Cfdrfcc_SPEC, crate::common::RW>
3766    {
3767        crate::common::RegisterField::<4,0x7,1,0,cfdrfcc::Rfpls, Cfdrfcc_SPEC,crate::common::RW>::from_register(self,0)
3768    }
3769    #[doc = "RX FIFO Depth Configuration"]
3770    #[inline(always)]
3771    pub fn rfdc(
3772        self,
3773    ) -> crate::common::RegisterField<8, 0x7, 1, 0, cfdrfcc::Rfdc, Cfdrfcc_SPEC, crate::common::RW>
3774    {
3775        crate::common::RegisterField::<8,0x7,1,0,cfdrfcc::Rfdc, Cfdrfcc_SPEC,crate::common::RW>::from_register(self,0)
3776    }
3777    #[doc = "RX FIFO Interrupt Mode"]
3778    #[inline(always)]
3779    pub fn rfim(
3780        self,
3781    ) -> crate::common::RegisterField<12, 0x1, 1, 0, cfdrfcc::Rfim, Cfdrfcc_SPEC, crate::common::RW>
3782    {
3783        crate::common::RegisterField::<12,0x1,1,0,cfdrfcc::Rfim, Cfdrfcc_SPEC,crate::common::RW>::from_register(self,0)
3784    }
3785    #[doc = "RX FIFO Interrupt Generation Counter Value"]
3786    #[inline(always)]
3787    pub fn rfigcv(
3788        self,
3789    ) -> crate::common::RegisterField<13, 0x7, 1, 0, cfdrfcc::Rfigcv, Cfdrfcc_SPEC, crate::common::RW>
3790    {
3791        crate::common::RegisterField::<
3792            13,
3793            0x7,
3794            1,
3795            0,
3796            cfdrfcc::Rfigcv,
3797            Cfdrfcc_SPEC,
3798            crate::common::RW,
3799        >::from_register(self, 0)
3800    }
3801}
3802impl ::core::default::Default for Cfdrfcc {
3803    #[inline(always)]
3804    fn default() -> Cfdrfcc {
3805        <crate::RegValueT<Cfdrfcc_SPEC> as RegisterValue<_>>::new(0)
3806    }
3807}
3808pub mod cfdrfcc {
3809
3810    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3811    pub struct Rfe_SPEC;
3812    pub type Rfe = crate::EnumBitfieldStruct<u8, Rfe_SPEC>;
3813    impl Rfe {
3814        #[doc = "FIFO disabled"]
3815        pub const _0: Self = Self::new(0);
3816        #[doc = "FIFO enabled"]
3817        pub const _1: Self = Self::new(1);
3818    }
3819    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3820    pub struct Rfie_SPEC;
3821    pub type Rfie = crate::EnumBitfieldStruct<u8, Rfie_SPEC>;
3822    impl Rfie {
3823        #[doc = "FIFO interrupt generation disabled"]
3824        pub const _0: Self = Self::new(0);
3825        #[doc = "FIFO interrupt generation enabled"]
3826        pub const _1: Self = Self::new(1);
3827    }
3828    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3829    pub struct Rfpls_SPEC;
3830    pub type Rfpls = crate::EnumBitfieldStruct<u8, Rfpls_SPEC>;
3831    impl Rfpls {
3832        #[doc = "8 bytes"]
3833        pub const _000: Self = Self::new(0);
3834        #[doc = "12 bytes"]
3835        pub const _001: Self = Self::new(1);
3836        #[doc = "16 bytes"]
3837        pub const _010: Self = Self::new(2);
3838        #[doc = "20 bytes"]
3839        pub const _011: Self = Self::new(3);
3840        #[doc = "24 bytes"]
3841        pub const _100: Self = Self::new(4);
3842        #[doc = "32 bytes"]
3843        pub const _101: Self = Self::new(5);
3844        #[doc = "48 bytes"]
3845        pub const _110: Self = Self::new(6);
3846        #[doc = "64 bytes"]
3847        pub const _111: Self = Self::new(7);
3848    }
3849    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3850    pub struct Rfdc_SPEC;
3851    pub type Rfdc = crate::EnumBitfieldStruct<u8, Rfdc_SPEC>;
3852    impl Rfdc {
3853        #[doc = "FIFO Depth = 0 message"]
3854        pub const _000: Self = Self::new(0);
3855        #[doc = "FIFO Depth = 4 messages"]
3856        pub const _001: Self = Self::new(1);
3857        #[doc = "FIFO Depth = 8 messages"]
3858        pub const _010: Self = Self::new(2);
3859        #[doc = "FIFO Depth = 16 messages"]
3860        pub const _011: Self = Self::new(3);
3861        #[doc = "FIFO Depth = 32 messages"]
3862        pub const _100: Self = Self::new(4);
3863        #[doc = "FIFO Depth = 48 messages"]
3864        pub const _101: Self = Self::new(5);
3865        #[doc = "Reserved"]
3866        pub const _110: Self = Self::new(6);
3867        #[doc = "Reserved"]
3868        pub const _111: Self = Self::new(7);
3869    }
3870    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3871    pub struct Rfim_SPEC;
3872    pub type Rfim = crate::EnumBitfieldStruct<u8, Rfim_SPEC>;
3873    impl Rfim {
3874        #[doc = "Interrupt generated when RX FIFO counter reaches RFIGCV value from values smaller than RFIGCV"]
3875        pub const _0: Self = Self::new(0);
3876        #[doc = "Interrupt generated at the end of every received message storage"]
3877        pub const _1: Self = Self::new(1);
3878    }
3879    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3880    pub struct Rfigcv_SPEC;
3881    pub type Rfigcv = crate::EnumBitfieldStruct<u8, Rfigcv_SPEC>;
3882    impl Rfigcv {
3883        #[doc = "Interrupt generated when FIFO is 1/8th full"]
3884        pub const _000: Self = Self::new(0);
3885        #[doc = "Interrupt generated when FIFO is 1/4th full"]
3886        pub const _001: Self = Self::new(1);
3887        #[doc = "Interrupt generated when FIFO is 3/8th full"]
3888        pub const _010: Self = Self::new(2);
3889        #[doc = "Interrupt generated when FIFO is 1/2 full"]
3890        pub const _011: Self = Self::new(3);
3891        #[doc = "Interrupt generated when FIFO is 5/8th full"]
3892        pub const _100: Self = Self::new(4);
3893        #[doc = "Interrupt generated when FIFO is 3/4th full"]
3894        pub const _101: Self = Self::new(5);
3895        #[doc = "Interrupt generated when FIFO is 7/8th full"]
3896        pub const _110: Self = Self::new(6);
3897        #[doc = "Interrupt generated when FIFO is full"]
3898        pub const _111: Self = Self::new(7);
3899    }
3900}
3901#[doc(hidden)]
3902#[derive(Copy, Clone, Eq, PartialEq)]
3903pub struct Cfdrfsts_SPEC;
3904impl crate::sealed::RegSpec for Cfdrfsts_SPEC {
3905    type DataType = u32;
3906}
3907#[doc = "RX FIFO Status Registers %s"]
3908pub type Cfdrfsts = crate::RegValueT<Cfdrfsts_SPEC>;
3909
3910impl Cfdrfsts {
3911    #[doc = "RX FIFO Empty"]
3912    #[inline(always)]
3913    pub fn rfemp(
3914        self,
3915    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdrfsts::Rfemp, Cfdrfsts_SPEC, crate::common::R>
3916    {
3917        crate::common::RegisterField::<0,0x1,1,0,cfdrfsts::Rfemp, Cfdrfsts_SPEC,crate::common::R>::from_register(self,0)
3918    }
3919    #[doc = "RX FIFO Full"]
3920    #[inline(always)]
3921    pub fn rffll(
3922        self,
3923    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdrfsts::Rffll, Cfdrfsts_SPEC, crate::common::R>
3924    {
3925        crate::common::RegisterField::<1,0x1,1,0,cfdrfsts::Rffll, Cfdrfsts_SPEC,crate::common::R>::from_register(self,0)
3926    }
3927    #[doc = "RX FIFO Message Lost"]
3928    #[inline(always)]
3929    pub fn rfmlt(
3930        self,
3931    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdrfsts::Rfmlt, Cfdrfsts_SPEC, crate::common::RW>
3932    {
3933        crate::common::RegisterField::<
3934            2,
3935            0x1,
3936            1,
3937            0,
3938            cfdrfsts::Rfmlt,
3939            Cfdrfsts_SPEC,
3940            crate::common::RW,
3941        >::from_register(self, 0)
3942    }
3943    #[doc = "RX FIFO Interrupt Flag"]
3944    #[inline(always)]
3945    pub fn rfif(
3946        self,
3947    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdrfsts::Rfif, Cfdrfsts_SPEC, crate::common::RW>
3948    {
3949        crate::common::RegisterField::<3,0x1,1,0,cfdrfsts::Rfif, Cfdrfsts_SPEC,crate::common::RW>::from_register(self,0)
3950    }
3951    #[doc = "RX FIFO Message Count"]
3952    #[inline(always)]
3953    pub fn rfmc(
3954        self,
3955    ) -> crate::common::RegisterField<8, 0x3f, 1, 0, u8, Cfdrfsts_SPEC, crate::common::R> {
3956        crate::common::RegisterField::<8,0x3f,1,0,u8, Cfdrfsts_SPEC,crate::common::R>::from_register(self,0)
3957    }
3958}
3959impl ::core::default::Default for Cfdrfsts {
3960    #[inline(always)]
3961    fn default() -> Cfdrfsts {
3962        <crate::RegValueT<Cfdrfsts_SPEC> as RegisterValue<_>>::new(1)
3963    }
3964}
3965pub mod cfdrfsts {
3966
3967    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3968    pub struct Rfemp_SPEC;
3969    pub type Rfemp = crate::EnumBitfieldStruct<u8, Rfemp_SPEC>;
3970    impl Rfemp {
3971        #[doc = "FIFO not empty"]
3972        pub const _0: Self = Self::new(0);
3973        #[doc = "FIFO empty"]
3974        pub const _1: Self = Self::new(1);
3975    }
3976    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3977    pub struct Rffll_SPEC;
3978    pub type Rffll = crate::EnumBitfieldStruct<u8, Rffll_SPEC>;
3979    impl Rffll {
3980        #[doc = "FIFO not full"]
3981        pub const _0: Self = Self::new(0);
3982        #[doc = "FIFO full"]
3983        pub const _1: Self = Self::new(1);
3984    }
3985    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3986    pub struct Rfmlt_SPEC;
3987    pub type Rfmlt = crate::EnumBitfieldStruct<u8, Rfmlt_SPEC>;
3988    impl Rfmlt {
3989        #[doc = "No message lost in FIFO"]
3990        pub const _0: Self = Self::new(0);
3991        #[doc = "FIFO message lost"]
3992        pub const _1: Self = Self::new(1);
3993    }
3994    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3995    pub struct Rfif_SPEC;
3996    pub type Rfif = crate::EnumBitfieldStruct<u8, Rfif_SPEC>;
3997    impl Rfif {
3998        #[doc = "FIFO interrupt condition not satisfied"]
3999        pub const _0: Self = Self::new(0);
4000        #[doc = "FIFO interrupt condition satisfied"]
4001        pub const _1: Self = Self::new(1);
4002    }
4003}
4004#[doc(hidden)]
4005#[derive(Copy, Clone, Eq, PartialEq)]
4006pub struct Cfdrfpctr_SPEC;
4007impl crate::sealed::RegSpec for Cfdrfpctr_SPEC {
4008    type DataType = u32;
4009}
4010#[doc = "RX FIFO Pointer Control Registers %s"]
4011pub type Cfdrfpctr = crate::RegValueT<Cfdrfpctr_SPEC>;
4012
4013impl Cfdrfpctr {
4014    #[doc = "RX FIFO Pointer Control"]
4015    #[inline(always)]
4016    pub fn rfpc(
4017        self,
4018    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfpctr_SPEC, crate::common::W> {
4019        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfpctr_SPEC,crate::common::W>::from_register(self,0)
4020    }
4021}
4022impl ::core::default::Default for Cfdrfpctr {
4023    #[inline(always)]
4024    fn default() -> Cfdrfpctr {
4025        <crate::RegValueT<Cfdrfpctr_SPEC> as RegisterValue<_>>::new(0)
4026    }
4027}
4028
4029#[doc(hidden)]
4030#[derive(Copy, Clone, Eq, PartialEq)]
4031pub struct Cfdcfcc_SPEC;
4032impl crate::sealed::RegSpec for Cfdcfcc_SPEC {
4033    type DataType = u32;
4034}
4035#[doc = "Common FIFO Configuration/Control Register"]
4036pub type Cfdcfcc = crate::RegValueT<Cfdcfcc_SPEC>;
4037
4038impl Cfdcfcc {
4039    #[doc = "Common FIFO Enable"]
4040    #[inline(always)]
4041    pub fn cfe(
4042        self,
4043    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdcfcc::Cfe, Cfdcfcc_SPEC, crate::common::RW>
4044    {
4045        crate::common::RegisterField::<0,0x1,1,0,cfdcfcc::Cfe, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4046    }
4047    #[doc = "Common FIFO RX Interrupt Enable"]
4048    #[inline(always)]
4049    pub fn cfrxie(
4050        self,
4051    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdcfcc::Cfrxie, Cfdcfcc_SPEC, crate::common::RW>
4052    {
4053        crate::common::RegisterField::<1,0x1,1,0,cfdcfcc::Cfrxie, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4054    }
4055    #[doc = "Common FIFO TX Interrupt Enable"]
4056    #[inline(always)]
4057    pub fn cftxie(
4058        self,
4059    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdcfcc::Cftxie, Cfdcfcc_SPEC, crate::common::RW>
4060    {
4061        crate::common::RegisterField::<2,0x1,1,0,cfdcfcc::Cftxie, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4062    }
4063    #[doc = "Common FIFO Payload Data Size Configuration"]
4064    #[inline(always)]
4065    pub fn cfpls(
4066        self,
4067    ) -> crate::common::RegisterField<4, 0x7, 1, 0, cfdcfcc::Cfpls, Cfdcfcc_SPEC, crate::common::RW>
4068    {
4069        crate::common::RegisterField::<4,0x7,1,0,cfdcfcc::Cfpls, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4070    }
4071    #[doc = "Common FIFO Mode"]
4072    #[inline(always)]
4073    pub fn cfm(
4074        self,
4075    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdcfcc::Cfm, Cfdcfcc_SPEC, crate::common::RW>
4076    {
4077        crate::common::RegisterField::<8,0x1,1,0,cfdcfcc::Cfm, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4078    }
4079    #[doc = "Common FIFO Interval Timer Source Select"]
4080    #[inline(always)]
4081    pub fn cfitss(
4082        self,
4083    ) -> crate::common::RegisterField<10, 0x1, 1, 0, cfdcfcc::Cfitss, Cfdcfcc_SPEC, crate::common::RW>
4084    {
4085        crate::common::RegisterField::<
4086            10,
4087            0x1,
4088            1,
4089            0,
4090            cfdcfcc::Cfitss,
4091            Cfdcfcc_SPEC,
4092            crate::common::RW,
4093        >::from_register(self, 0)
4094    }
4095    #[doc = "Common FIFO Interval Timer Resolution"]
4096    #[inline(always)]
4097    pub fn cfitr(
4098        self,
4099    ) -> crate::common::RegisterField<11, 0x1, 1, 0, cfdcfcc::Cfitr, Cfdcfcc_SPEC, crate::common::RW>
4100    {
4101        crate::common::RegisterField::<11,0x1,1,0,cfdcfcc::Cfitr, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4102    }
4103    #[doc = "Common FIFO Interrupt Mode"]
4104    #[inline(always)]
4105    pub fn cfim(
4106        self,
4107    ) -> crate::common::RegisterField<12, 0x1, 1, 0, cfdcfcc::Cfim, Cfdcfcc_SPEC, crate::common::RW>
4108    {
4109        crate::common::RegisterField::<12,0x1,1,0,cfdcfcc::Cfim, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4110    }
4111    #[doc = "Common FIFO Interrupt Generation Counter Value"]
4112    #[inline(always)]
4113    pub fn cfigcv(
4114        self,
4115    ) -> crate::common::RegisterField<13, 0x7, 1, 0, cfdcfcc::Cfigcv, Cfdcfcc_SPEC, crate::common::RW>
4116    {
4117        crate::common::RegisterField::<
4118            13,
4119            0x7,
4120            1,
4121            0,
4122            cfdcfcc::Cfigcv,
4123            Cfdcfcc_SPEC,
4124            crate::common::RW,
4125        >::from_register(self, 0)
4126    }
4127    #[doc = "Common FIFO TX Message Buffer Link"]
4128    #[inline(always)]
4129    pub fn cftml(
4130        self,
4131    ) -> crate::common::RegisterField<16, 0x3, 1, 0, u8, Cfdcfcc_SPEC, crate::common::RW> {
4132        crate::common::RegisterField::<16,0x3,1,0,u8, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4133    }
4134    #[doc = "Common FIFO Depth Configuration"]
4135    #[inline(always)]
4136    pub fn cfdc(
4137        self,
4138    ) -> crate::common::RegisterField<21, 0x7, 1, 0, cfdcfcc::Cfdc, Cfdcfcc_SPEC, crate::common::RW>
4139    {
4140        crate::common::RegisterField::<21,0x7,1,0,cfdcfcc::Cfdc, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4141    }
4142    #[doc = "Common FIFO Interval Transmission Time"]
4143    #[inline(always)]
4144    pub fn cfitt(
4145        self,
4146    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdcfcc_SPEC, crate::common::RW> {
4147        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdcfcc_SPEC,crate::common::RW>::from_register(self,0)
4148    }
4149}
4150impl ::core::default::Default for Cfdcfcc {
4151    #[inline(always)]
4152    fn default() -> Cfdcfcc {
4153        <crate::RegValueT<Cfdcfcc_SPEC> as RegisterValue<_>>::new(0)
4154    }
4155}
4156pub mod cfdcfcc {
4157
4158    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4159    pub struct Cfe_SPEC;
4160    pub type Cfe = crate::EnumBitfieldStruct<u8, Cfe_SPEC>;
4161    impl Cfe {
4162        #[doc = "FIFO disabled"]
4163        pub const _0: Self = Self::new(0);
4164        #[doc = "FIFO enabled"]
4165        pub const _1: Self = Self::new(1);
4166    }
4167    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4168    pub struct Cfrxie_SPEC;
4169    pub type Cfrxie = crate::EnumBitfieldStruct<u8, Cfrxie_SPEC>;
4170    impl Cfrxie {
4171        #[doc = "FIFO interrupt generation disabled for Frame RX"]
4172        pub const _0: Self = Self::new(0);
4173        #[doc = "FIFO interrupt generation enabled for Frame RX"]
4174        pub const _1: Self = Self::new(1);
4175    }
4176    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4177    pub struct Cftxie_SPEC;
4178    pub type Cftxie = crate::EnumBitfieldStruct<u8, Cftxie_SPEC>;
4179    impl Cftxie {
4180        #[doc = "FIFO interrupt generation disabled for Frame TX"]
4181        pub const _0: Self = Self::new(0);
4182        #[doc = "FIFO interrupt generation enabled for Frame TX"]
4183        pub const _1: Self = Self::new(1);
4184    }
4185    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4186    pub struct Cfpls_SPEC;
4187    pub type Cfpls = crate::EnumBitfieldStruct<u8, Cfpls_SPEC>;
4188    impl Cfpls {
4189        #[doc = "8 bytes"]
4190        pub const _000: Self = Self::new(0);
4191        #[doc = "12 bytes"]
4192        pub const _001: Self = Self::new(1);
4193        #[doc = "16 bytes"]
4194        pub const _010: Self = Self::new(2);
4195        #[doc = "20 bytes"]
4196        pub const _011: Self = Self::new(3);
4197        #[doc = "24 bytes"]
4198        pub const _100: Self = Self::new(4);
4199        #[doc = "32 bytes"]
4200        pub const _101: Self = Self::new(5);
4201        #[doc = "48 bytes"]
4202        pub const _110: Self = Self::new(6);
4203        #[doc = "64 bytes"]
4204        pub const _111: Self = Self::new(7);
4205    }
4206    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4207    pub struct Cfm_SPEC;
4208    pub type Cfm = crate::EnumBitfieldStruct<u8, Cfm_SPEC>;
4209    impl Cfm {
4210        #[doc = "RX FIFO mode"]
4211        pub const _0: Self = Self::new(0);
4212        #[doc = "TX FIFO mode"]
4213        pub const _1: Self = Self::new(1);
4214    }
4215    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4216    pub struct Cfitss_SPEC;
4217    pub type Cfitss = crate::EnumBitfieldStruct<u8, Cfitss_SPEC>;
4218    impl Cfitss {
4219        #[doc = "Reference clock (× 1 / × 10 period)"]
4220        pub const _0: Self = Self::new(0);
4221        #[doc = "Bit time clock of related channel (FIFO is linked to fixed channel)"]
4222        pub const _1: Self = Self::new(1);
4223    }
4224    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4225    pub struct Cfitr_SPEC;
4226    pub type Cfitr = crate::EnumBitfieldStruct<u8, Cfitr_SPEC>;
4227    impl Cfitr {
4228        #[doc = "Reference clock period × 1"]
4229        pub const _0: Self = Self::new(0);
4230        #[doc = "Reference clock period × 10"]
4231        pub const _1: Self = Self::new(1);
4232    }
4233    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4234    pub struct Cfim_SPEC;
4235    pub type Cfim = crate::EnumBitfieldStruct<u8, Cfim_SPEC>;
4236    impl Cfim {
4237        #[doc = "RX FIFO mode: RX interrupt generated when Common FIFO counter reaches CFIGCV value from a lower value TX FIFO mode: TX interrupt generated when Common FIFO transmits the last message successfully"]
4238        pub const _0: Self = Self::new(0);
4239        #[doc = "RX FIFO mode: RX interrupt generated at the end of every received message storage TX FIFO mode: interrupt generated for every successfully transmitted message"]
4240        pub const _1: Self = Self::new(1);
4241    }
4242    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4243    pub struct Cfigcv_SPEC;
4244    pub type Cfigcv = crate::EnumBitfieldStruct<u8, Cfigcv_SPEC>;
4245    impl Cfigcv {
4246        #[doc = "Interrupt generated when FIFO is 1/8th full"]
4247        pub const _000: Self = Self::new(0);
4248        #[doc = "Interrupt generated when FIFO is 1/4th full"]
4249        pub const _001: Self = Self::new(1);
4250        #[doc = "Interrupt generated when FIFO is 3/8th full"]
4251        pub const _010: Self = Self::new(2);
4252        #[doc = "Interrupt generated when FIFO is 1/2 full"]
4253        pub const _011: Self = Self::new(3);
4254        #[doc = "Interrupt generated when FIFO is 5/8th full"]
4255        pub const _100: Self = Self::new(4);
4256        #[doc = "Interrupt generated when FIFO is 3/4th full"]
4257        pub const _101: Self = Self::new(5);
4258        #[doc = "Interrupt generated when FIFO is 7/8th full"]
4259        pub const _110: Self = Self::new(6);
4260        #[doc = "Interrupt generated when FIFO is full"]
4261        pub const _111: Self = Self::new(7);
4262    }
4263    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4264    pub struct Cfdc_SPEC;
4265    pub type Cfdc = crate::EnumBitfieldStruct<u8, Cfdc_SPEC>;
4266    impl Cfdc {
4267        #[doc = "FIFO Depth = 0 message"]
4268        pub const _000: Self = Self::new(0);
4269        #[doc = "FIFO Depth = 4 messages"]
4270        pub const _001: Self = Self::new(1);
4271        #[doc = "FIFO Depth = 8 messages"]
4272        pub const _010: Self = Self::new(2);
4273        #[doc = "FIFO Depth = 16 messages"]
4274        pub const _011: Self = Self::new(3);
4275        #[doc = "FIFO Depth = 32 messages"]
4276        pub const _100: Self = Self::new(4);
4277        #[doc = "FIFO Depth = 48 messages"]
4278        pub const _101: Self = Self::new(5);
4279        #[doc = "FIFO Depth = Reserved"]
4280        pub const _110: Self = Self::new(6);
4281        #[doc = "FIFO Depth = Reserved"]
4282        pub const _111: Self = Self::new(7);
4283    }
4284}
4285#[doc(hidden)]
4286#[derive(Copy, Clone, Eq, PartialEq)]
4287pub struct Cfdcfsts_SPEC;
4288impl crate::sealed::RegSpec for Cfdcfsts_SPEC {
4289    type DataType = u32;
4290}
4291#[doc = "Common FIFO Status Register"]
4292pub type Cfdcfsts = crate::RegValueT<Cfdcfsts_SPEC>;
4293
4294impl Cfdcfsts {
4295    #[doc = "Common FIFO Empty"]
4296    #[inline(always)]
4297    pub fn cfemp(
4298        self,
4299    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdcfsts::Cfemp, Cfdcfsts_SPEC, crate::common::R>
4300    {
4301        crate::common::RegisterField::<0,0x1,1,0,cfdcfsts::Cfemp, Cfdcfsts_SPEC,crate::common::R>::from_register(self,0)
4302    }
4303    #[doc = "Common FIFO Full"]
4304    #[inline(always)]
4305    pub fn cffll(
4306        self,
4307    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdcfsts::Cffll, Cfdcfsts_SPEC, crate::common::R>
4308    {
4309        crate::common::RegisterField::<1,0x1,1,0,cfdcfsts::Cffll, Cfdcfsts_SPEC,crate::common::R>::from_register(self,0)
4310    }
4311    #[doc = "Common FIFO Message Lost"]
4312    #[inline(always)]
4313    pub fn cfmlt(
4314        self,
4315    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdcfsts::Cfmlt, Cfdcfsts_SPEC, crate::common::RW>
4316    {
4317        crate::common::RegisterField::<
4318            2,
4319            0x1,
4320            1,
4321            0,
4322            cfdcfsts::Cfmlt,
4323            Cfdcfsts_SPEC,
4324            crate::common::RW,
4325        >::from_register(self, 0)
4326    }
4327    #[doc = "Common RX FIFO Interrupt Flag"]
4328    #[inline(always)]
4329    pub fn cfrxif(
4330        self,
4331    ) -> crate::common::RegisterField<
4332        3,
4333        0x1,
4334        1,
4335        0,
4336        cfdcfsts::Cfrxif,
4337        Cfdcfsts_SPEC,
4338        crate::common::RW,
4339    > {
4340        crate::common::RegisterField::<
4341            3,
4342            0x1,
4343            1,
4344            0,
4345            cfdcfsts::Cfrxif,
4346            Cfdcfsts_SPEC,
4347            crate::common::RW,
4348        >::from_register(self, 0)
4349    }
4350    #[doc = "Common TX FIFO Interrupt Flag"]
4351    #[inline(always)]
4352    pub fn cftxif(
4353        self,
4354    ) -> crate::common::RegisterField<
4355        4,
4356        0x1,
4357        1,
4358        0,
4359        cfdcfsts::Cftxif,
4360        Cfdcfsts_SPEC,
4361        crate::common::RW,
4362    > {
4363        crate::common::RegisterField::<
4364            4,
4365            0x1,
4366            1,
4367            0,
4368            cfdcfsts::Cftxif,
4369            Cfdcfsts_SPEC,
4370            crate::common::RW,
4371        >::from_register(self, 0)
4372    }
4373    #[doc = "Common FIFO Message Count"]
4374    #[inline(always)]
4375    pub fn cfmc(
4376        self,
4377    ) -> crate::common::RegisterField<8, 0x3f, 1, 0, u8, Cfdcfsts_SPEC, crate::common::R> {
4378        crate::common::RegisterField::<8,0x3f,1,0,u8, Cfdcfsts_SPEC,crate::common::R>::from_register(self,0)
4379    }
4380}
4381impl ::core::default::Default for Cfdcfsts {
4382    #[inline(always)]
4383    fn default() -> Cfdcfsts {
4384        <crate::RegValueT<Cfdcfsts_SPEC> as RegisterValue<_>>::new(1)
4385    }
4386}
4387pub mod cfdcfsts {
4388
4389    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4390    pub struct Cfemp_SPEC;
4391    pub type Cfemp = crate::EnumBitfieldStruct<u8, Cfemp_SPEC>;
4392    impl Cfemp {
4393        #[doc = "FIFO not empty"]
4394        pub const _0: Self = Self::new(0);
4395        #[doc = "FIFO empty"]
4396        pub const _1: Self = Self::new(1);
4397    }
4398    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4399    pub struct Cffll_SPEC;
4400    pub type Cffll = crate::EnumBitfieldStruct<u8, Cffll_SPEC>;
4401    impl Cffll {
4402        #[doc = "FIFO not full"]
4403        pub const _0: Self = Self::new(0);
4404        #[doc = "FIFO full"]
4405        pub const _1: Self = Self::new(1);
4406    }
4407    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4408    pub struct Cfmlt_SPEC;
4409    pub type Cfmlt = crate::EnumBitfieldStruct<u8, Cfmlt_SPEC>;
4410    impl Cfmlt {
4411        #[doc = "Number of message lost in FIFO"]
4412        pub const _0: Self = Self::new(0);
4413        #[doc = "FIFO message lost"]
4414        pub const _1: Self = Self::new(1);
4415    }
4416    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4417    pub struct Cfrxif_SPEC;
4418    pub type Cfrxif = crate::EnumBitfieldStruct<u8, Cfrxif_SPEC>;
4419    impl Cfrxif {
4420        #[doc = "FIFO interrupt condition not satisfied after frame reception"]
4421        pub const _0: Self = Self::new(0);
4422        #[doc = "FIFO interrupt condition satisfied after frame reception"]
4423        pub const _1: Self = Self::new(1);
4424    }
4425    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4426    pub struct Cftxif_SPEC;
4427    pub type Cftxif = crate::EnumBitfieldStruct<u8, Cftxif_SPEC>;
4428    impl Cftxif {
4429        #[doc = "FIFO interrupt condition not satisfied after frame transmission"]
4430        pub const _0: Self = Self::new(0);
4431        #[doc = "FIFO Interrupt condition satisfied after frame transmission"]
4432        pub const _1: Self = Self::new(1);
4433    }
4434}
4435#[doc(hidden)]
4436#[derive(Copy, Clone, Eq, PartialEq)]
4437pub struct Cfdcfpctr_SPEC;
4438impl crate::sealed::RegSpec for Cfdcfpctr_SPEC {
4439    type DataType = u32;
4440}
4441#[doc = "Common FIFO Pointer Control Register"]
4442pub type Cfdcfpctr = crate::RegValueT<Cfdcfpctr_SPEC>;
4443
4444impl Cfdcfpctr {
4445    #[doc = "Common FIFO Pointer Control"]
4446    #[inline(always)]
4447    pub fn cfpc(
4448        self,
4449    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdcfpctr_SPEC, crate::common::W> {
4450        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdcfpctr_SPEC,crate::common::W>::from_register(self,0)
4451    }
4452}
4453impl ::core::default::Default for Cfdcfpctr {
4454    #[inline(always)]
4455    fn default() -> Cfdcfpctr {
4456        <crate::RegValueT<Cfdcfpctr_SPEC> as RegisterValue<_>>::new(0)
4457    }
4458}
4459
4460#[doc(hidden)]
4461#[derive(Copy, Clone, Eq, PartialEq)]
4462pub struct Cfdfests_SPEC;
4463impl crate::sealed::RegSpec for Cfdfests_SPEC {
4464    type DataType = u32;
4465}
4466#[doc = "FIFO Empty Status Register"]
4467pub type Cfdfests = crate::RegValueT<Cfdfests_SPEC>;
4468
4469impl Cfdfests {
4470    #[doc = "RX FIFO Empty Status"]
4471    #[inline(always)]
4472    pub fn rfxemp(
4473        self,
4474    ) -> crate::common::RegisterField<0, 0x3, 1, 0, cfdfests::Rfxemp, Cfdfests_SPEC, crate::common::R>
4475    {
4476        crate::common::RegisterField::<
4477            0,
4478            0x3,
4479            1,
4480            0,
4481            cfdfests::Rfxemp,
4482            Cfdfests_SPEC,
4483            crate::common::R,
4484        >::from_register(self, 0)
4485    }
4486    #[doc = "Common FIFO Empty Status"]
4487    #[inline(always)]
4488    pub fn cfemp(
4489        self,
4490    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdfests::Cfemp, Cfdfests_SPEC, crate::common::R>
4491    {
4492        crate::common::RegisterField::<8,0x1,1,0,cfdfests::Cfemp, Cfdfests_SPEC,crate::common::R>::from_register(self,0)
4493    }
4494}
4495impl ::core::default::Default for Cfdfests {
4496    #[inline(always)]
4497    fn default() -> Cfdfests {
4498        <crate::RegValueT<Cfdfests_SPEC> as RegisterValue<_>>::new(259)
4499    }
4500}
4501pub mod cfdfests {
4502
4503    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4504    pub struct Rfxemp_SPEC;
4505    pub type Rfxemp = crate::EnumBitfieldStruct<u8, Rfxemp_SPEC>;
4506    impl Rfxemp {
4507        #[doc = "Corresponding FIFO not empty"]
4508        pub const _0: Self = Self::new(0);
4509        #[doc = "Corresponding FIFO empty"]
4510        pub const _1: Self = Self::new(1);
4511    }
4512    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4513    pub struct Cfemp_SPEC;
4514    pub type Cfemp = crate::EnumBitfieldStruct<u8, Cfemp_SPEC>;
4515    impl Cfemp {
4516        #[doc = "Corresponding FIFO not empty"]
4517        pub const _0: Self = Self::new(0);
4518        #[doc = "Corresponding FIFO empty"]
4519        pub const _1: Self = Self::new(1);
4520    }
4521}
4522#[doc(hidden)]
4523#[derive(Copy, Clone, Eq, PartialEq)]
4524pub struct Cfdffsts_SPEC;
4525impl crate::sealed::RegSpec for Cfdffsts_SPEC {
4526    type DataType = u32;
4527}
4528#[doc = "FIFO Full Status Register"]
4529pub type Cfdffsts = crate::RegValueT<Cfdffsts_SPEC>;
4530
4531impl Cfdffsts {
4532    #[doc = "RX FIF0 Full Status"]
4533    #[inline(always)]
4534    pub fn rfxfll(
4535        self,
4536    ) -> crate::common::RegisterField<0, 0x3, 1, 0, cfdffsts::Rfxfll, Cfdffsts_SPEC, crate::common::R>
4537    {
4538        crate::common::RegisterField::<
4539            0,
4540            0x3,
4541            1,
4542            0,
4543            cfdffsts::Rfxfll,
4544            Cfdffsts_SPEC,
4545            crate::common::R,
4546        >::from_register(self, 0)
4547    }
4548    #[doc = "Common FIF0 Full Status"]
4549    #[inline(always)]
4550    pub fn cffll(
4551        self,
4552    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdffsts::Cffll, Cfdffsts_SPEC, crate::common::R>
4553    {
4554        crate::common::RegisterField::<8,0x1,1,0,cfdffsts::Cffll, Cfdffsts_SPEC,crate::common::R>::from_register(self,0)
4555    }
4556}
4557impl ::core::default::Default for Cfdffsts {
4558    #[inline(always)]
4559    fn default() -> Cfdffsts {
4560        <crate::RegValueT<Cfdffsts_SPEC> as RegisterValue<_>>::new(0)
4561    }
4562}
4563pub mod cfdffsts {
4564
4565    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4566    pub struct Rfxfll_SPEC;
4567    pub type Rfxfll = crate::EnumBitfieldStruct<u8, Rfxfll_SPEC>;
4568    impl Rfxfll {
4569        #[doc = "Corresponding FIFO not full"]
4570        pub const _0: Self = Self::new(0);
4571        #[doc = "Corresponding FIFO full"]
4572        pub const _1: Self = Self::new(1);
4573    }
4574    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4575    pub struct Cffll_SPEC;
4576    pub type Cffll = crate::EnumBitfieldStruct<u8, Cffll_SPEC>;
4577    impl Cffll {
4578        #[doc = "Corresponding FIFO not full"]
4579        pub const _0: Self = Self::new(0);
4580        #[doc = "Corresponding FIFO full"]
4581        pub const _1: Self = Self::new(1);
4582    }
4583}
4584#[doc(hidden)]
4585#[derive(Copy, Clone, Eq, PartialEq)]
4586pub struct Cfdfmsts_SPEC;
4587impl crate::sealed::RegSpec for Cfdfmsts_SPEC {
4588    type DataType = u32;
4589}
4590#[doc = "FIFO Message Lost Status Register"]
4591pub type Cfdfmsts = crate::RegValueT<Cfdfmsts_SPEC>;
4592
4593impl Cfdfmsts {
4594    #[doc = "RX FIFO Message Lost Status"]
4595    #[inline(always)]
4596    pub fn rfxmlt(
4597        self,
4598    ) -> crate::common::RegisterField<0, 0x3, 1, 0, cfdfmsts::Rfxmlt, Cfdfmsts_SPEC, crate::common::R>
4599    {
4600        crate::common::RegisterField::<
4601            0,
4602            0x3,
4603            1,
4604            0,
4605            cfdfmsts::Rfxmlt,
4606            Cfdfmsts_SPEC,
4607            crate::common::R,
4608        >::from_register(self, 0)
4609    }
4610    #[doc = "Common FIFO Message Lost Status"]
4611    #[inline(always)]
4612    pub fn cfmlt(
4613        self,
4614    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdfmsts::Cfmlt, Cfdfmsts_SPEC, crate::common::R>
4615    {
4616        crate::common::RegisterField::<8,0x1,1,0,cfdfmsts::Cfmlt, Cfdfmsts_SPEC,crate::common::R>::from_register(self,0)
4617    }
4618}
4619impl ::core::default::Default for Cfdfmsts {
4620    #[inline(always)]
4621    fn default() -> Cfdfmsts {
4622        <crate::RegValueT<Cfdfmsts_SPEC> as RegisterValue<_>>::new(0)
4623    }
4624}
4625pub mod cfdfmsts {
4626
4627    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4628    pub struct Rfxmlt_SPEC;
4629    pub type Rfxmlt = crate::EnumBitfieldStruct<u8, Rfxmlt_SPEC>;
4630    impl Rfxmlt {
4631        #[doc = "Corresponding FIFO Message Lost flag not set"]
4632        pub const _0: Self = Self::new(0);
4633        #[doc = "Corresponding FIFO Message Lost flag set"]
4634        pub const _1: Self = Self::new(1);
4635    }
4636    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4637    pub struct Cfmlt_SPEC;
4638    pub type Cfmlt = crate::EnumBitfieldStruct<u8, Cfmlt_SPEC>;
4639    impl Cfmlt {
4640        #[doc = "Corresponding FIFO Message Lost flag not set"]
4641        pub const _0: Self = Self::new(0);
4642        #[doc = "Corresponding FIFO Message Lost flag set"]
4643        pub const _1: Self = Self::new(1);
4644    }
4645}
4646#[doc(hidden)]
4647#[derive(Copy, Clone, Eq, PartialEq)]
4648pub struct Cfdrfists_SPEC;
4649impl crate::sealed::RegSpec for Cfdrfists_SPEC {
4650    type DataType = u32;
4651}
4652#[doc = "RX FIFO Interrupt Flag Status Register"]
4653pub type Cfdrfists = crate::RegValueT<Cfdrfists_SPEC>;
4654
4655impl Cfdrfists {
4656    #[doc = "RX FIFO\\[x\\] Interrupt Flag Status"]
4657    #[inline(always)]
4658    pub fn rfxif(
4659        self,
4660    ) -> crate::common::RegisterField<
4661        0,
4662        0x3,
4663        1,
4664        0,
4665        cfdrfists::Rfxif,
4666        Cfdrfists_SPEC,
4667        crate::common::R,
4668    > {
4669        crate::common::RegisterField::<
4670            0,
4671            0x3,
4672            1,
4673            0,
4674            cfdrfists::Rfxif,
4675            Cfdrfists_SPEC,
4676            crate::common::R,
4677        >::from_register(self, 0)
4678    }
4679}
4680impl ::core::default::Default for Cfdrfists {
4681    #[inline(always)]
4682    fn default() -> Cfdrfists {
4683        <crate::RegValueT<Cfdrfists_SPEC> as RegisterValue<_>>::new(0)
4684    }
4685}
4686pub mod cfdrfists {
4687
4688    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4689    pub struct Rfxif_SPEC;
4690    pub type Rfxif = crate::EnumBitfieldStruct<u8, Rfxif_SPEC>;
4691    impl Rfxif {
4692        #[doc = "Corresponding RX FIFO Interrupt flag not set"]
4693        pub const _0: Self = Self::new(0);
4694        #[doc = "Corresponding RX FIFO Interrupt flag set"]
4695        pub const _1: Self = Self::new(1);
4696    }
4697}
4698#[doc(hidden)]
4699#[derive(Copy, Clone, Eq, PartialEq)]
4700pub struct Cfdtmc_SPEC;
4701impl crate::sealed::RegSpec for Cfdtmc_SPEC {
4702    type DataType = u8;
4703}
4704#[doc = "TX Message Buffer Control Registers %s"]
4705pub type Cfdtmc = crate::RegValueT<Cfdtmc_SPEC>;
4706
4707impl Cfdtmc {
4708    #[doc = "TX Message Buffer Transmission Request"]
4709    #[inline(always)]
4710    pub fn tmtr(
4711        self,
4712    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdtmc::Tmtr, Cfdtmc_SPEC, crate::common::RW>
4713    {
4714        crate::common::RegisterField::<0,0x1,1,0,cfdtmc::Tmtr, Cfdtmc_SPEC,crate::common::RW>::from_register(self,0)
4715    }
4716    #[doc = "TX Message Buffer Transmission Abort Request"]
4717    #[inline(always)]
4718    pub fn tmtar(
4719        self,
4720    ) -> crate::common::RegisterField<1, 0x1, 1, 0, cfdtmc::Tmtar, Cfdtmc_SPEC, crate::common::RW>
4721    {
4722        crate::common::RegisterField::<1,0x1,1,0,cfdtmc::Tmtar, Cfdtmc_SPEC,crate::common::RW>::from_register(self,0)
4723    }
4724    #[doc = "TX Message Buffer One-shot Mode"]
4725    #[inline(always)]
4726    pub fn tmom(
4727        self,
4728    ) -> crate::common::RegisterField<2, 0x1, 1, 0, cfdtmc::Tmom, Cfdtmc_SPEC, crate::common::RW>
4729    {
4730        crate::common::RegisterField::<2,0x1,1,0,cfdtmc::Tmom, Cfdtmc_SPEC,crate::common::RW>::from_register(self,0)
4731    }
4732}
4733impl ::core::default::Default for Cfdtmc {
4734    #[inline(always)]
4735    fn default() -> Cfdtmc {
4736        <crate::RegValueT<Cfdtmc_SPEC> as RegisterValue<_>>::new(0)
4737    }
4738}
4739pub mod cfdtmc {
4740
4741    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4742    pub struct Tmtr_SPEC;
4743    pub type Tmtr = crate::EnumBitfieldStruct<u8, Tmtr_SPEC>;
4744    impl Tmtr {
4745        #[doc = "TX Message buffer transmission not requested"]
4746        pub const _0: Self = Self::new(0);
4747        #[doc = "TX message buffer transmission requested"]
4748        pub const _1: Self = Self::new(1);
4749    }
4750    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4751    pub struct Tmtar_SPEC;
4752    pub type Tmtar = crate::EnumBitfieldStruct<u8, Tmtar_SPEC>;
4753    impl Tmtar {
4754        #[doc = "TX message buffer transmission request abort not requested"]
4755        pub const _0: Self = Self::new(0);
4756        #[doc = "TX message buffer transmission request abort requested"]
4757        pub const _1: Self = Self::new(1);
4758    }
4759    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4760    pub struct Tmom_SPEC;
4761    pub type Tmom = crate::EnumBitfieldStruct<u8, Tmom_SPEC>;
4762    impl Tmom {
4763        #[doc = "TX message buffer not configured in one-shot mode"]
4764        pub const _0: Self = Self::new(0);
4765        #[doc = "TX message buffer configured in one-shot mode"]
4766        pub const _1: Self = Self::new(1);
4767    }
4768}
4769#[doc(hidden)]
4770#[derive(Copy, Clone, Eq, PartialEq)]
4771pub struct Cfdtmsts_SPEC;
4772impl crate::sealed::RegSpec for Cfdtmsts_SPEC {
4773    type DataType = u8;
4774}
4775#[doc = "TX Message Buffer Status Registers %s"]
4776pub type Cfdtmsts = crate::RegValueT<Cfdtmsts_SPEC>;
4777
4778impl Cfdtmsts {
4779    #[doc = "TX Message Buffer Transmission Status"]
4780    #[inline(always)]
4781    pub fn tmtsts(
4782        self,
4783    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdtmsts::Tmtsts, Cfdtmsts_SPEC, crate::common::R>
4784    {
4785        crate::common::RegisterField::<
4786            0,
4787            0x1,
4788            1,
4789            0,
4790            cfdtmsts::Tmtsts,
4791            Cfdtmsts_SPEC,
4792            crate::common::R,
4793        >::from_register(self, 0)
4794    }
4795    #[doc = "TX Message Buffer Transmission Result Flag"]
4796    #[inline(always)]
4797    pub fn tmtrf(
4798        self,
4799    ) -> crate::common::RegisterField<1, 0x3, 1, 0, cfdtmsts::Tmtrf, Cfdtmsts_SPEC, crate::common::RW>
4800    {
4801        crate::common::RegisterField::<
4802            1,
4803            0x3,
4804            1,
4805            0,
4806            cfdtmsts::Tmtrf,
4807            Cfdtmsts_SPEC,
4808            crate::common::RW,
4809        >::from_register(self, 0)
4810    }
4811    #[doc = "TX Message Buffer Transmission Request Mirrored"]
4812    #[inline(always)]
4813    pub fn tmtrm(
4814        self,
4815    ) -> crate::common::RegisterField<3, 0x1, 1, 0, cfdtmsts::Tmtrm, Cfdtmsts_SPEC, crate::common::R>
4816    {
4817        crate::common::RegisterField::<3,0x1,1,0,cfdtmsts::Tmtrm, Cfdtmsts_SPEC,crate::common::R>::from_register(self,0)
4818    }
4819    #[doc = "TX Message Buffer Transmission Abort Request Mirrored"]
4820    #[inline(always)]
4821    pub fn tmtarm(
4822        self,
4823    ) -> crate::common::RegisterField<4, 0x1, 1, 0, cfdtmsts::Tmtarm, Cfdtmsts_SPEC, crate::common::R>
4824    {
4825        crate::common::RegisterField::<
4826            4,
4827            0x1,
4828            1,
4829            0,
4830            cfdtmsts::Tmtarm,
4831            Cfdtmsts_SPEC,
4832            crate::common::R,
4833        >::from_register(self, 0)
4834    }
4835}
4836impl ::core::default::Default for Cfdtmsts {
4837    #[inline(always)]
4838    fn default() -> Cfdtmsts {
4839        <crate::RegValueT<Cfdtmsts_SPEC> as RegisterValue<_>>::new(0)
4840    }
4841}
4842pub mod cfdtmsts {
4843
4844    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4845    pub struct Tmtsts_SPEC;
4846    pub type Tmtsts = crate::EnumBitfieldStruct<u8, Tmtsts_SPEC>;
4847    impl Tmtsts {
4848        #[doc = "No on-going transmission"]
4849        pub const _0: Self = Self::new(0);
4850        #[doc = "On-going transmission"]
4851        pub const _1: Self = Self::new(1);
4852    }
4853    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4854    pub struct Tmtrf_SPEC;
4855    pub type Tmtrf = crate::EnumBitfieldStruct<u8, Tmtrf_SPEC>;
4856    impl Tmtrf {
4857        #[doc = "No result"]
4858        pub const _00: Self = Self::new(0);
4859        #[doc = "Transmission aborted from the TX message buffer"]
4860        pub const _01: Self = Self::new(1);
4861        #[doc = "Transmission successful from the TX message buffer and transmission abort was not requested"]
4862        pub const _10: Self = Self::new(2);
4863        #[doc = "Transmission successful from the TX message buffer and transmission abort was requested"]
4864        pub const _11: Self = Self::new(3);
4865    }
4866    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4867    pub struct Tmtrm_SPEC;
4868    pub type Tmtrm = crate::EnumBitfieldStruct<u8, Tmtrm_SPEC>;
4869    impl Tmtrm {
4870        #[doc = "TX message buffer transmission not requested"]
4871        pub const _0: Self = Self::new(0);
4872        #[doc = "TX message buffer transmission requested"]
4873        pub const _1: Self = Self::new(1);
4874    }
4875    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4876    pub struct Tmtarm_SPEC;
4877    pub type Tmtarm = crate::EnumBitfieldStruct<u8, Tmtarm_SPEC>;
4878    impl Tmtarm {
4879        #[doc = "TX message buffer transmission request abort not requested"]
4880        pub const _0: Self = Self::new(0);
4881        #[doc = "TX message buffer transmission request abort requested"]
4882        pub const _1: Self = Self::new(1);
4883    }
4884}
4885#[doc(hidden)]
4886#[derive(Copy, Clone, Eq, PartialEq)]
4887pub struct Cfdtmtrsts_SPEC;
4888impl crate::sealed::RegSpec for Cfdtmtrsts_SPEC {
4889    type DataType = u32;
4890}
4891#[doc = "TX Message Buffer Transmission Request Status Register"]
4892pub type Cfdtmtrsts = crate::RegValueT<Cfdtmtrsts_SPEC>;
4893
4894impl Cfdtmtrsts {
4895    #[doc = "TX Message Buffer Transmission Request Status"]
4896    #[inline(always)]
4897    pub fn cfdtmtrsts(
4898        self,
4899    ) -> crate::common::RegisterField<
4900        0,
4901        0xf,
4902        1,
4903        0,
4904        cfdtmtrsts::Cfdtmtrsts,
4905        Cfdtmtrsts_SPEC,
4906        crate::common::R,
4907    > {
4908        crate::common::RegisterField::<
4909            0,
4910            0xf,
4911            1,
4912            0,
4913            cfdtmtrsts::Cfdtmtrsts,
4914            Cfdtmtrsts_SPEC,
4915            crate::common::R,
4916        >::from_register(self, 0)
4917    }
4918}
4919impl ::core::default::Default for Cfdtmtrsts {
4920    #[inline(always)]
4921    fn default() -> Cfdtmtrsts {
4922        <crate::RegValueT<Cfdtmtrsts_SPEC> as RegisterValue<_>>::new(0)
4923    }
4924}
4925pub mod cfdtmtrsts {
4926
4927    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4928    pub struct Cfdtmtrsts_SPEC;
4929    pub type Cfdtmtrsts = crate::EnumBitfieldStruct<u8, Cfdtmtrsts_SPEC>;
4930    impl Cfdtmtrsts {
4931        #[doc = "Transmission not requested for corresponding TX message buffer"]
4932        pub const _0: Self = Self::new(0);
4933        #[doc = "Transmission requested for corresponding TX message buffer"]
4934        pub const _1: Self = Self::new(1);
4935    }
4936}
4937#[doc(hidden)]
4938#[derive(Copy, Clone, Eq, PartialEq)]
4939pub struct Cfdtmtarsts_SPEC;
4940impl crate::sealed::RegSpec for Cfdtmtarsts_SPEC {
4941    type DataType = u32;
4942}
4943#[doc = "TX Message Buffer Transmission Abort Request Status Register"]
4944pub type Cfdtmtarsts = crate::RegValueT<Cfdtmtarsts_SPEC>;
4945
4946impl Cfdtmtarsts {
4947    #[doc = "TX Message Buffer Transmission Abort Request Status"]
4948    #[inline(always)]
4949    pub fn cfdtmtarsts(
4950        self,
4951    ) -> crate::common::RegisterField<
4952        0,
4953        0xf,
4954        1,
4955        0,
4956        cfdtmtarsts::Cfdtmtarsts,
4957        Cfdtmtarsts_SPEC,
4958        crate::common::R,
4959    > {
4960        crate::common::RegisterField::<
4961            0,
4962            0xf,
4963            1,
4964            0,
4965            cfdtmtarsts::Cfdtmtarsts,
4966            Cfdtmtarsts_SPEC,
4967            crate::common::R,
4968        >::from_register(self, 0)
4969    }
4970}
4971impl ::core::default::Default for Cfdtmtarsts {
4972    #[inline(always)]
4973    fn default() -> Cfdtmtarsts {
4974        <crate::RegValueT<Cfdtmtarsts_SPEC> as RegisterValue<_>>::new(0)
4975    }
4976}
4977pub mod cfdtmtarsts {
4978
4979    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4980    pub struct Cfdtmtarsts_SPEC;
4981    pub type Cfdtmtarsts = crate::EnumBitfieldStruct<u8, Cfdtmtarsts_SPEC>;
4982    impl Cfdtmtarsts {
4983        #[doc = "Transmission abort not requested for corresponding TX message buffer"]
4984        pub const _0: Self = Self::new(0);
4985        #[doc = "Transmission abort requested for corresponding TX message buffer"]
4986        pub const _1: Self = Self::new(1);
4987    }
4988}
4989#[doc(hidden)]
4990#[derive(Copy, Clone, Eq, PartialEq)]
4991pub struct Cfdtmtcsts_SPEC;
4992impl crate::sealed::RegSpec for Cfdtmtcsts_SPEC {
4993    type DataType = u32;
4994}
4995#[doc = "TX Message Buffer Transmission Completion Status Register"]
4996pub type Cfdtmtcsts = crate::RegValueT<Cfdtmtcsts_SPEC>;
4997
4998impl Cfdtmtcsts {
4999    #[doc = "TX Message Buffer Transmission Completion Status"]
5000    #[inline(always)]
5001    pub fn cfdtmtcsts(
5002        self,
5003    ) -> crate::common::RegisterField<
5004        0,
5005        0xf,
5006        1,
5007        0,
5008        cfdtmtcsts::Cfdtmtcsts,
5009        Cfdtmtcsts_SPEC,
5010        crate::common::R,
5011    > {
5012        crate::common::RegisterField::<
5013            0,
5014            0xf,
5015            1,
5016            0,
5017            cfdtmtcsts::Cfdtmtcsts,
5018            Cfdtmtcsts_SPEC,
5019            crate::common::R,
5020        >::from_register(self, 0)
5021    }
5022}
5023impl ::core::default::Default for Cfdtmtcsts {
5024    #[inline(always)]
5025    fn default() -> Cfdtmtcsts {
5026        <crate::RegValueT<Cfdtmtcsts_SPEC> as RegisterValue<_>>::new(0)
5027    }
5028}
5029pub mod cfdtmtcsts {
5030
5031    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5032    pub struct Cfdtmtcsts_SPEC;
5033    pub type Cfdtmtcsts = crate::EnumBitfieldStruct<u8, Cfdtmtcsts_SPEC>;
5034    impl Cfdtmtcsts {
5035        #[doc = "Transmission not complete for corresponding TX message buffer"]
5036        pub const _0: Self = Self::new(0);
5037        #[doc = "Transmission completed for corresponding TX message buffer"]
5038        pub const _1: Self = Self::new(1);
5039    }
5040}
5041#[doc(hidden)]
5042#[derive(Copy, Clone, Eq, PartialEq)]
5043pub struct Cfdtmtasts_SPEC;
5044impl crate::sealed::RegSpec for Cfdtmtasts_SPEC {
5045    type DataType = u32;
5046}
5047#[doc = "TX Message Buffer Transmission Abort Status Register"]
5048pub type Cfdtmtasts = crate::RegValueT<Cfdtmtasts_SPEC>;
5049
5050impl Cfdtmtasts {
5051    #[doc = "TX Message Buffer Transmission Abort Status"]
5052    #[inline(always)]
5053    pub fn cfdtmtasts(
5054        self,
5055    ) -> crate::common::RegisterField<
5056        0,
5057        0xf,
5058        1,
5059        0,
5060        cfdtmtasts::Cfdtmtasts,
5061        Cfdtmtasts_SPEC,
5062        crate::common::R,
5063    > {
5064        crate::common::RegisterField::<
5065            0,
5066            0xf,
5067            1,
5068            0,
5069            cfdtmtasts::Cfdtmtasts,
5070            Cfdtmtasts_SPEC,
5071            crate::common::R,
5072        >::from_register(self, 0)
5073    }
5074}
5075impl ::core::default::Default for Cfdtmtasts {
5076    #[inline(always)]
5077    fn default() -> Cfdtmtasts {
5078        <crate::RegValueT<Cfdtmtasts_SPEC> as RegisterValue<_>>::new(0)
5079    }
5080}
5081pub mod cfdtmtasts {
5082
5083    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5084    pub struct Cfdtmtasts_SPEC;
5085    pub type Cfdtmtasts = crate::EnumBitfieldStruct<u8, Cfdtmtasts_SPEC>;
5086    impl Cfdtmtasts {
5087        #[doc = "Transmission not aborted for corresponding TX message buffer"]
5088        pub const _0: Self = Self::new(0);
5089        #[doc = "Transmission aborted for corresponding TX message buffer"]
5090        pub const _1: Self = Self::new(1);
5091    }
5092}
5093#[doc(hidden)]
5094#[derive(Copy, Clone, Eq, PartialEq)]
5095pub struct Cfdtmiec_SPEC;
5096impl crate::sealed::RegSpec for Cfdtmiec_SPEC {
5097    type DataType = u32;
5098}
5099#[doc = "TX Message Buffer Interrupt Enable Configuration Register"]
5100pub type Cfdtmiec = crate::RegValueT<Cfdtmiec_SPEC>;
5101
5102impl Cfdtmiec {
5103    #[doc = "TX Message Buffer Interrupt Enable"]
5104    #[inline(always)]
5105    pub fn tmieg(
5106        self,
5107    ) -> crate::common::RegisterField<0, 0xf, 1, 0, cfdtmiec::TmiEg, Cfdtmiec_SPEC, crate::common::RW>
5108    {
5109        crate::common::RegisterField::<
5110            0,
5111            0xf,
5112            1,
5113            0,
5114            cfdtmiec::TmiEg,
5115            Cfdtmiec_SPEC,
5116            crate::common::RW,
5117        >::from_register(self, 0)
5118    }
5119}
5120impl ::core::default::Default for Cfdtmiec {
5121    #[inline(always)]
5122    fn default() -> Cfdtmiec {
5123        <crate::RegValueT<Cfdtmiec_SPEC> as RegisterValue<_>>::new(0)
5124    }
5125}
5126pub mod cfdtmiec {
5127
5128    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5129    pub struct TmiEg_SPEC;
5130    pub type TmiEg = crate::EnumBitfieldStruct<u8, TmiEg_SPEC>;
5131    impl TmiEg {
5132        #[doc = "TX message buffer interrupt disabled for corresponding TX message buffer"]
5133        pub const _0: Self = Self::new(0);
5134        #[doc = "TX message buffer interrupt enabled for corresponding TX message buffer"]
5135        pub const _1: Self = Self::new(1);
5136    }
5137}
5138#[doc(hidden)]
5139#[derive(Copy, Clone, Eq, PartialEq)]
5140pub struct Cfdtxqcc_SPEC;
5141impl crate::sealed::RegSpec for Cfdtxqcc_SPEC {
5142    type DataType = u32;
5143}
5144#[doc = "TX Queue Configuration/Control Register"]
5145pub type Cfdtxqcc = crate::RegValueT<Cfdtxqcc_SPEC>;
5146
5147impl Cfdtxqcc {
5148    #[doc = "TX Queue Enable"]
5149    #[inline(always)]
5150    pub fn txqe(
5151        self,
5152    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdtxqcc::Txqe, Cfdtxqcc_SPEC, crate::common::RW>
5153    {
5154        crate::common::RegisterField::<0,0x1,1,0,cfdtxqcc::Txqe, Cfdtxqcc_SPEC,crate::common::RW>::from_register(self,0)
5155    }
5156    #[doc = "TX Queue TX Interrupt Enable"]
5157    #[inline(always)]
5158    pub fn txqtxie(
5159        self,
5160    ) -> crate::common::RegisterField<
5161        5,
5162        0x1,
5163        1,
5164        0,
5165        cfdtxqcc::Txqtxie,
5166        Cfdtxqcc_SPEC,
5167        crate::common::RW,
5168    > {
5169        crate::common::RegisterField::<
5170            5,
5171            0x1,
5172            1,
5173            0,
5174            cfdtxqcc::Txqtxie,
5175            Cfdtxqcc_SPEC,
5176            crate::common::RW,
5177        >::from_register(self, 0)
5178    }
5179    #[doc = "TX Queue Interrupt Mode"]
5180    #[inline(always)]
5181    pub fn txqim(
5182        self,
5183    ) -> crate::common::RegisterField<7, 0x1, 1, 0, cfdtxqcc::Txqim, Cfdtxqcc_SPEC, crate::common::RW>
5184    {
5185        crate::common::RegisterField::<
5186            7,
5187            0x1,
5188            1,
5189            0,
5190            cfdtxqcc::Txqim,
5191            Cfdtxqcc_SPEC,
5192            crate::common::RW,
5193        >::from_register(self, 0)
5194    }
5195    #[doc = "TX Queue Depth Configuration"]
5196    #[inline(always)]
5197    pub fn txqdc(
5198        self,
5199    ) -> crate::common::RegisterField<8, 0x3, 1, 0, cfdtxqcc::Txqdc, Cfdtxqcc_SPEC, crate::common::RW>
5200    {
5201        crate::common::RegisterField::<
5202            8,
5203            0x3,
5204            1,
5205            0,
5206            cfdtxqcc::Txqdc,
5207            Cfdtxqcc_SPEC,
5208            crate::common::RW,
5209        >::from_register(self, 0)
5210    }
5211}
5212impl ::core::default::Default for Cfdtxqcc {
5213    #[inline(always)]
5214    fn default() -> Cfdtxqcc {
5215        <crate::RegValueT<Cfdtxqcc_SPEC> as RegisterValue<_>>::new(0)
5216    }
5217}
5218pub mod cfdtxqcc {
5219
5220    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5221    pub struct Txqe_SPEC;
5222    pub type Txqe = crate::EnumBitfieldStruct<u8, Txqe_SPEC>;
5223    impl Txqe {
5224        #[doc = "TX Queue disabled"]
5225        pub const _0: Self = Self::new(0);
5226        #[doc = "TX Queue enabled"]
5227        pub const _1: Self = Self::new(1);
5228    }
5229    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5230    pub struct Txqtxie_SPEC;
5231    pub type Txqtxie = crate::EnumBitfieldStruct<u8, Txqtxie_SPEC>;
5232    impl Txqtxie {
5233        #[doc = "TX Queue TX interrupt disabled"]
5234        pub const _0: Self = Self::new(0);
5235        #[doc = "TX Queue TX interrupt enabled"]
5236        pub const _1: Self = Self::new(1);
5237    }
5238    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5239    pub struct Txqim_SPEC;
5240    pub type Txqim = crate::EnumBitfieldStruct<u8, Txqim_SPEC>;
5241    impl Txqim {
5242        #[doc = "When the last message is successfully transmitted"]
5243        pub const _0: Self = Self::new(0);
5244        #[doc = "At every successful transmission"]
5245        pub const _1: Self = Self::new(1);
5246    }
5247    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5248    pub struct Txqdc_SPEC;
5249    pub type Txqdc = crate::EnumBitfieldStruct<u8, Txqdc_SPEC>;
5250    impl Txqdc {
5251        #[doc = "0 messages"]
5252        pub const _0_X_00: Self = Self::new(0);
5253        #[doc = "Reserved"]
5254        pub const _0_X_01: Self = Self::new(1);
5255        #[doc = "3 messages"]
5256        pub const _0_X_10: Self = Self::new(0);
5257        #[doc = "4 messages"]
5258        pub const _0_X_11: Self = Self::new(1);
5259    }
5260}
5261#[doc(hidden)]
5262#[derive(Copy, Clone, Eq, PartialEq)]
5263pub struct Cfdtxqsts_SPEC;
5264impl crate::sealed::RegSpec for Cfdtxqsts_SPEC {
5265    type DataType = u32;
5266}
5267#[doc = "TX Queue Status Register"]
5268pub type Cfdtxqsts = crate::RegValueT<Cfdtxqsts_SPEC>;
5269
5270impl Cfdtxqsts {
5271    #[doc = "TX Queue Empty"]
5272    #[inline(always)]
5273    pub fn txqemp(
5274        self,
5275    ) -> crate::common::RegisterField<
5276        0,
5277        0x1,
5278        1,
5279        0,
5280        cfdtxqsts::Txqemp,
5281        Cfdtxqsts_SPEC,
5282        crate::common::R,
5283    > {
5284        crate::common::RegisterField::<
5285            0,
5286            0x1,
5287            1,
5288            0,
5289            cfdtxqsts::Txqemp,
5290            Cfdtxqsts_SPEC,
5291            crate::common::R,
5292        >::from_register(self, 0)
5293    }
5294    #[doc = "TX Queue Full"]
5295    #[inline(always)]
5296    pub fn txqfll(
5297        self,
5298    ) -> crate::common::RegisterField<
5299        1,
5300        0x1,
5301        1,
5302        0,
5303        cfdtxqsts::Txqfll,
5304        Cfdtxqsts_SPEC,
5305        crate::common::R,
5306    > {
5307        crate::common::RegisterField::<
5308            1,
5309            0x1,
5310            1,
5311            0,
5312            cfdtxqsts::Txqfll,
5313            Cfdtxqsts_SPEC,
5314            crate::common::R,
5315        >::from_register(self, 0)
5316    }
5317    #[doc = "TX Queue TX Interrupt Flag"]
5318    #[inline(always)]
5319    pub fn txqtxif(
5320        self,
5321    ) -> crate::common::RegisterField<
5322        2,
5323        0x1,
5324        1,
5325        0,
5326        cfdtxqsts::Txqtxif,
5327        Cfdtxqsts_SPEC,
5328        crate::common::RW,
5329    > {
5330        crate::common::RegisterField::<
5331            2,
5332            0x1,
5333            1,
5334            0,
5335            cfdtxqsts::Txqtxif,
5336            Cfdtxqsts_SPEC,
5337            crate::common::RW,
5338        >::from_register(self, 0)
5339    }
5340    #[doc = "TX Queue Message Count"]
5341    #[inline(always)]
5342    pub fn txqmc(
5343        self,
5344    ) -> crate::common::RegisterField<8, 0x7, 1, 0, u8, Cfdtxqsts_SPEC, crate::common::R> {
5345        crate::common::RegisterField::<8,0x7,1,0,u8, Cfdtxqsts_SPEC,crate::common::R>::from_register(self,0)
5346    }
5347}
5348impl ::core::default::Default for Cfdtxqsts {
5349    #[inline(always)]
5350    fn default() -> Cfdtxqsts {
5351        <crate::RegValueT<Cfdtxqsts_SPEC> as RegisterValue<_>>::new(1)
5352    }
5353}
5354pub mod cfdtxqsts {
5355
5356    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5357    pub struct Txqemp_SPEC;
5358    pub type Txqemp = crate::EnumBitfieldStruct<u8, Txqemp_SPEC>;
5359    impl Txqemp {
5360        #[doc = "TX Queue not empty"]
5361        pub const _0: Self = Self::new(0);
5362        #[doc = "TX Queue empty"]
5363        pub const _1: Self = Self::new(1);
5364    }
5365    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5366    pub struct Txqfll_SPEC;
5367    pub type Txqfll = crate::EnumBitfieldStruct<u8, Txqfll_SPEC>;
5368    impl Txqfll {
5369        #[doc = "TX Queue not full"]
5370        pub const _0: Self = Self::new(0);
5371        #[doc = "TX Queue full"]
5372        pub const _1: Self = Self::new(1);
5373    }
5374    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5375    pub struct Txqtxif_SPEC;
5376    pub type Txqtxif = crate::EnumBitfieldStruct<u8, Txqtxif_SPEC>;
5377    impl Txqtxif {
5378        #[doc = "TX Queue interrupt condition not satisfied after a frame TX"]
5379        pub const _0: Self = Self::new(0);
5380        #[doc = "TX Queue interrupt condition satisfied after a frame TX"]
5381        pub const _1: Self = Self::new(1);
5382    }
5383}
5384#[doc(hidden)]
5385#[derive(Copy, Clone, Eq, PartialEq)]
5386pub struct Cfdtxqpctr_SPEC;
5387impl crate::sealed::RegSpec for Cfdtxqpctr_SPEC {
5388    type DataType = u32;
5389}
5390#[doc = "TX Queue Pointer Control Register"]
5391pub type Cfdtxqpctr = crate::RegValueT<Cfdtxqpctr_SPEC>;
5392
5393impl Cfdtxqpctr {
5394    #[doc = "TX Queue Pointer Control"]
5395    #[inline(always)]
5396    pub fn txqpc(
5397        self,
5398    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtxqpctr_SPEC, crate::common::W> {
5399        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtxqpctr_SPEC,crate::common::W>::from_register(self,0)
5400    }
5401}
5402impl ::core::default::Default for Cfdtxqpctr {
5403    #[inline(always)]
5404    fn default() -> Cfdtxqpctr {
5405        <crate::RegValueT<Cfdtxqpctr_SPEC> as RegisterValue<_>>::new(0)
5406    }
5407}
5408
5409#[doc(hidden)]
5410#[derive(Copy, Clone, Eq, PartialEq)]
5411pub struct Cfdthlcc_SPEC;
5412impl crate::sealed::RegSpec for Cfdthlcc_SPEC {
5413    type DataType = u32;
5414}
5415#[doc = "TX History List Configuration/Control Register"]
5416pub type Cfdthlcc = crate::RegValueT<Cfdthlcc_SPEC>;
5417
5418impl Cfdthlcc {
5419    #[doc = "TX History List Enable"]
5420    #[inline(always)]
5421    pub fn thle(
5422        self,
5423    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdthlcc::Thle, Cfdthlcc_SPEC, crate::common::RW>
5424    {
5425        crate::common::RegisterField::<0,0x1,1,0,cfdthlcc::Thle, Cfdthlcc_SPEC,crate::common::RW>::from_register(self,0)
5426    }
5427    #[doc = "TX History List Interrupt Enable"]
5428    #[inline(always)]
5429    pub fn thlie(
5430        self,
5431    ) -> crate::common::RegisterField<8, 0x1, 1, 0, cfdthlcc::Thlie, Cfdthlcc_SPEC, crate::common::RW>
5432    {
5433        crate::common::RegisterField::<
5434            8,
5435            0x1,
5436            1,
5437            0,
5438            cfdthlcc::Thlie,
5439            Cfdthlcc_SPEC,
5440            crate::common::RW,
5441        >::from_register(self, 0)
5442    }
5443    #[doc = "TX History List Interrupt Mode"]
5444    #[inline(always)]
5445    pub fn thlim(
5446        self,
5447    ) -> crate::common::RegisterField<9, 0x1, 1, 0, cfdthlcc::Thlim, Cfdthlcc_SPEC, crate::common::RW>
5448    {
5449        crate::common::RegisterField::<
5450            9,
5451            0x1,
5452            1,
5453            0,
5454            cfdthlcc::Thlim,
5455            Cfdthlcc_SPEC,
5456            crate::common::RW,
5457        >::from_register(self, 0)
5458    }
5459    #[doc = "TX History List Dedicated TX Enable"]
5460    #[inline(always)]
5461    pub fn thldte(
5462        self,
5463    ) -> crate::common::RegisterField<
5464        10,
5465        0x1,
5466        1,
5467        0,
5468        cfdthlcc::Thldte,
5469        Cfdthlcc_SPEC,
5470        crate::common::RW,
5471    > {
5472        crate::common::RegisterField::<
5473            10,
5474            0x1,
5475            1,
5476            0,
5477            cfdthlcc::Thldte,
5478            Cfdthlcc_SPEC,
5479            crate::common::RW,
5480        >::from_register(self, 0)
5481    }
5482}
5483impl ::core::default::Default for Cfdthlcc {
5484    #[inline(always)]
5485    fn default() -> Cfdthlcc {
5486        <crate::RegValueT<Cfdthlcc_SPEC> as RegisterValue<_>>::new(0)
5487    }
5488}
5489pub mod cfdthlcc {
5490
5491    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5492    pub struct Thle_SPEC;
5493    pub type Thle = crate::EnumBitfieldStruct<u8, Thle_SPEC>;
5494    impl Thle {
5495        #[doc = "TX History List disabled"]
5496        pub const _0: Self = Self::new(0);
5497        #[doc = "TX History List enabled"]
5498        pub const _1: Self = Self::new(1);
5499    }
5500    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5501    pub struct Thlie_SPEC;
5502    pub type Thlie = crate::EnumBitfieldStruct<u8, Thlie_SPEC>;
5503    impl Thlie {
5504        #[doc = "TX History List Interrupt disabled"]
5505        pub const _0: Self = Self::new(0);
5506        #[doc = "TX History List Interrupt enabled"]
5507        pub const _1: Self = Self::new(1);
5508    }
5509    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5510    pub struct Thlim_SPEC;
5511    pub type Thlim = crate::EnumBitfieldStruct<u8, Thlim_SPEC>;
5512    impl Thlim {
5513        #[doc = "Interrupt generated if TX History List level reaches ¾ of the TX History List depth"]
5514        pub const _0: Self = Self::new(0);
5515        #[doc = "Interrupt generated for every successfully stored entry"]
5516        pub const _1: Self = Self::new(1);
5517    }
5518    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5519    pub struct Thldte_SPEC;
5520    pub type Thldte = crate::EnumBitfieldStruct<u8, Thldte_SPEC>;
5521    impl Thldte {
5522        #[doc = "TX FIFO + TX Queue"]
5523        pub const _0: Self = Self::new(0);
5524        #[doc = "Flat TX MB + TX FIFO + TX Queue"]
5525        pub const _1: Self = Self::new(1);
5526    }
5527}
5528#[doc(hidden)]
5529#[derive(Copy, Clone, Eq, PartialEq)]
5530pub struct Cfdthlsts_SPEC;
5531impl crate::sealed::RegSpec for Cfdthlsts_SPEC {
5532    type DataType = u32;
5533}
5534#[doc = "TX History List Status Register"]
5535pub type Cfdthlsts = crate::RegValueT<Cfdthlsts_SPEC>;
5536
5537impl Cfdthlsts {
5538    #[doc = "TX History List Empty"]
5539    #[inline(always)]
5540    pub fn thlemp(
5541        self,
5542    ) -> crate::common::RegisterField<
5543        0,
5544        0x1,
5545        1,
5546        0,
5547        cfdthlsts::Thlemp,
5548        Cfdthlsts_SPEC,
5549        crate::common::R,
5550    > {
5551        crate::common::RegisterField::<
5552            0,
5553            0x1,
5554            1,
5555            0,
5556            cfdthlsts::Thlemp,
5557            Cfdthlsts_SPEC,
5558            crate::common::R,
5559        >::from_register(self, 0)
5560    }
5561    #[doc = "TX History List Full"]
5562    #[inline(always)]
5563    pub fn thlfll(
5564        self,
5565    ) -> crate::common::RegisterField<
5566        1,
5567        0x1,
5568        1,
5569        0,
5570        cfdthlsts::Thlfll,
5571        Cfdthlsts_SPEC,
5572        crate::common::R,
5573    > {
5574        crate::common::RegisterField::<
5575            1,
5576            0x1,
5577            1,
5578            0,
5579            cfdthlsts::Thlfll,
5580            Cfdthlsts_SPEC,
5581            crate::common::R,
5582        >::from_register(self, 0)
5583    }
5584    #[doc = "TX History List Entry Lost"]
5585    #[inline(always)]
5586    pub fn thlelt(
5587        self,
5588    ) -> crate::common::RegisterField<
5589        2,
5590        0x1,
5591        1,
5592        0,
5593        cfdthlsts::Thlelt,
5594        Cfdthlsts_SPEC,
5595        crate::common::RW,
5596    > {
5597        crate::common::RegisterField::<
5598            2,
5599            0x1,
5600            1,
5601            0,
5602            cfdthlsts::Thlelt,
5603            Cfdthlsts_SPEC,
5604            crate::common::RW,
5605        >::from_register(self, 0)
5606    }
5607    #[doc = "TX History List Interrupt Flag"]
5608    #[inline(always)]
5609    pub fn thlif(
5610        self,
5611    ) -> crate::common::RegisterField<
5612        3,
5613        0x1,
5614        1,
5615        0,
5616        cfdthlsts::Thlif,
5617        Cfdthlsts_SPEC,
5618        crate::common::RW,
5619    > {
5620        crate::common::RegisterField::<
5621            3,
5622            0x1,
5623            1,
5624            0,
5625            cfdthlsts::Thlif,
5626            Cfdthlsts_SPEC,
5627            crate::common::RW,
5628        >::from_register(self, 0)
5629    }
5630    #[doc = "TX History List Message Count"]
5631    #[inline(always)]
5632    pub fn thlmc(
5633        self,
5634    ) -> crate::common::RegisterField<8, 0xf, 1, 0, u8, Cfdthlsts_SPEC, crate::common::R> {
5635        crate::common::RegisterField::<8,0xf,1,0,u8, Cfdthlsts_SPEC,crate::common::R>::from_register(self,0)
5636    }
5637}
5638impl ::core::default::Default for Cfdthlsts {
5639    #[inline(always)]
5640    fn default() -> Cfdthlsts {
5641        <crate::RegValueT<Cfdthlsts_SPEC> as RegisterValue<_>>::new(1)
5642    }
5643}
5644pub mod cfdthlsts {
5645
5646    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5647    pub struct Thlemp_SPEC;
5648    pub type Thlemp = crate::EnumBitfieldStruct<u8, Thlemp_SPEC>;
5649    impl Thlemp {
5650        #[doc = "TX History List not empty"]
5651        pub const _0: Self = Self::new(0);
5652        #[doc = "TX History List empty"]
5653        pub const _1: Self = Self::new(1);
5654    }
5655    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5656    pub struct Thlfll_SPEC;
5657    pub type Thlfll = crate::EnumBitfieldStruct<u8, Thlfll_SPEC>;
5658    impl Thlfll {
5659        #[doc = "TX History List not full"]
5660        pub const _0: Self = Self::new(0);
5661        #[doc = "TX History List full"]
5662        pub const _1: Self = Self::new(1);
5663    }
5664    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5665    pub struct Thlelt_SPEC;
5666    pub type Thlelt = crate::EnumBitfieldStruct<u8, Thlelt_SPEC>;
5667    impl Thlelt {
5668        #[doc = "No entry lost in TX History List"]
5669        pub const _0: Self = Self::new(0);
5670        #[doc = "TX History List entry Lost"]
5671        pub const _1: Self = Self::new(1);
5672    }
5673    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5674    pub struct Thlif_SPEC;
5675    pub type Thlif = crate::EnumBitfieldStruct<u8, Thlif_SPEC>;
5676    impl Thlif {
5677        #[doc = "TX History List interrupt condition not satisfied"]
5678        pub const _0: Self = Self::new(0);
5679        #[doc = "TX History List interrupt condition satisfied"]
5680        pub const _1: Self = Self::new(1);
5681    }
5682}
5683#[doc(hidden)]
5684#[derive(Copy, Clone, Eq, PartialEq)]
5685pub struct Cfdthlpctr_SPEC;
5686impl crate::sealed::RegSpec for Cfdthlpctr_SPEC {
5687    type DataType = u32;
5688}
5689#[doc = "TX History List Pointer Control Register"]
5690pub type Cfdthlpctr = crate::RegValueT<Cfdthlpctr_SPEC>;
5691
5692impl Cfdthlpctr {
5693    #[doc = "TX History List Pointer Control"]
5694    #[inline(always)]
5695    pub fn thlpc(
5696        self,
5697    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdthlpctr_SPEC, crate::common::W> {
5698        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdthlpctr_SPEC,crate::common::W>::from_register(self,0)
5699    }
5700}
5701impl ::core::default::Default for Cfdthlpctr {
5702    #[inline(always)]
5703    fn default() -> Cfdthlpctr {
5704        <crate::RegValueT<Cfdthlpctr_SPEC> as RegisterValue<_>>::new(0)
5705    }
5706}
5707
5708#[doc(hidden)]
5709#[derive(Copy, Clone, Eq, PartialEq)]
5710pub struct Cfdgtintsts_SPEC;
5711impl crate::sealed::RegSpec for Cfdgtintsts_SPEC {
5712    type DataType = u32;
5713}
5714#[doc = "Global TX Interrupt Status Register"]
5715pub type Cfdgtintsts = crate::RegValueT<Cfdgtintsts_SPEC>;
5716
5717impl Cfdgtintsts {
5718    #[doc = "TX Successful Interrupt Flag"]
5719    #[inline(always)]
5720    pub fn tsif0(
5721        self,
5722    ) -> crate::common::RegisterField<
5723        0,
5724        0x1,
5725        1,
5726        0,
5727        cfdgtintsts::Tsif0,
5728        Cfdgtintsts_SPEC,
5729        crate::common::R,
5730    > {
5731        crate::common::RegisterField::<
5732            0,
5733            0x1,
5734            1,
5735            0,
5736            cfdgtintsts::Tsif0,
5737            Cfdgtintsts_SPEC,
5738            crate::common::R,
5739        >::from_register(self, 0)
5740    }
5741    #[doc = "TX Abort Interrupt Flag"]
5742    #[inline(always)]
5743    pub fn tai0(
5744        self,
5745    ) -> crate::common::RegisterField<
5746        1,
5747        0x1,
5748        1,
5749        0,
5750        cfdgtintsts::Tai0,
5751        Cfdgtintsts_SPEC,
5752        crate::common::R,
5753    > {
5754        crate::common::RegisterField::<
5755            1,
5756            0x1,
5757            1,
5758            0,
5759            cfdgtintsts::Tai0,
5760            Cfdgtintsts_SPEC,
5761            crate::common::R,
5762        >::from_register(self, 0)
5763    }
5764    #[doc = "TX Queue Interrupt Flag"]
5765    #[inline(always)]
5766    pub fn tqif0(
5767        self,
5768    ) -> crate::common::RegisterField<
5769        2,
5770        0x1,
5771        1,
5772        0,
5773        cfdgtintsts::Tqif0,
5774        Cfdgtintsts_SPEC,
5775        crate::common::R,
5776    > {
5777        crate::common::RegisterField::<
5778            2,
5779            0x1,
5780            1,
5781            0,
5782            cfdgtintsts::Tqif0,
5783            Cfdgtintsts_SPEC,
5784            crate::common::R,
5785        >::from_register(self, 0)
5786    }
5787    #[doc = "COM FIFO TX Mode Interrupt Flag"]
5788    #[inline(always)]
5789    pub fn cftif0(
5790        self,
5791    ) -> crate::common::RegisterField<
5792        3,
5793        0x1,
5794        1,
5795        0,
5796        cfdgtintsts::Cftif0,
5797        Cfdgtintsts_SPEC,
5798        crate::common::R,
5799    > {
5800        crate::common::RegisterField::<
5801            3,
5802            0x1,
5803            1,
5804            0,
5805            cfdgtintsts::Cftif0,
5806            Cfdgtintsts_SPEC,
5807            crate::common::R,
5808        >::from_register(self, 0)
5809    }
5810    #[doc = "TX History List Interrupt"]
5811    #[inline(always)]
5812    pub fn thif0(
5813        self,
5814    ) -> crate::common::RegisterField<
5815        4,
5816        0x1,
5817        1,
5818        0,
5819        cfdgtintsts::Thif0,
5820        Cfdgtintsts_SPEC,
5821        crate::common::R,
5822    > {
5823        crate::common::RegisterField::<
5824            4,
5825            0x1,
5826            1,
5827            0,
5828            cfdgtintsts::Thif0,
5829            Cfdgtintsts_SPEC,
5830            crate::common::R,
5831        >::from_register(self, 0)
5832    }
5833}
5834impl ::core::default::Default for Cfdgtintsts {
5835    #[inline(always)]
5836    fn default() -> Cfdgtintsts {
5837        <crate::RegValueT<Cfdgtintsts_SPEC> as RegisterValue<_>>::new(0)
5838    }
5839}
5840pub mod cfdgtintsts {
5841
5842    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5843    pub struct Tsif0_SPEC;
5844    pub type Tsif0 = crate::EnumBitfieldStruct<u8, Tsif0_SPEC>;
5845    impl Tsif0 {
5846        #[doc = "Channel n TX Successful Interrupt flag not set"]
5847        pub const _0: Self = Self::new(0);
5848        #[doc = "Channel n TX Successful Interrupt flag set"]
5849        pub const _1: Self = Self::new(1);
5850    }
5851    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5852    pub struct Tai0_SPEC;
5853    pub type Tai0 = crate::EnumBitfieldStruct<u8, Tai0_SPEC>;
5854    impl Tai0 {
5855        #[doc = "Channel n TX Abort Interrupt flag not set"]
5856        pub const _0: Self = Self::new(0);
5857        #[doc = "Channel n TX Abort Interrupt flag set"]
5858        pub const _1: Self = Self::new(1);
5859    }
5860    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5861    pub struct Tqif0_SPEC;
5862    pub type Tqif0 = crate::EnumBitfieldStruct<u8, Tqif0_SPEC>;
5863    impl Tqif0 {
5864        #[doc = "Channel n TX Queue Interrupt flag not set"]
5865        pub const _0: Self = Self::new(0);
5866        #[doc = "Channel n TX Queue Interrupt flag set"]
5867        pub const _1: Self = Self::new(1);
5868    }
5869    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5870    pub struct Cftif0_SPEC;
5871    pub type Cftif0 = crate::EnumBitfieldStruct<u8, Cftif0_SPEC>;
5872    impl Cftif0 {
5873        #[doc = "Channel n COM FIFO TX Mode Interrupt flag not set"]
5874        pub const _0: Self = Self::new(0);
5875        #[doc = "Channel n COM FIFO TX Mode Interrupt flag set"]
5876        pub const _1: Self = Self::new(1);
5877    }
5878    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5879    pub struct Thif0_SPEC;
5880    pub type Thif0 = crate::EnumBitfieldStruct<u8, Thif0_SPEC>;
5881    impl Thif0 {
5882        #[doc = "Channel n TX History List Interrupt flag not set"]
5883        pub const _0: Self = Self::new(0);
5884        #[doc = "Channel n TX History List Interrupt flag set"]
5885        pub const _1: Self = Self::new(1);
5886    }
5887}
5888#[doc(hidden)]
5889#[derive(Copy, Clone, Eq, PartialEq)]
5890pub struct Cfdgtstcfg_SPEC;
5891impl crate::sealed::RegSpec for Cfdgtstcfg_SPEC {
5892    type DataType = u32;
5893}
5894#[doc = "Global Test Configuration Register"]
5895pub type Cfdgtstcfg = crate::RegValueT<Cfdgtstcfg_SPEC>;
5896
5897impl Cfdgtstcfg {
5898    #[doc = "RAM Test Mode Page Select"]
5899    #[inline(always)]
5900    pub fn rtmps(
5901        self,
5902    ) -> crate::common::RegisterField<16, 0xf, 1, 0, u8, Cfdgtstcfg_SPEC, crate::common::RW> {
5903        crate::common::RegisterField::<16,0xf,1,0,u8, Cfdgtstcfg_SPEC,crate::common::RW>::from_register(self,0)
5904    }
5905}
5906impl ::core::default::Default for Cfdgtstcfg {
5907    #[inline(always)]
5908    fn default() -> Cfdgtstcfg {
5909        <crate::RegValueT<Cfdgtstcfg_SPEC> as RegisterValue<_>>::new(0)
5910    }
5911}
5912
5913#[doc(hidden)]
5914#[derive(Copy, Clone, Eq, PartialEq)]
5915pub struct Cfdgtstctr_SPEC;
5916impl crate::sealed::RegSpec for Cfdgtstctr_SPEC {
5917    type DataType = u32;
5918}
5919#[doc = "Global Test Control Register"]
5920pub type Cfdgtstctr = crate::RegValueT<Cfdgtstctr_SPEC>;
5921
5922impl Cfdgtstctr {
5923    #[doc = "RAM Test Mode Enable"]
5924    #[inline(always)]
5925    pub fn rtme(
5926        self,
5927    ) -> crate::common::RegisterField<
5928        2,
5929        0x1,
5930        1,
5931        0,
5932        cfdgtstctr::Rtme,
5933        Cfdgtstctr_SPEC,
5934        crate::common::RW,
5935    > {
5936        crate::common::RegisterField::<
5937            2,
5938            0x1,
5939            1,
5940            0,
5941            cfdgtstctr::Rtme,
5942            Cfdgtstctr_SPEC,
5943            crate::common::RW,
5944        >::from_register(self, 0)
5945    }
5946}
5947impl ::core::default::Default for Cfdgtstctr {
5948    #[inline(always)]
5949    fn default() -> Cfdgtstctr {
5950        <crate::RegValueT<Cfdgtstctr_SPEC> as RegisterValue<_>>::new(0)
5951    }
5952}
5953pub mod cfdgtstctr {
5954
5955    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
5956    pub struct Rtme_SPEC;
5957    pub type Rtme = crate::EnumBitfieldStruct<u8, Rtme_SPEC>;
5958    impl Rtme {
5959        #[doc = "RAM test mode disabled"]
5960        pub const _0: Self = Self::new(0);
5961        #[doc = "RAM test mode enabled"]
5962        pub const _1: Self = Self::new(1);
5963    }
5964}
5965#[doc(hidden)]
5966#[derive(Copy, Clone, Eq, PartialEq)]
5967pub struct Cfdgfdcfg_SPEC;
5968impl crate::sealed::RegSpec for Cfdgfdcfg_SPEC {
5969    type DataType = u32;
5970}
5971#[doc = "Global FD Configuration Register"]
5972pub type Cfdgfdcfg = crate::RegValueT<Cfdgfdcfg_SPEC>;
5973
5974impl Cfdgfdcfg {
5975    #[doc = "RES Bit Protocol Exception Disable"]
5976    #[inline(always)]
5977    pub fn rped(
5978        self,
5979    ) -> crate::common::RegisterField<
5980        0,
5981        0x1,
5982        1,
5983        0,
5984        cfdgfdcfg::Rped,
5985        Cfdgfdcfg_SPEC,
5986        crate::common::RW,
5987    > {
5988        crate::common::RegisterField::<
5989            0,
5990            0x1,
5991            1,
5992            0,
5993            cfdgfdcfg::Rped,
5994            Cfdgfdcfg_SPEC,
5995            crate::common::RW,
5996        >::from_register(self, 0)
5997    }
5998    #[doc = "Timestamp Capture Configuration"]
5999    #[inline(always)]
6000    pub fn tsccfg(
6001        self,
6002    ) -> crate::common::RegisterField<
6003        8,
6004        0x3,
6005        1,
6006        0,
6007        cfdgfdcfg::Tsccfg,
6008        Cfdgfdcfg_SPEC,
6009        crate::common::RW,
6010    > {
6011        crate::common::RegisterField::<
6012            8,
6013            0x3,
6014            1,
6015            0,
6016            cfdgfdcfg::Tsccfg,
6017            Cfdgfdcfg_SPEC,
6018            crate::common::RW,
6019        >::from_register(self, 0)
6020    }
6021}
6022impl ::core::default::Default for Cfdgfdcfg {
6023    #[inline(always)]
6024    fn default() -> Cfdgfdcfg {
6025        <crate::RegValueT<Cfdgfdcfg_SPEC> as RegisterValue<_>>::new(0)
6026    }
6027}
6028pub mod cfdgfdcfg {
6029
6030    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6031    pub struct Rped_SPEC;
6032    pub type Rped = crate::EnumBitfieldStruct<u8, Rped_SPEC>;
6033    impl Rped {
6034        #[doc = "Protocol exception event detection enabled"]
6035        pub const _0: Self = Self::new(0);
6036        #[doc = "Protocol exception event detection disabled"]
6037        pub const _1: Self = Self::new(1);
6038    }
6039    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6040    pub struct Tsccfg_SPEC;
6041    pub type Tsccfg = crate::EnumBitfieldStruct<u8, Tsccfg_SPEC>;
6042    impl Tsccfg {
6043        #[doc = "Timestamp capture at the sample point of SOF (start of frame)"]
6044        pub const _00: Self = Self::new(0);
6045        #[doc = "Timestamp capture at frame valid indication"]
6046        pub const _01: Self = Self::new(1);
6047        #[doc = "Timestamp capture at the sample point of RES bit"]
6048        pub const _10: Self = Self::new(2);
6049        #[doc = "Reserved"]
6050        pub const _11: Self = Self::new(3);
6051    }
6052}
6053#[doc(hidden)]
6054#[derive(Copy, Clone, Eq, PartialEq)]
6055pub struct Cfdglockk_SPEC;
6056impl crate::sealed::RegSpec for Cfdglockk_SPEC {
6057    type DataType = u32;
6058}
6059#[doc = "Global Lock Key Register"]
6060pub type Cfdglockk = crate::RegValueT<Cfdglockk_SPEC>;
6061
6062impl Cfdglockk {
6063    #[doc = "Lock Key"]
6064    #[inline(always)]
6065    pub fn lock(
6066        self,
6067    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdglockk_SPEC, crate::common::W> {
6068        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdglockk_SPEC,crate::common::W>::from_register(self,0)
6069    }
6070}
6071impl ::core::default::Default for Cfdglockk {
6072    #[inline(always)]
6073    fn default() -> Cfdglockk {
6074        <crate::RegValueT<Cfdglockk_SPEC> as RegisterValue<_>>::new(0)
6075    }
6076}
6077
6078#[doc(hidden)]
6079#[derive(Copy, Clone, Eq, PartialEq)]
6080pub struct Cfdgaflignent_SPEC;
6081impl crate::sealed::RegSpec for Cfdgaflignent_SPEC {
6082    type DataType = u32;
6083}
6084#[doc = "Global AFL Ignore Entry Register"]
6085pub type Cfdgaflignent = crate::RegValueT<Cfdgaflignent_SPEC>;
6086
6087impl Cfdgaflignent {
6088    #[doc = "Ignore Rule Number"]
6089    #[inline(always)]
6090    pub fn irn(
6091        self,
6092    ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, Cfdgaflignent_SPEC, crate::common::RW>
6093    {
6094        crate::common::RegisterField::<0,0x1f,1,0,u8, Cfdgaflignent_SPEC,crate::common::RW>::from_register(self,0)
6095    }
6096}
6097impl ::core::default::Default for Cfdgaflignent {
6098    #[inline(always)]
6099    fn default() -> Cfdgaflignent {
6100        <crate::RegValueT<Cfdgaflignent_SPEC> as RegisterValue<_>>::new(0)
6101    }
6102}
6103
6104#[doc(hidden)]
6105#[derive(Copy, Clone, Eq, PartialEq)]
6106pub struct Cfdgaflignctr_SPEC;
6107impl crate::sealed::RegSpec for Cfdgaflignctr_SPEC {
6108    type DataType = u32;
6109}
6110#[doc = "Global AFL Ignore Control Register"]
6111pub type Cfdgaflignctr = crate::RegValueT<Cfdgaflignctr_SPEC>;
6112
6113impl Cfdgaflignctr {
6114    #[doc = "Ignore Rule Enable"]
6115    #[inline(always)]
6116    pub fn iren(
6117        self,
6118    ) -> crate::common::RegisterField<
6119        0,
6120        0x1,
6121        1,
6122        0,
6123        cfdgaflignctr::Iren,
6124        Cfdgaflignctr_SPEC,
6125        crate::common::RW,
6126    > {
6127        crate::common::RegisterField::<
6128            0,
6129            0x1,
6130            1,
6131            0,
6132            cfdgaflignctr::Iren,
6133            Cfdgaflignctr_SPEC,
6134            crate::common::RW,
6135        >::from_register(self, 0)
6136    }
6137    #[doc = "Key Code"]
6138    #[inline(always)]
6139    pub fn key(
6140        self,
6141    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdgaflignctr_SPEC, crate::common::W> {
6142        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdgaflignctr_SPEC,crate::common::W>::from_register(self,0)
6143    }
6144}
6145impl ::core::default::Default for Cfdgaflignctr {
6146    #[inline(always)]
6147    fn default() -> Cfdgaflignctr {
6148        <crate::RegValueT<Cfdgaflignctr_SPEC> as RegisterValue<_>>::new(0)
6149    }
6150}
6151pub mod cfdgaflignctr {
6152
6153    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6154    pub struct Iren_SPEC;
6155    pub type Iren = crate::EnumBitfieldStruct<u8, Iren_SPEC>;
6156    impl Iren {
6157        #[doc = "AFL entry number is not ignored"]
6158        pub const _0: Self = Self::new(0);
6159        #[doc = "AFL entry number is ignored"]
6160        pub const _1: Self = Self::new(1);
6161    }
6162}
6163#[doc(hidden)]
6164#[derive(Copy, Clone, Eq, PartialEq)]
6165pub struct Cfdcdtct_SPEC;
6166impl crate::sealed::RegSpec for Cfdcdtct_SPEC {
6167    type DataType = u32;
6168}
6169#[doc = "DMA Transfer Control Register"]
6170pub type Cfdcdtct = crate::RegValueT<Cfdcdtct_SPEC>;
6171
6172impl Cfdcdtct {
6173    #[doc = "DMA Transfer Enable for RXFIFO 0"]
6174    #[inline(always)]
6175    pub fn rfdmae0(
6176        self,
6177    ) -> crate::common::RegisterField<
6178        0,
6179        0x1,
6180        1,
6181        0,
6182        cfdcdtct::Rfdmae0,
6183        Cfdcdtct_SPEC,
6184        crate::common::RW,
6185    > {
6186        crate::common::RegisterField::<
6187            0,
6188            0x1,
6189            1,
6190            0,
6191            cfdcdtct::Rfdmae0,
6192            Cfdcdtct_SPEC,
6193            crate::common::RW,
6194        >::from_register(self, 0)
6195    }
6196    #[doc = "DMA Transfer Enable for RXFIFO 1"]
6197    #[inline(always)]
6198    pub fn rfdmae1(
6199        self,
6200    ) -> crate::common::RegisterField<
6201        1,
6202        0x1,
6203        1,
6204        0,
6205        cfdcdtct::Rfdmae1,
6206        Cfdcdtct_SPEC,
6207        crate::common::RW,
6208    > {
6209        crate::common::RegisterField::<
6210            1,
6211            0x1,
6212            1,
6213            0,
6214            cfdcdtct::Rfdmae1,
6215            Cfdcdtct_SPEC,
6216            crate::common::RW,
6217        >::from_register(self, 0)
6218    }
6219    #[doc = "DMA Transfer Enable for Common FIFO 0"]
6220    #[inline(always)]
6221    pub fn cfdmae(
6222        self,
6223    ) -> crate::common::RegisterField<
6224        8,
6225        0x1,
6226        1,
6227        0,
6228        cfdcdtct::Cfdmae,
6229        Cfdcdtct_SPEC,
6230        crate::common::RW,
6231    > {
6232        crate::common::RegisterField::<
6233            8,
6234            0x1,
6235            1,
6236            0,
6237            cfdcdtct::Cfdmae,
6238            Cfdcdtct_SPEC,
6239            crate::common::RW,
6240        >::from_register(self, 0)
6241    }
6242}
6243impl ::core::default::Default for Cfdcdtct {
6244    #[inline(always)]
6245    fn default() -> Cfdcdtct {
6246        <crate::RegValueT<Cfdcdtct_SPEC> as RegisterValue<_>>::new(0)
6247    }
6248}
6249pub mod cfdcdtct {
6250
6251    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6252    pub struct Rfdmae0_SPEC;
6253    pub type Rfdmae0 = crate::EnumBitfieldStruct<u8, Rfdmae0_SPEC>;
6254    impl Rfdmae0 {
6255        #[doc = "DMA transfer request disabled"]
6256        pub const _0: Self = Self::new(0);
6257        #[doc = "DMA transfer request enabled"]
6258        pub const _1: Self = Self::new(1);
6259    }
6260    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6261    pub struct Rfdmae1_SPEC;
6262    pub type Rfdmae1 = crate::EnumBitfieldStruct<u8, Rfdmae1_SPEC>;
6263    impl Rfdmae1 {
6264        #[doc = "DMA transfer request disabled"]
6265        pub const _0: Self = Self::new(0);
6266        #[doc = "DMA transfer request enabled"]
6267        pub const _1: Self = Self::new(1);
6268    }
6269    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6270    pub struct Cfdmae_SPEC;
6271    pub type Cfdmae = crate::EnumBitfieldStruct<u8, Cfdmae_SPEC>;
6272    impl Cfdmae {
6273        #[doc = "DMA transfer request disabled"]
6274        pub const _0: Self = Self::new(0);
6275        #[doc = "DMA transfer request enabled"]
6276        pub const _1: Self = Self::new(1);
6277    }
6278}
6279#[doc(hidden)]
6280#[derive(Copy, Clone, Eq, PartialEq)]
6281pub struct Cfdcdtsts_SPEC;
6282impl crate::sealed::RegSpec for Cfdcdtsts_SPEC {
6283    type DataType = u32;
6284}
6285#[doc = "DMA Transfer Status Register"]
6286pub type Cfdcdtsts = crate::RegValueT<Cfdcdtsts_SPEC>;
6287
6288impl Cfdcdtsts {
6289    #[doc = "DMA Transfer Status for RX FIFO 0"]
6290    #[inline(always)]
6291    pub fn rfdmasts0(
6292        self,
6293    ) -> crate::common::RegisterField<
6294        0,
6295        0x1,
6296        1,
6297        0,
6298        cfdcdtsts::Rfdmasts0,
6299        Cfdcdtsts_SPEC,
6300        crate::common::R,
6301    > {
6302        crate::common::RegisterField::<
6303            0,
6304            0x1,
6305            1,
6306            0,
6307            cfdcdtsts::Rfdmasts0,
6308            Cfdcdtsts_SPEC,
6309            crate::common::R,
6310        >::from_register(self, 0)
6311    }
6312    #[doc = "DMA Transfer Status for RX FIFO 1"]
6313    #[inline(always)]
6314    pub fn rfdmasts1(
6315        self,
6316    ) -> crate::common::RegisterField<
6317        1,
6318        0x1,
6319        1,
6320        0,
6321        cfdcdtsts::Rfdmasts1,
6322        Cfdcdtsts_SPEC,
6323        crate::common::R,
6324    > {
6325        crate::common::RegisterField::<
6326            1,
6327            0x1,
6328            1,
6329            0,
6330            cfdcdtsts::Rfdmasts1,
6331            Cfdcdtsts_SPEC,
6332            crate::common::R,
6333        >::from_register(self, 0)
6334    }
6335    #[doc = "DMA Transfer Status only for Common FIFO"]
6336    #[inline(always)]
6337    pub fn cfdmasts(
6338        self,
6339    ) -> crate::common::RegisterField<
6340        8,
6341        0x1,
6342        1,
6343        0,
6344        cfdcdtsts::Cfdmasts,
6345        Cfdcdtsts_SPEC,
6346        crate::common::R,
6347    > {
6348        crate::common::RegisterField::<
6349            8,
6350            0x1,
6351            1,
6352            0,
6353            cfdcdtsts::Cfdmasts,
6354            Cfdcdtsts_SPEC,
6355            crate::common::R,
6356        >::from_register(self, 0)
6357    }
6358}
6359impl ::core::default::Default for Cfdcdtsts {
6360    #[inline(always)]
6361    fn default() -> Cfdcdtsts {
6362        <crate::RegValueT<Cfdcdtsts_SPEC> as RegisterValue<_>>::new(0)
6363    }
6364}
6365pub mod cfdcdtsts {
6366
6367    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6368    pub struct Rfdmasts0_SPEC;
6369    pub type Rfdmasts0 = crate::EnumBitfieldStruct<u8, Rfdmasts0_SPEC>;
6370    impl Rfdmasts0 {
6371        #[doc = "DMA transfer stopped"]
6372        pub const _0: Self = Self::new(0);
6373        #[doc = "DMA transfer on going"]
6374        pub const _1: Self = Self::new(1);
6375    }
6376    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6377    pub struct Rfdmasts1_SPEC;
6378    pub type Rfdmasts1 = crate::EnumBitfieldStruct<u8, Rfdmasts1_SPEC>;
6379    impl Rfdmasts1 {
6380        #[doc = "DMA transfer stopped"]
6381        pub const _0: Self = Self::new(0);
6382        #[doc = "DMA transfer on going"]
6383        pub const _1: Self = Self::new(1);
6384    }
6385    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6386    pub struct Cfdmasts_SPEC;
6387    pub type Cfdmasts = crate::EnumBitfieldStruct<u8, Cfdmasts_SPEC>;
6388    impl Cfdmasts {
6389        #[doc = "DMA transfer stopped"]
6390        pub const _0: Self = Self::new(0);
6391        #[doc = "DMA transfer on going"]
6392        pub const _1: Self = Self::new(1);
6393    }
6394}
6395#[doc(hidden)]
6396#[derive(Copy, Clone, Eq, PartialEq)]
6397pub struct Cfdgrstc_SPEC;
6398impl crate::sealed::RegSpec for Cfdgrstc_SPEC {
6399    type DataType = u32;
6400}
6401#[doc = "Global SW reset Register"]
6402pub type Cfdgrstc = crate::RegValueT<Cfdgrstc_SPEC>;
6403
6404impl Cfdgrstc {
6405    #[doc = "SW Reset"]
6406    #[inline(always)]
6407    pub fn srst(
6408        self,
6409    ) -> crate::common::RegisterField<0, 0x1, 1, 0, cfdgrstc::Srst, Cfdgrstc_SPEC, crate::common::RW>
6410    {
6411        crate::common::RegisterField::<0,0x1,1,0,cfdgrstc::Srst, Cfdgrstc_SPEC,crate::common::RW>::from_register(self,0)
6412    }
6413    #[doc = "Key Code"]
6414    #[inline(always)]
6415    pub fn key(
6416        self,
6417    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdgrstc_SPEC, crate::common::W> {
6418        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdgrstc_SPEC,crate::common::W>::from_register(self,0)
6419    }
6420}
6421impl ::core::default::Default for Cfdgrstc {
6422    #[inline(always)]
6423    fn default() -> Cfdgrstc {
6424        <crate::RegValueT<Cfdgrstc_SPEC> as RegisterValue<_>>::new(0)
6425    }
6426}
6427pub mod cfdgrstc {
6428
6429    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6430    pub struct Srst_SPEC;
6431    pub type Srst = crate::EnumBitfieldStruct<u8, Srst_SPEC>;
6432    impl Srst {
6433        #[doc = "Normal state"]
6434        pub const _0: Self = Self::new(0);
6435        #[doc = "SW reset state"]
6436        pub const _1: Self = Self::new(1);
6437    }
6438}
6439#[doc(hidden)]
6440#[derive(Copy, Clone, Eq, PartialEq)]
6441pub struct Cfdc0Dcfg_SPEC;
6442impl crate::sealed::RegSpec for Cfdc0Dcfg_SPEC {
6443    type DataType = u32;
6444}
6445#[doc = "Channel 0 Data Bitrate Configuration Register"]
6446pub type Cfdc0Dcfg = crate::RegValueT<Cfdc0Dcfg_SPEC>;
6447
6448impl Cfdc0Dcfg {
6449    #[doc = "Channel Data Baud Rate Prescaler"]
6450    #[inline(always)]
6451    pub fn dbrp(
6452        self,
6453    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdc0Dcfg_SPEC, crate::common::RW> {
6454        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdc0Dcfg_SPEC,crate::common::RW>::from_register(self,0)
6455    }
6456    #[doc = "Timing Segment 1"]
6457    #[inline(always)]
6458    pub fn dtseg1(
6459        self,
6460    ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, Cfdc0Dcfg_SPEC, crate::common::RW> {
6461        crate::common::RegisterField::<8,0x1f,1,0,u8, Cfdc0Dcfg_SPEC,crate::common::RW>::from_register(self,0)
6462    }
6463    #[doc = "Timing Segment 2"]
6464    #[inline(always)]
6465    pub fn dtseg2(
6466        self,
6467    ) -> crate::common::RegisterField<16, 0xf, 1, 0, u8, Cfdc0Dcfg_SPEC, crate::common::RW> {
6468        crate::common::RegisterField::<16,0xf,1,0,u8, Cfdc0Dcfg_SPEC,crate::common::RW>::from_register(self,0)
6469    }
6470    #[doc = "Resynchronization Jump Width"]
6471    #[inline(always)]
6472    pub fn dsjw(
6473        self,
6474    ) -> crate::common::RegisterField<24, 0xf, 1, 0, u8, Cfdc0Dcfg_SPEC, crate::common::RW> {
6475        crate::common::RegisterField::<24,0xf,1,0,u8, Cfdc0Dcfg_SPEC,crate::common::RW>::from_register(self,0)
6476    }
6477}
6478impl ::core::default::Default for Cfdc0Dcfg {
6479    #[inline(always)]
6480    fn default() -> Cfdc0Dcfg {
6481        <crate::RegValueT<Cfdc0Dcfg_SPEC> as RegisterValue<_>>::new(0)
6482    }
6483}
6484
6485#[doc(hidden)]
6486#[derive(Copy, Clone, Eq, PartialEq)]
6487pub struct Cfdc0Fdcfg_SPEC;
6488impl crate::sealed::RegSpec for Cfdc0Fdcfg_SPEC {
6489    type DataType = u32;
6490}
6491#[doc = "Channel 0 CANFD Configuration Register"]
6492pub type Cfdc0Fdcfg = crate::RegValueT<Cfdc0Fdcfg_SPEC>;
6493
6494impl Cfdc0Fdcfg {
6495    #[doc = "Error Occurrence Counter Configuration"]
6496    #[inline(always)]
6497    pub fn eoccfg(
6498        self,
6499    ) -> crate::common::RegisterField<
6500        0,
6501        0x7,
6502        1,
6503        0,
6504        cfdc0fdcfg::Eoccfg,
6505        Cfdc0Fdcfg_SPEC,
6506        crate::common::RW,
6507    > {
6508        crate::common::RegisterField::<
6509            0,
6510            0x7,
6511            1,
6512            0,
6513            cfdc0fdcfg::Eoccfg,
6514            Cfdc0Fdcfg_SPEC,
6515            crate::common::RW,
6516        >::from_register(self, 0)
6517    }
6518    #[doc = "Transceiver Delay Compensation Offset Configuration"]
6519    #[inline(always)]
6520    pub fn tdcoc(
6521        self,
6522    ) -> crate::common::RegisterField<
6523        8,
6524        0x1,
6525        1,
6526        0,
6527        cfdc0fdcfg::Tdcoc,
6528        Cfdc0Fdcfg_SPEC,
6529        crate::common::RW,
6530    > {
6531        crate::common::RegisterField::<
6532            8,
6533            0x1,
6534            1,
6535            0,
6536            cfdc0fdcfg::Tdcoc,
6537            Cfdc0Fdcfg_SPEC,
6538            crate::common::RW,
6539        >::from_register(self, 0)
6540    }
6541    #[doc = "Transceiver Delay Compensation Enable"]
6542    #[inline(always)]
6543    pub fn tdce(
6544        self,
6545    ) -> crate::common::RegisterField<
6546        9,
6547        0x1,
6548        1,
6549        0,
6550        cfdc0fdcfg::Tdce,
6551        Cfdc0Fdcfg_SPEC,
6552        crate::common::RW,
6553    > {
6554        crate::common::RegisterField::<
6555            9,
6556            0x1,
6557            1,
6558            0,
6559            cfdc0fdcfg::Tdce,
6560            Cfdc0Fdcfg_SPEC,
6561            crate::common::RW,
6562        >::from_register(self, 0)
6563    }
6564    #[doc = "Error State Indication Configuration"]
6565    #[inline(always)]
6566    pub fn esic(
6567        self,
6568    ) -> crate::common::RegisterField<
6569        10,
6570        0x1,
6571        1,
6572        0,
6573        cfdc0fdcfg::Esic,
6574        Cfdc0Fdcfg_SPEC,
6575        crate::common::RW,
6576    > {
6577        crate::common::RegisterField::<
6578            10,
6579            0x1,
6580            1,
6581            0,
6582            cfdc0fdcfg::Esic,
6583            Cfdc0Fdcfg_SPEC,
6584            crate::common::RW,
6585        >::from_register(self, 0)
6586    }
6587    #[doc = "Transceiver Delay Compensation Offset"]
6588    #[inline(always)]
6589    pub fn tdco(
6590        self,
6591    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdc0Fdcfg_SPEC, crate::common::RW> {
6592        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdc0Fdcfg_SPEC,crate::common::RW>::from_register(self,0)
6593    }
6594    #[doc = "FD-Only Enable"]
6595    #[inline(always)]
6596    pub fn fdoe(
6597        self,
6598    ) -> crate::common::RegisterField<
6599        28,
6600        0x1,
6601        1,
6602        0,
6603        cfdc0fdcfg::Fdoe,
6604        Cfdc0Fdcfg_SPEC,
6605        crate::common::RW,
6606    > {
6607        crate::common::RegisterField::<
6608            28,
6609            0x1,
6610            1,
6611            0,
6612            cfdc0fdcfg::Fdoe,
6613            Cfdc0Fdcfg_SPEC,
6614            crate::common::RW,
6615        >::from_register(self, 0)
6616    }
6617    #[doc = "RX Edge Filter Enable"]
6618    #[inline(always)]
6619    pub fn refe(
6620        self,
6621    ) -> crate::common::RegisterField<
6622        29,
6623        0x1,
6624        1,
6625        0,
6626        cfdc0fdcfg::Refe,
6627        Cfdc0Fdcfg_SPEC,
6628        crate::common::RW,
6629    > {
6630        crate::common::RegisterField::<
6631            29,
6632            0x1,
6633            1,
6634            0,
6635            cfdc0fdcfg::Refe,
6636            Cfdc0Fdcfg_SPEC,
6637            crate::common::RW,
6638        >::from_register(self, 0)
6639    }
6640    #[doc = "Classical CAN Enable"]
6641    #[inline(always)]
6642    pub fn cloe(
6643        self,
6644    ) -> crate::common::RegisterField<
6645        30,
6646        0x1,
6647        1,
6648        0,
6649        cfdc0fdcfg::Cloe,
6650        Cfdc0Fdcfg_SPEC,
6651        crate::common::RW,
6652    > {
6653        crate::common::RegisterField::<
6654            30,
6655            0x1,
6656            1,
6657            0,
6658            cfdc0fdcfg::Cloe,
6659            Cfdc0Fdcfg_SPEC,
6660            crate::common::RW,
6661        >::from_register(self, 0)
6662    }
6663}
6664impl ::core::default::Default for Cfdc0Fdcfg {
6665    #[inline(always)]
6666    fn default() -> Cfdc0Fdcfg {
6667        <crate::RegValueT<Cfdc0Fdcfg_SPEC> as RegisterValue<_>>::new(0)
6668    }
6669}
6670pub mod cfdc0fdcfg {
6671
6672    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6673    pub struct Eoccfg_SPEC;
6674    pub type Eoccfg = crate::EnumBitfieldStruct<u8, Eoccfg_SPEC>;
6675    impl Eoccfg {
6676        #[doc = "All transmitter or receiver CAN frames"]
6677        pub const _000: Self = Self::new(0);
6678        #[doc = "All transmitter CAN frames"]
6679        pub const _001: Self = Self::new(1);
6680        #[doc = "All receiver CAN frames"]
6681        pub const _010: Self = Self::new(2);
6682        #[doc = "Reserved"]
6683        pub const _011: Self = Self::new(3);
6684        #[doc = "Only transmitter or receiver CANFD data-phase (fast bits)"]
6685        pub const _100: Self = Self::new(4);
6686        #[doc = "Only transmitter CANFD data-phase (fast bits)"]
6687        pub const _101: Self = Self::new(5);
6688        #[doc = "Only receiver CANFD data-phase (fast bits)"]
6689        pub const _110: Self = Self::new(6);
6690        #[doc = "Reserved"]
6691        pub const _111: Self = Self::new(7);
6692    }
6693    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6694    pub struct Tdcoc_SPEC;
6695    pub type Tdcoc = crate::EnumBitfieldStruct<u8, Tdcoc_SPEC>;
6696    impl Tdcoc {
6697        #[doc = "Measured + offset"]
6698        pub const _0: Self = Self::new(0);
6699        #[doc = "Offset-only"]
6700        pub const _1: Self = Self::new(1);
6701    }
6702    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6703    pub struct Tdce_SPEC;
6704    pub type Tdce = crate::EnumBitfieldStruct<u8, Tdce_SPEC>;
6705    impl Tdce {
6706        #[doc = "Transceiver delay compensation disabled"]
6707        pub const _0: Self = Self::new(0);
6708        #[doc = "Transceiver delay compensation enabled"]
6709        pub const _1: Self = Self::new(1);
6710    }
6711    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6712    pub struct Esic_SPEC;
6713    pub type Esic = crate::EnumBitfieldStruct<u8, Esic_SPEC>;
6714    impl Esic {
6715        #[doc = "The ESI bit in the frame represents the error state of the node itself"]
6716        pub const _0: Self = Self::new(0);
6717        #[doc = "The ESI bit in the frame represents the error state of the message buffer if the node itself is not in error passive. If the node is in error passive, then the ESI bit is driven by the node itself."]
6718        pub const _1: Self = Self::new(1);
6719    }
6720    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6721    pub struct Fdoe_SPEC;
6722    pub type Fdoe = crate::EnumBitfieldStruct<u8, Fdoe_SPEC>;
6723    impl Fdoe {
6724        #[doc = "FD-only mode disabled"]
6725        pub const _0: Self = Self::new(0);
6726        #[doc = "FD-only mode enabled"]
6727        pub const _1: Self = Self::new(1);
6728    }
6729    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6730    pub struct Refe_SPEC;
6731    pub type Refe = crate::EnumBitfieldStruct<u8, Refe_SPEC>;
6732    impl Refe {
6733        #[doc = "RX edge filter disabled"]
6734        pub const _0: Self = Self::new(0);
6735        #[doc = "RX edge filter enabled"]
6736        pub const _1: Self = Self::new(1);
6737    }
6738    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6739    pub struct Cloe_SPEC;
6740    pub type Cloe = crate::EnumBitfieldStruct<u8, Cloe_SPEC>;
6741    impl Cloe {
6742        #[doc = "Classical CAN mode disabled"]
6743        pub const _0: Self = Self::new(0);
6744        #[doc = "Classical CAN mode enabled"]
6745        pub const _1: Self = Self::new(1);
6746    }
6747}
6748#[doc(hidden)]
6749#[derive(Copy, Clone, Eq, PartialEq)]
6750pub struct Cfdc0Fdctr_SPEC;
6751impl crate::sealed::RegSpec for Cfdc0Fdctr_SPEC {
6752    type DataType = u32;
6753}
6754#[doc = "Channel 0 CANFD Control Register"]
6755pub type Cfdc0Fdctr = crate::RegValueT<Cfdc0Fdctr_SPEC>;
6756
6757impl Cfdc0Fdctr {
6758    #[doc = "Error Occurrence Counter Clear"]
6759    #[inline(always)]
6760    pub fn eocclr(
6761        self,
6762    ) -> crate::common::RegisterField<
6763        0,
6764        0x1,
6765        1,
6766        0,
6767        cfdc0fdctr::Eocclr,
6768        Cfdc0Fdctr_SPEC,
6769        crate::common::RW,
6770    > {
6771        crate::common::RegisterField::<
6772            0,
6773            0x1,
6774            1,
6775            0,
6776            cfdc0fdctr::Eocclr,
6777            Cfdc0Fdctr_SPEC,
6778            crate::common::RW,
6779        >::from_register(self, 0)
6780    }
6781    #[doc = "Successful Occurrence Counter Clear"]
6782    #[inline(always)]
6783    pub fn socclr(
6784        self,
6785    ) -> crate::common::RegisterField<
6786        1,
6787        0x1,
6788        1,
6789        0,
6790        cfdc0fdctr::Socclr,
6791        Cfdc0Fdctr_SPEC,
6792        crate::common::RW,
6793    > {
6794        crate::common::RegisterField::<
6795            1,
6796            0x1,
6797            1,
6798            0,
6799            cfdc0fdctr::Socclr,
6800            Cfdc0Fdctr_SPEC,
6801            crate::common::RW,
6802        >::from_register(self, 0)
6803    }
6804}
6805impl ::core::default::Default for Cfdc0Fdctr {
6806    #[inline(always)]
6807    fn default() -> Cfdc0Fdctr {
6808        <crate::RegValueT<Cfdc0Fdctr_SPEC> as RegisterValue<_>>::new(0)
6809    }
6810}
6811pub mod cfdc0fdctr {
6812
6813    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6814    pub struct Eocclr_SPEC;
6815    pub type Eocclr = crate::EnumBitfieldStruct<u8, Eocclr_SPEC>;
6816    impl Eocclr {
6817        #[doc = "No error occurrence counter clear"]
6818        pub const _0: Self = Self::new(0);
6819        #[doc = "Clear error occurrence counter"]
6820        pub const _1: Self = Self::new(1);
6821    }
6822    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6823    pub struct Socclr_SPEC;
6824    pub type Socclr = crate::EnumBitfieldStruct<u8, Socclr_SPEC>;
6825    impl Socclr {
6826        #[doc = "No successful occurrence counter clear"]
6827        pub const _0: Self = Self::new(0);
6828        #[doc = "Clear successful occurrence counter"]
6829        pub const _1: Self = Self::new(1);
6830    }
6831}
6832#[doc(hidden)]
6833#[derive(Copy, Clone, Eq, PartialEq)]
6834pub struct Cfdc0Fdsts_SPEC;
6835impl crate::sealed::RegSpec for Cfdc0Fdsts_SPEC {
6836    type DataType = u32;
6837}
6838#[doc = "Channel 0 CANFD Status Register"]
6839pub type Cfdc0Fdsts = crate::RegValueT<Cfdc0Fdsts_SPEC>;
6840
6841impl Cfdc0Fdsts {
6842    #[doc = "Transceiver Delay Compensation Result"]
6843    #[inline(always)]
6844    pub fn tdcr(
6845        self,
6846    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdc0Fdsts_SPEC, crate::common::R> {
6847        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdc0Fdsts_SPEC,crate::common::R>::from_register(self,0)
6848    }
6849    #[doc = "Error Occurrence Counter Overflow"]
6850    #[inline(always)]
6851    pub fn eoco(
6852        self,
6853    ) -> crate::common::RegisterField<
6854        8,
6855        0x1,
6856        1,
6857        0,
6858        cfdc0fdsts::Eoco,
6859        Cfdc0Fdsts_SPEC,
6860        crate::common::RW,
6861    > {
6862        crate::common::RegisterField::<
6863            8,
6864            0x1,
6865            1,
6866            0,
6867            cfdc0fdsts::Eoco,
6868            Cfdc0Fdsts_SPEC,
6869            crate::common::RW,
6870        >::from_register(self, 0)
6871    }
6872    #[doc = "Successful Occurrence Counter Overflow"]
6873    #[inline(always)]
6874    pub fn soco(
6875        self,
6876    ) -> crate::common::RegisterField<
6877        9,
6878        0x1,
6879        1,
6880        0,
6881        cfdc0fdsts::Soco,
6882        Cfdc0Fdsts_SPEC,
6883        crate::common::RW,
6884    > {
6885        crate::common::RegisterField::<
6886            9,
6887            0x1,
6888            1,
6889            0,
6890            cfdc0fdsts::Soco,
6891            Cfdc0Fdsts_SPEC,
6892            crate::common::RW,
6893        >::from_register(self, 0)
6894    }
6895    #[doc = "Transceiver Delay Compensation Violation Flag"]
6896    #[inline(always)]
6897    pub fn tdcvf(
6898        self,
6899    ) -> crate::common::RegisterField<
6900        15,
6901        0x1,
6902        1,
6903        0,
6904        cfdc0fdsts::Tdcvf,
6905        Cfdc0Fdsts_SPEC,
6906        crate::common::RW,
6907    > {
6908        crate::common::RegisterField::<
6909            15,
6910            0x1,
6911            1,
6912            0,
6913            cfdc0fdsts::Tdcvf,
6914            Cfdc0Fdsts_SPEC,
6915            crate::common::RW,
6916        >::from_register(self, 0)
6917    }
6918    #[doc = "Error Occurrence Counter"]
6919    #[inline(always)]
6920    pub fn eoc(
6921        self,
6922    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdc0Fdsts_SPEC, crate::common::R> {
6923        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdc0Fdsts_SPEC,crate::common::R>::from_register(self,0)
6924    }
6925    #[doc = "Successful occurrence counter"]
6926    #[inline(always)]
6927    pub fn soc(
6928        self,
6929    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdc0Fdsts_SPEC, crate::common::R> {
6930        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdc0Fdsts_SPEC,crate::common::R>::from_register(self,0)
6931    }
6932}
6933impl ::core::default::Default for Cfdc0Fdsts {
6934    #[inline(always)]
6935    fn default() -> Cfdc0Fdsts {
6936        <crate::RegValueT<Cfdc0Fdsts_SPEC> as RegisterValue<_>>::new(0)
6937    }
6938}
6939pub mod cfdc0fdsts {
6940
6941    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6942    pub struct Eoco_SPEC;
6943    pub type Eoco = crate::EnumBitfieldStruct<u8, Eoco_SPEC>;
6944    impl Eoco {
6945        #[doc = "Error occurrence counter has not overflowed"]
6946        pub const _0: Self = Self::new(0);
6947        #[doc = "Error occurrence counter has overflowed"]
6948        pub const _1: Self = Self::new(1);
6949    }
6950    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6951    pub struct Soco_SPEC;
6952    pub type Soco = crate::EnumBitfieldStruct<u8, Soco_SPEC>;
6953    impl Soco {
6954        #[doc = "Successful occurrence counter has not overflowed"]
6955        pub const _0: Self = Self::new(0);
6956        #[doc = "Successful occurrence counter has overflowed"]
6957        pub const _1: Self = Self::new(1);
6958    }
6959    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
6960    pub struct Tdcvf_SPEC;
6961    pub type Tdcvf = crate::EnumBitfieldStruct<u8, Tdcvf_SPEC>;
6962    impl Tdcvf {
6963        #[doc = "Transceiver delay compensation violation has not occurred"]
6964        pub const _0: Self = Self::new(0);
6965        #[doc = "Transceiver delay compensation violation has occurred"]
6966        pub const _1: Self = Self::new(1);
6967    }
6968}
6969#[doc(hidden)]
6970#[derive(Copy, Clone, Eq, PartialEq)]
6971pub struct Cfdc0Fdcrc_SPEC;
6972impl crate::sealed::RegSpec for Cfdc0Fdcrc_SPEC {
6973    type DataType = u32;
6974}
6975#[doc = "Channel 0 CANFD CRC Register"]
6976pub type Cfdc0Fdcrc = crate::RegValueT<Cfdc0Fdcrc_SPEC>;
6977
6978impl Cfdc0Fdcrc {
6979    #[doc = "CRC Register value"]
6980    #[inline(always)]
6981    pub fn crcreg(
6982        self,
6983    ) -> crate::common::RegisterField<0, 0x1fffff, 1, 0, u32, Cfdc0Fdcrc_SPEC, crate::common::R>
6984    {
6985        crate::common::RegisterField::<0,0x1fffff,1,0,u32, Cfdc0Fdcrc_SPEC,crate::common::R>::from_register(self,0)
6986    }
6987    #[doc = "Stuff bit count"]
6988    #[inline(always)]
6989    pub fn scnt(
6990        self,
6991    ) -> crate::common::RegisterField<24, 0xf, 1, 0, u8, Cfdc0Fdcrc_SPEC, crate::common::R> {
6992        crate::common::RegisterField::<24,0xf,1,0,u8, Cfdc0Fdcrc_SPEC,crate::common::R>::from_register(self,0)
6993    }
6994}
6995impl ::core::default::Default for Cfdc0Fdcrc {
6996    #[inline(always)]
6997    fn default() -> Cfdc0Fdcrc {
6998        <crate::RegValueT<Cfdc0Fdcrc_SPEC> as RegisterValue<_>>::new(0)
6999    }
7000}
7001
7002#[doc(hidden)]
7003#[derive(Copy, Clone, Eq, PartialEq)]
7004pub struct Cfdgaflid_SPEC;
7005impl crate::sealed::RegSpec for Cfdgaflid_SPEC {
7006    type DataType = u32;
7007}
7008#[doc = "Global Acceptance Filter List ID Registers"]
7009pub type Cfdgaflid = crate::RegValueT<Cfdgaflid_SPEC>;
7010
7011impl Cfdgaflid {
7012    #[doc = "Global Acceptance Filter List Entry ID Field"]
7013    #[inline(always)]
7014    pub fn gaflid(
7015        self,
7016    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdgaflid_SPEC, crate::common::RW>
7017    {
7018        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdgaflid_SPEC,crate::common::RW>::from_register(self,0)
7019    }
7020    #[doc = "Global Acceptance Filter List Entry Loopback Configuration"]
7021    #[inline(always)]
7022    pub fn gafllb(
7023        self,
7024    ) -> crate::common::RegisterField<
7025        29,
7026        0x1,
7027        1,
7028        0,
7029        cfdgaflid::Gafllb,
7030        Cfdgaflid_SPEC,
7031        crate::common::RW,
7032    > {
7033        crate::common::RegisterField::<
7034            29,
7035            0x1,
7036            1,
7037            0,
7038            cfdgaflid::Gafllb,
7039            Cfdgaflid_SPEC,
7040            crate::common::RW,
7041        >::from_register(self, 0)
7042    }
7043    #[doc = "Global Acceptance Filter List Entry RTR Field"]
7044    #[inline(always)]
7045    pub fn gaflrtr(
7046        self,
7047    ) -> crate::common::RegisterField<
7048        30,
7049        0x1,
7050        1,
7051        0,
7052        cfdgaflid::Gaflrtr,
7053        Cfdgaflid_SPEC,
7054        crate::common::RW,
7055    > {
7056        crate::common::RegisterField::<
7057            30,
7058            0x1,
7059            1,
7060            0,
7061            cfdgaflid::Gaflrtr,
7062            Cfdgaflid_SPEC,
7063            crate::common::RW,
7064        >::from_register(self, 0)
7065    }
7066    #[doc = "Global Acceptance Filter List Entry IDE Field"]
7067    #[inline(always)]
7068    pub fn gaflide(
7069        self,
7070    ) -> crate::common::RegisterField<
7071        31,
7072        0x1,
7073        1,
7074        0,
7075        cfdgaflid::Gaflide,
7076        Cfdgaflid_SPEC,
7077        crate::common::RW,
7078    > {
7079        crate::common::RegisterField::<
7080            31,
7081            0x1,
7082            1,
7083            0,
7084            cfdgaflid::Gaflide,
7085            Cfdgaflid_SPEC,
7086            crate::common::RW,
7087        >::from_register(self, 0)
7088    }
7089}
7090impl ::core::default::Default for Cfdgaflid {
7091    #[inline(always)]
7092    fn default() -> Cfdgaflid {
7093        <crate::RegValueT<Cfdgaflid_SPEC> as RegisterValue<_>>::new(0)
7094    }
7095}
7096pub mod cfdgaflid {
7097
7098    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7099    pub struct Gafllb_SPEC;
7100    pub type Gafllb = crate::EnumBitfieldStruct<u8, Gafllb_SPEC>;
7101    impl Gafllb {
7102        #[doc = "Global Acceptance Filter List entry ID for acceptance filtering with attribute RX"]
7103        pub const _0: Self = Self::new(0);
7104        #[doc = "Global Acceptance Filter List entry ID for acceptance filtering with attribute TX"]
7105        pub const _1: Self = Self::new(1);
7106    }
7107    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7108    pub struct Gaflrtr_SPEC;
7109    pub type Gaflrtr = crate::EnumBitfieldStruct<u8, Gaflrtr_SPEC>;
7110    impl Gaflrtr {
7111        #[doc = "Data frame"]
7112        pub const _0: Self = Self::new(0);
7113        #[doc = "Remote frame"]
7114        pub const _1: Self = Self::new(1);
7115    }
7116    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7117    pub struct Gaflide_SPEC;
7118    pub type Gaflide = crate::EnumBitfieldStruct<u8, Gaflide_SPEC>;
7119    impl Gaflide {
7120        #[doc = "Standard identifier of rule entry ID is valid for acceptance filtering"]
7121        pub const _0: Self = Self::new(0);
7122        #[doc = "Extended identifier of rule entry ID is valid for acceptance filtering"]
7123        pub const _1: Self = Self::new(1);
7124    }
7125}
7126#[doc(hidden)]
7127#[derive(Copy, Clone, Eq, PartialEq)]
7128pub struct Cfdgaflm_SPEC;
7129impl crate::sealed::RegSpec for Cfdgaflm_SPEC {
7130    type DataType = u32;
7131}
7132#[doc = "Global Acceptance Filter List Mask Registers"]
7133pub type Cfdgaflm = crate::RegValueT<Cfdgaflm_SPEC>;
7134
7135impl Cfdgaflm {
7136    #[doc = "Global Acceptance Filter List ID Mask Field"]
7137    #[inline(always)]
7138    pub fn gaflidm(
7139        self,
7140    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdgaflm_SPEC, crate::common::RW>
7141    {
7142        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdgaflm_SPEC,crate::common::RW>::from_register(self,0)
7143    }
7144    #[doc = "Global Acceptance Filter List Information Label 1"]
7145    #[inline(always)]
7146    pub fn gaflifl1(
7147        self,
7148    ) -> crate::common::RegisterFieldBool<29, 1, 0, Cfdgaflm_SPEC, crate::common::RW> {
7149        crate::common::RegisterFieldBool::<29,1,0,Cfdgaflm_SPEC,crate::common::RW>::from_register(self,0)
7150    }
7151    #[doc = "Global Acceptance Filter List Entry RTR Mask"]
7152    #[inline(always)]
7153    pub fn gaflrtrm(
7154        self,
7155    ) -> crate::common::RegisterField<
7156        30,
7157        0x1,
7158        1,
7159        0,
7160        cfdgaflm::Gaflrtrm,
7161        Cfdgaflm_SPEC,
7162        crate::common::RW,
7163    > {
7164        crate::common::RegisterField::<
7165            30,
7166            0x1,
7167            1,
7168            0,
7169            cfdgaflm::Gaflrtrm,
7170            Cfdgaflm_SPEC,
7171            crate::common::RW,
7172        >::from_register(self, 0)
7173    }
7174    #[doc = "Global Acceptance Filter List IDE Mask"]
7175    #[inline(always)]
7176    pub fn gaflidem(
7177        self,
7178    ) -> crate::common::RegisterField<
7179        31,
7180        0x1,
7181        1,
7182        0,
7183        cfdgaflm::Gaflidem,
7184        Cfdgaflm_SPEC,
7185        crate::common::RW,
7186    > {
7187        crate::common::RegisterField::<
7188            31,
7189            0x1,
7190            1,
7191            0,
7192            cfdgaflm::Gaflidem,
7193            Cfdgaflm_SPEC,
7194            crate::common::RW,
7195        >::from_register(self, 0)
7196    }
7197}
7198impl ::core::default::Default for Cfdgaflm {
7199    #[inline(always)]
7200    fn default() -> Cfdgaflm {
7201        <crate::RegValueT<Cfdgaflm_SPEC> as RegisterValue<_>>::new(0)
7202    }
7203}
7204pub mod cfdgaflm {
7205
7206    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7207    pub struct Gaflrtrm_SPEC;
7208    pub type Gaflrtrm = crate::EnumBitfieldStruct<u8, Gaflrtrm_SPEC>;
7209    impl Gaflrtrm {
7210        #[doc = "RTR bit is not used for ID matching"]
7211        pub const _0: Self = Self::new(0);
7212        #[doc = "RTR bit is used for ID matching"]
7213        pub const _1: Self = Self::new(1);
7214    }
7215    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7216    pub struct Gaflidem_SPEC;
7217    pub type Gaflidem = crate::EnumBitfieldStruct<u8, Gaflidem_SPEC>;
7218    impl Gaflidem {
7219        #[doc = "IDE bit is not used for ID matching"]
7220        pub const _0: Self = Self::new(0);
7221        #[doc = "IDE bit is used for ID matching"]
7222        pub const _1: Self = Self::new(1);
7223    }
7224}
7225#[doc(hidden)]
7226#[derive(Copy, Clone, Eq, PartialEq)]
7227pub struct Cfdgaflp0_SPEC;
7228impl crate::sealed::RegSpec for Cfdgaflp0_SPEC {
7229    type DataType = u32;
7230}
7231#[doc = "Global Acceptance Filter List Pointer 0 Registers"]
7232pub type Cfdgaflp0 = crate::RegValueT<Cfdgaflp0_SPEC>;
7233
7234impl Cfdgaflp0 {
7235    #[doc = "Global Acceptance Filter List DLC Field"]
7236    #[inline(always)]
7237    pub fn gafldlc(
7238        self,
7239    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, Cfdgaflp0_SPEC, crate::common::RW> {
7240        crate::common::RegisterField::<0,0xf,1,0,u8, Cfdgaflp0_SPEC,crate::common::RW>::from_register(self,0)
7241    }
7242    #[doc = "Global Acceptance Filter List Information Label 0"]
7243    #[inline(always)]
7244    pub fn gaflifl0(
7245        self,
7246    ) -> crate::common::RegisterFieldBool<7, 1, 0, Cfdgaflp0_SPEC, crate::common::RW> {
7247        crate::common::RegisterFieldBool::<7,1,0,Cfdgaflp0_SPEC,crate::common::RW>::from_register(self,0)
7248    }
7249    #[doc = "Global Acceptance Filter List RX Message Buffer Direction Pointer"]
7250    #[inline(always)]
7251    pub fn gaflrmdp(
7252        self,
7253    ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, Cfdgaflp0_SPEC, crate::common::RW> {
7254        crate::common::RegisterField::<8,0x1f,1,0,u8, Cfdgaflp0_SPEC,crate::common::RW>::from_register(self,0)
7255    }
7256    #[doc = "Global Acceptance Filter List RX Message Buffer Valid"]
7257    #[inline(always)]
7258    pub fn gaflrmv(
7259        self,
7260    ) -> crate::common::RegisterField<
7261        15,
7262        0x1,
7263        1,
7264        0,
7265        cfdgaflp0::Gaflrmv,
7266        Cfdgaflp0_SPEC,
7267        crate::common::RW,
7268    > {
7269        crate::common::RegisterField::<
7270            15,
7271            0x1,
7272            1,
7273            0,
7274            cfdgaflp0::Gaflrmv,
7275            Cfdgaflp0_SPEC,
7276            crate::common::RW,
7277        >::from_register(self, 0)
7278    }
7279    #[doc = "Global Acceptance Filter List Pointer"]
7280    #[inline(always)]
7281    pub fn gaflptr(
7282        self,
7283    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdgaflp0_SPEC, crate::common::RW>
7284    {
7285        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdgaflp0_SPEC,crate::common::RW>::from_register(self,0)
7286    }
7287}
7288impl ::core::default::Default for Cfdgaflp0 {
7289    #[inline(always)]
7290    fn default() -> Cfdgaflp0 {
7291        <crate::RegValueT<Cfdgaflp0_SPEC> as RegisterValue<_>>::new(0)
7292    }
7293}
7294pub mod cfdgaflp0 {
7295
7296    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7297    pub struct Gaflrmv_SPEC;
7298    pub type Gaflrmv = crate::EnumBitfieldStruct<u8, Gaflrmv_SPEC>;
7299    impl Gaflrmv {
7300        #[doc = "Single message buffer direction pointer is invalid"]
7301        pub const _0: Self = Self::new(0);
7302        #[doc = "Single message buffer direction pointer is valid"]
7303        pub const _1: Self = Self::new(1);
7304    }
7305}
7306#[doc(hidden)]
7307#[derive(Copy, Clone, Eq, PartialEq)]
7308pub struct Cfdgaflp1_SPEC;
7309impl crate::sealed::RegSpec for Cfdgaflp1_SPEC {
7310    type DataType = u32;
7311}
7312#[doc = "Global Acceptance Filter List Pointer 1 Registers"]
7313pub type Cfdgaflp1 = crate::RegValueT<Cfdgaflp1_SPEC>;
7314
7315impl Cfdgaflp1 {
7316    #[doc = "Global Acceptance Filter List FIFO Direction Pointer"]
7317    #[inline(always)]
7318    pub fn gaflfdp0(
7319        self,
7320    ) -> crate::common::RegisterField<
7321        0,
7322        0x1,
7323        1,
7324        0,
7325        cfdgaflp1::Gaflfdp0,
7326        Cfdgaflp1_SPEC,
7327        crate::common::RW,
7328    > {
7329        crate::common::RegisterField::<
7330            0,
7331            0x1,
7332            1,
7333            0,
7334            cfdgaflp1::Gaflfdp0,
7335            Cfdgaflp1_SPEC,
7336            crate::common::RW,
7337        >::from_register(self, 0)
7338    }
7339    #[doc = "Global Acceptance Filter List FIFO Direction Pointer"]
7340    #[inline(always)]
7341    pub fn gaflfdp1(
7342        self,
7343    ) -> crate::common::RegisterField<
7344        1,
7345        0x1,
7346        1,
7347        0,
7348        cfdgaflp1::Gaflfdp1,
7349        Cfdgaflp1_SPEC,
7350        crate::common::RW,
7351    > {
7352        crate::common::RegisterField::<
7353            1,
7354            0x1,
7355            1,
7356            0,
7357            cfdgaflp1::Gaflfdp1,
7358            Cfdgaflp1_SPEC,
7359            crate::common::RW,
7360        >::from_register(self, 0)
7361    }
7362    #[doc = "Global Acceptance Filter List FIFO Direction Pointer"]
7363    #[inline(always)]
7364    pub fn gaflfdp8(
7365        self,
7366    ) -> crate::common::RegisterField<
7367        8,
7368        0x1,
7369        1,
7370        0,
7371        cfdgaflp1::Gaflfdp8,
7372        Cfdgaflp1_SPEC,
7373        crate::common::RW,
7374    > {
7375        crate::common::RegisterField::<
7376            8,
7377            0x1,
7378            1,
7379            0,
7380            cfdgaflp1::Gaflfdp8,
7381            Cfdgaflp1_SPEC,
7382            crate::common::RW,
7383        >::from_register(self, 0)
7384    }
7385}
7386impl ::core::default::Default for Cfdgaflp1 {
7387    #[inline(always)]
7388    fn default() -> Cfdgaflp1 {
7389        <crate::RegValueT<Cfdgaflp1_SPEC> as RegisterValue<_>>::new(0)
7390    }
7391}
7392pub mod cfdgaflp1 {
7393
7394    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7395    pub struct Gaflfdp0_SPEC;
7396    pub type Gaflfdp0 = crate::EnumBitfieldStruct<u8, Gaflfdp0_SPEC>;
7397    impl Gaflfdp0 {
7398        #[doc = "Disable RX FIFO 0 as target for reception"]
7399        pub const _0: Self = Self::new(0);
7400        #[doc = "Enable RX FIFO 0 as target for reception"]
7401        pub const _1: Self = Self::new(1);
7402    }
7403    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7404    pub struct Gaflfdp1_SPEC;
7405    pub type Gaflfdp1 = crate::EnumBitfieldStruct<u8, Gaflfdp1_SPEC>;
7406    impl Gaflfdp1 {
7407        #[doc = "Disable RX FIFO 1 as target for reception"]
7408        pub const _0: Self = Self::new(0);
7409        #[doc = "Enable RX FIFO 1 as target for reception"]
7410        pub const _1: Self = Self::new(1);
7411    }
7412    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7413    pub struct Gaflfdp8_SPEC;
7414    pub type Gaflfdp8 = crate::EnumBitfieldStruct<u8, Gaflfdp8_SPEC>;
7415    impl Gaflfdp8 {
7416        #[doc = "Disable Common FIFO as target for reception"]
7417        pub const _0: Self = Self::new(0);
7418        #[doc = "Enable Common FIFO as target for reception"]
7419        pub const _1: Self = Self::new(1);
7420    }
7421}
7422#[doc(hidden)]
7423#[derive(Copy, Clone, Eq, PartialEq)]
7424pub struct Cfdrpgacc_SPEC;
7425impl crate::sealed::RegSpec for Cfdrpgacc_SPEC {
7426    type DataType = u32;
7427}
7428#[doc = "RAM Test Page Access Registers %s"]
7429pub type Cfdrpgacc = crate::RegValueT<Cfdrpgacc_SPEC>;
7430
7431impl Cfdrpgacc {
7432    #[doc = "RAM Data Test Access"]
7433    #[inline(always)]
7434    pub fn rdta(
7435        self,
7436    ) -> crate::common::RegisterField<0, 0xffffffff, 1, 0, u32, Cfdrpgacc_SPEC, crate::common::RW>
7437    {
7438        crate::common::RegisterField::<0,0xffffffff,1,0,u32, Cfdrpgacc_SPEC,crate::common::RW>::from_register(self,0)
7439    }
7440}
7441impl ::core::default::Default for Cfdrpgacc {
7442    #[inline(always)]
7443    fn default() -> Cfdrpgacc {
7444        <crate::RegValueT<Cfdrpgacc_SPEC> as RegisterValue<_>>::new(0)
7445    }
7446}
7447
7448#[doc(hidden)]
7449#[derive(Copy, Clone, Eq, PartialEq)]
7450pub struct Cfdrfid_SPEC;
7451impl crate::sealed::RegSpec for Cfdrfid_SPEC {
7452    type DataType = u32;
7453}
7454#[doc = "RX FIFO Access ID Register %s"]
7455pub type Cfdrfid = crate::RegValueT<Cfdrfid_SPEC>;
7456
7457impl Cfdrfid {
7458    #[doc = "RX FIFO Buffer ID Field"]
7459    #[inline(always)]
7460    pub fn rfid(
7461        self,
7462    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdrfid_SPEC, crate::common::R>
7463    {
7464        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdrfid_SPEC,crate::common::R>::from_register(self,0)
7465    }
7466    #[doc = "RX FIFO Buffer RTR bit"]
7467    #[inline(always)]
7468    pub fn rfrtr(
7469        self,
7470    ) -> crate::common::RegisterField<30, 0x1, 1, 0, cfdrfid::Rfrtr, Cfdrfid_SPEC, crate::common::R>
7471    {
7472        crate::common::RegisterField::<30,0x1,1,0,cfdrfid::Rfrtr, Cfdrfid_SPEC,crate::common::R>::from_register(self,0)
7473    }
7474    #[doc = "RX FIFO Buffer IDE bit"]
7475    #[inline(always)]
7476    pub fn rfide(
7477        self,
7478    ) -> crate::common::RegisterField<31, 0x1, 1, 0, cfdrfid::Rfide, Cfdrfid_SPEC, crate::common::R>
7479    {
7480        crate::common::RegisterField::<31,0x1,1,0,cfdrfid::Rfide, Cfdrfid_SPEC,crate::common::R>::from_register(self,0)
7481    }
7482}
7483impl ::core::default::Default for Cfdrfid {
7484    #[inline(always)]
7485    fn default() -> Cfdrfid {
7486        <crate::RegValueT<Cfdrfid_SPEC> as RegisterValue<_>>::new(0)
7487    }
7488}
7489pub mod cfdrfid {
7490
7491    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7492    pub struct Rfrtr_SPEC;
7493    pub type Rfrtr = crate::EnumBitfieldStruct<u8, Rfrtr_SPEC>;
7494    impl Rfrtr {
7495        #[doc = "Data frame"]
7496        pub const _0: Self = Self::new(0);
7497        #[doc = "Remote frame"]
7498        pub const _1: Self = Self::new(1);
7499    }
7500    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7501    pub struct Rfide_SPEC;
7502    pub type Rfide = crate::EnumBitfieldStruct<u8, Rfide_SPEC>;
7503    impl Rfide {
7504        #[doc = "STD-ID has been received"]
7505        pub const _0: Self = Self::new(0);
7506        #[doc = "EXT-ID has been received"]
7507        pub const _1: Self = Self::new(1);
7508    }
7509}
7510#[doc(hidden)]
7511#[derive(Copy, Clone, Eq, PartialEq)]
7512pub struct Cfdrfptr_SPEC;
7513impl crate::sealed::RegSpec for Cfdrfptr_SPEC {
7514    type DataType = u32;
7515}
7516#[doc = "RX FIFO Access Pointer Register %s"]
7517pub type Cfdrfptr = crate::RegValueT<Cfdrfptr_SPEC>;
7518
7519impl Cfdrfptr {
7520    #[doc = "RX FIFO Timestamp Value"]
7521    #[inline(always)]
7522    pub fn rfts(
7523        self,
7524    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdrfptr_SPEC, crate::common::R> {
7525        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdrfptr_SPEC,crate::common::R>::from_register(self,0)
7526    }
7527    #[doc = "RX FIFO Buffer DLC Field"]
7528    #[inline(always)]
7529    pub fn rfdlc(
7530        self,
7531    ) -> crate::common::RegisterField<28, 0xf, 1, 0, u8, Cfdrfptr_SPEC, crate::common::R> {
7532        crate::common::RegisterField::<28,0xf,1,0,u8, Cfdrfptr_SPEC,crate::common::R>::from_register(self,0)
7533    }
7534}
7535impl ::core::default::Default for Cfdrfptr {
7536    #[inline(always)]
7537    fn default() -> Cfdrfptr {
7538        <crate::RegValueT<Cfdrfptr_SPEC> as RegisterValue<_>>::new(0)
7539    }
7540}
7541
7542#[doc(hidden)]
7543#[derive(Copy, Clone, Eq, PartialEq)]
7544pub struct Cfdrffdsts_SPEC;
7545impl crate::sealed::RegSpec for Cfdrffdsts_SPEC {
7546    type DataType = u32;
7547}
7548#[doc = "RX FIFO Access CANFD Status Register %s"]
7549pub type Cfdrffdsts = crate::RegValueT<Cfdrffdsts_SPEC>;
7550
7551impl Cfdrffdsts {
7552    #[doc = "Error State Indicator bit"]
7553    #[inline(always)]
7554    pub fn rfesi(
7555        self,
7556    ) -> crate::common::RegisterField<
7557        0,
7558        0x1,
7559        1,
7560        0,
7561        cfdrffdsts::Rfesi,
7562        Cfdrffdsts_SPEC,
7563        crate::common::R,
7564    > {
7565        crate::common::RegisterField::<
7566            0,
7567            0x1,
7568            1,
7569            0,
7570            cfdrffdsts::Rfesi,
7571            Cfdrffdsts_SPEC,
7572            crate::common::R,
7573        >::from_register(self, 0)
7574    }
7575    #[doc = "Bit Rate Switch bit"]
7576    #[inline(always)]
7577    pub fn rfbrs(
7578        self,
7579    ) -> crate::common::RegisterField<
7580        1,
7581        0x1,
7582        1,
7583        0,
7584        cfdrffdsts::Rfbrs,
7585        Cfdrffdsts_SPEC,
7586        crate::common::R,
7587    > {
7588        crate::common::RegisterField::<
7589            1,
7590            0x1,
7591            1,
7592            0,
7593            cfdrffdsts::Rfbrs,
7594            Cfdrffdsts_SPEC,
7595            crate::common::R,
7596        >::from_register(self, 0)
7597    }
7598    #[doc = "CAN FD Format bit"]
7599    #[inline(always)]
7600    pub fn rffdf(
7601        self,
7602    ) -> crate::common::RegisterField<
7603        2,
7604        0x1,
7605        1,
7606        0,
7607        cfdrffdsts::Rffdf,
7608        Cfdrffdsts_SPEC,
7609        crate::common::R,
7610    > {
7611        crate::common::RegisterField::<
7612            2,
7613            0x1,
7614            1,
7615            0,
7616            cfdrffdsts::Rffdf,
7617            Cfdrffdsts_SPEC,
7618            crate::common::R,
7619        >::from_register(self, 0)
7620    }
7621    #[doc = "RX FIFO Buffer Information Label Field"]
7622    #[inline(always)]
7623    pub fn rfifl(
7624        self,
7625    ) -> crate::common::RegisterField<8, 0x3, 1, 0, u8, Cfdrffdsts_SPEC, crate::common::R> {
7626        crate::common::RegisterField::<8,0x3,1,0,u8, Cfdrffdsts_SPEC,crate::common::R>::from_register(self,0)
7627    }
7628    #[doc = "RX FIFO Buffer Pointer Field"]
7629    #[inline(always)]
7630    pub fn cfdrfptr(
7631        self,
7632    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdrffdsts_SPEC, crate::common::R>
7633    {
7634        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdrffdsts_SPEC,crate::common::R>::from_register(self,0)
7635    }
7636}
7637impl ::core::default::Default for Cfdrffdsts {
7638    #[inline(always)]
7639    fn default() -> Cfdrffdsts {
7640        <crate::RegValueT<Cfdrffdsts_SPEC> as RegisterValue<_>>::new(0)
7641    }
7642}
7643pub mod cfdrffdsts {
7644
7645    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7646    pub struct Rfesi_SPEC;
7647    pub type Rfesi = crate::EnumBitfieldStruct<u8, Rfesi_SPEC>;
7648    impl Rfesi {
7649        #[doc = "CANFD frame received from error active node"]
7650        pub const _0: Self = Self::new(0);
7651        #[doc = "CANFD frame received from error passive node"]
7652        pub const _1: Self = Self::new(1);
7653    }
7654    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7655    pub struct Rfbrs_SPEC;
7656    pub type Rfbrs = crate::EnumBitfieldStruct<u8, Rfbrs_SPEC>;
7657    impl Rfbrs {
7658        #[doc = "CANFD frame received with no bit rate switch"]
7659        pub const _0: Self = Self::new(0);
7660        #[doc = "CANFD frame received with bit rate switch"]
7661        pub const _1: Self = Self::new(1);
7662    }
7663    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
7664    pub struct Rffdf_SPEC;
7665    pub type Rffdf = crate::EnumBitfieldStruct<u8, Rffdf_SPEC>;
7666    impl Rffdf {
7667        #[doc = "Non CANFD frame received"]
7668        pub const _0: Self = Self::new(0);
7669        #[doc = "CANFD frame received"]
7670        pub const _1: Self = Self::new(1);
7671    }
7672}
7673#[doc(hidden)]
7674#[derive(Copy, Clone, Eq, PartialEq)]
7675pub struct Cfdrfdf0_SPEC;
7676impl crate::sealed::RegSpec for Cfdrfdf0_SPEC {
7677    type DataType = u32;
7678}
7679#[doc = "RX FIFO Access Data Field 0 Register %s"]
7680pub type Cfdrfdf0 = crate::RegValueT<Cfdrfdf0_SPEC>;
7681
7682impl Cfdrfdf0 {
7683    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7684    #[inline(always)]
7685    pub fn rfdb_ll(
7686        self,
7687    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf0_SPEC, crate::common::R> {
7688        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf0_SPEC,crate::common::R>::from_register(self,0)
7689    }
7690    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7691    #[inline(always)]
7692    pub fn rfdb_lh(
7693        self,
7694    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf0_SPEC, crate::common::R> {
7695        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf0_SPEC,crate::common::R>::from_register(self,0)
7696    }
7697    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7698    #[inline(always)]
7699    pub fn rfdb_hl(
7700        self,
7701    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf0_SPEC, crate::common::R> {
7702        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf0_SPEC,crate::common::R>::from_register(self,0)
7703    }
7704    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7705    #[inline(always)]
7706    pub fn rfdb_hh(
7707        self,
7708    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf0_SPEC, crate::common::R> {
7709        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf0_SPEC,crate::common::R>::from_register(self,0)
7710    }
7711}
7712impl ::core::default::Default for Cfdrfdf0 {
7713    #[inline(always)]
7714    fn default() -> Cfdrfdf0 {
7715        <crate::RegValueT<Cfdrfdf0_SPEC> as RegisterValue<_>>::new(0)
7716    }
7717}
7718
7719#[doc(hidden)]
7720#[derive(Copy, Clone, Eq, PartialEq)]
7721pub struct Cfdrfdf1_SPEC;
7722impl crate::sealed::RegSpec for Cfdrfdf1_SPEC {
7723    type DataType = u32;
7724}
7725#[doc = "RX FIFO Access Data Field 1 Register %s"]
7726pub type Cfdrfdf1 = crate::RegValueT<Cfdrfdf1_SPEC>;
7727
7728impl Cfdrfdf1 {
7729    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7730    #[inline(always)]
7731    pub fn rfdb_ll(
7732        self,
7733    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf1_SPEC, crate::common::R> {
7734        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf1_SPEC,crate::common::R>::from_register(self,0)
7735    }
7736    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7737    #[inline(always)]
7738    pub fn rfdb_lh(
7739        self,
7740    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf1_SPEC, crate::common::R> {
7741        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf1_SPEC,crate::common::R>::from_register(self,0)
7742    }
7743    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7744    #[inline(always)]
7745    pub fn rfdb_hl(
7746        self,
7747    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf1_SPEC, crate::common::R> {
7748        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf1_SPEC,crate::common::R>::from_register(self,0)
7749    }
7750    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7751    #[inline(always)]
7752    pub fn rfdb_hh(
7753        self,
7754    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf1_SPEC, crate::common::R> {
7755        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf1_SPEC,crate::common::R>::from_register(self,0)
7756    }
7757}
7758impl ::core::default::Default for Cfdrfdf1 {
7759    #[inline(always)]
7760    fn default() -> Cfdrfdf1 {
7761        <crate::RegValueT<Cfdrfdf1_SPEC> as RegisterValue<_>>::new(0)
7762    }
7763}
7764
7765#[doc(hidden)]
7766#[derive(Copy, Clone, Eq, PartialEq)]
7767pub struct Cfdrfdf2_SPEC;
7768impl crate::sealed::RegSpec for Cfdrfdf2_SPEC {
7769    type DataType = u32;
7770}
7771#[doc = "RX FIFO Access Data Field 2 Register %s"]
7772pub type Cfdrfdf2 = crate::RegValueT<Cfdrfdf2_SPEC>;
7773
7774impl Cfdrfdf2 {
7775    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7776    #[inline(always)]
7777    pub fn rfdb_ll(
7778        self,
7779    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf2_SPEC, crate::common::R> {
7780        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf2_SPEC,crate::common::R>::from_register(self,0)
7781    }
7782    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7783    #[inline(always)]
7784    pub fn rfdb_lh(
7785        self,
7786    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf2_SPEC, crate::common::R> {
7787        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf2_SPEC,crate::common::R>::from_register(self,0)
7788    }
7789    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7790    #[inline(always)]
7791    pub fn rfdb_hl(
7792        self,
7793    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf2_SPEC, crate::common::R> {
7794        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf2_SPEC,crate::common::R>::from_register(self,0)
7795    }
7796    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7797    #[inline(always)]
7798    pub fn rfdb_hh(
7799        self,
7800    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf2_SPEC, crate::common::R> {
7801        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf2_SPEC,crate::common::R>::from_register(self,0)
7802    }
7803}
7804impl ::core::default::Default for Cfdrfdf2 {
7805    #[inline(always)]
7806    fn default() -> Cfdrfdf2 {
7807        <crate::RegValueT<Cfdrfdf2_SPEC> as RegisterValue<_>>::new(0)
7808    }
7809}
7810
7811#[doc(hidden)]
7812#[derive(Copy, Clone, Eq, PartialEq)]
7813pub struct Cfdrfdf3_SPEC;
7814impl crate::sealed::RegSpec for Cfdrfdf3_SPEC {
7815    type DataType = u32;
7816}
7817#[doc = "RX FIFO Access Data Field 3 Register %s"]
7818pub type Cfdrfdf3 = crate::RegValueT<Cfdrfdf3_SPEC>;
7819
7820impl Cfdrfdf3 {
7821    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7822    #[inline(always)]
7823    pub fn rfdb_ll(
7824        self,
7825    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf3_SPEC, crate::common::R> {
7826        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf3_SPEC,crate::common::R>::from_register(self,0)
7827    }
7828    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7829    #[inline(always)]
7830    pub fn rfdb_lh(
7831        self,
7832    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf3_SPEC, crate::common::R> {
7833        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf3_SPEC,crate::common::R>::from_register(self,0)
7834    }
7835    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7836    #[inline(always)]
7837    pub fn rfdb_hl(
7838        self,
7839    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf3_SPEC, crate::common::R> {
7840        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf3_SPEC,crate::common::R>::from_register(self,0)
7841    }
7842    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7843    #[inline(always)]
7844    pub fn rfdb_hh(
7845        self,
7846    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf3_SPEC, crate::common::R> {
7847        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf3_SPEC,crate::common::R>::from_register(self,0)
7848    }
7849}
7850impl ::core::default::Default for Cfdrfdf3 {
7851    #[inline(always)]
7852    fn default() -> Cfdrfdf3 {
7853        <crate::RegValueT<Cfdrfdf3_SPEC> as RegisterValue<_>>::new(0)
7854    }
7855}
7856
7857#[doc(hidden)]
7858#[derive(Copy, Clone, Eq, PartialEq)]
7859pub struct Cfdrfdf4_SPEC;
7860impl crate::sealed::RegSpec for Cfdrfdf4_SPEC {
7861    type DataType = u32;
7862}
7863#[doc = "RX FIFO Access Data Field 4 Register %s"]
7864pub type Cfdrfdf4 = crate::RegValueT<Cfdrfdf4_SPEC>;
7865
7866impl Cfdrfdf4 {
7867    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7868    #[inline(always)]
7869    pub fn rfdb_ll(
7870        self,
7871    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf4_SPEC, crate::common::R> {
7872        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf4_SPEC,crate::common::R>::from_register(self,0)
7873    }
7874    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7875    #[inline(always)]
7876    pub fn rfdb_lh(
7877        self,
7878    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf4_SPEC, crate::common::R> {
7879        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf4_SPEC,crate::common::R>::from_register(self,0)
7880    }
7881    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7882    #[inline(always)]
7883    pub fn rfdb_hl(
7884        self,
7885    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf4_SPEC, crate::common::R> {
7886        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf4_SPEC,crate::common::R>::from_register(self,0)
7887    }
7888    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7889    #[inline(always)]
7890    pub fn rfdb_hh(
7891        self,
7892    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf4_SPEC, crate::common::R> {
7893        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf4_SPEC,crate::common::R>::from_register(self,0)
7894    }
7895}
7896impl ::core::default::Default for Cfdrfdf4 {
7897    #[inline(always)]
7898    fn default() -> Cfdrfdf4 {
7899        <crate::RegValueT<Cfdrfdf4_SPEC> as RegisterValue<_>>::new(0)
7900    }
7901}
7902
7903#[doc(hidden)]
7904#[derive(Copy, Clone, Eq, PartialEq)]
7905pub struct Cfdrfdf5_SPEC;
7906impl crate::sealed::RegSpec for Cfdrfdf5_SPEC {
7907    type DataType = u32;
7908}
7909#[doc = "RX FIFO Access Data Field 5 Register %s"]
7910pub type Cfdrfdf5 = crate::RegValueT<Cfdrfdf5_SPEC>;
7911
7912impl Cfdrfdf5 {
7913    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7914    #[inline(always)]
7915    pub fn rfdb_ll(
7916        self,
7917    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf5_SPEC, crate::common::R> {
7918        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf5_SPEC,crate::common::R>::from_register(self,0)
7919    }
7920    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7921    #[inline(always)]
7922    pub fn rfdb_lh(
7923        self,
7924    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf5_SPEC, crate::common::R> {
7925        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf5_SPEC,crate::common::R>::from_register(self,0)
7926    }
7927    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7928    #[inline(always)]
7929    pub fn rfdb_hl(
7930        self,
7931    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf5_SPEC, crate::common::R> {
7932        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf5_SPEC,crate::common::R>::from_register(self,0)
7933    }
7934    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7935    #[inline(always)]
7936    pub fn rfdb_hh(
7937        self,
7938    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf5_SPEC, crate::common::R> {
7939        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf5_SPEC,crate::common::R>::from_register(self,0)
7940    }
7941}
7942impl ::core::default::Default for Cfdrfdf5 {
7943    #[inline(always)]
7944    fn default() -> Cfdrfdf5 {
7945        <crate::RegValueT<Cfdrfdf5_SPEC> as RegisterValue<_>>::new(0)
7946    }
7947}
7948
7949#[doc(hidden)]
7950#[derive(Copy, Clone, Eq, PartialEq)]
7951pub struct Cfdrfdf6_SPEC;
7952impl crate::sealed::RegSpec for Cfdrfdf6_SPEC {
7953    type DataType = u32;
7954}
7955#[doc = "RX FIFO Access Data Field 6 Register %s"]
7956pub type Cfdrfdf6 = crate::RegValueT<Cfdrfdf6_SPEC>;
7957
7958impl Cfdrfdf6 {
7959    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
7960    #[inline(always)]
7961    pub fn rfdb_ll(
7962        self,
7963    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf6_SPEC, crate::common::R> {
7964        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf6_SPEC,crate::common::R>::from_register(self,0)
7965    }
7966    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
7967    #[inline(always)]
7968    pub fn rfdb_lh(
7969        self,
7970    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf6_SPEC, crate::common::R> {
7971        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf6_SPEC,crate::common::R>::from_register(self,0)
7972    }
7973    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
7974    #[inline(always)]
7975    pub fn rfdb_hl(
7976        self,
7977    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf6_SPEC, crate::common::R> {
7978        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf6_SPEC,crate::common::R>::from_register(self,0)
7979    }
7980    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
7981    #[inline(always)]
7982    pub fn rfdb_hh(
7983        self,
7984    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf6_SPEC, crate::common::R> {
7985        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf6_SPEC,crate::common::R>::from_register(self,0)
7986    }
7987}
7988impl ::core::default::Default for Cfdrfdf6 {
7989    #[inline(always)]
7990    fn default() -> Cfdrfdf6 {
7991        <crate::RegValueT<Cfdrfdf6_SPEC> as RegisterValue<_>>::new(0)
7992    }
7993}
7994
7995#[doc(hidden)]
7996#[derive(Copy, Clone, Eq, PartialEq)]
7997pub struct Cfdrfdf7_SPEC;
7998impl crate::sealed::RegSpec for Cfdrfdf7_SPEC {
7999    type DataType = u32;
8000}
8001#[doc = "RX FIFO Access Data Field 7 Register %s"]
8002pub type Cfdrfdf7 = crate::RegValueT<Cfdrfdf7_SPEC>;
8003
8004impl Cfdrfdf7 {
8005    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8006    #[inline(always)]
8007    pub fn rfdb_ll(
8008        self,
8009    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf7_SPEC, crate::common::R> {
8010        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf7_SPEC,crate::common::R>::from_register(self,0)
8011    }
8012    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8013    #[inline(always)]
8014    pub fn rfdb_lh(
8015        self,
8016    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf7_SPEC, crate::common::R> {
8017        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf7_SPEC,crate::common::R>::from_register(self,0)
8018    }
8019    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8020    #[inline(always)]
8021    pub fn rfdb_hl(
8022        self,
8023    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf7_SPEC, crate::common::R> {
8024        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf7_SPEC,crate::common::R>::from_register(self,0)
8025    }
8026    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8027    #[inline(always)]
8028    pub fn rfdb_hh(
8029        self,
8030    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf7_SPEC, crate::common::R> {
8031        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf7_SPEC,crate::common::R>::from_register(self,0)
8032    }
8033}
8034impl ::core::default::Default for Cfdrfdf7 {
8035    #[inline(always)]
8036    fn default() -> Cfdrfdf7 {
8037        <crate::RegValueT<Cfdrfdf7_SPEC> as RegisterValue<_>>::new(0)
8038    }
8039}
8040
8041#[doc(hidden)]
8042#[derive(Copy, Clone, Eq, PartialEq)]
8043pub struct Cfdrfdf8_SPEC;
8044impl crate::sealed::RegSpec for Cfdrfdf8_SPEC {
8045    type DataType = u32;
8046}
8047#[doc = "RX FIFO Access Data Field 8 Register %s"]
8048pub type Cfdrfdf8 = crate::RegValueT<Cfdrfdf8_SPEC>;
8049
8050impl Cfdrfdf8 {
8051    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8052    #[inline(always)]
8053    pub fn rfdb_ll(
8054        self,
8055    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf8_SPEC, crate::common::R> {
8056        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf8_SPEC,crate::common::R>::from_register(self,0)
8057    }
8058    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8059    #[inline(always)]
8060    pub fn rfdb_lh(
8061        self,
8062    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf8_SPEC, crate::common::R> {
8063        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf8_SPEC,crate::common::R>::from_register(self,0)
8064    }
8065    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8066    #[inline(always)]
8067    pub fn rfdb_hl(
8068        self,
8069    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf8_SPEC, crate::common::R> {
8070        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf8_SPEC,crate::common::R>::from_register(self,0)
8071    }
8072    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8073    #[inline(always)]
8074    pub fn rfdb_hh(
8075        self,
8076    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf8_SPEC, crate::common::R> {
8077        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf8_SPEC,crate::common::R>::from_register(self,0)
8078    }
8079}
8080impl ::core::default::Default for Cfdrfdf8 {
8081    #[inline(always)]
8082    fn default() -> Cfdrfdf8 {
8083        <crate::RegValueT<Cfdrfdf8_SPEC> as RegisterValue<_>>::new(0)
8084    }
8085}
8086
8087#[doc(hidden)]
8088#[derive(Copy, Clone, Eq, PartialEq)]
8089pub struct Cfdrfdf9_SPEC;
8090impl crate::sealed::RegSpec for Cfdrfdf9_SPEC {
8091    type DataType = u32;
8092}
8093#[doc = "RX FIFO Access Data Field 9 Register %s"]
8094pub type Cfdrfdf9 = crate::RegValueT<Cfdrfdf9_SPEC>;
8095
8096impl Cfdrfdf9 {
8097    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8098    #[inline(always)]
8099    pub fn rfdb_ll(
8100        self,
8101    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf9_SPEC, crate::common::R> {
8102        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf9_SPEC,crate::common::R>::from_register(self,0)
8103    }
8104    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8105    #[inline(always)]
8106    pub fn rfdb_lh(
8107        self,
8108    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf9_SPEC, crate::common::R> {
8109        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf9_SPEC,crate::common::R>::from_register(self,0)
8110    }
8111    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8112    #[inline(always)]
8113    pub fn rfdb_hl(
8114        self,
8115    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf9_SPEC, crate::common::R> {
8116        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf9_SPEC,crate::common::R>::from_register(self,0)
8117    }
8118    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8119    #[inline(always)]
8120    pub fn rfdb_hh(
8121        self,
8122    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf9_SPEC, crate::common::R> {
8123        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf9_SPEC,crate::common::R>::from_register(self,0)
8124    }
8125}
8126impl ::core::default::Default for Cfdrfdf9 {
8127    #[inline(always)]
8128    fn default() -> Cfdrfdf9 {
8129        <crate::RegValueT<Cfdrfdf9_SPEC> as RegisterValue<_>>::new(0)
8130    }
8131}
8132
8133#[doc(hidden)]
8134#[derive(Copy, Clone, Eq, PartialEq)]
8135pub struct Cfdrfdf10_SPEC;
8136impl crate::sealed::RegSpec for Cfdrfdf10_SPEC {
8137    type DataType = u32;
8138}
8139#[doc = "RX FIFO Access Data Field 10 Register %s"]
8140pub type Cfdrfdf10 = crate::RegValueT<Cfdrfdf10_SPEC>;
8141
8142impl Cfdrfdf10 {
8143    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8144    #[inline(always)]
8145    pub fn rfdb_ll(
8146        self,
8147    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf10_SPEC, crate::common::R> {
8148        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf10_SPEC,crate::common::R>::from_register(self,0)
8149    }
8150    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8151    #[inline(always)]
8152    pub fn rfdb_lh(
8153        self,
8154    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf10_SPEC, crate::common::R> {
8155        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf10_SPEC,crate::common::R>::from_register(self,0)
8156    }
8157    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8158    #[inline(always)]
8159    pub fn rfdb_hl(
8160        self,
8161    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf10_SPEC, crate::common::R> {
8162        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf10_SPEC,crate::common::R>::from_register(self,0)
8163    }
8164    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8165    #[inline(always)]
8166    pub fn rfdb_hh(
8167        self,
8168    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf10_SPEC, crate::common::R> {
8169        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf10_SPEC,crate::common::R>::from_register(self,0)
8170    }
8171}
8172impl ::core::default::Default for Cfdrfdf10 {
8173    #[inline(always)]
8174    fn default() -> Cfdrfdf10 {
8175        <crate::RegValueT<Cfdrfdf10_SPEC> as RegisterValue<_>>::new(0)
8176    }
8177}
8178
8179#[doc(hidden)]
8180#[derive(Copy, Clone, Eq, PartialEq)]
8181pub struct Cfdrfdf11_SPEC;
8182impl crate::sealed::RegSpec for Cfdrfdf11_SPEC {
8183    type DataType = u32;
8184}
8185#[doc = "RX FIFO Access Data Field 11 Register %s"]
8186pub type Cfdrfdf11 = crate::RegValueT<Cfdrfdf11_SPEC>;
8187
8188impl Cfdrfdf11 {
8189    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8190    #[inline(always)]
8191    pub fn rfdb_ll(
8192        self,
8193    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf11_SPEC, crate::common::R> {
8194        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf11_SPEC,crate::common::R>::from_register(self,0)
8195    }
8196    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8197    #[inline(always)]
8198    pub fn rfdb_lh(
8199        self,
8200    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf11_SPEC, crate::common::R> {
8201        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf11_SPEC,crate::common::R>::from_register(self,0)
8202    }
8203    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8204    #[inline(always)]
8205    pub fn rfdb_hl(
8206        self,
8207    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf11_SPEC, crate::common::R> {
8208        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf11_SPEC,crate::common::R>::from_register(self,0)
8209    }
8210    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8211    #[inline(always)]
8212    pub fn rfdb_hh(
8213        self,
8214    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf11_SPEC, crate::common::R> {
8215        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf11_SPEC,crate::common::R>::from_register(self,0)
8216    }
8217}
8218impl ::core::default::Default for Cfdrfdf11 {
8219    #[inline(always)]
8220    fn default() -> Cfdrfdf11 {
8221        <crate::RegValueT<Cfdrfdf11_SPEC> as RegisterValue<_>>::new(0)
8222    }
8223}
8224
8225#[doc(hidden)]
8226#[derive(Copy, Clone, Eq, PartialEq)]
8227pub struct Cfdrfdf12_SPEC;
8228impl crate::sealed::RegSpec for Cfdrfdf12_SPEC {
8229    type DataType = u32;
8230}
8231#[doc = "RX FIFO Access Data Field 12 Register %s"]
8232pub type Cfdrfdf12 = crate::RegValueT<Cfdrfdf12_SPEC>;
8233
8234impl Cfdrfdf12 {
8235    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8236    #[inline(always)]
8237    pub fn rfdb_ll(
8238        self,
8239    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf12_SPEC, crate::common::R> {
8240        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf12_SPEC,crate::common::R>::from_register(self,0)
8241    }
8242    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8243    #[inline(always)]
8244    pub fn rfdb_lh(
8245        self,
8246    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf12_SPEC, crate::common::R> {
8247        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf12_SPEC,crate::common::R>::from_register(self,0)
8248    }
8249    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8250    #[inline(always)]
8251    pub fn rfdb_hl(
8252        self,
8253    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf12_SPEC, crate::common::R> {
8254        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf12_SPEC,crate::common::R>::from_register(self,0)
8255    }
8256    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8257    #[inline(always)]
8258    pub fn rfdb_hh(
8259        self,
8260    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf12_SPEC, crate::common::R> {
8261        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf12_SPEC,crate::common::R>::from_register(self,0)
8262    }
8263}
8264impl ::core::default::Default for Cfdrfdf12 {
8265    #[inline(always)]
8266    fn default() -> Cfdrfdf12 {
8267        <crate::RegValueT<Cfdrfdf12_SPEC> as RegisterValue<_>>::new(0)
8268    }
8269}
8270
8271#[doc(hidden)]
8272#[derive(Copy, Clone, Eq, PartialEq)]
8273pub struct Cfdrfdf13_SPEC;
8274impl crate::sealed::RegSpec for Cfdrfdf13_SPEC {
8275    type DataType = u32;
8276}
8277#[doc = "RX FIFO Access Data Field 13 Register %s"]
8278pub type Cfdrfdf13 = crate::RegValueT<Cfdrfdf13_SPEC>;
8279
8280impl Cfdrfdf13 {
8281    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8282    #[inline(always)]
8283    pub fn rfdb_ll(
8284        self,
8285    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf13_SPEC, crate::common::R> {
8286        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf13_SPEC,crate::common::R>::from_register(self,0)
8287    }
8288    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8289    #[inline(always)]
8290    pub fn rfdb_lh(
8291        self,
8292    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf13_SPEC, crate::common::R> {
8293        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf13_SPEC,crate::common::R>::from_register(self,0)
8294    }
8295    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8296    #[inline(always)]
8297    pub fn rfdb_hl(
8298        self,
8299    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf13_SPEC, crate::common::R> {
8300        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf13_SPEC,crate::common::R>::from_register(self,0)
8301    }
8302    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8303    #[inline(always)]
8304    pub fn rfdb_hh(
8305        self,
8306    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf13_SPEC, crate::common::R> {
8307        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf13_SPEC,crate::common::R>::from_register(self,0)
8308    }
8309}
8310impl ::core::default::Default for Cfdrfdf13 {
8311    #[inline(always)]
8312    fn default() -> Cfdrfdf13 {
8313        <crate::RegValueT<Cfdrfdf13_SPEC> as RegisterValue<_>>::new(0)
8314    }
8315}
8316
8317#[doc(hidden)]
8318#[derive(Copy, Clone, Eq, PartialEq)]
8319pub struct Cfdrfdf14_SPEC;
8320impl crate::sealed::RegSpec for Cfdrfdf14_SPEC {
8321    type DataType = u32;
8322}
8323#[doc = "RX FIFO Access Data Field 14 Register %s"]
8324pub type Cfdrfdf14 = crate::RegValueT<Cfdrfdf14_SPEC>;
8325
8326impl Cfdrfdf14 {
8327    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8328    #[inline(always)]
8329    pub fn rfdb_ll(
8330        self,
8331    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf14_SPEC, crate::common::R> {
8332        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf14_SPEC,crate::common::R>::from_register(self,0)
8333    }
8334    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8335    #[inline(always)]
8336    pub fn rfdb_lh(
8337        self,
8338    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf14_SPEC, crate::common::R> {
8339        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf14_SPEC,crate::common::R>::from_register(self,0)
8340    }
8341    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8342    #[inline(always)]
8343    pub fn rfdb_hl(
8344        self,
8345    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf14_SPEC, crate::common::R> {
8346        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf14_SPEC,crate::common::R>::from_register(self,0)
8347    }
8348    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8349    #[inline(always)]
8350    pub fn rfdb_hh(
8351        self,
8352    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf14_SPEC, crate::common::R> {
8353        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf14_SPEC,crate::common::R>::from_register(self,0)
8354    }
8355}
8356impl ::core::default::Default for Cfdrfdf14 {
8357    #[inline(always)]
8358    fn default() -> Cfdrfdf14 {
8359        <crate::RegValueT<Cfdrfdf14_SPEC> as RegisterValue<_>>::new(0)
8360    }
8361}
8362
8363#[doc(hidden)]
8364#[derive(Copy, Clone, Eq, PartialEq)]
8365pub struct Cfdrfdf15_SPEC;
8366impl crate::sealed::RegSpec for Cfdrfdf15_SPEC {
8367    type DataType = u32;
8368}
8369#[doc = "RX FIFO Access Data Field 15 Register %s"]
8370pub type Cfdrfdf15 = crate::RegValueT<Cfdrfdf15_SPEC>;
8371
8372impl Cfdrfdf15 {
8373    #[doc = "RX FIFO Buffer Data Byte (p × 4)"]
8374    #[inline(always)]
8375    pub fn rfdb_ll(
8376        self,
8377    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrfdf15_SPEC, crate::common::R> {
8378        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrfdf15_SPEC,crate::common::R>::from_register(self,0)
8379    }
8380    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 1)"]
8381    #[inline(always)]
8382    pub fn rfdb_lh(
8383        self,
8384    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrfdf15_SPEC, crate::common::R> {
8385        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrfdf15_SPEC,crate::common::R>::from_register(self,0)
8386    }
8387    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 2)"]
8388    #[inline(always)]
8389    pub fn rfdb_hl(
8390        self,
8391    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrfdf15_SPEC, crate::common::R> {
8392        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrfdf15_SPEC,crate::common::R>::from_register(self,0)
8393    }
8394    #[doc = "RX FIFO Buffer Data Byte ((p × 4) + 3)"]
8395    #[inline(always)]
8396    pub fn rfdb_hh(
8397        self,
8398    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrfdf15_SPEC, crate::common::R> {
8399        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrfdf15_SPEC,crate::common::R>::from_register(self,0)
8400    }
8401}
8402impl ::core::default::Default for Cfdrfdf15 {
8403    #[inline(always)]
8404    fn default() -> Cfdrfdf15 {
8405        <crate::RegValueT<Cfdrfdf15_SPEC> as RegisterValue<_>>::new(0)
8406    }
8407}
8408
8409#[doc(hidden)]
8410#[derive(Copy, Clone, Eq, PartialEq)]
8411pub struct Cfdcfid_SPEC;
8412impl crate::sealed::RegSpec for Cfdcfid_SPEC {
8413    type DataType = u32;
8414}
8415#[doc = "Common FIFO Access ID Register"]
8416pub type Cfdcfid = crate::RegValueT<Cfdcfid_SPEC>;
8417
8418impl Cfdcfid {
8419    #[doc = "Common FIFO Buffer ID Field"]
8420    #[inline(always)]
8421    pub fn cfid(
8422        self,
8423    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdcfid_SPEC, crate::common::RW>
8424    {
8425        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdcfid_SPEC,crate::common::RW>::from_register(self,0)
8426    }
8427    #[doc = "THL Entry enable"]
8428    #[inline(always)]
8429    pub fn thlen(
8430        self,
8431    ) -> crate::common::RegisterField<29, 0x1, 1, 0, cfdcfid::Thlen, Cfdcfid_SPEC, crate::common::RW>
8432    {
8433        crate::common::RegisterField::<29,0x1,1,0,cfdcfid::Thlen, Cfdcfid_SPEC,crate::common::RW>::from_register(self,0)
8434    }
8435    #[doc = "Common FIFO Buffer RTR Bit"]
8436    #[inline(always)]
8437    pub fn cfrtr(
8438        self,
8439    ) -> crate::common::RegisterField<30, 0x1, 1, 0, cfdcfid::Cfrtr, Cfdcfid_SPEC, crate::common::RW>
8440    {
8441        crate::common::RegisterField::<30,0x1,1,0,cfdcfid::Cfrtr, Cfdcfid_SPEC,crate::common::RW>::from_register(self,0)
8442    }
8443    #[doc = "Common FIFO Buffer IDE Bit"]
8444    #[inline(always)]
8445    pub fn cfide(
8446        self,
8447    ) -> crate::common::RegisterField<31, 0x1, 1, 0, cfdcfid::Cfide, Cfdcfid_SPEC, crate::common::RW>
8448    {
8449        crate::common::RegisterField::<31,0x1,1,0,cfdcfid::Cfide, Cfdcfid_SPEC,crate::common::RW>::from_register(self,0)
8450    }
8451}
8452impl ::core::default::Default for Cfdcfid {
8453    #[inline(always)]
8454    fn default() -> Cfdcfid {
8455        <crate::RegValueT<Cfdcfid_SPEC> as RegisterValue<_>>::new(0)
8456    }
8457}
8458pub mod cfdcfid {
8459
8460    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8461    pub struct Thlen_SPEC;
8462    pub type Thlen = crate::EnumBitfieldStruct<u8, Thlen_SPEC>;
8463    impl Thlen {
8464        #[doc = "Entry will not be stored in THL after successful TX."]
8465        pub const _0: Self = Self::new(0);
8466        #[doc = "Entry will be stored in THL after successful TX."]
8467        pub const _1: Self = Self::new(1);
8468    }
8469    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8470    pub struct Cfrtr_SPEC;
8471    pub type Cfrtr = crate::EnumBitfieldStruct<u8, Cfrtr_SPEC>;
8472    impl Cfrtr {
8473        #[doc = "Data Frame"]
8474        pub const _0: Self = Self::new(0);
8475        #[doc = "Remote Frame"]
8476        pub const _1: Self = Self::new(1);
8477    }
8478    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8479    pub struct Cfide_SPEC;
8480    pub type Cfide = crate::EnumBitfieldStruct<u8, Cfide_SPEC>;
8481    impl Cfide {
8482        #[doc = "STD-ID will be transmitted or has been received"]
8483        pub const _0: Self = Self::new(0);
8484        #[doc = "EXT-ID will be transmitted or has been received"]
8485        pub const _1: Self = Self::new(1);
8486    }
8487}
8488#[doc(hidden)]
8489#[derive(Copy, Clone, Eq, PartialEq)]
8490pub struct Cfdcfptr_SPEC;
8491impl crate::sealed::RegSpec for Cfdcfptr_SPEC {
8492    type DataType = u32;
8493}
8494#[doc = "Common FIFO Access Pointer Register"]
8495pub type Cfdcfptr = crate::RegValueT<Cfdcfptr_SPEC>;
8496
8497impl Cfdcfptr {
8498    #[doc = "Common FIFO Timestamp Value"]
8499    #[inline(always)]
8500    pub fn cfts(
8501        self,
8502    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdcfptr_SPEC, crate::common::RW> {
8503        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdcfptr_SPEC,crate::common::RW>::from_register(self,0)
8504    }
8505    #[doc = "Common FIFO Buffer DLC Field"]
8506    #[inline(always)]
8507    pub fn cfdlc(
8508        self,
8509    ) -> crate::common::RegisterField<28, 0xf, 1, 0, u8, Cfdcfptr_SPEC, crate::common::RW> {
8510        crate::common::RegisterField::<28,0xf,1,0,u8, Cfdcfptr_SPEC,crate::common::RW>::from_register(self,0)
8511    }
8512}
8513impl ::core::default::Default for Cfdcfptr {
8514    #[inline(always)]
8515    fn default() -> Cfdcfptr {
8516        <crate::RegValueT<Cfdcfptr_SPEC> as RegisterValue<_>>::new(0)
8517    }
8518}
8519
8520#[doc(hidden)]
8521#[derive(Copy, Clone, Eq, PartialEq)]
8522pub struct Cfdcffdcsts_SPEC;
8523impl crate::sealed::RegSpec for Cfdcffdcsts_SPEC {
8524    type DataType = u32;
8525}
8526#[doc = "Common FIFO Access CANFD Control/Status Register"]
8527pub type Cfdcffdcsts = crate::RegValueT<Cfdcffdcsts_SPEC>;
8528
8529impl Cfdcffdcsts {
8530    #[doc = "Error State Indicator bit"]
8531    #[inline(always)]
8532    pub fn cfesi(
8533        self,
8534    ) -> crate::common::RegisterField<
8535        0,
8536        0x1,
8537        1,
8538        0,
8539        cfdcffdcsts::Cfesi,
8540        Cfdcffdcsts_SPEC,
8541        crate::common::RW,
8542    > {
8543        crate::common::RegisterField::<
8544            0,
8545            0x1,
8546            1,
8547            0,
8548            cfdcffdcsts::Cfesi,
8549            Cfdcffdcsts_SPEC,
8550            crate::common::RW,
8551        >::from_register(self, 0)
8552    }
8553    #[doc = "Bit Rate Switch bit"]
8554    #[inline(always)]
8555    pub fn cfbrs(
8556        self,
8557    ) -> crate::common::RegisterField<
8558        1,
8559        0x1,
8560        1,
8561        0,
8562        cfdcffdcsts::Cfbrs,
8563        Cfdcffdcsts_SPEC,
8564        crate::common::RW,
8565    > {
8566        crate::common::RegisterField::<
8567            1,
8568            0x1,
8569            1,
8570            0,
8571            cfdcffdcsts::Cfbrs,
8572            Cfdcffdcsts_SPEC,
8573            crate::common::RW,
8574        >::from_register(self, 0)
8575    }
8576    #[doc = "CAN FD Format bit"]
8577    #[inline(always)]
8578    pub fn cffdf(
8579        self,
8580    ) -> crate::common::RegisterField<
8581        2,
8582        0x1,
8583        1,
8584        0,
8585        cfdcffdcsts::Cffdf,
8586        Cfdcffdcsts_SPEC,
8587        crate::common::RW,
8588    > {
8589        crate::common::RegisterField::<
8590            2,
8591            0x1,
8592            1,
8593            0,
8594            cfdcffdcsts::Cffdf,
8595            Cfdcffdcsts_SPEC,
8596            crate::common::RW,
8597        >::from_register(self, 0)
8598    }
8599    #[doc = "COMMON FIFO Buffer Information Label Field"]
8600    #[inline(always)]
8601    pub fn cfifl(
8602        self,
8603    ) -> crate::common::RegisterField<8, 0x3, 1, 0, u8, Cfdcffdcsts_SPEC, crate::common::RW> {
8604        crate::common::RegisterField::<8,0x3,1,0,u8, Cfdcffdcsts_SPEC,crate::common::RW>::from_register(self,0)
8605    }
8606    #[doc = "Common FIFO Buffer Pointer Field"]
8607    #[inline(always)]
8608    pub fn cfptr(
8609        self,
8610    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdcffdcsts_SPEC, crate::common::RW>
8611    {
8612        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdcffdcsts_SPEC,crate::common::RW>::from_register(self,0)
8613    }
8614}
8615impl ::core::default::Default for Cfdcffdcsts {
8616    #[inline(always)]
8617    fn default() -> Cfdcffdcsts {
8618        <crate::RegValueT<Cfdcffdcsts_SPEC> as RegisterValue<_>>::new(0)
8619    }
8620}
8621pub mod cfdcffdcsts {
8622
8623    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8624    pub struct Cfesi_SPEC;
8625    pub type Cfesi = crate::EnumBitfieldStruct<u8, Cfesi_SPEC>;
8626    impl Cfesi {
8627        #[doc = "CANFD frame received or to transmit by error active node"]
8628        pub const _0: Self = Self::new(0);
8629        #[doc = "CANFD frame received or to transmit by error passive node"]
8630        pub const _1: Self = Self::new(1);
8631    }
8632    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8633    pub struct Cfbrs_SPEC;
8634    pub type Cfbrs = crate::EnumBitfieldStruct<u8, Cfbrs_SPEC>;
8635    impl Cfbrs {
8636        #[doc = "CANFD frame received or to transmit with no bit rate switch"]
8637        pub const _0: Self = Self::new(0);
8638        #[doc = "CANFD frame received or to transmit with bit rate switch"]
8639        pub const _1: Self = Self::new(1);
8640    }
8641    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8642    pub struct Cffdf_SPEC;
8643    pub type Cffdf = crate::EnumBitfieldStruct<u8, Cffdf_SPEC>;
8644    impl Cffdf {
8645        #[doc = "Non CANFD frame received or to transmit"]
8646        pub const _0: Self = Self::new(0);
8647        #[doc = "CANFD frame received or to transmit"]
8648        pub const _1: Self = Self::new(1);
8649    }
8650}
8651#[doc(hidden)]
8652#[derive(Copy, Clone, Eq, PartialEq)]
8653pub struct Cfdcfdf_SPEC;
8654impl crate::sealed::RegSpec for Cfdcfdf_SPEC {
8655    type DataType = u32;
8656}
8657#[doc = "Common FIFO Access Data Field %s Registers"]
8658pub type Cfdcfdf = crate::RegValueT<Cfdcfdf_SPEC>;
8659
8660impl Cfdcfdf {
8661    #[doc = "Common FIFO Buffer Data Bytes (p × 4)"]
8662    #[inline(always)]
8663    pub fn cfdb_ll(
8664        self,
8665    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdcfdf_SPEC, crate::common::RW> {
8666        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdcfdf_SPEC,crate::common::RW>::from_register(self,0)
8667    }
8668    #[doc = "Common FIFO Buffer Data Bytes ((p × 4) + 1)"]
8669    #[inline(always)]
8670    pub fn cfdb_lh(
8671        self,
8672    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdcfdf_SPEC, crate::common::RW> {
8673        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdcfdf_SPEC,crate::common::RW>::from_register(self,0)
8674    }
8675    #[doc = "Common FIFO Buffer Data Bytes ((p × 4) + 2)"]
8676    #[inline(always)]
8677    pub fn cfdb_hl(
8678        self,
8679    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdcfdf_SPEC, crate::common::RW> {
8680        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdcfdf_SPEC,crate::common::RW>::from_register(self,0)
8681    }
8682    #[doc = "Common FIFO Buffer Data Bytes ((p × 4) + 3)"]
8683    #[inline(always)]
8684    pub fn cfdb_hh(
8685        self,
8686    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdcfdf_SPEC, crate::common::RW> {
8687        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdcfdf_SPEC,crate::common::RW>::from_register(self,0)
8688    }
8689}
8690impl ::core::default::Default for Cfdcfdf {
8691    #[inline(always)]
8692    fn default() -> Cfdcfdf {
8693        <crate::RegValueT<Cfdcfdf_SPEC> as RegisterValue<_>>::new(0)
8694    }
8695}
8696
8697#[doc(hidden)]
8698#[derive(Copy, Clone, Eq, PartialEq)]
8699pub struct Cfdtmid_SPEC;
8700impl crate::sealed::RegSpec for Cfdtmid_SPEC {
8701    type DataType = u32;
8702}
8703#[doc = "TX Message Buffer ID Registers"]
8704pub type Cfdtmid = crate::RegValueT<Cfdtmid_SPEC>;
8705
8706impl Cfdtmid {
8707    #[doc = "TX Message Buffer ID Field"]
8708    #[inline(always)]
8709    pub fn tmid(
8710        self,
8711    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdtmid_SPEC, crate::common::RW>
8712    {
8713        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdtmid_SPEC,crate::common::RW>::from_register(self,0)
8714    }
8715    #[doc = "Tx History List Entry"]
8716    #[inline(always)]
8717    pub fn thlen(
8718        self,
8719    ) -> crate::common::RegisterField<29, 0x1, 1, 0, cfdtmid::Thlen, Cfdtmid_SPEC, crate::common::RW>
8720    {
8721        crate::common::RegisterField::<29,0x1,1,0,cfdtmid::Thlen, Cfdtmid_SPEC,crate::common::RW>::from_register(self,0)
8722    }
8723    #[doc = "TX Message Buffer RTR bit"]
8724    #[inline(always)]
8725    pub fn tmrtr(
8726        self,
8727    ) -> crate::common::RegisterField<30, 0x1, 1, 0, cfdtmid::Tmrtr, Cfdtmid_SPEC, crate::common::RW>
8728    {
8729        crate::common::RegisterField::<30,0x1,1,0,cfdtmid::Tmrtr, Cfdtmid_SPEC,crate::common::RW>::from_register(self,0)
8730    }
8731    #[doc = "TX Message Buffer IDE bit"]
8732    #[inline(always)]
8733    pub fn tmide(
8734        self,
8735    ) -> crate::common::RegisterField<31, 0x1, 1, 0, cfdtmid::Tmide, Cfdtmid_SPEC, crate::common::RW>
8736    {
8737        crate::common::RegisterField::<31,0x1,1,0,cfdtmid::Tmide, Cfdtmid_SPEC,crate::common::RW>::from_register(self,0)
8738    }
8739}
8740impl ::core::default::Default for Cfdtmid {
8741    #[inline(always)]
8742    fn default() -> Cfdtmid {
8743        <crate::RegValueT<Cfdtmid_SPEC> as RegisterValue<_>>::new(0)
8744    }
8745}
8746pub mod cfdtmid {
8747
8748    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8749    pub struct Thlen_SPEC;
8750    pub type Thlen = crate::EnumBitfieldStruct<u8, Thlen_SPEC>;
8751    impl Thlen {
8752        #[doc = "Entry not stored in THL after successful TX"]
8753        pub const _0: Self = Self::new(0);
8754        #[doc = "Entry stored in THL after successful TX"]
8755        pub const _1: Self = Self::new(1);
8756    }
8757    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8758    pub struct Tmrtr_SPEC;
8759    pub type Tmrtr = crate::EnumBitfieldStruct<u8, Tmrtr_SPEC>;
8760    impl Tmrtr {
8761        #[doc = "Data frame"]
8762        pub const _0: Self = Self::new(0);
8763        #[doc = "Remote frame"]
8764        pub const _1: Self = Self::new(1);
8765    }
8766    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8767    pub struct Tmide_SPEC;
8768    pub type Tmide = crate::EnumBitfieldStruct<u8, Tmide_SPEC>;
8769    impl Tmide {
8770        #[doc = "STD-ID is transmitted"]
8771        pub const _0: Self = Self::new(0);
8772        #[doc = "EXT-ID is transmitted"]
8773        pub const _1: Self = Self::new(1);
8774    }
8775}
8776#[doc(hidden)]
8777#[derive(Copy, Clone, Eq, PartialEq)]
8778pub struct Cfdtmptr_SPEC;
8779impl crate::sealed::RegSpec for Cfdtmptr_SPEC {
8780    type DataType = u32;
8781}
8782#[doc = "TX Message Buffer Pointer Register"]
8783pub type Cfdtmptr = crate::RegValueT<Cfdtmptr_SPEC>;
8784
8785impl Cfdtmptr {
8786    #[doc = "TX Message Buffer DLC Field"]
8787    #[inline(always)]
8788    pub fn tmdlc(
8789        self,
8790    ) -> crate::common::RegisterField<28, 0xf, 1, 0, u8, Cfdtmptr_SPEC, crate::common::RW> {
8791        crate::common::RegisterField::<28,0xf,1,0,u8, Cfdtmptr_SPEC,crate::common::RW>::from_register(self,0)
8792    }
8793}
8794impl ::core::default::Default for Cfdtmptr {
8795    #[inline(always)]
8796    fn default() -> Cfdtmptr {
8797        <crate::RegValueT<Cfdtmptr_SPEC> as RegisterValue<_>>::new(0)
8798    }
8799}
8800
8801#[doc(hidden)]
8802#[derive(Copy, Clone, Eq, PartialEq)]
8803pub struct Cfdtmfdctr_SPEC;
8804impl crate::sealed::RegSpec for Cfdtmfdctr_SPEC {
8805    type DataType = u32;
8806}
8807#[doc = "TX Message Buffer CANFD Control Register"]
8808pub type Cfdtmfdctr = crate::RegValueT<Cfdtmfdctr_SPEC>;
8809
8810impl Cfdtmfdctr {
8811    #[doc = "Error State Indicator bit"]
8812    #[inline(always)]
8813    pub fn tmesi(
8814        self,
8815    ) -> crate::common::RegisterField<
8816        0,
8817        0x1,
8818        1,
8819        0,
8820        cfdtmfdctr::Tmesi,
8821        Cfdtmfdctr_SPEC,
8822        crate::common::RW,
8823    > {
8824        crate::common::RegisterField::<
8825            0,
8826            0x1,
8827            1,
8828            0,
8829            cfdtmfdctr::Tmesi,
8830            Cfdtmfdctr_SPEC,
8831            crate::common::RW,
8832        >::from_register(self, 0)
8833    }
8834    #[doc = "Bit Rate Switch bit"]
8835    #[inline(always)]
8836    pub fn tmbrs(
8837        self,
8838    ) -> crate::common::RegisterField<
8839        1,
8840        0x1,
8841        1,
8842        0,
8843        cfdtmfdctr::Tmbrs,
8844        Cfdtmfdctr_SPEC,
8845        crate::common::RW,
8846    > {
8847        crate::common::RegisterField::<
8848            1,
8849            0x1,
8850            1,
8851            0,
8852            cfdtmfdctr::Tmbrs,
8853            Cfdtmfdctr_SPEC,
8854            crate::common::RW,
8855        >::from_register(self, 0)
8856    }
8857    #[doc = "CAN FD Format bit"]
8858    #[inline(always)]
8859    pub fn tmfdf(
8860        self,
8861    ) -> crate::common::RegisterField<
8862        2,
8863        0x1,
8864        1,
8865        0,
8866        cfdtmfdctr::Tmfdf,
8867        Cfdtmfdctr_SPEC,
8868        crate::common::RW,
8869    > {
8870        crate::common::RegisterField::<
8871            2,
8872            0x1,
8873            1,
8874            0,
8875            cfdtmfdctr::Tmfdf,
8876            Cfdtmfdctr_SPEC,
8877            crate::common::RW,
8878        >::from_register(self, 0)
8879    }
8880    #[doc = "TX Message Buffer Information Label Field"]
8881    #[inline(always)]
8882    pub fn tmifl(
8883        self,
8884    ) -> crate::common::RegisterField<8, 0x3, 1, 0, u8, Cfdtmfdctr_SPEC, crate::common::RW> {
8885        crate::common::RegisterField::<8,0x3,1,0,u8, Cfdtmfdctr_SPEC,crate::common::RW>::from_register(self,0)
8886    }
8887    #[doc = "TX Message Buffer Pointer Field"]
8888    #[inline(always)]
8889    pub fn tmptr(
8890        self,
8891    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdtmfdctr_SPEC, crate::common::RW>
8892    {
8893        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdtmfdctr_SPEC,crate::common::RW>::from_register(self,0)
8894    }
8895}
8896impl ::core::default::Default for Cfdtmfdctr {
8897    #[inline(always)]
8898    fn default() -> Cfdtmfdctr {
8899        <crate::RegValueT<Cfdtmfdctr_SPEC> as RegisterValue<_>>::new(0)
8900    }
8901}
8902pub mod cfdtmfdctr {
8903
8904    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8905    pub struct Tmesi_SPEC;
8906    pub type Tmesi = crate::EnumBitfieldStruct<u8, Tmesi_SPEC>;
8907    impl Tmesi {
8908        #[doc = "CANFD frame to transmit by error active node"]
8909        pub const _0: Self = Self::new(0);
8910        #[doc = "CANFD frame to transmit by error passive node"]
8911        pub const _1: Self = Self::new(1);
8912    }
8913    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8914    pub struct Tmbrs_SPEC;
8915    pub type Tmbrs = crate::EnumBitfieldStruct<u8, Tmbrs_SPEC>;
8916    impl Tmbrs {
8917        #[doc = "CANFD frame to transmit with no bit rate switch"]
8918        pub const _0: Self = Self::new(0);
8919        #[doc = "CANFD frame to transmit with bit rate switch"]
8920        pub const _1: Self = Self::new(1);
8921    }
8922    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
8923    pub struct Tmfdf_SPEC;
8924    pub type Tmfdf = crate::EnumBitfieldStruct<u8, Tmfdf_SPEC>;
8925    impl Tmfdf {
8926        #[doc = "Non CANFD frame to transmit"]
8927        pub const _0: Self = Self::new(0);
8928        #[doc = "CANFD frame to transmit"]
8929        pub const _1: Self = Self::new(1);
8930    }
8931}
8932#[doc(hidden)]
8933#[derive(Copy, Clone, Eq, PartialEq)]
8934pub struct Cfdtmdf0_SPEC;
8935impl crate::sealed::RegSpec for Cfdtmdf0_SPEC {
8936    type DataType = u32;
8937}
8938#[doc = "TX Message Buffer Data Field Register"]
8939pub type Cfdtmdf0 = crate::RegValueT<Cfdtmdf0_SPEC>;
8940
8941impl Cfdtmdf0 {
8942    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
8943    #[inline(always)]
8944    pub fn tmdb_ll(
8945        self,
8946    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf0_SPEC, crate::common::RW> {
8947        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf0_SPEC,crate::common::RW>::from_register(self,0)
8948    }
8949    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
8950    #[inline(always)]
8951    pub fn tmdb_lh(
8952        self,
8953    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf0_SPEC, crate::common::RW> {
8954        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf0_SPEC,crate::common::RW>::from_register(self,0)
8955    }
8956    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
8957    #[inline(always)]
8958    pub fn tmdb_hl(
8959        self,
8960    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf0_SPEC, crate::common::RW> {
8961        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf0_SPEC,crate::common::RW>::from_register(self,0)
8962    }
8963    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
8964    #[inline(always)]
8965    pub fn tmdb_hh(
8966        self,
8967    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf0_SPEC, crate::common::RW> {
8968        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf0_SPEC,crate::common::RW>::from_register(self,0)
8969    }
8970}
8971impl ::core::default::Default for Cfdtmdf0 {
8972    #[inline(always)]
8973    fn default() -> Cfdtmdf0 {
8974        <crate::RegValueT<Cfdtmdf0_SPEC> as RegisterValue<_>>::new(0)
8975    }
8976}
8977
8978#[doc(hidden)]
8979#[derive(Copy, Clone, Eq, PartialEq)]
8980pub struct Cfdtmdf1_SPEC;
8981impl crate::sealed::RegSpec for Cfdtmdf1_SPEC {
8982    type DataType = u32;
8983}
8984#[doc = "TX Message Buffer Data Field Register"]
8985pub type Cfdtmdf1 = crate::RegValueT<Cfdtmdf1_SPEC>;
8986
8987impl Cfdtmdf1 {
8988    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
8989    #[inline(always)]
8990    pub fn tmdb_ll(
8991        self,
8992    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf1_SPEC, crate::common::RW> {
8993        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf1_SPEC,crate::common::RW>::from_register(self,0)
8994    }
8995    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
8996    #[inline(always)]
8997    pub fn tmdb_lh(
8998        self,
8999    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf1_SPEC, crate::common::RW> {
9000        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf1_SPEC,crate::common::RW>::from_register(self,0)
9001    }
9002    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9003    #[inline(always)]
9004    pub fn tmdb_hl(
9005        self,
9006    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf1_SPEC, crate::common::RW> {
9007        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf1_SPEC,crate::common::RW>::from_register(self,0)
9008    }
9009    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9010    #[inline(always)]
9011    pub fn tmdb_hh(
9012        self,
9013    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf1_SPEC, crate::common::RW> {
9014        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf1_SPEC,crate::common::RW>::from_register(self,0)
9015    }
9016}
9017impl ::core::default::Default for Cfdtmdf1 {
9018    #[inline(always)]
9019    fn default() -> Cfdtmdf1 {
9020        <crate::RegValueT<Cfdtmdf1_SPEC> as RegisterValue<_>>::new(0)
9021    }
9022}
9023
9024#[doc(hidden)]
9025#[derive(Copy, Clone, Eq, PartialEq)]
9026pub struct Cfdtmdf2_SPEC;
9027impl crate::sealed::RegSpec for Cfdtmdf2_SPEC {
9028    type DataType = u32;
9029}
9030#[doc = "TX Message Buffer Data Field Register"]
9031pub type Cfdtmdf2 = crate::RegValueT<Cfdtmdf2_SPEC>;
9032
9033impl Cfdtmdf2 {
9034    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9035    #[inline(always)]
9036    pub fn tmdb_ll(
9037        self,
9038    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf2_SPEC, crate::common::RW> {
9039        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf2_SPEC,crate::common::RW>::from_register(self,0)
9040    }
9041    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9042    #[inline(always)]
9043    pub fn tmdb_lh(
9044        self,
9045    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf2_SPEC, crate::common::RW> {
9046        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf2_SPEC,crate::common::RW>::from_register(self,0)
9047    }
9048    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9049    #[inline(always)]
9050    pub fn tmdb_hl(
9051        self,
9052    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf2_SPEC, crate::common::RW> {
9053        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf2_SPEC,crate::common::RW>::from_register(self,0)
9054    }
9055    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9056    #[inline(always)]
9057    pub fn tmdb_hh(
9058        self,
9059    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf2_SPEC, crate::common::RW> {
9060        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf2_SPEC,crate::common::RW>::from_register(self,0)
9061    }
9062}
9063impl ::core::default::Default for Cfdtmdf2 {
9064    #[inline(always)]
9065    fn default() -> Cfdtmdf2 {
9066        <crate::RegValueT<Cfdtmdf2_SPEC> as RegisterValue<_>>::new(0)
9067    }
9068}
9069
9070#[doc(hidden)]
9071#[derive(Copy, Clone, Eq, PartialEq)]
9072pub struct Cfdtmdf3_SPEC;
9073impl crate::sealed::RegSpec for Cfdtmdf3_SPEC {
9074    type DataType = u32;
9075}
9076#[doc = "TX Message Buffer Data Field Register"]
9077pub type Cfdtmdf3 = crate::RegValueT<Cfdtmdf3_SPEC>;
9078
9079impl Cfdtmdf3 {
9080    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9081    #[inline(always)]
9082    pub fn tmdb_ll(
9083        self,
9084    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf3_SPEC, crate::common::RW> {
9085        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf3_SPEC,crate::common::RW>::from_register(self,0)
9086    }
9087    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9088    #[inline(always)]
9089    pub fn tmdb_lh(
9090        self,
9091    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf3_SPEC, crate::common::RW> {
9092        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf3_SPEC,crate::common::RW>::from_register(self,0)
9093    }
9094    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9095    #[inline(always)]
9096    pub fn tmdb_hl(
9097        self,
9098    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf3_SPEC, crate::common::RW> {
9099        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf3_SPEC,crate::common::RW>::from_register(self,0)
9100    }
9101    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9102    #[inline(always)]
9103    pub fn tmdb_hh(
9104        self,
9105    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf3_SPEC, crate::common::RW> {
9106        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf3_SPEC,crate::common::RW>::from_register(self,0)
9107    }
9108}
9109impl ::core::default::Default for Cfdtmdf3 {
9110    #[inline(always)]
9111    fn default() -> Cfdtmdf3 {
9112        <crate::RegValueT<Cfdtmdf3_SPEC> as RegisterValue<_>>::new(0)
9113    }
9114}
9115
9116#[doc(hidden)]
9117#[derive(Copy, Clone, Eq, PartialEq)]
9118pub struct Cfdtmdf4_SPEC;
9119impl crate::sealed::RegSpec for Cfdtmdf4_SPEC {
9120    type DataType = u32;
9121}
9122#[doc = "TX Message Buffer Data Field Register"]
9123pub type Cfdtmdf4 = crate::RegValueT<Cfdtmdf4_SPEC>;
9124
9125impl Cfdtmdf4 {
9126    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9127    #[inline(always)]
9128    pub fn tmdb_ll(
9129        self,
9130    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf4_SPEC, crate::common::RW> {
9131        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf4_SPEC,crate::common::RW>::from_register(self,0)
9132    }
9133    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9134    #[inline(always)]
9135    pub fn tmdb_lh(
9136        self,
9137    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf4_SPEC, crate::common::RW> {
9138        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf4_SPEC,crate::common::RW>::from_register(self,0)
9139    }
9140    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9141    #[inline(always)]
9142    pub fn tmdb_hl(
9143        self,
9144    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf4_SPEC, crate::common::RW> {
9145        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf4_SPEC,crate::common::RW>::from_register(self,0)
9146    }
9147    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9148    #[inline(always)]
9149    pub fn tmdb_hh(
9150        self,
9151    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf4_SPEC, crate::common::RW> {
9152        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf4_SPEC,crate::common::RW>::from_register(self,0)
9153    }
9154}
9155impl ::core::default::Default for Cfdtmdf4 {
9156    #[inline(always)]
9157    fn default() -> Cfdtmdf4 {
9158        <crate::RegValueT<Cfdtmdf4_SPEC> as RegisterValue<_>>::new(0)
9159    }
9160}
9161
9162#[doc(hidden)]
9163#[derive(Copy, Clone, Eq, PartialEq)]
9164pub struct Cfdtmdf5_SPEC;
9165impl crate::sealed::RegSpec for Cfdtmdf5_SPEC {
9166    type DataType = u32;
9167}
9168#[doc = "TX Message Buffer Data Field Register"]
9169pub type Cfdtmdf5 = crate::RegValueT<Cfdtmdf5_SPEC>;
9170
9171impl Cfdtmdf5 {
9172    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9173    #[inline(always)]
9174    pub fn tmdb_ll(
9175        self,
9176    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf5_SPEC, crate::common::RW> {
9177        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf5_SPEC,crate::common::RW>::from_register(self,0)
9178    }
9179    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9180    #[inline(always)]
9181    pub fn tmdb_lh(
9182        self,
9183    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf5_SPEC, crate::common::RW> {
9184        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf5_SPEC,crate::common::RW>::from_register(self,0)
9185    }
9186    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9187    #[inline(always)]
9188    pub fn tmdb_hl(
9189        self,
9190    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf5_SPEC, crate::common::RW> {
9191        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf5_SPEC,crate::common::RW>::from_register(self,0)
9192    }
9193    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9194    #[inline(always)]
9195    pub fn tmdb_hh(
9196        self,
9197    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf5_SPEC, crate::common::RW> {
9198        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf5_SPEC,crate::common::RW>::from_register(self,0)
9199    }
9200}
9201impl ::core::default::Default for Cfdtmdf5 {
9202    #[inline(always)]
9203    fn default() -> Cfdtmdf5 {
9204        <crate::RegValueT<Cfdtmdf5_SPEC> as RegisterValue<_>>::new(0)
9205    }
9206}
9207
9208#[doc(hidden)]
9209#[derive(Copy, Clone, Eq, PartialEq)]
9210pub struct Cfdtmdf6_SPEC;
9211impl crate::sealed::RegSpec for Cfdtmdf6_SPEC {
9212    type DataType = u32;
9213}
9214#[doc = "TX Message Buffer Data Field Register"]
9215pub type Cfdtmdf6 = crate::RegValueT<Cfdtmdf6_SPEC>;
9216
9217impl Cfdtmdf6 {
9218    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9219    #[inline(always)]
9220    pub fn tmdb_ll(
9221        self,
9222    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf6_SPEC, crate::common::RW> {
9223        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf6_SPEC,crate::common::RW>::from_register(self,0)
9224    }
9225    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9226    #[inline(always)]
9227    pub fn tmdb_lh(
9228        self,
9229    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf6_SPEC, crate::common::RW> {
9230        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf6_SPEC,crate::common::RW>::from_register(self,0)
9231    }
9232    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9233    #[inline(always)]
9234    pub fn tmdb_hl(
9235        self,
9236    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf6_SPEC, crate::common::RW> {
9237        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf6_SPEC,crate::common::RW>::from_register(self,0)
9238    }
9239    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9240    #[inline(always)]
9241    pub fn tmdb_hh(
9242        self,
9243    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf6_SPEC, crate::common::RW> {
9244        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf6_SPEC,crate::common::RW>::from_register(self,0)
9245    }
9246}
9247impl ::core::default::Default for Cfdtmdf6 {
9248    #[inline(always)]
9249    fn default() -> Cfdtmdf6 {
9250        <crate::RegValueT<Cfdtmdf6_SPEC> as RegisterValue<_>>::new(0)
9251    }
9252}
9253
9254#[doc(hidden)]
9255#[derive(Copy, Clone, Eq, PartialEq)]
9256pub struct Cfdtmdf7_SPEC;
9257impl crate::sealed::RegSpec for Cfdtmdf7_SPEC {
9258    type DataType = u32;
9259}
9260#[doc = "TX Message Buffer Data Field Register"]
9261pub type Cfdtmdf7 = crate::RegValueT<Cfdtmdf7_SPEC>;
9262
9263impl Cfdtmdf7 {
9264    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9265    #[inline(always)]
9266    pub fn tmdb_ll(
9267        self,
9268    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf7_SPEC, crate::common::RW> {
9269        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf7_SPEC,crate::common::RW>::from_register(self,0)
9270    }
9271    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9272    #[inline(always)]
9273    pub fn tmdb_lh(
9274        self,
9275    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf7_SPEC, crate::common::RW> {
9276        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf7_SPEC,crate::common::RW>::from_register(self,0)
9277    }
9278    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9279    #[inline(always)]
9280    pub fn tmdb_hl(
9281        self,
9282    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf7_SPEC, crate::common::RW> {
9283        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf7_SPEC,crate::common::RW>::from_register(self,0)
9284    }
9285    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9286    #[inline(always)]
9287    pub fn tmdb_hh(
9288        self,
9289    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf7_SPEC, crate::common::RW> {
9290        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf7_SPEC,crate::common::RW>::from_register(self,0)
9291    }
9292}
9293impl ::core::default::Default for Cfdtmdf7 {
9294    #[inline(always)]
9295    fn default() -> Cfdtmdf7 {
9296        <crate::RegValueT<Cfdtmdf7_SPEC> as RegisterValue<_>>::new(0)
9297    }
9298}
9299
9300#[doc(hidden)]
9301#[derive(Copy, Clone, Eq, PartialEq)]
9302pub struct Cfdtmdf8_SPEC;
9303impl crate::sealed::RegSpec for Cfdtmdf8_SPEC {
9304    type DataType = u32;
9305}
9306#[doc = "TX Message Buffer Data Field Register"]
9307pub type Cfdtmdf8 = crate::RegValueT<Cfdtmdf8_SPEC>;
9308
9309impl Cfdtmdf8 {
9310    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9311    #[inline(always)]
9312    pub fn tmdb_ll(
9313        self,
9314    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf8_SPEC, crate::common::RW> {
9315        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf8_SPEC,crate::common::RW>::from_register(self,0)
9316    }
9317    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9318    #[inline(always)]
9319    pub fn tmdb_lh(
9320        self,
9321    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf8_SPEC, crate::common::RW> {
9322        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf8_SPEC,crate::common::RW>::from_register(self,0)
9323    }
9324    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9325    #[inline(always)]
9326    pub fn tmdb_hl(
9327        self,
9328    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf8_SPEC, crate::common::RW> {
9329        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf8_SPEC,crate::common::RW>::from_register(self,0)
9330    }
9331    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9332    #[inline(always)]
9333    pub fn tmdb_hh(
9334        self,
9335    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf8_SPEC, crate::common::RW> {
9336        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf8_SPEC,crate::common::RW>::from_register(self,0)
9337    }
9338}
9339impl ::core::default::Default for Cfdtmdf8 {
9340    #[inline(always)]
9341    fn default() -> Cfdtmdf8 {
9342        <crate::RegValueT<Cfdtmdf8_SPEC> as RegisterValue<_>>::new(0)
9343    }
9344}
9345
9346#[doc(hidden)]
9347#[derive(Copy, Clone, Eq, PartialEq)]
9348pub struct Cfdtmdf9_SPEC;
9349impl crate::sealed::RegSpec for Cfdtmdf9_SPEC {
9350    type DataType = u32;
9351}
9352#[doc = "TX Message Buffer Data Field Register"]
9353pub type Cfdtmdf9 = crate::RegValueT<Cfdtmdf9_SPEC>;
9354
9355impl Cfdtmdf9 {
9356    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9357    #[inline(always)]
9358    pub fn tmdb_ll(
9359        self,
9360    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf9_SPEC, crate::common::RW> {
9361        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf9_SPEC,crate::common::RW>::from_register(self,0)
9362    }
9363    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9364    #[inline(always)]
9365    pub fn tmdb_lh(
9366        self,
9367    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf9_SPEC, crate::common::RW> {
9368        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf9_SPEC,crate::common::RW>::from_register(self,0)
9369    }
9370    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9371    #[inline(always)]
9372    pub fn tmdb_hl(
9373        self,
9374    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf9_SPEC, crate::common::RW> {
9375        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf9_SPEC,crate::common::RW>::from_register(self,0)
9376    }
9377    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9378    #[inline(always)]
9379    pub fn tmdb_hh(
9380        self,
9381    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf9_SPEC, crate::common::RW> {
9382        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf9_SPEC,crate::common::RW>::from_register(self,0)
9383    }
9384}
9385impl ::core::default::Default for Cfdtmdf9 {
9386    #[inline(always)]
9387    fn default() -> Cfdtmdf9 {
9388        <crate::RegValueT<Cfdtmdf9_SPEC> as RegisterValue<_>>::new(0)
9389    }
9390}
9391
9392#[doc(hidden)]
9393#[derive(Copy, Clone, Eq, PartialEq)]
9394pub struct Cfdtmdf10_SPEC;
9395impl crate::sealed::RegSpec for Cfdtmdf10_SPEC {
9396    type DataType = u32;
9397}
9398#[doc = "TX Message Buffer Data Field Register"]
9399pub type Cfdtmdf10 = crate::RegValueT<Cfdtmdf10_SPEC>;
9400
9401impl Cfdtmdf10 {
9402    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9403    #[inline(always)]
9404    pub fn tmdb_ll(
9405        self,
9406    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf10_SPEC, crate::common::RW> {
9407        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf10_SPEC,crate::common::RW>::from_register(self,0)
9408    }
9409    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9410    #[inline(always)]
9411    pub fn tmdb_lh(
9412        self,
9413    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf10_SPEC, crate::common::RW> {
9414        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf10_SPEC,crate::common::RW>::from_register(self,0)
9415    }
9416    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9417    #[inline(always)]
9418    pub fn tmdb_hl(
9419        self,
9420    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf10_SPEC, crate::common::RW> {
9421        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf10_SPEC,crate::common::RW>::from_register(self,0)
9422    }
9423    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9424    #[inline(always)]
9425    pub fn tmdb_hh(
9426        self,
9427    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf10_SPEC, crate::common::RW> {
9428        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf10_SPEC,crate::common::RW>::from_register(self,0)
9429    }
9430}
9431impl ::core::default::Default for Cfdtmdf10 {
9432    #[inline(always)]
9433    fn default() -> Cfdtmdf10 {
9434        <crate::RegValueT<Cfdtmdf10_SPEC> as RegisterValue<_>>::new(0)
9435    }
9436}
9437
9438#[doc(hidden)]
9439#[derive(Copy, Clone, Eq, PartialEq)]
9440pub struct Cfdtmdf11_SPEC;
9441impl crate::sealed::RegSpec for Cfdtmdf11_SPEC {
9442    type DataType = u32;
9443}
9444#[doc = "TX Message Buffer Data Field Register"]
9445pub type Cfdtmdf11 = crate::RegValueT<Cfdtmdf11_SPEC>;
9446
9447impl Cfdtmdf11 {
9448    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9449    #[inline(always)]
9450    pub fn tmdb_ll(
9451        self,
9452    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf11_SPEC, crate::common::RW> {
9453        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf11_SPEC,crate::common::RW>::from_register(self,0)
9454    }
9455    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9456    #[inline(always)]
9457    pub fn tmdb_lh(
9458        self,
9459    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf11_SPEC, crate::common::RW> {
9460        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf11_SPEC,crate::common::RW>::from_register(self,0)
9461    }
9462    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9463    #[inline(always)]
9464    pub fn tmdb_hl(
9465        self,
9466    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf11_SPEC, crate::common::RW> {
9467        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf11_SPEC,crate::common::RW>::from_register(self,0)
9468    }
9469    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9470    #[inline(always)]
9471    pub fn tmdb_hh(
9472        self,
9473    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf11_SPEC, crate::common::RW> {
9474        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf11_SPEC,crate::common::RW>::from_register(self,0)
9475    }
9476}
9477impl ::core::default::Default for Cfdtmdf11 {
9478    #[inline(always)]
9479    fn default() -> Cfdtmdf11 {
9480        <crate::RegValueT<Cfdtmdf11_SPEC> as RegisterValue<_>>::new(0)
9481    }
9482}
9483
9484#[doc(hidden)]
9485#[derive(Copy, Clone, Eq, PartialEq)]
9486pub struct Cfdtmdf12_SPEC;
9487impl crate::sealed::RegSpec for Cfdtmdf12_SPEC {
9488    type DataType = u32;
9489}
9490#[doc = "TX Message Buffer Data Field Register"]
9491pub type Cfdtmdf12 = crate::RegValueT<Cfdtmdf12_SPEC>;
9492
9493impl Cfdtmdf12 {
9494    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9495    #[inline(always)]
9496    pub fn tmdb_ll(
9497        self,
9498    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf12_SPEC, crate::common::RW> {
9499        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf12_SPEC,crate::common::RW>::from_register(self,0)
9500    }
9501    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9502    #[inline(always)]
9503    pub fn tmdb_lh(
9504        self,
9505    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf12_SPEC, crate::common::RW> {
9506        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf12_SPEC,crate::common::RW>::from_register(self,0)
9507    }
9508    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9509    #[inline(always)]
9510    pub fn tmdb_hl(
9511        self,
9512    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf12_SPEC, crate::common::RW> {
9513        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf12_SPEC,crate::common::RW>::from_register(self,0)
9514    }
9515    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9516    #[inline(always)]
9517    pub fn tmdb_hh(
9518        self,
9519    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf12_SPEC, crate::common::RW> {
9520        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf12_SPEC,crate::common::RW>::from_register(self,0)
9521    }
9522}
9523impl ::core::default::Default for Cfdtmdf12 {
9524    #[inline(always)]
9525    fn default() -> Cfdtmdf12 {
9526        <crate::RegValueT<Cfdtmdf12_SPEC> as RegisterValue<_>>::new(0)
9527    }
9528}
9529
9530#[doc(hidden)]
9531#[derive(Copy, Clone, Eq, PartialEq)]
9532pub struct Cfdtmdf13_SPEC;
9533impl crate::sealed::RegSpec for Cfdtmdf13_SPEC {
9534    type DataType = u32;
9535}
9536#[doc = "TX Message Buffer Data Field Register"]
9537pub type Cfdtmdf13 = crate::RegValueT<Cfdtmdf13_SPEC>;
9538
9539impl Cfdtmdf13 {
9540    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9541    #[inline(always)]
9542    pub fn tmdb_ll(
9543        self,
9544    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf13_SPEC, crate::common::RW> {
9545        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf13_SPEC,crate::common::RW>::from_register(self,0)
9546    }
9547    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9548    #[inline(always)]
9549    pub fn tmdb_lh(
9550        self,
9551    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf13_SPEC, crate::common::RW> {
9552        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf13_SPEC,crate::common::RW>::from_register(self,0)
9553    }
9554    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9555    #[inline(always)]
9556    pub fn tmdb_hl(
9557        self,
9558    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf13_SPEC, crate::common::RW> {
9559        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf13_SPEC,crate::common::RW>::from_register(self,0)
9560    }
9561    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9562    #[inline(always)]
9563    pub fn tmdb_hh(
9564        self,
9565    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf13_SPEC, crate::common::RW> {
9566        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf13_SPEC,crate::common::RW>::from_register(self,0)
9567    }
9568}
9569impl ::core::default::Default for Cfdtmdf13 {
9570    #[inline(always)]
9571    fn default() -> Cfdtmdf13 {
9572        <crate::RegValueT<Cfdtmdf13_SPEC> as RegisterValue<_>>::new(0)
9573    }
9574}
9575
9576#[doc(hidden)]
9577#[derive(Copy, Clone, Eq, PartialEq)]
9578pub struct Cfdtmdf14_SPEC;
9579impl crate::sealed::RegSpec for Cfdtmdf14_SPEC {
9580    type DataType = u32;
9581}
9582#[doc = "TX Message Buffer Data Field Register"]
9583pub type Cfdtmdf14 = crate::RegValueT<Cfdtmdf14_SPEC>;
9584
9585impl Cfdtmdf14 {
9586    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9587    #[inline(always)]
9588    pub fn tmdb_ll(
9589        self,
9590    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf14_SPEC, crate::common::RW> {
9591        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf14_SPEC,crate::common::RW>::from_register(self,0)
9592    }
9593    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9594    #[inline(always)]
9595    pub fn tmdb_lh(
9596        self,
9597    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf14_SPEC, crate::common::RW> {
9598        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf14_SPEC,crate::common::RW>::from_register(self,0)
9599    }
9600    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9601    #[inline(always)]
9602    pub fn tmdb_hl(
9603        self,
9604    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf14_SPEC, crate::common::RW> {
9605        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf14_SPEC,crate::common::RW>::from_register(self,0)
9606    }
9607    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9608    #[inline(always)]
9609    pub fn tmdb_hh(
9610        self,
9611    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf14_SPEC, crate::common::RW> {
9612        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf14_SPEC,crate::common::RW>::from_register(self,0)
9613    }
9614}
9615impl ::core::default::Default for Cfdtmdf14 {
9616    #[inline(always)]
9617    fn default() -> Cfdtmdf14 {
9618        <crate::RegValueT<Cfdtmdf14_SPEC> as RegisterValue<_>>::new(0)
9619    }
9620}
9621
9622#[doc(hidden)]
9623#[derive(Copy, Clone, Eq, PartialEq)]
9624pub struct Cfdtmdf15_SPEC;
9625impl crate::sealed::RegSpec for Cfdtmdf15_SPEC {
9626    type DataType = u32;
9627}
9628#[doc = "TX Message Buffer Data Field Register"]
9629pub type Cfdtmdf15 = crate::RegValueT<Cfdtmdf15_SPEC>;
9630
9631impl Cfdtmdf15 {
9632    #[doc = "TX Message Buffer Data Byte ((p × 4)"]
9633    #[inline(always)]
9634    pub fn tmdb_ll(
9635        self,
9636    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdtmdf15_SPEC, crate::common::RW> {
9637        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdtmdf15_SPEC,crate::common::RW>::from_register(self,0)
9638    }
9639    #[doc = "TX Message Buffer Data Byte ((p × 4) + 1)"]
9640    #[inline(always)]
9641    pub fn tmdb_lh(
9642        self,
9643    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdtmdf15_SPEC, crate::common::RW> {
9644        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdtmdf15_SPEC,crate::common::RW>::from_register(self,0)
9645    }
9646    #[doc = "TX Message Buffer Data Byte ((p × 4) + 2)"]
9647    #[inline(always)]
9648    pub fn tmdb_hl(
9649        self,
9650    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdtmdf15_SPEC, crate::common::RW> {
9651        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdtmdf15_SPEC,crate::common::RW>::from_register(self,0)
9652    }
9653    #[doc = "TX Message Buffer Data Byte ((p × 4) + 3)"]
9654    #[inline(always)]
9655    pub fn tmdb_hh(
9656        self,
9657    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdtmdf15_SPEC, crate::common::RW> {
9658        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdtmdf15_SPEC,crate::common::RW>::from_register(self,0)
9659    }
9660}
9661impl ::core::default::Default for Cfdtmdf15 {
9662    #[inline(always)]
9663    fn default() -> Cfdtmdf15 {
9664        <crate::RegValueT<Cfdtmdf15_SPEC> as RegisterValue<_>>::new(0)
9665    }
9666}
9667
9668#[doc(hidden)]
9669#[derive(Copy, Clone, Eq, PartialEq)]
9670pub struct Cfdthlacc0_SPEC;
9671impl crate::sealed::RegSpec for Cfdthlacc0_SPEC {
9672    type DataType = u32;
9673}
9674#[doc = "TX History List Access Register 0"]
9675pub type Cfdthlacc0 = crate::RegValueT<Cfdthlacc0_SPEC>;
9676
9677impl Cfdthlacc0 {
9678    #[doc = "Buffer Type"]
9679    #[inline(always)]
9680    pub fn bt(
9681        self,
9682    ) -> crate::common::RegisterField<0, 0x7, 1, 0, cfdthlacc0::Bt, Cfdthlacc0_SPEC, crate::common::R>
9683    {
9684        crate::common::RegisterField::<
9685            0,
9686            0x7,
9687            1,
9688            0,
9689            cfdthlacc0::Bt,
9690            Cfdthlacc0_SPEC,
9691            crate::common::R,
9692        >::from_register(self, 0)
9693    }
9694    #[doc = "Buffer Number"]
9695    #[inline(always)]
9696    pub fn bn(
9697        self,
9698    ) -> crate::common::RegisterField<3, 0x3, 1, 0, u8, Cfdthlacc0_SPEC, crate::common::R> {
9699        crate::common::RegisterField::<3,0x3,1,0,u8, Cfdthlacc0_SPEC,crate::common::R>::from_register(self,0)
9700    }
9701    #[doc = "Transmit Timestamp"]
9702    #[inline(always)]
9703    pub fn tmts(
9704        self,
9705    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdthlacc0_SPEC, crate::common::R>
9706    {
9707        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdthlacc0_SPEC,crate::common::R>::from_register(self,0)
9708    }
9709}
9710impl ::core::default::Default for Cfdthlacc0 {
9711    #[inline(always)]
9712    fn default() -> Cfdthlacc0 {
9713        <crate::RegValueT<Cfdthlacc0_SPEC> as RegisterValue<_>>::new(0)
9714    }
9715}
9716pub mod cfdthlacc0 {
9717
9718    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9719    pub struct Bt_SPEC;
9720    pub type Bt = crate::EnumBitfieldStruct<u8, Bt_SPEC>;
9721    impl Bt {
9722        #[doc = "Flat TX message buffer"]
9723        pub const _001: Self = Self::new(1);
9724        #[doc = "TX FIFO message buffer number"]
9725        pub const _010: Self = Self::new(2);
9726        #[doc = "TX Queue message buffer number"]
9727        pub const _100: Self = Self::new(4);
9728    }
9729}
9730#[doc(hidden)]
9731#[derive(Copy, Clone, Eq, PartialEq)]
9732pub struct Cfdthlacc1_SPEC;
9733impl crate::sealed::RegSpec for Cfdthlacc1_SPEC {
9734    type DataType = u32;
9735}
9736#[doc = "TX History List Access Register 1"]
9737pub type Cfdthlacc1 = crate::RegValueT<Cfdthlacc1_SPEC>;
9738
9739impl Cfdthlacc1 {
9740    #[doc = "Transmit ID"]
9741    #[inline(always)]
9742    pub fn tid(
9743        self,
9744    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdthlacc1_SPEC, crate::common::R> {
9745        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdthlacc1_SPEC,crate::common::R>::from_register(self,0)
9746    }
9747    #[doc = "Transmit Information Label"]
9748    #[inline(always)]
9749    pub fn tifl(
9750        self,
9751    ) -> crate::common::RegisterField<16, 0x3, 1, 0, u8, Cfdthlacc1_SPEC, crate::common::R> {
9752        crate::common::RegisterField::<16,0x3,1,0,u8, Cfdthlacc1_SPEC,crate::common::R>::from_register(self,0)
9753    }
9754}
9755impl ::core::default::Default for Cfdthlacc1 {
9756    #[inline(always)]
9757    fn default() -> Cfdthlacc1 {
9758        <crate::RegValueT<Cfdthlacc1_SPEC> as RegisterValue<_>>::new(0)
9759    }
9760}
9761
9762#[doc(hidden)]
9763#[derive(Copy, Clone, Eq, PartialEq)]
9764pub struct Cfdrmid_SPEC;
9765impl crate::sealed::RegSpec for Cfdrmid_SPEC {
9766    type DataType = u32;
9767}
9768#[doc = "RX Message Buffer ID Registers"]
9769pub type Cfdrmid = crate::RegValueT<Cfdrmid_SPEC>;
9770
9771impl Cfdrmid {
9772    #[doc = "RX Message Buffer ID Field"]
9773    #[inline(always)]
9774    pub fn rmid(
9775        self,
9776    ) -> crate::common::RegisterField<0, 0x1fffffff, 1, 0, u32, Cfdrmid_SPEC, crate::common::R>
9777    {
9778        crate::common::RegisterField::<0,0x1fffffff,1,0,u32, Cfdrmid_SPEC,crate::common::R>::from_register(self,0)
9779    }
9780    #[doc = "RX Message Buffer RTR Bit"]
9781    #[inline(always)]
9782    pub fn rmrtr(
9783        self,
9784    ) -> crate::common::RegisterField<30, 0x1, 1, 0, cfdrmid::Rmrtr, Cfdrmid_SPEC, crate::common::R>
9785    {
9786        crate::common::RegisterField::<30,0x1,1,0,cfdrmid::Rmrtr, Cfdrmid_SPEC,crate::common::R>::from_register(self,0)
9787    }
9788    #[doc = "RX Message Buffer IDE Bit"]
9789    #[inline(always)]
9790    pub fn rmide(
9791        self,
9792    ) -> crate::common::RegisterField<31, 0x1, 1, 0, cfdrmid::Rmide, Cfdrmid_SPEC, crate::common::R>
9793    {
9794        crate::common::RegisterField::<31,0x1,1,0,cfdrmid::Rmide, Cfdrmid_SPEC,crate::common::R>::from_register(self,0)
9795    }
9796}
9797impl ::core::default::Default for Cfdrmid {
9798    #[inline(always)]
9799    fn default() -> Cfdrmid {
9800        <crate::RegValueT<Cfdrmid_SPEC> as RegisterValue<_>>::new(0)
9801    }
9802}
9803pub mod cfdrmid {
9804
9805    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9806    pub struct Rmrtr_SPEC;
9807    pub type Rmrtr = crate::EnumBitfieldStruct<u8, Rmrtr_SPEC>;
9808    impl Rmrtr {
9809        #[doc = "Data frame"]
9810        pub const _0: Self = Self::new(0);
9811        #[doc = "Remote frame"]
9812        pub const _1: Self = Self::new(1);
9813    }
9814    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9815    pub struct Rmide_SPEC;
9816    pub type Rmide = crate::EnumBitfieldStruct<u8, Rmide_SPEC>;
9817    impl Rmide {
9818        #[doc = "STD-ID is stored"]
9819        pub const _0: Self = Self::new(0);
9820        #[doc = "EXT-ID is stored"]
9821        pub const _1: Self = Self::new(1);
9822    }
9823}
9824#[doc(hidden)]
9825#[derive(Copy, Clone, Eq, PartialEq)]
9826pub struct Cfdrmptr_SPEC;
9827impl crate::sealed::RegSpec for Cfdrmptr_SPEC {
9828    type DataType = u32;
9829}
9830#[doc = "RX Message Buffer Pointer Registers"]
9831pub type Cfdrmptr = crate::RegValueT<Cfdrmptr_SPEC>;
9832
9833impl Cfdrmptr {
9834    #[doc = "RX Message Buffer Timestamp Field"]
9835    #[inline(always)]
9836    pub fn rmts(
9837        self,
9838    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, Cfdrmptr_SPEC, crate::common::R> {
9839        crate::common::RegisterField::<0,0xffff,1,0,u16, Cfdrmptr_SPEC,crate::common::R>::from_register(self,0)
9840    }
9841    #[doc = "RX Message Buffer DLC Field"]
9842    #[inline(always)]
9843    pub fn rmdlc(
9844        self,
9845    ) -> crate::common::RegisterField<28, 0xf, 1, 0, u8, Cfdrmptr_SPEC, crate::common::R> {
9846        crate::common::RegisterField::<28,0xf,1,0,u8, Cfdrmptr_SPEC,crate::common::R>::from_register(self,0)
9847    }
9848}
9849impl ::core::default::Default for Cfdrmptr {
9850    #[inline(always)]
9851    fn default() -> Cfdrmptr {
9852        <crate::RegValueT<Cfdrmptr_SPEC> as RegisterValue<_>>::new(0)
9853    }
9854}
9855
9856#[doc(hidden)]
9857#[derive(Copy, Clone, Eq, PartialEq)]
9858pub struct Cfdrmfdsts_SPEC;
9859impl crate::sealed::RegSpec for Cfdrmfdsts_SPEC {
9860    type DataType = u32;
9861}
9862#[doc = "RX Message Buffer CANFD Status Registers"]
9863pub type Cfdrmfdsts = crate::RegValueT<Cfdrmfdsts_SPEC>;
9864
9865impl Cfdrmfdsts {
9866    #[doc = "Error State Indicator bit"]
9867    #[inline(always)]
9868    pub fn rmesi(
9869        self,
9870    ) -> crate::common::RegisterField<
9871        0,
9872        0x1,
9873        1,
9874        0,
9875        cfdrmfdsts::Rmesi,
9876        Cfdrmfdsts_SPEC,
9877        crate::common::R,
9878    > {
9879        crate::common::RegisterField::<
9880            0,
9881            0x1,
9882            1,
9883            0,
9884            cfdrmfdsts::Rmesi,
9885            Cfdrmfdsts_SPEC,
9886            crate::common::R,
9887        >::from_register(self, 0)
9888    }
9889    #[doc = "Bit Rate Switch bit"]
9890    #[inline(always)]
9891    pub fn rmbrs(
9892        self,
9893    ) -> crate::common::RegisterField<
9894        1,
9895        0x1,
9896        1,
9897        0,
9898        cfdrmfdsts::Rmbrs,
9899        Cfdrmfdsts_SPEC,
9900        crate::common::R,
9901    > {
9902        crate::common::RegisterField::<
9903            1,
9904            0x1,
9905            1,
9906            0,
9907            cfdrmfdsts::Rmbrs,
9908            Cfdrmfdsts_SPEC,
9909            crate::common::R,
9910        >::from_register(self, 0)
9911    }
9912    #[doc = "CAN FD Format bit"]
9913    #[inline(always)]
9914    pub fn rmfdf(
9915        self,
9916    ) -> crate::common::RegisterField<
9917        2,
9918        0x1,
9919        1,
9920        0,
9921        cfdrmfdsts::Rmfdf,
9922        Cfdrmfdsts_SPEC,
9923        crate::common::R,
9924    > {
9925        crate::common::RegisterField::<
9926            2,
9927            0x1,
9928            1,
9929            0,
9930            cfdrmfdsts::Rmfdf,
9931            Cfdrmfdsts_SPEC,
9932            crate::common::R,
9933        >::from_register(self, 0)
9934    }
9935    #[doc = "RX Message Buffer Information Label Field"]
9936    #[inline(always)]
9937    pub fn rmifl(
9938        self,
9939    ) -> crate::common::RegisterField<8, 0x3, 1, 0, u8, Cfdrmfdsts_SPEC, crate::common::R> {
9940        crate::common::RegisterField::<8,0x3,1,0,u8, Cfdrmfdsts_SPEC,crate::common::R>::from_register(self,0)
9941    }
9942    #[doc = "RX Message Buffer Pointer Field"]
9943    #[inline(always)]
9944    pub fn rmptr(
9945        self,
9946    ) -> crate::common::RegisterField<16, 0xffff, 1, 0, u16, Cfdrmfdsts_SPEC, crate::common::R>
9947    {
9948        crate::common::RegisterField::<16,0xffff,1,0,u16, Cfdrmfdsts_SPEC,crate::common::R>::from_register(self,0)
9949    }
9950}
9951impl ::core::default::Default for Cfdrmfdsts {
9952    #[inline(always)]
9953    fn default() -> Cfdrmfdsts {
9954        <crate::RegValueT<Cfdrmfdsts_SPEC> as RegisterValue<_>>::new(0)
9955    }
9956}
9957pub mod cfdrmfdsts {
9958
9959    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9960    pub struct Rmesi_SPEC;
9961    pub type Rmesi = crate::EnumBitfieldStruct<u8, Rmesi_SPEC>;
9962    impl Rmesi {
9963        #[doc = "CANFD frame received from error active node"]
9964        pub const _0: Self = Self::new(0);
9965        #[doc = "CANFD frame received from error passive node"]
9966        pub const _1: Self = Self::new(1);
9967    }
9968    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9969    pub struct Rmbrs_SPEC;
9970    pub type Rmbrs = crate::EnumBitfieldStruct<u8, Rmbrs_SPEC>;
9971    impl Rmbrs {
9972        #[doc = "CANFD frame received with no bit rate switch"]
9973        pub const _0: Self = Self::new(0);
9974        #[doc = "CANFD frame received with bit rate switch"]
9975        pub const _1: Self = Self::new(1);
9976    }
9977    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
9978    pub struct Rmfdf_SPEC;
9979    pub type Rmfdf = crate::EnumBitfieldStruct<u8, Rmfdf_SPEC>;
9980    impl Rmfdf {
9981        #[doc = "Non CANFD frame received"]
9982        pub const _0: Self = Self::new(0);
9983        #[doc = "CANFD frame received"]
9984        pub const _1: Self = Self::new(1);
9985    }
9986}
9987#[doc(hidden)]
9988#[derive(Copy, Clone, Eq, PartialEq)]
9989pub struct Cfdrmdf0_SPEC;
9990impl crate::sealed::RegSpec for Cfdrmdf0_SPEC {
9991    type DataType = u32;
9992}
9993#[doc = "RX Message Buffer Data Field 0 Registers"]
9994pub type Cfdrmdf0 = crate::RegValueT<Cfdrmdf0_SPEC>;
9995
9996impl Cfdrmdf0 {
9997    #[doc = "RX Message Buffer Data Byte (p × 4)"]
9998    #[inline(always)]
9999    pub fn rmdb_ll(
10000        self,
10001    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf0_SPEC, crate::common::R> {
10002        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf0_SPEC,crate::common::R>::from_register(self,0)
10003    }
10004    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10005    #[inline(always)]
10006    pub fn rmdb_lh(
10007        self,
10008    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf0_SPEC, crate::common::R> {
10009        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf0_SPEC,crate::common::R>::from_register(self,0)
10010    }
10011    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10012    #[inline(always)]
10013    pub fn rmdb_hl(
10014        self,
10015    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf0_SPEC, crate::common::R> {
10016        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf0_SPEC,crate::common::R>::from_register(self,0)
10017    }
10018    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10019    #[inline(always)]
10020    pub fn rmdb_hh(
10021        self,
10022    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf0_SPEC, crate::common::R> {
10023        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf0_SPEC,crate::common::R>::from_register(self,0)
10024    }
10025}
10026impl ::core::default::Default for Cfdrmdf0 {
10027    #[inline(always)]
10028    fn default() -> Cfdrmdf0 {
10029        <crate::RegValueT<Cfdrmdf0_SPEC> as RegisterValue<_>>::new(0)
10030    }
10031}
10032
10033#[doc(hidden)]
10034#[derive(Copy, Clone, Eq, PartialEq)]
10035pub struct Cfdrmdf1_SPEC;
10036impl crate::sealed::RegSpec for Cfdrmdf1_SPEC {
10037    type DataType = u32;
10038}
10039#[doc = "RX Message Buffer Data Field 1 Registers"]
10040pub type Cfdrmdf1 = crate::RegValueT<Cfdrmdf1_SPEC>;
10041
10042impl Cfdrmdf1 {
10043    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10044    #[inline(always)]
10045    pub fn rmdb_ll(
10046        self,
10047    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf1_SPEC, crate::common::R> {
10048        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf1_SPEC,crate::common::R>::from_register(self,0)
10049    }
10050    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10051    #[inline(always)]
10052    pub fn rmdb_lh(
10053        self,
10054    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf1_SPEC, crate::common::R> {
10055        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf1_SPEC,crate::common::R>::from_register(self,0)
10056    }
10057    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10058    #[inline(always)]
10059    pub fn rmdb_hl(
10060        self,
10061    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf1_SPEC, crate::common::R> {
10062        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf1_SPEC,crate::common::R>::from_register(self,0)
10063    }
10064    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10065    #[inline(always)]
10066    pub fn rmdb_hh(
10067        self,
10068    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf1_SPEC, crate::common::R> {
10069        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf1_SPEC,crate::common::R>::from_register(self,0)
10070    }
10071}
10072impl ::core::default::Default for Cfdrmdf1 {
10073    #[inline(always)]
10074    fn default() -> Cfdrmdf1 {
10075        <crate::RegValueT<Cfdrmdf1_SPEC> as RegisterValue<_>>::new(0)
10076    }
10077}
10078
10079#[doc(hidden)]
10080#[derive(Copy, Clone, Eq, PartialEq)]
10081pub struct Cfdrmdf2_SPEC;
10082impl crate::sealed::RegSpec for Cfdrmdf2_SPEC {
10083    type DataType = u32;
10084}
10085#[doc = "RX Message Buffer Data Field 2 Registers"]
10086pub type Cfdrmdf2 = crate::RegValueT<Cfdrmdf2_SPEC>;
10087
10088impl Cfdrmdf2 {
10089    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10090    #[inline(always)]
10091    pub fn rmdb_ll(
10092        self,
10093    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf2_SPEC, crate::common::R> {
10094        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf2_SPEC,crate::common::R>::from_register(self,0)
10095    }
10096    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10097    #[inline(always)]
10098    pub fn rmdb_lh(
10099        self,
10100    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf2_SPEC, crate::common::R> {
10101        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf2_SPEC,crate::common::R>::from_register(self,0)
10102    }
10103    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10104    #[inline(always)]
10105    pub fn rmdb_hl(
10106        self,
10107    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf2_SPEC, crate::common::R> {
10108        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf2_SPEC,crate::common::R>::from_register(self,0)
10109    }
10110    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10111    #[inline(always)]
10112    pub fn rmdb_hh(
10113        self,
10114    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf2_SPEC, crate::common::R> {
10115        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf2_SPEC,crate::common::R>::from_register(self,0)
10116    }
10117}
10118impl ::core::default::Default for Cfdrmdf2 {
10119    #[inline(always)]
10120    fn default() -> Cfdrmdf2 {
10121        <crate::RegValueT<Cfdrmdf2_SPEC> as RegisterValue<_>>::new(0)
10122    }
10123}
10124
10125#[doc(hidden)]
10126#[derive(Copy, Clone, Eq, PartialEq)]
10127pub struct Cfdrmdf3_SPEC;
10128impl crate::sealed::RegSpec for Cfdrmdf3_SPEC {
10129    type DataType = u32;
10130}
10131#[doc = "RX Message Buffer Data Field 3 Registers"]
10132pub type Cfdrmdf3 = crate::RegValueT<Cfdrmdf3_SPEC>;
10133
10134impl Cfdrmdf3 {
10135    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10136    #[inline(always)]
10137    pub fn rmdb_ll(
10138        self,
10139    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf3_SPEC, crate::common::R> {
10140        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf3_SPEC,crate::common::R>::from_register(self,0)
10141    }
10142    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10143    #[inline(always)]
10144    pub fn rmdb_lh(
10145        self,
10146    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf3_SPEC, crate::common::R> {
10147        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf3_SPEC,crate::common::R>::from_register(self,0)
10148    }
10149    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10150    #[inline(always)]
10151    pub fn rmdb_hl(
10152        self,
10153    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf3_SPEC, crate::common::R> {
10154        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf3_SPEC,crate::common::R>::from_register(self,0)
10155    }
10156    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10157    #[inline(always)]
10158    pub fn rmdb_hh(
10159        self,
10160    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf3_SPEC, crate::common::R> {
10161        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf3_SPEC,crate::common::R>::from_register(self,0)
10162    }
10163}
10164impl ::core::default::Default for Cfdrmdf3 {
10165    #[inline(always)]
10166    fn default() -> Cfdrmdf3 {
10167        <crate::RegValueT<Cfdrmdf3_SPEC> as RegisterValue<_>>::new(0)
10168    }
10169}
10170
10171#[doc(hidden)]
10172#[derive(Copy, Clone, Eq, PartialEq)]
10173pub struct Cfdrmdf4_SPEC;
10174impl crate::sealed::RegSpec for Cfdrmdf4_SPEC {
10175    type DataType = u32;
10176}
10177#[doc = "RX Message Buffer Data Field 4 Registers"]
10178pub type Cfdrmdf4 = crate::RegValueT<Cfdrmdf4_SPEC>;
10179
10180impl Cfdrmdf4 {
10181    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10182    #[inline(always)]
10183    pub fn rmdb_ll(
10184        self,
10185    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf4_SPEC, crate::common::R> {
10186        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf4_SPEC,crate::common::R>::from_register(self,0)
10187    }
10188    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10189    #[inline(always)]
10190    pub fn rmdb_lh(
10191        self,
10192    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf4_SPEC, crate::common::R> {
10193        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf4_SPEC,crate::common::R>::from_register(self,0)
10194    }
10195    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10196    #[inline(always)]
10197    pub fn rmdb_hl(
10198        self,
10199    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf4_SPEC, crate::common::R> {
10200        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf4_SPEC,crate::common::R>::from_register(self,0)
10201    }
10202    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10203    #[inline(always)]
10204    pub fn rmdb_hh(
10205        self,
10206    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf4_SPEC, crate::common::R> {
10207        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf4_SPEC,crate::common::R>::from_register(self,0)
10208    }
10209}
10210impl ::core::default::Default for Cfdrmdf4 {
10211    #[inline(always)]
10212    fn default() -> Cfdrmdf4 {
10213        <crate::RegValueT<Cfdrmdf4_SPEC> as RegisterValue<_>>::new(0)
10214    }
10215}
10216
10217#[doc(hidden)]
10218#[derive(Copy, Clone, Eq, PartialEq)]
10219pub struct Cfdrmdf5_SPEC;
10220impl crate::sealed::RegSpec for Cfdrmdf5_SPEC {
10221    type DataType = u32;
10222}
10223#[doc = "RX Message Buffer Data Field 5 Registers"]
10224pub type Cfdrmdf5 = crate::RegValueT<Cfdrmdf5_SPEC>;
10225
10226impl Cfdrmdf5 {
10227    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10228    #[inline(always)]
10229    pub fn rmdb_ll(
10230        self,
10231    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf5_SPEC, crate::common::R> {
10232        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf5_SPEC,crate::common::R>::from_register(self,0)
10233    }
10234    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10235    #[inline(always)]
10236    pub fn rmdb_lh(
10237        self,
10238    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf5_SPEC, crate::common::R> {
10239        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf5_SPEC,crate::common::R>::from_register(self,0)
10240    }
10241    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10242    #[inline(always)]
10243    pub fn rmdb_hl(
10244        self,
10245    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf5_SPEC, crate::common::R> {
10246        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf5_SPEC,crate::common::R>::from_register(self,0)
10247    }
10248    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10249    #[inline(always)]
10250    pub fn rmdb_hh(
10251        self,
10252    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf5_SPEC, crate::common::R> {
10253        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf5_SPEC,crate::common::R>::from_register(self,0)
10254    }
10255}
10256impl ::core::default::Default for Cfdrmdf5 {
10257    #[inline(always)]
10258    fn default() -> Cfdrmdf5 {
10259        <crate::RegValueT<Cfdrmdf5_SPEC> as RegisterValue<_>>::new(0)
10260    }
10261}
10262
10263#[doc(hidden)]
10264#[derive(Copy, Clone, Eq, PartialEq)]
10265pub struct Cfdrmdf6_SPEC;
10266impl crate::sealed::RegSpec for Cfdrmdf6_SPEC {
10267    type DataType = u32;
10268}
10269#[doc = "RX Message Buffer Data Field 6 Registers"]
10270pub type Cfdrmdf6 = crate::RegValueT<Cfdrmdf6_SPEC>;
10271
10272impl Cfdrmdf6 {
10273    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10274    #[inline(always)]
10275    pub fn rmdb_ll(
10276        self,
10277    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf6_SPEC, crate::common::R> {
10278        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf6_SPEC,crate::common::R>::from_register(self,0)
10279    }
10280    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10281    #[inline(always)]
10282    pub fn rmdb_lh(
10283        self,
10284    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf6_SPEC, crate::common::R> {
10285        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf6_SPEC,crate::common::R>::from_register(self,0)
10286    }
10287    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10288    #[inline(always)]
10289    pub fn rmdb_hl(
10290        self,
10291    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf6_SPEC, crate::common::R> {
10292        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf6_SPEC,crate::common::R>::from_register(self,0)
10293    }
10294    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10295    #[inline(always)]
10296    pub fn rmdb_hh(
10297        self,
10298    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf6_SPEC, crate::common::R> {
10299        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf6_SPEC,crate::common::R>::from_register(self,0)
10300    }
10301}
10302impl ::core::default::Default for Cfdrmdf6 {
10303    #[inline(always)]
10304    fn default() -> Cfdrmdf6 {
10305        <crate::RegValueT<Cfdrmdf6_SPEC> as RegisterValue<_>>::new(0)
10306    }
10307}
10308
10309#[doc(hidden)]
10310#[derive(Copy, Clone, Eq, PartialEq)]
10311pub struct Cfdrmdf7_SPEC;
10312impl crate::sealed::RegSpec for Cfdrmdf7_SPEC {
10313    type DataType = u32;
10314}
10315#[doc = "RX Message Buffer Data Field 7 Registers"]
10316pub type Cfdrmdf7 = crate::RegValueT<Cfdrmdf7_SPEC>;
10317
10318impl Cfdrmdf7 {
10319    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10320    #[inline(always)]
10321    pub fn rmdb_ll(
10322        self,
10323    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf7_SPEC, crate::common::R> {
10324        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf7_SPEC,crate::common::R>::from_register(self,0)
10325    }
10326    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10327    #[inline(always)]
10328    pub fn rmdb_lh(
10329        self,
10330    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf7_SPEC, crate::common::R> {
10331        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf7_SPEC,crate::common::R>::from_register(self,0)
10332    }
10333    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10334    #[inline(always)]
10335    pub fn rmdb_hl(
10336        self,
10337    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf7_SPEC, crate::common::R> {
10338        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf7_SPEC,crate::common::R>::from_register(self,0)
10339    }
10340    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10341    #[inline(always)]
10342    pub fn rmdb_hh(
10343        self,
10344    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf7_SPEC, crate::common::R> {
10345        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf7_SPEC,crate::common::R>::from_register(self,0)
10346    }
10347}
10348impl ::core::default::Default for Cfdrmdf7 {
10349    #[inline(always)]
10350    fn default() -> Cfdrmdf7 {
10351        <crate::RegValueT<Cfdrmdf7_SPEC> as RegisterValue<_>>::new(0)
10352    }
10353}
10354
10355#[doc(hidden)]
10356#[derive(Copy, Clone, Eq, PartialEq)]
10357pub struct Cfdrmdf8_SPEC;
10358impl crate::sealed::RegSpec for Cfdrmdf8_SPEC {
10359    type DataType = u32;
10360}
10361#[doc = "RX Message Buffer Data Field 8 Registers"]
10362pub type Cfdrmdf8 = crate::RegValueT<Cfdrmdf8_SPEC>;
10363
10364impl Cfdrmdf8 {
10365    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10366    #[inline(always)]
10367    pub fn rmdb_ll(
10368        self,
10369    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf8_SPEC, crate::common::R> {
10370        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf8_SPEC,crate::common::R>::from_register(self,0)
10371    }
10372    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10373    #[inline(always)]
10374    pub fn rmdb_lh(
10375        self,
10376    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf8_SPEC, crate::common::R> {
10377        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf8_SPEC,crate::common::R>::from_register(self,0)
10378    }
10379    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10380    #[inline(always)]
10381    pub fn rmdb_hl(
10382        self,
10383    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf8_SPEC, crate::common::R> {
10384        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf8_SPEC,crate::common::R>::from_register(self,0)
10385    }
10386    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10387    #[inline(always)]
10388    pub fn rmdb_hh(
10389        self,
10390    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf8_SPEC, crate::common::R> {
10391        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf8_SPEC,crate::common::R>::from_register(self,0)
10392    }
10393}
10394impl ::core::default::Default for Cfdrmdf8 {
10395    #[inline(always)]
10396    fn default() -> Cfdrmdf8 {
10397        <crate::RegValueT<Cfdrmdf8_SPEC> as RegisterValue<_>>::new(0)
10398    }
10399}
10400
10401#[doc(hidden)]
10402#[derive(Copy, Clone, Eq, PartialEq)]
10403pub struct Cfdrmdf9_SPEC;
10404impl crate::sealed::RegSpec for Cfdrmdf9_SPEC {
10405    type DataType = u32;
10406}
10407#[doc = "RX Message Buffer Data Field 9 Registers"]
10408pub type Cfdrmdf9 = crate::RegValueT<Cfdrmdf9_SPEC>;
10409
10410impl Cfdrmdf9 {
10411    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10412    #[inline(always)]
10413    pub fn rmdb_ll(
10414        self,
10415    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf9_SPEC, crate::common::R> {
10416        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf9_SPEC,crate::common::R>::from_register(self,0)
10417    }
10418    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10419    #[inline(always)]
10420    pub fn rmdb_lh(
10421        self,
10422    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf9_SPEC, crate::common::R> {
10423        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf9_SPEC,crate::common::R>::from_register(self,0)
10424    }
10425    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10426    #[inline(always)]
10427    pub fn rmdb_hl(
10428        self,
10429    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf9_SPEC, crate::common::R> {
10430        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf9_SPEC,crate::common::R>::from_register(self,0)
10431    }
10432    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10433    #[inline(always)]
10434    pub fn rmdb_hh(
10435        self,
10436    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf9_SPEC, crate::common::R> {
10437        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf9_SPEC,crate::common::R>::from_register(self,0)
10438    }
10439}
10440impl ::core::default::Default for Cfdrmdf9 {
10441    #[inline(always)]
10442    fn default() -> Cfdrmdf9 {
10443        <crate::RegValueT<Cfdrmdf9_SPEC> as RegisterValue<_>>::new(0)
10444    }
10445}
10446
10447#[doc(hidden)]
10448#[derive(Copy, Clone, Eq, PartialEq)]
10449pub struct Cfdrmdf10_SPEC;
10450impl crate::sealed::RegSpec for Cfdrmdf10_SPEC {
10451    type DataType = u32;
10452}
10453#[doc = "RX Message Buffer Data Field 10 Registers"]
10454pub type Cfdrmdf10 = crate::RegValueT<Cfdrmdf10_SPEC>;
10455
10456impl Cfdrmdf10 {
10457    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10458    #[inline(always)]
10459    pub fn rmdb_ll(
10460        self,
10461    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf10_SPEC, crate::common::R> {
10462        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf10_SPEC,crate::common::R>::from_register(self,0)
10463    }
10464    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10465    #[inline(always)]
10466    pub fn rmdb_lh(
10467        self,
10468    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf10_SPEC, crate::common::R> {
10469        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf10_SPEC,crate::common::R>::from_register(self,0)
10470    }
10471    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10472    #[inline(always)]
10473    pub fn rmdb_hl(
10474        self,
10475    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf10_SPEC, crate::common::R> {
10476        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf10_SPEC,crate::common::R>::from_register(self,0)
10477    }
10478    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10479    #[inline(always)]
10480    pub fn rmdb_hh(
10481        self,
10482    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf10_SPEC, crate::common::R> {
10483        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf10_SPEC,crate::common::R>::from_register(self,0)
10484    }
10485}
10486impl ::core::default::Default for Cfdrmdf10 {
10487    #[inline(always)]
10488    fn default() -> Cfdrmdf10 {
10489        <crate::RegValueT<Cfdrmdf10_SPEC> as RegisterValue<_>>::new(0)
10490    }
10491}
10492
10493#[doc(hidden)]
10494#[derive(Copy, Clone, Eq, PartialEq)]
10495pub struct Cfdrmdf11_SPEC;
10496impl crate::sealed::RegSpec for Cfdrmdf11_SPEC {
10497    type DataType = u32;
10498}
10499#[doc = "RX Message Buffer Data Field 11 Registers"]
10500pub type Cfdrmdf11 = crate::RegValueT<Cfdrmdf11_SPEC>;
10501
10502impl Cfdrmdf11 {
10503    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10504    #[inline(always)]
10505    pub fn rmdb_ll(
10506        self,
10507    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf11_SPEC, crate::common::R> {
10508        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf11_SPEC,crate::common::R>::from_register(self,0)
10509    }
10510    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10511    #[inline(always)]
10512    pub fn rmdb_lh(
10513        self,
10514    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf11_SPEC, crate::common::R> {
10515        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf11_SPEC,crate::common::R>::from_register(self,0)
10516    }
10517    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10518    #[inline(always)]
10519    pub fn rmdb_hl(
10520        self,
10521    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf11_SPEC, crate::common::R> {
10522        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf11_SPEC,crate::common::R>::from_register(self,0)
10523    }
10524    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10525    #[inline(always)]
10526    pub fn rmdb_hh(
10527        self,
10528    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf11_SPEC, crate::common::R> {
10529        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf11_SPEC,crate::common::R>::from_register(self,0)
10530    }
10531}
10532impl ::core::default::Default for Cfdrmdf11 {
10533    #[inline(always)]
10534    fn default() -> Cfdrmdf11 {
10535        <crate::RegValueT<Cfdrmdf11_SPEC> as RegisterValue<_>>::new(0)
10536    }
10537}
10538
10539#[doc(hidden)]
10540#[derive(Copy, Clone, Eq, PartialEq)]
10541pub struct Cfdrmdf12_SPEC;
10542impl crate::sealed::RegSpec for Cfdrmdf12_SPEC {
10543    type DataType = u32;
10544}
10545#[doc = "RX Message Buffer Data Field 12 Registers"]
10546pub type Cfdrmdf12 = crate::RegValueT<Cfdrmdf12_SPEC>;
10547
10548impl Cfdrmdf12 {
10549    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10550    #[inline(always)]
10551    pub fn rmdb_ll(
10552        self,
10553    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf12_SPEC, crate::common::R> {
10554        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf12_SPEC,crate::common::R>::from_register(self,0)
10555    }
10556    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10557    #[inline(always)]
10558    pub fn rmdb_lh(
10559        self,
10560    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf12_SPEC, crate::common::R> {
10561        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf12_SPEC,crate::common::R>::from_register(self,0)
10562    }
10563    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10564    #[inline(always)]
10565    pub fn rmdb_hl(
10566        self,
10567    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf12_SPEC, crate::common::R> {
10568        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf12_SPEC,crate::common::R>::from_register(self,0)
10569    }
10570    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10571    #[inline(always)]
10572    pub fn rmdb_hh(
10573        self,
10574    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf12_SPEC, crate::common::R> {
10575        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf12_SPEC,crate::common::R>::from_register(self,0)
10576    }
10577}
10578impl ::core::default::Default for Cfdrmdf12 {
10579    #[inline(always)]
10580    fn default() -> Cfdrmdf12 {
10581        <crate::RegValueT<Cfdrmdf12_SPEC> as RegisterValue<_>>::new(0)
10582    }
10583}
10584
10585#[doc(hidden)]
10586#[derive(Copy, Clone, Eq, PartialEq)]
10587pub struct Cfdrmdf13_SPEC;
10588impl crate::sealed::RegSpec for Cfdrmdf13_SPEC {
10589    type DataType = u32;
10590}
10591#[doc = "RX Message Buffer Data Field 13 Registers"]
10592pub type Cfdrmdf13 = crate::RegValueT<Cfdrmdf13_SPEC>;
10593
10594impl Cfdrmdf13 {
10595    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10596    #[inline(always)]
10597    pub fn rmdb_ll(
10598        self,
10599    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf13_SPEC, crate::common::R> {
10600        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf13_SPEC,crate::common::R>::from_register(self,0)
10601    }
10602    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10603    #[inline(always)]
10604    pub fn rmdb_lh(
10605        self,
10606    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf13_SPEC, crate::common::R> {
10607        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf13_SPEC,crate::common::R>::from_register(self,0)
10608    }
10609    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10610    #[inline(always)]
10611    pub fn rmdb_hl(
10612        self,
10613    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf13_SPEC, crate::common::R> {
10614        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf13_SPEC,crate::common::R>::from_register(self,0)
10615    }
10616    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10617    #[inline(always)]
10618    pub fn rmdb_hh(
10619        self,
10620    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf13_SPEC, crate::common::R> {
10621        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf13_SPEC,crate::common::R>::from_register(self,0)
10622    }
10623}
10624impl ::core::default::Default for Cfdrmdf13 {
10625    #[inline(always)]
10626    fn default() -> Cfdrmdf13 {
10627        <crate::RegValueT<Cfdrmdf13_SPEC> as RegisterValue<_>>::new(0)
10628    }
10629}
10630
10631#[doc(hidden)]
10632#[derive(Copy, Clone, Eq, PartialEq)]
10633pub struct Cfdrmdf14_SPEC;
10634impl crate::sealed::RegSpec for Cfdrmdf14_SPEC {
10635    type DataType = u32;
10636}
10637#[doc = "RX Message Buffer Data Field 14 Registers"]
10638pub type Cfdrmdf14 = crate::RegValueT<Cfdrmdf14_SPEC>;
10639
10640impl Cfdrmdf14 {
10641    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10642    #[inline(always)]
10643    pub fn rmdb_ll(
10644        self,
10645    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf14_SPEC, crate::common::R> {
10646        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf14_SPEC,crate::common::R>::from_register(self,0)
10647    }
10648    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10649    #[inline(always)]
10650    pub fn rmdb_lh(
10651        self,
10652    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf14_SPEC, crate::common::R> {
10653        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf14_SPEC,crate::common::R>::from_register(self,0)
10654    }
10655    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10656    #[inline(always)]
10657    pub fn rmdb_hl(
10658        self,
10659    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf14_SPEC, crate::common::R> {
10660        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf14_SPEC,crate::common::R>::from_register(self,0)
10661    }
10662    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10663    #[inline(always)]
10664    pub fn rmdb_hh(
10665        self,
10666    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf14_SPEC, crate::common::R> {
10667        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf14_SPEC,crate::common::R>::from_register(self,0)
10668    }
10669}
10670impl ::core::default::Default for Cfdrmdf14 {
10671    #[inline(always)]
10672    fn default() -> Cfdrmdf14 {
10673        <crate::RegValueT<Cfdrmdf14_SPEC> as RegisterValue<_>>::new(0)
10674    }
10675}
10676
10677#[doc(hidden)]
10678#[derive(Copy, Clone, Eq, PartialEq)]
10679pub struct Cfdrmdf15_SPEC;
10680impl crate::sealed::RegSpec for Cfdrmdf15_SPEC {
10681    type DataType = u32;
10682}
10683#[doc = "RX Message Buffer Data Field 15 Registers"]
10684pub type Cfdrmdf15 = crate::RegValueT<Cfdrmdf15_SPEC>;
10685
10686impl Cfdrmdf15 {
10687    #[doc = "RX Message Buffer Data Byte (p × 4)"]
10688    #[inline(always)]
10689    pub fn rmdb_ll(
10690        self,
10691    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, Cfdrmdf15_SPEC, crate::common::R> {
10692        crate::common::RegisterField::<0,0xff,1,0,u8, Cfdrmdf15_SPEC,crate::common::R>::from_register(self,0)
10693    }
10694    #[doc = "RX Message Buffer Data Byte ((p × 4) + 1)"]
10695    #[inline(always)]
10696    pub fn rmdb_lh(
10697        self,
10698    ) -> crate::common::RegisterField<8, 0xff, 1, 0, u8, Cfdrmdf15_SPEC, crate::common::R> {
10699        crate::common::RegisterField::<8,0xff,1,0,u8, Cfdrmdf15_SPEC,crate::common::R>::from_register(self,0)
10700    }
10701    #[doc = "RX Message Buffer Data Byte ((p × 4) + 2)"]
10702    #[inline(always)]
10703    pub fn rmdb_hl(
10704        self,
10705    ) -> crate::common::RegisterField<16, 0xff, 1, 0, u8, Cfdrmdf15_SPEC, crate::common::R> {
10706        crate::common::RegisterField::<16,0xff,1,0,u8, Cfdrmdf15_SPEC,crate::common::R>::from_register(self,0)
10707    }
10708    #[doc = "RX Message Buffer Data Byte ((p × 4) + 3)"]
10709    #[inline(always)]
10710    pub fn rmdb_hh(
10711        self,
10712    ) -> crate::common::RegisterField<24, 0xff, 1, 0, u8, Cfdrmdf15_SPEC, crate::common::R> {
10713        crate::common::RegisterField::<24,0xff,1,0,u8, Cfdrmdf15_SPEC,crate::common::R>::from_register(self,0)
10714    }
10715}
10716impl ::core::default::Default for Cfdrmdf15 {
10717    #[inline(always)]
10718    fn default() -> Cfdrmdf15 {
10719        <crate::RegValueT<Cfdrmdf15_SPEC> as RegisterValue<_>>::new(0)
10720    }
10721}