1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Core Release Register"]
5 pub mcan_crel: crate::Reg<mcan_crel::MCAN_CREL_SPEC>,
6 #[doc = "0x04 - Endian Register"]
7 pub mcan_endn: crate::Reg<mcan_endn::MCAN_ENDN_SPEC>,
8 #[doc = "0x08 - Customer Register"]
9 pub mcan_cust: crate::Reg<mcan_cust::MCAN_CUST_SPEC>,
10 #[doc = "0x0c - Fast Bit Timing and Prescaler Register"]
11 pub mcan_fbtp: crate::Reg<mcan_fbtp::MCAN_FBTP_SPEC>,
12 #[doc = "0x10 - Test Register"]
13 pub mcan_test: crate::Reg<mcan_test::MCAN_TEST_SPEC>,
14 #[doc = "0x14 - RAM Watchdog Register"]
15 pub mcan_rwd: crate::Reg<mcan_rwd::MCAN_RWD_SPEC>,
16 #[doc = "0x18 - CC Control Register"]
17 pub mcan_cccr: crate::Reg<mcan_cccr::MCAN_CCCR_SPEC>,
18 #[doc = "0x1c - Bit Timing and Prescaler Register"]
19 pub mcan_btp: crate::Reg<mcan_btp::MCAN_BTP_SPEC>,
20 #[doc = "0x20 - Timestamp Counter Configuration Register"]
21 pub mcan_tscc: crate::Reg<mcan_tscc::MCAN_TSCC_SPEC>,
22 #[doc = "0x24 - Timestamp Counter Value Register"]
23 pub mcan_tscv: crate::Reg<mcan_tscv::MCAN_TSCV_SPEC>,
24 #[doc = "0x28 - Timeout Counter Configuration Register"]
25 pub mcan_tocc: crate::Reg<mcan_tocc::MCAN_TOCC_SPEC>,
26 #[doc = "0x2c - Timeout Counter Value Register"]
27 pub mcan_tocv: crate::Reg<mcan_tocv::MCAN_TOCV_SPEC>,
28 _reserved12: [u8; 0x10],
29 #[doc = "0x40 - Error Counter Register"]
30 pub mcan_ecr: crate::Reg<mcan_ecr::MCAN_ECR_SPEC>,
31 #[doc = "0x44 - Protocol Status Register"]
32 pub mcan_psr: crate::Reg<mcan_psr::MCAN_PSR_SPEC>,
33 _reserved14: [u8; 0x08],
34 #[doc = "0x50 - Interrupt Register"]
35 pub mcan_ir: crate::Reg<mcan_ir::MCAN_IR_SPEC>,
36 #[doc = "0x54 - Interrupt Enable Register"]
37 pub mcan_ie: crate::Reg<mcan_ie::MCAN_IE_SPEC>,
38 #[doc = "0x58 - Interrupt Line Select Register"]
39 pub mcan_ils: crate::Reg<mcan_ils::MCAN_ILS_SPEC>,
40 #[doc = "0x5c - Interrupt Line Enable Register"]
41 pub mcan_ile: crate::Reg<mcan_ile::MCAN_ILE_SPEC>,
42 _reserved18: [u8; 0x20],
43 #[doc = "0x80 - Global Filter Configuration Register"]
44 pub mcan_gfc: crate::Reg<mcan_gfc::MCAN_GFC_SPEC>,
45 #[doc = "0x84 - Standard ID Filter Configuration Register"]
46 pub mcan_sidfc: crate::Reg<mcan_sidfc::MCAN_SIDFC_SPEC>,
47 #[doc = "0x88 - Extended ID Filter Configuration Register"]
48 pub mcan_xidfc: crate::Reg<mcan_xidfc::MCAN_XIDFC_SPEC>,
49 _reserved21: [u8; 0x04],
50 #[doc = "0x90 - Extended ID AND Mask Register"]
51 pub mcan_xidam: crate::Reg<mcan_xidam::MCAN_XIDAM_SPEC>,
52 #[doc = "0x94 - High Priority Message Status Register"]
53 pub mcan_hpms: crate::Reg<mcan_hpms::MCAN_HPMS_SPEC>,
54 #[doc = "0x98 - New Data 1 Register"]
55 pub mcan_ndat1: crate::Reg<mcan_ndat1::MCAN_NDAT1_SPEC>,
56 #[doc = "0x9c - New Data 2 Register"]
57 pub mcan_ndat2: crate::Reg<mcan_ndat2::MCAN_NDAT2_SPEC>,
58 #[doc = "0xa0 - Receive FIFO 0 Configuration Register"]
59 pub mcan_rxf0c: crate::Reg<mcan_rxf0c::MCAN_RXF0C_SPEC>,
60 #[doc = "0xa4 - Receive FIFO 0 Status Register"]
61 pub mcan_rxf0s: crate::Reg<mcan_rxf0s::MCAN_RXF0S_SPEC>,
62 #[doc = "0xa8 - Receive FIFO 0 Acknowledge Register"]
63 pub mcan_rxf0a: crate::Reg<mcan_rxf0a::MCAN_RXF0A_SPEC>,
64 #[doc = "0xac - Receive Rx Buffer Configuration Register"]
65 pub mcan_rxbc: crate::Reg<mcan_rxbc::MCAN_RXBC_SPEC>,
66 #[doc = "0xb0 - Receive FIFO 1 Configuration Register"]
67 pub mcan_rxf1c: crate::Reg<mcan_rxf1c::MCAN_RXF1C_SPEC>,
68 #[doc = "0xb4 - Receive FIFO 1 Status Register"]
69 pub mcan_rxf1s: crate::Reg<mcan_rxf1s::MCAN_RXF1S_SPEC>,
70 #[doc = "0xb8 - Receive FIFO 1 Acknowledge Register"]
71 pub mcan_rxf1a: crate::Reg<mcan_rxf1a::MCAN_RXF1A_SPEC>,
72 #[doc = "0xbc - Receive Buffer / FIFO Element Size Configuration Register"]
73 pub mcan_rxesc: crate::Reg<mcan_rxesc::MCAN_RXESC_SPEC>,
74 #[doc = "0xc0 - Transmit Buffer Configuration Register"]
75 pub mcan_txbc: crate::Reg<mcan_txbc::MCAN_TXBC_SPEC>,
76 #[doc = "0xc4 - Transmit FIFO/Queue Status Register"]
77 pub mcan_txfqs: crate::Reg<mcan_txfqs::MCAN_TXFQS_SPEC>,
78 #[doc = "0xc8 - Transmit Buffer Element Size Configuration Register"]
79 pub mcan_txesc: crate::Reg<mcan_txesc::MCAN_TXESC_SPEC>,
80 #[doc = "0xcc - Transmit Buffer Request Pending Register"]
81 pub mcan_txbrp: crate::Reg<mcan_txbrp::MCAN_TXBRP_SPEC>,
82 #[doc = "0xd0 - Transmit Buffer Add Request Register"]
83 pub mcan_txbar: crate::Reg<mcan_txbar::MCAN_TXBAR_SPEC>,
84 #[doc = "0xd4 - Transmit Buffer Cancellation Request Register"]
85 pub mcan_txbcr: crate::Reg<mcan_txbcr::MCAN_TXBCR_SPEC>,
86 #[doc = "0xd8 - Transmit Buffer Transmission Occurred Register"]
87 pub mcan_txbto: crate::Reg<mcan_txbto::MCAN_TXBTO_SPEC>,
88 #[doc = "0xdc - Transmit Buffer Cancellation Finished Register"]
89 pub mcan_txbcf: crate::Reg<mcan_txbcf::MCAN_TXBCF_SPEC>,
90 #[doc = "0xe0 - Transmit Buffer Transmission Interrupt Enable Register"]
91 pub mcan_txbtie: crate::Reg<mcan_txbtie::MCAN_TXBTIE_SPEC>,
92 #[doc = "0xe4 - Transmit Buffer Cancellation Finished Interrupt Enable Register"]
93 pub mcan_txbcie: crate::Reg<mcan_txbcie::MCAN_TXBCIE_SPEC>,
94 _reserved43: [u8; 0x08],
95 #[doc = "0xf0 - Transmit Event FIFO Configuration Register"]
96 pub mcan_txefc: crate::Reg<mcan_txefc::MCAN_TXEFC_SPEC>,
97 #[doc = "0xf4 - Transmit Event FIFO Status Register"]
98 pub mcan_txefs: crate::Reg<mcan_txefs::MCAN_TXEFS_SPEC>,
99 #[doc = "0xf8 - Transmit Event FIFO Acknowledge Register"]
100 pub mcan_txefa: crate::Reg<mcan_txefa::MCAN_TXEFA_SPEC>,
101}
102#[doc = "MCAN_CREL register accessor: an alias for `Reg<MCAN_CREL_SPEC>`"]
103pub type MCAN_CREL = crate::Reg<mcan_crel::MCAN_CREL_SPEC>;
104#[doc = "Core Release Register"]
105pub mod mcan_crel;
106#[doc = "MCAN_ENDN register accessor: an alias for `Reg<MCAN_ENDN_SPEC>`"]
107pub type MCAN_ENDN = crate::Reg<mcan_endn::MCAN_ENDN_SPEC>;
108#[doc = "Endian Register"]
109pub mod mcan_endn;
110#[doc = "MCAN_CUST register accessor: an alias for `Reg<MCAN_CUST_SPEC>`"]
111pub type MCAN_CUST = crate::Reg<mcan_cust::MCAN_CUST_SPEC>;
112#[doc = "Customer Register"]
113pub mod mcan_cust;
114#[doc = "MCAN_FBTP register accessor: an alias for `Reg<MCAN_FBTP_SPEC>`"]
115pub type MCAN_FBTP = crate::Reg<mcan_fbtp::MCAN_FBTP_SPEC>;
116#[doc = "Fast Bit Timing and Prescaler Register"]
117pub mod mcan_fbtp;
118#[doc = "MCAN_TEST register accessor: an alias for `Reg<MCAN_TEST_SPEC>`"]
119pub type MCAN_TEST = crate::Reg<mcan_test::MCAN_TEST_SPEC>;
120#[doc = "Test Register"]
121pub mod mcan_test;
122#[doc = "MCAN_RWD register accessor: an alias for `Reg<MCAN_RWD_SPEC>`"]
123pub type MCAN_RWD = crate::Reg<mcan_rwd::MCAN_RWD_SPEC>;
124#[doc = "RAM Watchdog Register"]
125pub mod mcan_rwd;
126#[doc = "MCAN_CCCR register accessor: an alias for `Reg<MCAN_CCCR_SPEC>`"]
127pub type MCAN_CCCR = crate::Reg<mcan_cccr::MCAN_CCCR_SPEC>;
128#[doc = "CC Control Register"]
129pub mod mcan_cccr;
130#[doc = "MCAN_BTP register accessor: an alias for `Reg<MCAN_BTP_SPEC>`"]
131pub type MCAN_BTP = crate::Reg<mcan_btp::MCAN_BTP_SPEC>;
132#[doc = "Bit Timing and Prescaler Register"]
133pub mod mcan_btp;
134#[doc = "MCAN_TSCC register accessor: an alias for `Reg<MCAN_TSCC_SPEC>`"]
135pub type MCAN_TSCC = crate::Reg<mcan_tscc::MCAN_TSCC_SPEC>;
136#[doc = "Timestamp Counter Configuration Register"]
137pub mod mcan_tscc;
138#[doc = "MCAN_TSCV register accessor: an alias for `Reg<MCAN_TSCV_SPEC>`"]
139pub type MCAN_TSCV = crate::Reg<mcan_tscv::MCAN_TSCV_SPEC>;
140#[doc = "Timestamp Counter Value Register"]
141pub mod mcan_tscv;
142#[doc = "MCAN_TOCC register accessor: an alias for `Reg<MCAN_TOCC_SPEC>`"]
143pub type MCAN_TOCC = crate::Reg<mcan_tocc::MCAN_TOCC_SPEC>;
144#[doc = "Timeout Counter Configuration Register"]
145pub mod mcan_tocc;
146#[doc = "MCAN_TOCV register accessor: an alias for `Reg<MCAN_TOCV_SPEC>`"]
147pub type MCAN_TOCV = crate::Reg<mcan_tocv::MCAN_TOCV_SPEC>;
148#[doc = "Timeout Counter Value Register"]
149pub mod mcan_tocv;
150#[doc = "MCAN_ECR register accessor: an alias for `Reg<MCAN_ECR_SPEC>`"]
151pub type MCAN_ECR = crate::Reg<mcan_ecr::MCAN_ECR_SPEC>;
152#[doc = "Error Counter Register"]
153pub mod mcan_ecr;
154#[doc = "MCAN_PSR register accessor: an alias for `Reg<MCAN_PSR_SPEC>`"]
155pub type MCAN_PSR = crate::Reg<mcan_psr::MCAN_PSR_SPEC>;
156#[doc = "Protocol Status Register"]
157pub mod mcan_psr;
158#[doc = "MCAN_IR register accessor: an alias for `Reg<MCAN_IR_SPEC>`"]
159pub type MCAN_IR = crate::Reg<mcan_ir::MCAN_IR_SPEC>;
160#[doc = "Interrupt Register"]
161pub mod mcan_ir;
162#[doc = "MCAN_IE register accessor: an alias for `Reg<MCAN_IE_SPEC>`"]
163pub type MCAN_IE = crate::Reg<mcan_ie::MCAN_IE_SPEC>;
164#[doc = "Interrupt Enable Register"]
165pub mod mcan_ie;
166#[doc = "MCAN_ILS register accessor: an alias for `Reg<MCAN_ILS_SPEC>`"]
167pub type MCAN_ILS = crate::Reg<mcan_ils::MCAN_ILS_SPEC>;
168#[doc = "Interrupt Line Select Register"]
169pub mod mcan_ils;
170#[doc = "MCAN_ILE register accessor: an alias for `Reg<MCAN_ILE_SPEC>`"]
171pub type MCAN_ILE = crate::Reg<mcan_ile::MCAN_ILE_SPEC>;
172#[doc = "Interrupt Line Enable Register"]
173pub mod mcan_ile;
174#[doc = "MCAN_GFC register accessor: an alias for `Reg<MCAN_GFC_SPEC>`"]
175pub type MCAN_GFC = crate::Reg<mcan_gfc::MCAN_GFC_SPEC>;
176#[doc = "Global Filter Configuration Register"]
177pub mod mcan_gfc;
178#[doc = "MCAN_SIDFC register accessor: an alias for `Reg<MCAN_SIDFC_SPEC>`"]
179pub type MCAN_SIDFC = crate::Reg<mcan_sidfc::MCAN_SIDFC_SPEC>;
180#[doc = "Standard ID Filter Configuration Register"]
181pub mod mcan_sidfc;
182#[doc = "MCAN_XIDFC register accessor: an alias for `Reg<MCAN_XIDFC_SPEC>`"]
183pub type MCAN_XIDFC = crate::Reg<mcan_xidfc::MCAN_XIDFC_SPEC>;
184#[doc = "Extended ID Filter Configuration Register"]
185pub mod mcan_xidfc;
186#[doc = "MCAN_XIDAM register accessor: an alias for `Reg<MCAN_XIDAM_SPEC>`"]
187pub type MCAN_XIDAM = crate::Reg<mcan_xidam::MCAN_XIDAM_SPEC>;
188#[doc = "Extended ID AND Mask Register"]
189pub mod mcan_xidam;
190#[doc = "MCAN_HPMS register accessor: an alias for `Reg<MCAN_HPMS_SPEC>`"]
191pub type MCAN_HPMS = crate::Reg<mcan_hpms::MCAN_HPMS_SPEC>;
192#[doc = "High Priority Message Status Register"]
193pub mod mcan_hpms;
194#[doc = "MCAN_NDAT1 register accessor: an alias for `Reg<MCAN_NDAT1_SPEC>`"]
195pub type MCAN_NDAT1 = crate::Reg<mcan_ndat1::MCAN_NDAT1_SPEC>;
196#[doc = "New Data 1 Register"]
197pub mod mcan_ndat1;
198#[doc = "MCAN_NDAT2 register accessor: an alias for `Reg<MCAN_NDAT2_SPEC>`"]
199pub type MCAN_NDAT2 = crate::Reg<mcan_ndat2::MCAN_NDAT2_SPEC>;
200#[doc = "New Data 2 Register"]
201pub mod mcan_ndat2;
202#[doc = "MCAN_RXF0C register accessor: an alias for `Reg<MCAN_RXF0C_SPEC>`"]
203pub type MCAN_RXF0C = crate::Reg<mcan_rxf0c::MCAN_RXF0C_SPEC>;
204#[doc = "Receive FIFO 0 Configuration Register"]
205pub mod mcan_rxf0c;
206#[doc = "MCAN_RXF0S register accessor: an alias for `Reg<MCAN_RXF0S_SPEC>`"]
207pub type MCAN_RXF0S = crate::Reg<mcan_rxf0s::MCAN_RXF0S_SPEC>;
208#[doc = "Receive FIFO 0 Status Register"]
209pub mod mcan_rxf0s;
210#[doc = "MCAN_RXF0A register accessor: an alias for `Reg<MCAN_RXF0A_SPEC>`"]
211pub type MCAN_RXF0A = crate::Reg<mcan_rxf0a::MCAN_RXF0A_SPEC>;
212#[doc = "Receive FIFO 0 Acknowledge Register"]
213pub mod mcan_rxf0a;
214#[doc = "MCAN_RXBC register accessor: an alias for `Reg<MCAN_RXBC_SPEC>`"]
215pub type MCAN_RXBC = crate::Reg<mcan_rxbc::MCAN_RXBC_SPEC>;
216#[doc = "Receive Rx Buffer Configuration Register"]
217pub mod mcan_rxbc;
218#[doc = "MCAN_RXF1C register accessor: an alias for `Reg<MCAN_RXF1C_SPEC>`"]
219pub type MCAN_RXF1C = crate::Reg<mcan_rxf1c::MCAN_RXF1C_SPEC>;
220#[doc = "Receive FIFO 1 Configuration Register"]
221pub mod mcan_rxf1c;
222#[doc = "MCAN_RXF1S register accessor: an alias for `Reg<MCAN_RXF1S_SPEC>`"]
223pub type MCAN_RXF1S = crate::Reg<mcan_rxf1s::MCAN_RXF1S_SPEC>;
224#[doc = "Receive FIFO 1 Status Register"]
225pub mod mcan_rxf1s;
226#[doc = "MCAN_RXF1A register accessor: an alias for `Reg<MCAN_RXF1A_SPEC>`"]
227pub type MCAN_RXF1A = crate::Reg<mcan_rxf1a::MCAN_RXF1A_SPEC>;
228#[doc = "Receive FIFO 1 Acknowledge Register"]
229pub mod mcan_rxf1a;
230#[doc = "MCAN_RXESC register accessor: an alias for `Reg<MCAN_RXESC_SPEC>`"]
231pub type MCAN_RXESC = crate::Reg<mcan_rxesc::MCAN_RXESC_SPEC>;
232#[doc = "Receive Buffer / FIFO Element Size Configuration Register"]
233pub mod mcan_rxesc;
234#[doc = "MCAN_TXBC register accessor: an alias for `Reg<MCAN_TXBC_SPEC>`"]
235pub type MCAN_TXBC = crate::Reg<mcan_txbc::MCAN_TXBC_SPEC>;
236#[doc = "Transmit Buffer Configuration Register"]
237pub mod mcan_txbc;
238#[doc = "MCAN_TXFQS register accessor: an alias for `Reg<MCAN_TXFQS_SPEC>`"]
239pub type MCAN_TXFQS = crate::Reg<mcan_txfqs::MCAN_TXFQS_SPEC>;
240#[doc = "Transmit FIFO/Queue Status Register"]
241pub mod mcan_txfqs;
242#[doc = "MCAN_TXESC register accessor: an alias for `Reg<MCAN_TXESC_SPEC>`"]
243pub type MCAN_TXESC = crate::Reg<mcan_txesc::MCAN_TXESC_SPEC>;
244#[doc = "Transmit Buffer Element Size Configuration Register"]
245pub mod mcan_txesc;
246#[doc = "MCAN_TXBRP register accessor: an alias for `Reg<MCAN_TXBRP_SPEC>`"]
247pub type MCAN_TXBRP = crate::Reg<mcan_txbrp::MCAN_TXBRP_SPEC>;
248#[doc = "Transmit Buffer Request Pending Register"]
249pub mod mcan_txbrp;
250#[doc = "MCAN_TXBAR register accessor: an alias for `Reg<MCAN_TXBAR_SPEC>`"]
251pub type MCAN_TXBAR = crate::Reg<mcan_txbar::MCAN_TXBAR_SPEC>;
252#[doc = "Transmit Buffer Add Request Register"]
253pub mod mcan_txbar;
254#[doc = "MCAN_TXBCR register accessor: an alias for `Reg<MCAN_TXBCR_SPEC>`"]
255pub type MCAN_TXBCR = crate::Reg<mcan_txbcr::MCAN_TXBCR_SPEC>;
256#[doc = "Transmit Buffer Cancellation Request Register"]
257pub mod mcan_txbcr;
258#[doc = "MCAN_TXBTO register accessor: an alias for `Reg<MCAN_TXBTO_SPEC>`"]
259pub type MCAN_TXBTO = crate::Reg<mcan_txbto::MCAN_TXBTO_SPEC>;
260#[doc = "Transmit Buffer Transmission Occurred Register"]
261pub mod mcan_txbto;
262#[doc = "MCAN_TXBCF register accessor: an alias for `Reg<MCAN_TXBCF_SPEC>`"]
263pub type MCAN_TXBCF = crate::Reg<mcan_txbcf::MCAN_TXBCF_SPEC>;
264#[doc = "Transmit Buffer Cancellation Finished Register"]
265pub mod mcan_txbcf;
266#[doc = "MCAN_TXBTIE register accessor: an alias for `Reg<MCAN_TXBTIE_SPEC>`"]
267pub type MCAN_TXBTIE = crate::Reg<mcan_txbtie::MCAN_TXBTIE_SPEC>;
268#[doc = "Transmit Buffer Transmission Interrupt Enable Register"]
269pub mod mcan_txbtie;
270#[doc = "MCAN_TXBCIE register accessor: an alias for `Reg<MCAN_TXBCIE_SPEC>`"]
271pub type MCAN_TXBCIE = crate::Reg<mcan_txbcie::MCAN_TXBCIE_SPEC>;
272#[doc = "Transmit Buffer Cancellation Finished Interrupt Enable Register"]
273pub mod mcan_txbcie;
274#[doc = "MCAN_TXEFC register accessor: an alias for `Reg<MCAN_TXEFC_SPEC>`"]
275pub type MCAN_TXEFC = crate::Reg<mcan_txefc::MCAN_TXEFC_SPEC>;
276#[doc = "Transmit Event FIFO Configuration Register"]
277pub mod mcan_txefc;
278#[doc = "MCAN_TXEFS register accessor: an alias for `Reg<MCAN_TXEFS_SPEC>`"]
279pub type MCAN_TXEFS = crate::Reg<mcan_txefs::MCAN_TXEFS_SPEC>;
280#[doc = "Transmit Event FIFO Status Register"]
281pub mod mcan_txefs;
282#[doc = "MCAN_TXEFA register accessor: an alias for `Reg<MCAN_TXEFA_SPEC>`"]
283pub type MCAN_TXEFA = crate::Reg<mcan_txefa::MCAN_TXEFA_SPEC>;
284#[doc = "Transmit Event FIFO Acknowledge Register"]
285pub mod mcan_txefa;