s32k118_pac/
flexio.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Version ID Register"]
5    pub verid: crate::Reg<verid::VERID_SPEC>,
6    #[doc = "0x04 - Parameter Register"]
7    pub param: crate::Reg<param::PARAM_SPEC>,
8    #[doc = "0x08 - FlexIO Control Register"]
9    pub ctrl: crate::Reg<ctrl::CTRL_SPEC>,
10    #[doc = "0x0c - Pin State Register"]
11    pub pin: crate::Reg<pin::PIN_SPEC>,
12    #[doc = "0x10 - Shifter Status Register"]
13    pub shiftstat: crate::Reg<shiftstat::SHIFTSTAT_SPEC>,
14    #[doc = "0x14 - Shifter Error Register"]
15    pub shifterr: crate::Reg<shifterr::SHIFTERR_SPEC>,
16    #[doc = "0x18 - Timer Status Register"]
17    pub timstat: crate::Reg<timstat::TIMSTAT_SPEC>,
18    _reserved7: [u8; 0x04],
19    #[doc = "0x20 - Shifter Status Interrupt Enable"]
20    pub shiftsien: crate::Reg<shiftsien::SHIFTSIEN_SPEC>,
21    #[doc = "0x24 - Shifter Error Interrupt Enable"]
22    pub shifteien: crate::Reg<shifteien::SHIFTEIEN_SPEC>,
23    #[doc = "0x28 - Timer Interrupt Enable Register"]
24    pub timien: crate::Reg<timien::TIMIEN_SPEC>,
25    _reserved10: [u8; 0x04],
26    #[doc = "0x30 - Shifter Status DMA Enable"]
27    pub shiftsden: crate::Reg<shiftsden::SHIFTSDEN_SPEC>,
28    _reserved11: [u8; 0x4c],
29    #[doc = "0x80 - Shifter Control N Register"]
30    pub shiftctl0: crate::Reg<shiftctl0::SHIFTCTL0_SPEC>,
31    #[doc = "0x84 - Shifter Control N Register"]
32    pub shiftctl1: crate::Reg<shiftctl1::SHIFTCTL1_SPEC>,
33    #[doc = "0x88 - Shifter Control N Register"]
34    pub shiftctl2: crate::Reg<shiftctl2::SHIFTCTL2_SPEC>,
35    #[doc = "0x8c - Shifter Control N Register"]
36    pub shiftctl3: crate::Reg<shiftctl3::SHIFTCTL3_SPEC>,
37    _reserved15: [u8; 0x70],
38    #[doc = "0x100 - Shifter Configuration N Register"]
39    pub shiftcfg0: crate::Reg<shiftcfg0::SHIFTCFG0_SPEC>,
40    #[doc = "0x104 - Shifter Configuration N Register"]
41    pub shiftcfg1: crate::Reg<shiftcfg1::SHIFTCFG1_SPEC>,
42    #[doc = "0x108 - Shifter Configuration N Register"]
43    pub shiftcfg2: crate::Reg<shiftcfg2::SHIFTCFG2_SPEC>,
44    #[doc = "0x10c - Shifter Configuration N Register"]
45    pub shiftcfg3: crate::Reg<shiftcfg3::SHIFTCFG3_SPEC>,
46    _reserved19: [u8; 0xf0],
47    #[doc = "0x200 - Shifter Buffer N Register"]
48    pub shiftbuf0: crate::Reg<shiftbuf0::SHIFTBUF0_SPEC>,
49    #[doc = "0x204 - Shifter Buffer N Register"]
50    pub shiftbuf1: crate::Reg<shiftbuf1::SHIFTBUF1_SPEC>,
51    #[doc = "0x208 - Shifter Buffer N Register"]
52    pub shiftbuf2: crate::Reg<shiftbuf2::SHIFTBUF2_SPEC>,
53    #[doc = "0x20c - Shifter Buffer N Register"]
54    pub shiftbuf3: crate::Reg<shiftbuf3::SHIFTBUF3_SPEC>,
55    _reserved23: [u8; 0x70],
56    #[doc = "0x280 - Shifter Buffer N Bit Swapped Register"]
57    pub shiftbufbis0: crate::Reg<shiftbufbis0::SHIFTBUFBIS0_SPEC>,
58    #[doc = "0x284 - Shifter Buffer N Bit Swapped Register"]
59    pub shiftbufbis1: crate::Reg<shiftbufbis1::SHIFTBUFBIS1_SPEC>,
60    #[doc = "0x288 - Shifter Buffer N Bit Swapped Register"]
61    pub shiftbufbis2: crate::Reg<shiftbufbis2::SHIFTBUFBIS2_SPEC>,
62    #[doc = "0x28c - Shifter Buffer N Bit Swapped Register"]
63    pub shiftbufbis3: crate::Reg<shiftbufbis3::SHIFTBUFBIS3_SPEC>,
64    _reserved27: [u8; 0x70],
65    #[doc = "0x300 - Shifter Buffer N Byte Swapped Register"]
66    pub shiftbufbys0: crate::Reg<shiftbufbys0::SHIFTBUFBYS0_SPEC>,
67    #[doc = "0x304 - Shifter Buffer N Byte Swapped Register"]
68    pub shiftbufbys1: crate::Reg<shiftbufbys1::SHIFTBUFBYS1_SPEC>,
69    #[doc = "0x308 - Shifter Buffer N Byte Swapped Register"]
70    pub shiftbufbys2: crate::Reg<shiftbufbys2::SHIFTBUFBYS2_SPEC>,
71    #[doc = "0x30c - Shifter Buffer N Byte Swapped Register"]
72    pub shiftbufbys3: crate::Reg<shiftbufbys3::SHIFTBUFBYS3_SPEC>,
73    _reserved31: [u8; 0x70],
74    #[doc = "0x380 - Shifter Buffer N Bit Byte Swapped Register"]
75    pub shiftbufbbs0: crate::Reg<shiftbufbbs0::SHIFTBUFBBS0_SPEC>,
76    #[doc = "0x384 - Shifter Buffer N Bit Byte Swapped Register"]
77    pub shiftbufbbs1: crate::Reg<shiftbufbbs1::SHIFTBUFBBS1_SPEC>,
78    #[doc = "0x388 - Shifter Buffer N Bit Byte Swapped Register"]
79    pub shiftbufbbs2: crate::Reg<shiftbufbbs2::SHIFTBUFBBS2_SPEC>,
80    #[doc = "0x38c - Shifter Buffer N Bit Byte Swapped Register"]
81    pub shiftbufbbs3: crate::Reg<shiftbufbbs3::SHIFTBUFBBS3_SPEC>,
82    _reserved35: [u8; 0x70],
83    #[doc = "0x400 - Timer Control N Register"]
84    pub timctl0: crate::Reg<timctl0::TIMCTL0_SPEC>,
85    #[doc = "0x404 - Timer Control N Register"]
86    pub timctl1: crate::Reg<timctl1::TIMCTL1_SPEC>,
87    #[doc = "0x408 - Timer Control N Register"]
88    pub timctl2: crate::Reg<timctl2::TIMCTL2_SPEC>,
89    #[doc = "0x40c - Timer Control N Register"]
90    pub timctl3: crate::Reg<timctl3::TIMCTL3_SPEC>,
91    _reserved39: [u8; 0x70],
92    #[doc = "0x480 - Timer Configuration N Register"]
93    pub timcfg0: crate::Reg<timcfg0::TIMCFG0_SPEC>,
94    #[doc = "0x484 - Timer Configuration N Register"]
95    pub timcfg1: crate::Reg<timcfg1::TIMCFG1_SPEC>,
96    #[doc = "0x488 - Timer Configuration N Register"]
97    pub timcfg2: crate::Reg<timcfg2::TIMCFG2_SPEC>,
98    #[doc = "0x48c - Timer Configuration N Register"]
99    pub timcfg3: crate::Reg<timcfg3::TIMCFG3_SPEC>,
100    _reserved43: [u8; 0x70],
101    #[doc = "0x500 - Timer Compare N Register"]
102    pub timcmp0: crate::Reg<timcmp0::TIMCMP0_SPEC>,
103    #[doc = "0x504 - Timer Compare N Register"]
104    pub timcmp1: crate::Reg<timcmp1::TIMCMP1_SPEC>,
105    #[doc = "0x508 - Timer Compare N Register"]
106    pub timcmp2: crate::Reg<timcmp2::TIMCMP2_SPEC>,
107    #[doc = "0x50c - Timer Compare N Register"]
108    pub timcmp3: crate::Reg<timcmp3::TIMCMP3_SPEC>,
109}
110#[doc = "VERID register accessor: an alias for `Reg<VERID_SPEC>`"]
111pub type VERID = crate::Reg<verid::VERID_SPEC>;
112#[doc = "Version ID Register"]
113pub mod verid;
114#[doc = "PARAM register accessor: an alias for `Reg<PARAM_SPEC>`"]
115pub type PARAM = crate::Reg<param::PARAM_SPEC>;
116#[doc = "Parameter Register"]
117pub mod param;
118#[doc = "CTRL register accessor: an alias for `Reg<CTRL_SPEC>`"]
119pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
120#[doc = "FlexIO Control Register"]
121pub mod ctrl;
122#[doc = "PIN register accessor: an alias for `Reg<PIN_SPEC>`"]
123pub type PIN = crate::Reg<pin::PIN_SPEC>;
124#[doc = "Pin State Register"]
125pub mod pin;
126#[doc = "SHIFTSTAT register accessor: an alias for `Reg<SHIFTSTAT_SPEC>`"]
127pub type SHIFTSTAT = crate::Reg<shiftstat::SHIFTSTAT_SPEC>;
128#[doc = "Shifter Status Register"]
129pub mod shiftstat;
130#[doc = "SHIFTERR register accessor: an alias for `Reg<SHIFTERR_SPEC>`"]
131pub type SHIFTERR = crate::Reg<shifterr::SHIFTERR_SPEC>;
132#[doc = "Shifter Error Register"]
133pub mod shifterr;
134#[doc = "TIMSTAT register accessor: an alias for `Reg<TIMSTAT_SPEC>`"]
135pub type TIMSTAT = crate::Reg<timstat::TIMSTAT_SPEC>;
136#[doc = "Timer Status Register"]
137pub mod timstat;
138#[doc = "SHIFTSIEN register accessor: an alias for `Reg<SHIFTSIEN_SPEC>`"]
139pub type SHIFTSIEN = crate::Reg<shiftsien::SHIFTSIEN_SPEC>;
140#[doc = "Shifter Status Interrupt Enable"]
141pub mod shiftsien;
142#[doc = "SHIFTEIEN register accessor: an alias for `Reg<SHIFTEIEN_SPEC>`"]
143pub type SHIFTEIEN = crate::Reg<shifteien::SHIFTEIEN_SPEC>;
144#[doc = "Shifter Error Interrupt Enable"]
145pub mod shifteien;
146#[doc = "TIMIEN register accessor: an alias for `Reg<TIMIEN_SPEC>`"]
147pub type TIMIEN = crate::Reg<timien::TIMIEN_SPEC>;
148#[doc = "Timer Interrupt Enable Register"]
149pub mod timien;
150#[doc = "SHIFTSDEN register accessor: an alias for `Reg<SHIFTSDEN_SPEC>`"]
151pub type SHIFTSDEN = crate::Reg<shiftsden::SHIFTSDEN_SPEC>;
152#[doc = "Shifter Status DMA Enable"]
153pub mod shiftsden;
154#[doc = "SHIFTCTL0 register accessor: an alias for `Reg<SHIFTCTL0_SPEC>`"]
155pub type SHIFTCTL0 = crate::Reg<shiftctl0::SHIFTCTL0_SPEC>;
156#[doc = "Shifter Control N Register"]
157pub mod shiftctl0;
158#[doc = "SHIFTCTL1 register accessor: an alias for `Reg<SHIFTCTL1_SPEC>`"]
159pub type SHIFTCTL1 = crate::Reg<shiftctl1::SHIFTCTL1_SPEC>;
160#[doc = "Shifter Control N Register"]
161pub mod shiftctl1;
162#[doc = "SHIFTCTL2 register accessor: an alias for `Reg<SHIFTCTL2_SPEC>`"]
163pub type SHIFTCTL2 = crate::Reg<shiftctl2::SHIFTCTL2_SPEC>;
164#[doc = "Shifter Control N Register"]
165pub mod shiftctl2;
166#[doc = "SHIFTCTL3 register accessor: an alias for `Reg<SHIFTCTL3_SPEC>`"]
167pub type SHIFTCTL3 = crate::Reg<shiftctl3::SHIFTCTL3_SPEC>;
168#[doc = "Shifter Control N Register"]
169pub mod shiftctl3;
170#[doc = "SHIFTCFG0 register accessor: an alias for `Reg<SHIFTCFG0_SPEC>`"]
171pub type SHIFTCFG0 = crate::Reg<shiftcfg0::SHIFTCFG0_SPEC>;
172#[doc = "Shifter Configuration N Register"]
173pub mod shiftcfg0;
174#[doc = "SHIFTCFG1 register accessor: an alias for `Reg<SHIFTCFG1_SPEC>`"]
175pub type SHIFTCFG1 = crate::Reg<shiftcfg1::SHIFTCFG1_SPEC>;
176#[doc = "Shifter Configuration N Register"]
177pub mod shiftcfg1;
178#[doc = "SHIFTCFG2 register accessor: an alias for `Reg<SHIFTCFG2_SPEC>`"]
179pub type SHIFTCFG2 = crate::Reg<shiftcfg2::SHIFTCFG2_SPEC>;
180#[doc = "Shifter Configuration N Register"]
181pub mod shiftcfg2;
182#[doc = "SHIFTCFG3 register accessor: an alias for `Reg<SHIFTCFG3_SPEC>`"]
183pub type SHIFTCFG3 = crate::Reg<shiftcfg3::SHIFTCFG3_SPEC>;
184#[doc = "Shifter Configuration N Register"]
185pub mod shiftcfg3;
186#[doc = "SHIFTBUF0 register accessor: an alias for `Reg<SHIFTBUF0_SPEC>`"]
187pub type SHIFTBUF0 = crate::Reg<shiftbuf0::SHIFTBUF0_SPEC>;
188#[doc = "Shifter Buffer N Register"]
189pub mod shiftbuf0;
190#[doc = "SHIFTBUF1 register accessor: an alias for `Reg<SHIFTBUF1_SPEC>`"]
191pub type SHIFTBUF1 = crate::Reg<shiftbuf1::SHIFTBUF1_SPEC>;
192#[doc = "Shifter Buffer N Register"]
193pub mod shiftbuf1;
194#[doc = "SHIFTBUF2 register accessor: an alias for `Reg<SHIFTBUF2_SPEC>`"]
195pub type SHIFTBUF2 = crate::Reg<shiftbuf2::SHIFTBUF2_SPEC>;
196#[doc = "Shifter Buffer N Register"]
197pub mod shiftbuf2;
198#[doc = "SHIFTBUF3 register accessor: an alias for `Reg<SHIFTBUF3_SPEC>`"]
199pub type SHIFTBUF3 = crate::Reg<shiftbuf3::SHIFTBUF3_SPEC>;
200#[doc = "Shifter Buffer N Register"]
201pub mod shiftbuf3;
202#[doc = "SHIFTBUFBIS0 register accessor: an alias for `Reg<SHIFTBUFBIS0_SPEC>`"]
203pub type SHIFTBUFBIS0 = crate::Reg<shiftbufbis0::SHIFTBUFBIS0_SPEC>;
204#[doc = "Shifter Buffer N Bit Swapped Register"]
205pub mod shiftbufbis0;
206#[doc = "SHIFTBUFBIS1 register accessor: an alias for `Reg<SHIFTBUFBIS1_SPEC>`"]
207pub type SHIFTBUFBIS1 = crate::Reg<shiftbufbis1::SHIFTBUFBIS1_SPEC>;
208#[doc = "Shifter Buffer N Bit Swapped Register"]
209pub mod shiftbufbis1;
210#[doc = "SHIFTBUFBIS2 register accessor: an alias for `Reg<SHIFTBUFBIS2_SPEC>`"]
211pub type SHIFTBUFBIS2 = crate::Reg<shiftbufbis2::SHIFTBUFBIS2_SPEC>;
212#[doc = "Shifter Buffer N Bit Swapped Register"]
213pub mod shiftbufbis2;
214#[doc = "SHIFTBUFBIS3 register accessor: an alias for `Reg<SHIFTBUFBIS3_SPEC>`"]
215pub type SHIFTBUFBIS3 = crate::Reg<shiftbufbis3::SHIFTBUFBIS3_SPEC>;
216#[doc = "Shifter Buffer N Bit Swapped Register"]
217pub mod shiftbufbis3;
218#[doc = "SHIFTBUFBYS0 register accessor: an alias for `Reg<SHIFTBUFBYS0_SPEC>`"]
219pub type SHIFTBUFBYS0 = crate::Reg<shiftbufbys0::SHIFTBUFBYS0_SPEC>;
220#[doc = "Shifter Buffer N Byte Swapped Register"]
221pub mod shiftbufbys0;
222#[doc = "SHIFTBUFBYS1 register accessor: an alias for `Reg<SHIFTBUFBYS1_SPEC>`"]
223pub type SHIFTBUFBYS1 = crate::Reg<shiftbufbys1::SHIFTBUFBYS1_SPEC>;
224#[doc = "Shifter Buffer N Byte Swapped Register"]
225pub mod shiftbufbys1;
226#[doc = "SHIFTBUFBYS2 register accessor: an alias for `Reg<SHIFTBUFBYS2_SPEC>`"]
227pub type SHIFTBUFBYS2 = crate::Reg<shiftbufbys2::SHIFTBUFBYS2_SPEC>;
228#[doc = "Shifter Buffer N Byte Swapped Register"]
229pub mod shiftbufbys2;
230#[doc = "SHIFTBUFBYS3 register accessor: an alias for `Reg<SHIFTBUFBYS3_SPEC>`"]
231pub type SHIFTBUFBYS3 = crate::Reg<shiftbufbys3::SHIFTBUFBYS3_SPEC>;
232#[doc = "Shifter Buffer N Byte Swapped Register"]
233pub mod shiftbufbys3;
234#[doc = "SHIFTBUFBBS0 register accessor: an alias for `Reg<SHIFTBUFBBS0_SPEC>`"]
235pub type SHIFTBUFBBS0 = crate::Reg<shiftbufbbs0::SHIFTBUFBBS0_SPEC>;
236#[doc = "Shifter Buffer N Bit Byte Swapped Register"]
237pub mod shiftbufbbs0;
238#[doc = "SHIFTBUFBBS1 register accessor: an alias for `Reg<SHIFTBUFBBS1_SPEC>`"]
239pub type SHIFTBUFBBS1 = crate::Reg<shiftbufbbs1::SHIFTBUFBBS1_SPEC>;
240#[doc = "Shifter Buffer N Bit Byte Swapped Register"]
241pub mod shiftbufbbs1;
242#[doc = "SHIFTBUFBBS2 register accessor: an alias for `Reg<SHIFTBUFBBS2_SPEC>`"]
243pub type SHIFTBUFBBS2 = crate::Reg<shiftbufbbs2::SHIFTBUFBBS2_SPEC>;
244#[doc = "Shifter Buffer N Bit Byte Swapped Register"]
245pub mod shiftbufbbs2;
246#[doc = "SHIFTBUFBBS3 register accessor: an alias for `Reg<SHIFTBUFBBS3_SPEC>`"]
247pub type SHIFTBUFBBS3 = crate::Reg<shiftbufbbs3::SHIFTBUFBBS3_SPEC>;
248#[doc = "Shifter Buffer N Bit Byte Swapped Register"]
249pub mod shiftbufbbs3;
250#[doc = "TIMCTL0 register accessor: an alias for `Reg<TIMCTL0_SPEC>`"]
251pub type TIMCTL0 = crate::Reg<timctl0::TIMCTL0_SPEC>;
252#[doc = "Timer Control N Register"]
253pub mod timctl0;
254#[doc = "TIMCTL1 register accessor: an alias for `Reg<TIMCTL1_SPEC>`"]
255pub type TIMCTL1 = crate::Reg<timctl1::TIMCTL1_SPEC>;
256#[doc = "Timer Control N Register"]
257pub mod timctl1;
258#[doc = "TIMCTL2 register accessor: an alias for `Reg<TIMCTL2_SPEC>`"]
259pub type TIMCTL2 = crate::Reg<timctl2::TIMCTL2_SPEC>;
260#[doc = "Timer Control N Register"]
261pub mod timctl2;
262#[doc = "TIMCTL3 register accessor: an alias for `Reg<TIMCTL3_SPEC>`"]
263pub type TIMCTL3 = crate::Reg<timctl3::TIMCTL3_SPEC>;
264#[doc = "Timer Control N Register"]
265pub mod timctl3;
266#[doc = "TIMCFG0 register accessor: an alias for `Reg<TIMCFG0_SPEC>`"]
267pub type TIMCFG0 = crate::Reg<timcfg0::TIMCFG0_SPEC>;
268#[doc = "Timer Configuration N Register"]
269pub mod timcfg0;
270#[doc = "TIMCFG1 register accessor: an alias for `Reg<TIMCFG1_SPEC>`"]
271pub type TIMCFG1 = crate::Reg<timcfg1::TIMCFG1_SPEC>;
272#[doc = "Timer Configuration N Register"]
273pub mod timcfg1;
274#[doc = "TIMCFG2 register accessor: an alias for `Reg<TIMCFG2_SPEC>`"]
275pub type TIMCFG2 = crate::Reg<timcfg2::TIMCFG2_SPEC>;
276#[doc = "Timer Configuration N Register"]
277pub mod timcfg2;
278#[doc = "TIMCFG3 register accessor: an alias for `Reg<TIMCFG3_SPEC>`"]
279pub type TIMCFG3 = crate::Reg<timcfg3::TIMCFG3_SPEC>;
280#[doc = "Timer Configuration N Register"]
281pub mod timcfg3;
282#[doc = "TIMCMP0 register accessor: an alias for `Reg<TIMCMP0_SPEC>`"]
283pub type TIMCMP0 = crate::Reg<timcmp0::TIMCMP0_SPEC>;
284#[doc = "Timer Compare N Register"]
285pub mod timcmp0;
286#[doc = "TIMCMP1 register accessor: an alias for `Reg<TIMCMP1_SPEC>`"]
287pub type TIMCMP1 = crate::Reg<timcmp1::TIMCMP1_SPEC>;
288#[doc = "Timer Compare N Register"]
289pub mod timcmp1;
290#[doc = "TIMCMP2 register accessor: an alias for `Reg<TIMCMP2_SPEC>`"]
291pub type TIMCMP2 = crate::Reg<timcmp2::TIMCMP2_SPEC>;
292#[doc = "Timer Compare N Register"]
293pub mod timcmp2;
294#[doc = "TIMCMP3 register accessor: an alias for `Reg<TIMCMP3_SPEC>`"]
295pub type TIMCMP3 = crate::Reg<timcmp3::TIMCMP3_SPEC>;
296#[doc = "Timer Compare N Register"]
297pub mod timcmp3;