esp32c6/
gpio.rs

1#[repr(C)]
2#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5    bt_select: BT_SELECT,
6    out: OUT,
7    out_w1ts: OUT_W1TS,
8    out_w1tc: OUT_W1TC,
9    out1: OUT1,
10    out1_w1ts: OUT1_W1TS,
11    out1_w1tc: OUT1_W1TC,
12    sdio_select: SDIO_SELECT,
13    enable: ENABLE,
14    enable_w1ts: ENABLE_W1TS,
15    enable_w1tc: ENABLE_W1TC,
16    enable1: ENABLE1,
17    enable1_w1ts: ENABLE1_W1TS,
18    enable1_w1tc: ENABLE1_W1TC,
19    strap: STRAP,
20    in_: IN,
21    in1: IN1,
22    status: STATUS,
23    status_w1ts: STATUS_W1TS,
24    status_w1tc: STATUS_W1TC,
25    status1: STATUS1,
26    status1_w1ts: STATUS1_W1TS,
27    status1_w1tc: STATUS1_W1TC,
28    pcpu_int: PCPU_INT,
29    pcpu_nmi_int: PCPU_NMI_INT,
30    cpusdio_int: CPUSDIO_INT,
31    pcpu_int1: PCPU_INT1,
32    pcpu_nmi_int1: PCPU_NMI_INT1,
33    cpusdio_int1: CPUSDIO_INT1,
34    pin: [PIN; 35],
35    _reserved30: [u8; 0x4c],
36    status_next: STATUS_NEXT,
37    status_next1: STATUS_NEXT1,
38    func_in_sel_cfg: [FUNC_IN_SEL_CFG; 128],
39    _reserved33: [u8; 0x0200],
40    func_out_sel_cfg: [FUNC_OUT_SEL_CFG; 31],
41    _reserved34: [u8; 0x5c],
42    clock_gate: CLOCK_GATE,
43    _reserved35: [u8; 0xcc],
44    date: DATE,
45}
46impl RegisterBlock {
47    #[doc = "0x00 - GPIO bit select register"]
48    #[inline(always)]
49    pub const fn bt_select(&self) -> &BT_SELECT {
50        &self.bt_select
51    }
52    #[doc = "0x04 - GPIO output register for GPIO0-31"]
53    #[inline(always)]
54    pub const fn out(&self) -> &OUT {
55        &self.out
56    }
57    #[doc = "0x08 - GPIO output set register for GPIO0-31"]
58    #[inline(always)]
59    pub const fn out_w1ts(&self) -> &OUT_W1TS {
60        &self.out_w1ts
61    }
62    #[doc = "0x0c - GPIO output clear register for GPIO0-31"]
63    #[inline(always)]
64    pub const fn out_w1tc(&self) -> &OUT_W1TC {
65        &self.out_w1tc
66    }
67    #[doc = "0x10 - GPIO output register for GPIO32-34"]
68    #[inline(always)]
69    pub const fn out1(&self) -> &OUT1 {
70        &self.out1
71    }
72    #[doc = "0x14 - GPIO output set register for GPIO32-34"]
73    #[inline(always)]
74    pub const fn out1_w1ts(&self) -> &OUT1_W1TS {
75        &self.out1_w1ts
76    }
77    #[doc = "0x18 - GPIO output clear register for GPIO32-34"]
78    #[inline(always)]
79    pub const fn out1_w1tc(&self) -> &OUT1_W1TC {
80        &self.out1_w1tc
81    }
82    #[doc = "0x1c - GPIO sdio select register"]
83    #[inline(always)]
84    pub const fn sdio_select(&self) -> &SDIO_SELECT {
85        &self.sdio_select
86    }
87    #[doc = "0x20 - GPIO output enable register for GPIO0-31"]
88    #[inline(always)]
89    pub const fn enable(&self) -> &ENABLE {
90        &self.enable
91    }
92    #[doc = "0x24 - GPIO output enable set register for GPIO0-31"]
93    #[inline(always)]
94    pub const fn enable_w1ts(&self) -> &ENABLE_W1TS {
95        &self.enable_w1ts
96    }
97    #[doc = "0x28 - GPIO output enable clear register for GPIO0-31"]
98    #[inline(always)]
99    pub const fn enable_w1tc(&self) -> &ENABLE_W1TC {
100        &self.enable_w1tc
101    }
102    #[doc = "0x2c - GPIO output enable register for GPIO32-34"]
103    #[inline(always)]
104    pub const fn enable1(&self) -> &ENABLE1 {
105        &self.enable1
106    }
107    #[doc = "0x30 - GPIO output enable set register for GPIO32-34"]
108    #[inline(always)]
109    pub const fn enable1_w1ts(&self) -> &ENABLE1_W1TS {
110        &self.enable1_w1ts
111    }
112    #[doc = "0x34 - GPIO output enable clear register for GPIO32-34"]
113    #[inline(always)]
114    pub const fn enable1_w1tc(&self) -> &ENABLE1_W1TC {
115        &self.enable1_w1tc
116    }
117    #[doc = "0x38 - pad strapping register"]
118    #[inline(always)]
119    pub const fn strap(&self) -> &STRAP {
120        &self.strap
121    }
122    #[doc = "0x3c - GPIO input register for GPIO0-31"]
123    #[inline(always)]
124    pub const fn in_(&self) -> &IN {
125        &self.in_
126    }
127    #[doc = "0x40 - GPIO input register for GPIO32-34"]
128    #[inline(always)]
129    pub const fn in1(&self) -> &IN1 {
130        &self.in1
131    }
132    #[doc = "0x44 - GPIO interrupt status register for GPIO0-31"]
133    #[inline(always)]
134    pub const fn status(&self) -> &STATUS {
135        &self.status
136    }
137    #[doc = "0x48 - GPIO interrupt status set register for GPIO0-31"]
138    #[inline(always)]
139    pub const fn status_w1ts(&self) -> &STATUS_W1TS {
140        &self.status_w1ts
141    }
142    #[doc = "0x4c - GPIO interrupt status clear register for GPIO0-31"]
143    #[inline(always)]
144    pub const fn status_w1tc(&self) -> &STATUS_W1TC {
145        &self.status_w1tc
146    }
147    #[doc = "0x50 - GPIO interrupt status register for GPIO32-34"]
148    #[inline(always)]
149    pub const fn status1(&self) -> &STATUS1 {
150        &self.status1
151    }
152    #[doc = "0x54 - GPIO interrupt status set register for GPIO32-34"]
153    #[inline(always)]
154    pub const fn status1_w1ts(&self) -> &STATUS1_W1TS {
155        &self.status1_w1ts
156    }
157    #[doc = "0x58 - GPIO interrupt status clear register for GPIO32-34"]
158    #[inline(always)]
159    pub const fn status1_w1tc(&self) -> &STATUS1_W1TC {
160        &self.status1_w1tc
161    }
162    #[doc = "0x5c - GPIO PRO_CPU interrupt status register for GPIO0-31"]
163    #[inline(always)]
164    pub const fn pcpu_int(&self) -> &PCPU_INT {
165        &self.pcpu_int
166    }
167    #[doc = "0x60 - GPIO PRO_CPU(not shielded) interrupt status register for GPIO0-31"]
168    #[inline(always)]
169    pub const fn pcpu_nmi_int(&self) -> &PCPU_NMI_INT {
170        &self.pcpu_nmi_int
171    }
172    #[doc = "0x64 - GPIO CPUSDIO interrupt status register for GPIO0-31"]
173    #[inline(always)]
174    pub const fn cpusdio_int(&self) -> &CPUSDIO_INT {
175        &self.cpusdio_int
176    }
177    #[doc = "0x68 - GPIO PRO_CPU interrupt status register for GPIO32-34"]
178    #[inline(always)]
179    pub const fn pcpu_int1(&self) -> &PCPU_INT1 {
180        &self.pcpu_int1
181    }
182    #[doc = "0x6c - GPIO PRO_CPU(not shielded) interrupt status register for GPIO32-34"]
183    #[inline(always)]
184    pub const fn pcpu_nmi_int1(&self) -> &PCPU_NMI_INT1 {
185        &self.pcpu_nmi_int1
186    }
187    #[doc = "0x70 - GPIO CPUSDIO interrupt status register for GPIO32-34"]
188    #[inline(always)]
189    pub const fn cpusdio_int1(&self) -> &CPUSDIO_INT1 {
190        &self.cpusdio_int1
191    }
192    #[doc = "0x74..0x100 - GPIO pin configuration register"]
193    #[inline(always)]
194    pub const fn pin(&self, n: usize) -> &PIN {
195        &self.pin[n]
196    }
197    #[doc = "Iterator for array of:"]
198    #[doc = "0x74..0x100 - GPIO pin configuration register"]
199    #[inline(always)]
200    pub fn pin_iter(&self) -> impl Iterator<Item = &PIN> {
201        self.pin.iter()
202    }
203    #[doc = "0x14c - GPIO interrupt source register for GPIO0-31"]
204    #[inline(always)]
205    pub const fn status_next(&self) -> &STATUS_NEXT {
206        &self.status_next
207    }
208    #[doc = "0x150 - GPIO interrupt source register for GPIO32-34"]
209    #[inline(always)]
210    pub const fn status_next1(&self) -> &STATUS_NEXT1 {
211        &self.status_next1
212    }
213    #[doc = "0x154..0x354 - GPIO input function configuration register"]
214    #[inline(always)]
215    pub const fn func_in_sel_cfg(&self, n: usize) -> &FUNC_IN_SEL_CFG {
216        &self.func_in_sel_cfg[n]
217    }
218    #[doc = "Iterator for array of:"]
219    #[doc = "0x154..0x354 - GPIO input function configuration register"]
220    #[inline(always)]
221    pub fn func_in_sel_cfg_iter(&self) -> impl Iterator<Item = &FUNC_IN_SEL_CFG> {
222        self.func_in_sel_cfg.iter()
223    }
224    #[doc = "0x154 - GPIO input function configuration register"]
225    #[inline(always)]
226    pub const fn func0_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
227        self.func_in_sel_cfg(0)
228    }
229    #[doc = "0x158 - GPIO input function configuration register"]
230    #[inline(always)]
231    pub const fn func1_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
232        self.func_in_sel_cfg(1)
233    }
234    #[doc = "0x15c - GPIO input function configuration register"]
235    #[inline(always)]
236    pub const fn func2_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
237        self.func_in_sel_cfg(2)
238    }
239    #[doc = "0x160 - GPIO input function configuration register"]
240    #[inline(always)]
241    pub const fn func3_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
242        self.func_in_sel_cfg(3)
243    }
244    #[doc = "0x164 - GPIO input function configuration register"]
245    #[inline(always)]
246    pub const fn func4_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
247        self.func_in_sel_cfg(4)
248    }
249    #[doc = "0x168 - GPIO input function configuration register"]
250    #[inline(always)]
251    pub const fn func5_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
252        self.func_in_sel_cfg(5)
253    }
254    #[doc = "0x16c - GPIO input function configuration register"]
255    #[inline(always)]
256    pub const fn func6_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
257        self.func_in_sel_cfg(6)
258    }
259    #[doc = "0x170 - GPIO input function configuration register"]
260    #[inline(always)]
261    pub const fn func7_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
262        self.func_in_sel_cfg(7)
263    }
264    #[doc = "0x174 - GPIO input function configuration register"]
265    #[inline(always)]
266    pub const fn func8_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
267        self.func_in_sel_cfg(8)
268    }
269    #[doc = "0x178 - GPIO input function configuration register"]
270    #[inline(always)]
271    pub const fn func9_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
272        self.func_in_sel_cfg(9)
273    }
274    #[doc = "0x17c - GPIO input function configuration register"]
275    #[inline(always)]
276    pub const fn func10_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
277        self.func_in_sel_cfg(10)
278    }
279    #[doc = "0x180 - GPIO input function configuration register"]
280    #[inline(always)]
281    pub const fn func11_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
282        self.func_in_sel_cfg(11)
283    }
284    #[doc = "0x184 - GPIO input function configuration register"]
285    #[inline(always)]
286    pub const fn func12_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
287        self.func_in_sel_cfg(12)
288    }
289    #[doc = "0x188 - GPIO input function configuration register"]
290    #[inline(always)]
291    pub const fn func13_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
292        self.func_in_sel_cfg(13)
293    }
294    #[doc = "0x18c - GPIO input function configuration register"]
295    #[inline(always)]
296    pub const fn func14_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
297        self.func_in_sel_cfg(14)
298    }
299    #[doc = "0x190 - GPIO input function configuration register"]
300    #[inline(always)]
301    pub const fn func15_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
302        self.func_in_sel_cfg(15)
303    }
304    #[doc = "0x194 - GPIO input function configuration register"]
305    #[inline(always)]
306    pub const fn func16_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
307        self.func_in_sel_cfg(16)
308    }
309    #[doc = "0x198 - GPIO input function configuration register"]
310    #[inline(always)]
311    pub const fn func17_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
312        self.func_in_sel_cfg(17)
313    }
314    #[doc = "0x19c - GPIO input function configuration register"]
315    #[inline(always)]
316    pub const fn func18_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
317        self.func_in_sel_cfg(18)
318    }
319    #[doc = "0x1a0 - GPIO input function configuration register"]
320    #[inline(always)]
321    pub const fn func19_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
322        self.func_in_sel_cfg(19)
323    }
324    #[doc = "0x1a4 - GPIO input function configuration register"]
325    #[inline(always)]
326    pub const fn func20_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
327        self.func_in_sel_cfg(20)
328    }
329    #[doc = "0x1a8 - GPIO input function configuration register"]
330    #[inline(always)]
331    pub const fn func21_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
332        self.func_in_sel_cfg(21)
333    }
334    #[doc = "0x1ac - GPIO input function configuration register"]
335    #[inline(always)]
336    pub const fn func22_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
337        self.func_in_sel_cfg(22)
338    }
339    #[doc = "0x1b0 - GPIO input function configuration register"]
340    #[inline(always)]
341    pub const fn func23_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
342        self.func_in_sel_cfg(23)
343    }
344    #[doc = "0x1b4 - GPIO input function configuration register"]
345    #[inline(always)]
346    pub const fn func24_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
347        self.func_in_sel_cfg(24)
348    }
349    #[doc = "0x1b8 - GPIO input function configuration register"]
350    #[inline(always)]
351    pub const fn func25_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
352        self.func_in_sel_cfg(25)
353    }
354    #[doc = "0x1bc - GPIO input function configuration register"]
355    #[inline(always)]
356    pub const fn func26_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
357        self.func_in_sel_cfg(26)
358    }
359    #[doc = "0x1c0 - GPIO input function configuration register"]
360    #[inline(always)]
361    pub const fn func27_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
362        self.func_in_sel_cfg(27)
363    }
364    #[doc = "0x1c4 - GPIO input function configuration register"]
365    #[inline(always)]
366    pub const fn func28_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
367        self.func_in_sel_cfg(28)
368    }
369    #[doc = "0x1c8 - GPIO input function configuration register"]
370    #[inline(always)]
371    pub const fn func29_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
372        self.func_in_sel_cfg(29)
373    }
374    #[doc = "0x1cc - GPIO input function configuration register"]
375    #[inline(always)]
376    pub const fn func30_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
377        self.func_in_sel_cfg(30)
378    }
379    #[doc = "0x1d0 - GPIO input function configuration register"]
380    #[inline(always)]
381    pub const fn func31_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
382        self.func_in_sel_cfg(31)
383    }
384    #[doc = "0x1d4 - GPIO input function configuration register"]
385    #[inline(always)]
386    pub const fn func32_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
387        self.func_in_sel_cfg(32)
388    }
389    #[doc = "0x1d8 - GPIO input function configuration register"]
390    #[inline(always)]
391    pub const fn func33_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
392        self.func_in_sel_cfg(33)
393    }
394    #[doc = "0x1dc - GPIO input function configuration register"]
395    #[inline(always)]
396    pub const fn func34_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
397        self.func_in_sel_cfg(34)
398    }
399    #[doc = "0x1e0 - GPIO input function configuration register"]
400    #[inline(always)]
401    pub const fn func35_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
402        self.func_in_sel_cfg(35)
403    }
404    #[doc = "0x1e4 - GPIO input function configuration register"]
405    #[inline(always)]
406    pub const fn func36_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
407        self.func_in_sel_cfg(36)
408    }
409    #[doc = "0x1e8 - GPIO input function configuration register"]
410    #[inline(always)]
411    pub const fn func37_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
412        self.func_in_sel_cfg(37)
413    }
414    #[doc = "0x1ec - GPIO input function configuration register"]
415    #[inline(always)]
416    pub const fn func38_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
417        self.func_in_sel_cfg(38)
418    }
419    #[doc = "0x1f0 - GPIO input function configuration register"]
420    #[inline(always)]
421    pub const fn func39_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
422        self.func_in_sel_cfg(39)
423    }
424    #[doc = "0x1f4 - GPIO input function configuration register"]
425    #[inline(always)]
426    pub const fn func40_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
427        self.func_in_sel_cfg(40)
428    }
429    #[doc = "0x1f8 - GPIO input function configuration register"]
430    #[inline(always)]
431    pub const fn func41_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
432        self.func_in_sel_cfg(41)
433    }
434    #[doc = "0x1fc - GPIO input function configuration register"]
435    #[inline(always)]
436    pub const fn func42_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
437        self.func_in_sel_cfg(42)
438    }
439    #[doc = "0x200 - GPIO input function configuration register"]
440    #[inline(always)]
441    pub const fn func43_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
442        self.func_in_sel_cfg(43)
443    }
444    #[doc = "0x204 - GPIO input function configuration register"]
445    #[inline(always)]
446    pub const fn func44_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
447        self.func_in_sel_cfg(44)
448    }
449    #[doc = "0x208 - GPIO input function configuration register"]
450    #[inline(always)]
451    pub const fn func45_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
452        self.func_in_sel_cfg(45)
453    }
454    #[doc = "0x20c - GPIO input function configuration register"]
455    #[inline(always)]
456    pub const fn func46_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
457        self.func_in_sel_cfg(46)
458    }
459    #[doc = "0x210 - GPIO input function configuration register"]
460    #[inline(always)]
461    pub const fn func47_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
462        self.func_in_sel_cfg(47)
463    }
464    #[doc = "0x214 - GPIO input function configuration register"]
465    #[inline(always)]
466    pub const fn func48_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
467        self.func_in_sel_cfg(48)
468    }
469    #[doc = "0x218 - GPIO input function configuration register"]
470    #[inline(always)]
471    pub const fn func49_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
472        self.func_in_sel_cfg(49)
473    }
474    #[doc = "0x21c - GPIO input function configuration register"]
475    #[inline(always)]
476    pub const fn func50_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
477        self.func_in_sel_cfg(50)
478    }
479    #[doc = "0x220 - GPIO input function configuration register"]
480    #[inline(always)]
481    pub const fn func51_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
482        self.func_in_sel_cfg(51)
483    }
484    #[doc = "0x224 - GPIO input function configuration register"]
485    #[inline(always)]
486    pub const fn func52_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
487        self.func_in_sel_cfg(52)
488    }
489    #[doc = "0x228 - GPIO input function configuration register"]
490    #[inline(always)]
491    pub const fn func53_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
492        self.func_in_sel_cfg(53)
493    }
494    #[doc = "0x22c - GPIO input function configuration register"]
495    #[inline(always)]
496    pub const fn func54_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
497        self.func_in_sel_cfg(54)
498    }
499    #[doc = "0x230 - GPIO input function configuration register"]
500    #[inline(always)]
501    pub const fn func55_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
502        self.func_in_sel_cfg(55)
503    }
504    #[doc = "0x234 - GPIO input function configuration register"]
505    #[inline(always)]
506    pub const fn func56_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
507        self.func_in_sel_cfg(56)
508    }
509    #[doc = "0x238 - GPIO input function configuration register"]
510    #[inline(always)]
511    pub const fn func57_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
512        self.func_in_sel_cfg(57)
513    }
514    #[doc = "0x23c - GPIO input function configuration register"]
515    #[inline(always)]
516    pub const fn func58_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
517        self.func_in_sel_cfg(58)
518    }
519    #[doc = "0x240 - GPIO input function configuration register"]
520    #[inline(always)]
521    pub const fn func59_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
522        self.func_in_sel_cfg(59)
523    }
524    #[doc = "0x244 - GPIO input function configuration register"]
525    #[inline(always)]
526    pub const fn func60_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
527        self.func_in_sel_cfg(60)
528    }
529    #[doc = "0x248 - GPIO input function configuration register"]
530    #[inline(always)]
531    pub const fn func61_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
532        self.func_in_sel_cfg(61)
533    }
534    #[doc = "0x24c - GPIO input function configuration register"]
535    #[inline(always)]
536    pub const fn func62_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
537        self.func_in_sel_cfg(62)
538    }
539    #[doc = "0x250 - GPIO input function configuration register"]
540    #[inline(always)]
541    pub const fn func63_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
542        self.func_in_sel_cfg(63)
543    }
544    #[doc = "0x254 - GPIO input function configuration register"]
545    #[inline(always)]
546    pub const fn func64_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
547        self.func_in_sel_cfg(64)
548    }
549    #[doc = "0x258 - GPIO input function configuration register"]
550    #[inline(always)]
551    pub const fn func65_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
552        self.func_in_sel_cfg(65)
553    }
554    #[doc = "0x25c - GPIO input function configuration register"]
555    #[inline(always)]
556    pub const fn func66_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
557        self.func_in_sel_cfg(66)
558    }
559    #[doc = "0x260 - GPIO input function configuration register"]
560    #[inline(always)]
561    pub const fn func67_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
562        self.func_in_sel_cfg(67)
563    }
564    #[doc = "0x264 - GPIO input function configuration register"]
565    #[inline(always)]
566    pub const fn func68_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
567        self.func_in_sel_cfg(68)
568    }
569    #[doc = "0x268 - GPIO input function configuration register"]
570    #[inline(always)]
571    pub const fn func69_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
572        self.func_in_sel_cfg(69)
573    }
574    #[doc = "0x26c - GPIO input function configuration register"]
575    #[inline(always)]
576    pub const fn func70_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
577        self.func_in_sel_cfg(70)
578    }
579    #[doc = "0x270 - GPIO input function configuration register"]
580    #[inline(always)]
581    pub const fn func71_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
582        self.func_in_sel_cfg(71)
583    }
584    #[doc = "0x274 - GPIO input function configuration register"]
585    #[inline(always)]
586    pub const fn func72_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
587        self.func_in_sel_cfg(72)
588    }
589    #[doc = "0x278 - GPIO input function configuration register"]
590    #[inline(always)]
591    pub const fn func73_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
592        self.func_in_sel_cfg(73)
593    }
594    #[doc = "0x27c - GPIO input function configuration register"]
595    #[inline(always)]
596    pub const fn func74_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
597        self.func_in_sel_cfg(74)
598    }
599    #[doc = "0x280 - GPIO input function configuration register"]
600    #[inline(always)]
601    pub const fn func75_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
602        self.func_in_sel_cfg(75)
603    }
604    #[doc = "0x284 - GPIO input function configuration register"]
605    #[inline(always)]
606    pub const fn func76_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
607        self.func_in_sel_cfg(76)
608    }
609    #[doc = "0x288 - GPIO input function configuration register"]
610    #[inline(always)]
611    pub const fn func77_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
612        self.func_in_sel_cfg(77)
613    }
614    #[doc = "0x28c - GPIO input function configuration register"]
615    #[inline(always)]
616    pub const fn func78_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
617        self.func_in_sel_cfg(78)
618    }
619    #[doc = "0x290 - GPIO input function configuration register"]
620    #[inline(always)]
621    pub const fn func79_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
622        self.func_in_sel_cfg(79)
623    }
624    #[doc = "0x294 - GPIO input function configuration register"]
625    #[inline(always)]
626    pub const fn func80_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
627        self.func_in_sel_cfg(80)
628    }
629    #[doc = "0x298 - GPIO input function configuration register"]
630    #[inline(always)]
631    pub const fn func81_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
632        self.func_in_sel_cfg(81)
633    }
634    #[doc = "0x29c - GPIO input function configuration register"]
635    #[inline(always)]
636    pub const fn func82_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
637        self.func_in_sel_cfg(82)
638    }
639    #[doc = "0x2a0 - GPIO input function configuration register"]
640    #[inline(always)]
641    pub const fn func83_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
642        self.func_in_sel_cfg(83)
643    }
644    #[doc = "0x2a4 - GPIO input function configuration register"]
645    #[inline(always)]
646    pub const fn func84_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
647        self.func_in_sel_cfg(84)
648    }
649    #[doc = "0x2a8 - GPIO input function configuration register"]
650    #[inline(always)]
651    pub const fn func85_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
652        self.func_in_sel_cfg(85)
653    }
654    #[doc = "0x2ac - GPIO input function configuration register"]
655    #[inline(always)]
656    pub const fn func86_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
657        self.func_in_sel_cfg(86)
658    }
659    #[doc = "0x2b0 - GPIO input function configuration register"]
660    #[inline(always)]
661    pub const fn func87_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
662        self.func_in_sel_cfg(87)
663    }
664    #[doc = "0x2b4 - GPIO input function configuration register"]
665    #[inline(always)]
666    pub const fn func88_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
667        self.func_in_sel_cfg(88)
668    }
669    #[doc = "0x2b8 - GPIO input function configuration register"]
670    #[inline(always)]
671    pub const fn func89_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
672        self.func_in_sel_cfg(89)
673    }
674    #[doc = "0x2bc - GPIO input function configuration register"]
675    #[inline(always)]
676    pub const fn func90_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
677        self.func_in_sel_cfg(90)
678    }
679    #[doc = "0x2c0 - GPIO input function configuration register"]
680    #[inline(always)]
681    pub const fn func91_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
682        self.func_in_sel_cfg(91)
683    }
684    #[doc = "0x2c4 - GPIO input function configuration register"]
685    #[inline(always)]
686    pub const fn func92_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
687        self.func_in_sel_cfg(92)
688    }
689    #[doc = "0x2c8 - GPIO input function configuration register"]
690    #[inline(always)]
691    pub const fn func93_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
692        self.func_in_sel_cfg(93)
693    }
694    #[doc = "0x2cc - GPIO input function configuration register"]
695    #[inline(always)]
696    pub const fn func94_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
697        self.func_in_sel_cfg(94)
698    }
699    #[doc = "0x2d0 - GPIO input function configuration register"]
700    #[inline(always)]
701    pub const fn func95_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
702        self.func_in_sel_cfg(95)
703    }
704    #[doc = "0x2d4 - GPIO input function configuration register"]
705    #[inline(always)]
706    pub const fn func96_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
707        self.func_in_sel_cfg(96)
708    }
709    #[doc = "0x2d8 - GPIO input function configuration register"]
710    #[inline(always)]
711    pub const fn func97_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
712        self.func_in_sel_cfg(97)
713    }
714    #[doc = "0x2dc - GPIO input function configuration register"]
715    #[inline(always)]
716    pub const fn func98_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
717        self.func_in_sel_cfg(98)
718    }
719    #[doc = "0x2e0 - GPIO input function configuration register"]
720    #[inline(always)]
721    pub const fn func99_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
722        self.func_in_sel_cfg(99)
723    }
724    #[doc = "0x2e4 - GPIO input function configuration register"]
725    #[inline(always)]
726    pub const fn func100_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
727        self.func_in_sel_cfg(100)
728    }
729    #[doc = "0x2e8 - GPIO input function configuration register"]
730    #[inline(always)]
731    pub const fn func101_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
732        self.func_in_sel_cfg(101)
733    }
734    #[doc = "0x2ec - GPIO input function configuration register"]
735    #[inline(always)]
736    pub const fn func102_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
737        self.func_in_sel_cfg(102)
738    }
739    #[doc = "0x2f0 - GPIO input function configuration register"]
740    #[inline(always)]
741    pub const fn func103_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
742        self.func_in_sel_cfg(103)
743    }
744    #[doc = "0x2f4 - GPIO input function configuration register"]
745    #[inline(always)]
746    pub const fn func104_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
747        self.func_in_sel_cfg(104)
748    }
749    #[doc = "0x2f8 - GPIO input function configuration register"]
750    #[inline(always)]
751    pub const fn func105_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
752        self.func_in_sel_cfg(105)
753    }
754    #[doc = "0x2fc - GPIO input function configuration register"]
755    #[inline(always)]
756    pub const fn func106_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
757        self.func_in_sel_cfg(106)
758    }
759    #[doc = "0x300 - GPIO input function configuration register"]
760    #[inline(always)]
761    pub const fn func107_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
762        self.func_in_sel_cfg(107)
763    }
764    #[doc = "0x304 - GPIO input function configuration register"]
765    #[inline(always)]
766    pub const fn func108_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
767        self.func_in_sel_cfg(108)
768    }
769    #[doc = "0x308 - GPIO input function configuration register"]
770    #[inline(always)]
771    pub const fn func109_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
772        self.func_in_sel_cfg(109)
773    }
774    #[doc = "0x30c - GPIO input function configuration register"]
775    #[inline(always)]
776    pub const fn func110_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
777        self.func_in_sel_cfg(110)
778    }
779    #[doc = "0x310 - GPIO input function configuration register"]
780    #[inline(always)]
781    pub const fn func111_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
782        self.func_in_sel_cfg(111)
783    }
784    #[doc = "0x314 - GPIO input function configuration register"]
785    #[inline(always)]
786    pub const fn func112_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
787        self.func_in_sel_cfg(112)
788    }
789    #[doc = "0x318 - GPIO input function configuration register"]
790    #[inline(always)]
791    pub const fn func113_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
792        self.func_in_sel_cfg(113)
793    }
794    #[doc = "0x31c - GPIO input function configuration register"]
795    #[inline(always)]
796    pub const fn func114_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
797        self.func_in_sel_cfg(114)
798    }
799    #[doc = "0x320 - GPIO input function configuration register"]
800    #[inline(always)]
801    pub const fn func115_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
802        self.func_in_sel_cfg(115)
803    }
804    #[doc = "0x324 - GPIO input function configuration register"]
805    #[inline(always)]
806    pub const fn func116_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
807        self.func_in_sel_cfg(116)
808    }
809    #[doc = "0x328 - GPIO input function configuration register"]
810    #[inline(always)]
811    pub const fn func117_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
812        self.func_in_sel_cfg(117)
813    }
814    #[doc = "0x32c - GPIO input function configuration register"]
815    #[inline(always)]
816    pub const fn func118_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
817        self.func_in_sel_cfg(118)
818    }
819    #[doc = "0x330 - GPIO input function configuration register"]
820    #[inline(always)]
821    pub const fn func119_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
822        self.func_in_sel_cfg(119)
823    }
824    #[doc = "0x334 - GPIO input function configuration register"]
825    #[inline(always)]
826    pub const fn func120_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
827        self.func_in_sel_cfg(120)
828    }
829    #[doc = "0x338 - GPIO input function configuration register"]
830    #[inline(always)]
831    pub const fn func121_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
832        self.func_in_sel_cfg(121)
833    }
834    #[doc = "0x33c - GPIO input function configuration register"]
835    #[inline(always)]
836    pub const fn func122_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
837        self.func_in_sel_cfg(122)
838    }
839    #[doc = "0x340 - GPIO input function configuration register"]
840    #[inline(always)]
841    pub const fn func123_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
842        self.func_in_sel_cfg(123)
843    }
844    #[doc = "0x344 - GPIO input function configuration register"]
845    #[inline(always)]
846    pub const fn func124_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
847        self.func_in_sel_cfg(124)
848    }
849    #[doc = "0x348 - GPIO input function configuration register"]
850    #[inline(always)]
851    pub const fn func125_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
852        self.func_in_sel_cfg(125)
853    }
854    #[doc = "0x34c - GPIO input function configuration register"]
855    #[inline(always)]
856    pub const fn func126_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
857        self.func_in_sel_cfg(126)
858    }
859    #[doc = "0x350 - GPIO input function configuration register"]
860    #[inline(always)]
861    pub const fn func127_in_sel_cfg(&self) -> &FUNC_IN_SEL_CFG {
862        self.func_in_sel_cfg(127)
863    }
864    #[doc = "0x554..0x5d0 - GPIO output function select register"]
865    #[inline(always)]
866    pub const fn func_out_sel_cfg(&self, n: usize) -> &FUNC_OUT_SEL_CFG {
867        &self.func_out_sel_cfg[n]
868    }
869    #[doc = "Iterator for array of:"]
870    #[doc = "0x554..0x5d0 - GPIO output function select register"]
871    #[inline(always)]
872    pub fn func_out_sel_cfg_iter(&self) -> impl Iterator<Item = &FUNC_OUT_SEL_CFG> {
873        self.func_out_sel_cfg.iter()
874    }
875    #[doc = "0x554 - GPIO output function select register"]
876    #[inline(always)]
877    pub const fn func0_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
878        self.func_out_sel_cfg(0)
879    }
880    #[doc = "0x558 - GPIO output function select register"]
881    #[inline(always)]
882    pub const fn func1_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
883        self.func_out_sel_cfg(1)
884    }
885    #[doc = "0x55c - GPIO output function select register"]
886    #[inline(always)]
887    pub const fn func2_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
888        self.func_out_sel_cfg(2)
889    }
890    #[doc = "0x560 - GPIO output function select register"]
891    #[inline(always)]
892    pub const fn func3_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
893        self.func_out_sel_cfg(3)
894    }
895    #[doc = "0x564 - GPIO output function select register"]
896    #[inline(always)]
897    pub const fn func4_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
898        self.func_out_sel_cfg(4)
899    }
900    #[doc = "0x568 - GPIO output function select register"]
901    #[inline(always)]
902    pub const fn func5_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
903        self.func_out_sel_cfg(5)
904    }
905    #[doc = "0x56c - GPIO output function select register"]
906    #[inline(always)]
907    pub const fn func6_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
908        self.func_out_sel_cfg(6)
909    }
910    #[doc = "0x570 - GPIO output function select register"]
911    #[inline(always)]
912    pub const fn func7_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
913        self.func_out_sel_cfg(7)
914    }
915    #[doc = "0x574 - GPIO output function select register"]
916    #[inline(always)]
917    pub const fn func8_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
918        self.func_out_sel_cfg(8)
919    }
920    #[doc = "0x578 - GPIO output function select register"]
921    #[inline(always)]
922    pub const fn func9_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
923        self.func_out_sel_cfg(9)
924    }
925    #[doc = "0x57c - GPIO output function select register"]
926    #[inline(always)]
927    pub const fn func10_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
928        self.func_out_sel_cfg(10)
929    }
930    #[doc = "0x580 - GPIO output function select register"]
931    #[inline(always)]
932    pub const fn func11_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
933        self.func_out_sel_cfg(11)
934    }
935    #[doc = "0x584 - GPIO output function select register"]
936    #[inline(always)]
937    pub const fn func12_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
938        self.func_out_sel_cfg(12)
939    }
940    #[doc = "0x588 - GPIO output function select register"]
941    #[inline(always)]
942    pub const fn func13_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
943        self.func_out_sel_cfg(13)
944    }
945    #[doc = "0x58c - GPIO output function select register"]
946    #[inline(always)]
947    pub const fn func14_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
948        self.func_out_sel_cfg(14)
949    }
950    #[doc = "0x590 - GPIO output function select register"]
951    #[inline(always)]
952    pub const fn func15_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
953        self.func_out_sel_cfg(15)
954    }
955    #[doc = "0x594 - GPIO output function select register"]
956    #[inline(always)]
957    pub const fn func16_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
958        self.func_out_sel_cfg(16)
959    }
960    #[doc = "0x598 - GPIO output function select register"]
961    #[inline(always)]
962    pub const fn func17_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
963        self.func_out_sel_cfg(17)
964    }
965    #[doc = "0x59c - GPIO output function select register"]
966    #[inline(always)]
967    pub const fn func18_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
968        self.func_out_sel_cfg(18)
969    }
970    #[doc = "0x5a0 - GPIO output function select register"]
971    #[inline(always)]
972    pub const fn func19_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
973        self.func_out_sel_cfg(19)
974    }
975    #[doc = "0x5a4 - GPIO output function select register"]
976    #[inline(always)]
977    pub const fn func20_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
978        self.func_out_sel_cfg(20)
979    }
980    #[doc = "0x5a8 - GPIO output function select register"]
981    #[inline(always)]
982    pub const fn func21_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
983        self.func_out_sel_cfg(21)
984    }
985    #[doc = "0x5ac - GPIO output function select register"]
986    #[inline(always)]
987    pub const fn func22_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
988        self.func_out_sel_cfg(22)
989    }
990    #[doc = "0x5b0 - GPIO output function select register"]
991    #[inline(always)]
992    pub const fn func23_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
993        self.func_out_sel_cfg(23)
994    }
995    #[doc = "0x5b4 - GPIO output function select register"]
996    #[inline(always)]
997    pub const fn func24_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
998        self.func_out_sel_cfg(24)
999    }
1000    #[doc = "0x5b8 - GPIO output function select register"]
1001    #[inline(always)]
1002    pub const fn func25_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1003        self.func_out_sel_cfg(25)
1004    }
1005    #[doc = "0x5bc - GPIO output function select register"]
1006    #[inline(always)]
1007    pub const fn func26_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1008        self.func_out_sel_cfg(26)
1009    }
1010    #[doc = "0x5c0 - GPIO output function select register"]
1011    #[inline(always)]
1012    pub const fn func27_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1013        self.func_out_sel_cfg(27)
1014    }
1015    #[doc = "0x5c4 - GPIO output function select register"]
1016    #[inline(always)]
1017    pub const fn func28_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1018        self.func_out_sel_cfg(28)
1019    }
1020    #[doc = "0x5c8 - GPIO output function select register"]
1021    #[inline(always)]
1022    pub const fn func29_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1023        self.func_out_sel_cfg(29)
1024    }
1025    #[doc = "0x5cc - GPIO output function select register"]
1026    #[inline(always)]
1027    pub const fn func30_out_sel_cfg(&self) -> &FUNC_OUT_SEL_CFG {
1028        self.func_out_sel_cfg(30)
1029    }
1030    #[doc = "0x62c - GPIO clock gate register"]
1031    #[inline(always)]
1032    pub const fn clock_gate(&self) -> &CLOCK_GATE {
1033        &self.clock_gate
1034    }
1035    #[doc = "0x6fc - GPIO version register"]
1036    #[inline(always)]
1037    pub const fn date(&self) -> &DATE {
1038        &self.date
1039    }
1040}
1041#[doc = "BT_SELECT (rw) register accessor: GPIO bit select register\n\nYou can [`read`](crate::Reg::read) this register and get [`bt_select::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bt_select::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bt_select`] module"]
1042pub type BT_SELECT = crate::Reg<bt_select::BT_SELECT_SPEC>;
1043#[doc = "GPIO bit select register"]
1044pub mod bt_select;
1045#[doc = "OUT (rw) register accessor: GPIO output register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`out::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out`] module"]
1046pub type OUT = crate::Reg<out::OUT_SPEC>;
1047#[doc = "GPIO output register for GPIO0-31"]
1048pub mod out;
1049#[doc = "OUT_W1TS (w) register accessor: GPIO output set register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out_w1ts`] module"]
1050pub type OUT_W1TS = crate::Reg<out_w1ts::OUT_W1TS_SPEC>;
1051#[doc = "GPIO output set register for GPIO0-31"]
1052pub mod out_w1ts;
1053#[doc = "OUT_W1TC (w) register accessor: GPIO output clear register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out_w1tc`] module"]
1054pub type OUT_W1TC = crate::Reg<out_w1tc::OUT_W1TC_SPEC>;
1055#[doc = "GPIO output clear register for GPIO0-31"]
1056pub mod out_w1tc;
1057#[doc = "OUT1 (rw) register accessor: GPIO output register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`out1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out1`] module"]
1058pub type OUT1 = crate::Reg<out1::OUT1_SPEC>;
1059#[doc = "GPIO output register for GPIO32-34"]
1060pub mod out1;
1061#[doc = "OUT1_W1TS (w) register accessor: GPIO output set register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out1_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out1_w1ts`] module"]
1062pub type OUT1_W1TS = crate::Reg<out1_w1ts::OUT1_W1TS_SPEC>;
1063#[doc = "GPIO output set register for GPIO32-34"]
1064pub mod out1_w1ts;
1065#[doc = "OUT1_W1TC (w) register accessor: GPIO output clear register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out1_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out1_w1tc`] module"]
1066pub type OUT1_W1TC = crate::Reg<out1_w1tc::OUT1_W1TC_SPEC>;
1067#[doc = "GPIO output clear register for GPIO32-34"]
1068pub mod out1_w1tc;
1069#[doc = "SDIO_SELECT (rw) register accessor: GPIO sdio select register\n\nYou can [`read`](crate::Reg::read) this register and get [`sdio_select::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sdio_select::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@sdio_select`] module"]
1070pub type SDIO_SELECT = crate::Reg<sdio_select::SDIO_SELECT_SPEC>;
1071#[doc = "GPIO sdio select register"]
1072pub mod sdio_select;
1073#[doc = "ENABLE (rw) register accessor: GPIO output enable register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`enable::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable`] module"]
1074pub type ENABLE = crate::Reg<enable::ENABLE_SPEC>;
1075#[doc = "GPIO output enable register for GPIO0-31"]
1076pub mod enable;
1077#[doc = "ENABLE_W1TS (w) register accessor: GPIO output enable set register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable_w1ts`] module"]
1078pub type ENABLE_W1TS = crate::Reg<enable_w1ts::ENABLE_W1TS_SPEC>;
1079#[doc = "GPIO output enable set register for GPIO0-31"]
1080pub mod enable_w1ts;
1081#[doc = "ENABLE_W1TC (w) register accessor: GPIO output enable clear register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable_w1tc`] module"]
1082pub type ENABLE_W1TC = crate::Reg<enable_w1tc::ENABLE_W1TC_SPEC>;
1083#[doc = "GPIO output enable clear register for GPIO0-31"]
1084pub mod enable_w1tc;
1085#[doc = "ENABLE1 (rw) register accessor: GPIO output enable register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`enable1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable1`] module"]
1086pub type ENABLE1 = crate::Reg<enable1::ENABLE1_SPEC>;
1087#[doc = "GPIO output enable register for GPIO32-34"]
1088pub mod enable1;
1089#[doc = "ENABLE1_W1TS (w) register accessor: GPIO output enable set register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable1_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable1_w1ts`] module"]
1090pub type ENABLE1_W1TS = crate::Reg<enable1_w1ts::ENABLE1_W1TS_SPEC>;
1091#[doc = "GPIO output enable set register for GPIO32-34"]
1092pub mod enable1_w1ts;
1093#[doc = "ENABLE1_W1TC (w) register accessor: GPIO output enable clear register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`enable1_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@enable1_w1tc`] module"]
1094pub type ENABLE1_W1TC = crate::Reg<enable1_w1tc::ENABLE1_W1TC_SPEC>;
1095#[doc = "GPIO output enable clear register for GPIO32-34"]
1096pub mod enable1_w1tc;
1097#[doc = "STRAP (r) register accessor: pad strapping register\n\nYou can [`read`](crate::Reg::read) this register and get [`strap::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@strap`] module"]
1098pub type STRAP = crate::Reg<strap::STRAP_SPEC>;
1099#[doc = "pad strapping register"]
1100pub mod strap;
1101#[doc = "IN (r) register accessor: GPIO input register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`in_::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@in_`] module"]
1102pub type IN = crate::Reg<in_::IN_SPEC>;
1103#[doc = "GPIO input register for GPIO0-31"]
1104pub mod in_;
1105#[doc = "IN1 (r) register accessor: GPIO input register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`in1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@in1`] module"]
1106pub type IN1 = crate::Reg<in1::IN1_SPEC>;
1107#[doc = "GPIO input register for GPIO32-34"]
1108pub mod in1;
1109#[doc = "STATUS (rw) register accessor: GPIO interrupt status register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status`] module"]
1110pub type STATUS = crate::Reg<status::STATUS_SPEC>;
1111#[doc = "GPIO interrupt status register for GPIO0-31"]
1112pub mod status;
1113#[doc = "STATUS_W1TS (w) register accessor: GPIO interrupt status set register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status_w1ts`] module"]
1114pub type STATUS_W1TS = crate::Reg<status_w1ts::STATUS_W1TS_SPEC>;
1115#[doc = "GPIO interrupt status set register for GPIO0-31"]
1116pub mod status_w1ts;
1117#[doc = "STATUS_W1TC (w) register accessor: GPIO interrupt status clear register for GPIO0-31\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status_w1tc`] module"]
1118pub type STATUS_W1TC = crate::Reg<status_w1tc::STATUS_W1TC_SPEC>;
1119#[doc = "GPIO interrupt status clear register for GPIO0-31"]
1120pub mod status_w1tc;
1121#[doc = "STATUS1 (rw) register accessor: GPIO interrupt status register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`status1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status1`] module"]
1122pub type STATUS1 = crate::Reg<status1::STATUS1_SPEC>;
1123#[doc = "GPIO interrupt status register for GPIO32-34"]
1124pub mod status1;
1125#[doc = "STATUS1_W1TS (w) register accessor: GPIO interrupt status set register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status1_w1ts::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status1_w1ts`] module"]
1126pub type STATUS1_W1TS = crate::Reg<status1_w1ts::STATUS1_W1TS_SPEC>;
1127#[doc = "GPIO interrupt status set register for GPIO32-34"]
1128pub mod status1_w1ts;
1129#[doc = "STATUS1_W1TC (w) register accessor: GPIO interrupt status clear register for GPIO32-34\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status1_w1tc::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status1_w1tc`] module"]
1130pub type STATUS1_W1TC = crate::Reg<status1_w1tc::STATUS1_W1TC_SPEC>;
1131#[doc = "GPIO interrupt status clear register for GPIO32-34"]
1132pub mod status1_w1tc;
1133#[doc = "PCPU_INT (r) register accessor: GPIO PRO_CPU interrupt status register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`pcpu_int::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pcpu_int`] module"]
1134pub type PCPU_INT = crate::Reg<pcpu_int::PCPU_INT_SPEC>;
1135#[doc = "GPIO PRO_CPU interrupt status register for GPIO0-31"]
1136pub mod pcpu_int;
1137#[doc = "PCPU_NMI_INT (r) register accessor: GPIO PRO_CPU(not shielded) interrupt status register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`pcpu_nmi_int::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pcpu_nmi_int`] module"]
1138pub type PCPU_NMI_INT = crate::Reg<pcpu_nmi_int::PCPU_NMI_INT_SPEC>;
1139#[doc = "GPIO PRO_CPU(not shielded) interrupt status register for GPIO0-31"]
1140pub mod pcpu_nmi_int;
1141#[doc = "CPUSDIO_INT (r) register accessor: GPIO CPUSDIO interrupt status register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`cpusdio_int::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cpusdio_int`] module"]
1142pub type CPUSDIO_INT = crate::Reg<cpusdio_int::CPUSDIO_INT_SPEC>;
1143#[doc = "GPIO CPUSDIO interrupt status register for GPIO0-31"]
1144pub mod cpusdio_int;
1145#[doc = "PCPU_INT1 (r) register accessor: GPIO PRO_CPU interrupt status register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`pcpu_int1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pcpu_int1`] module"]
1146pub type PCPU_INT1 = crate::Reg<pcpu_int1::PCPU_INT1_SPEC>;
1147#[doc = "GPIO PRO_CPU interrupt status register for GPIO32-34"]
1148pub mod pcpu_int1;
1149#[doc = "PCPU_NMI_INT1 (r) register accessor: GPIO PRO_CPU(not shielded) interrupt status register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`pcpu_nmi_int1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pcpu_nmi_int1`] module"]
1150pub type PCPU_NMI_INT1 = crate::Reg<pcpu_nmi_int1::PCPU_NMI_INT1_SPEC>;
1151#[doc = "GPIO PRO_CPU(not shielded) interrupt status register for GPIO32-34"]
1152pub mod pcpu_nmi_int1;
1153#[doc = "CPUSDIO_INT1 (r) register accessor: GPIO CPUSDIO interrupt status register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`cpusdio_int1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cpusdio_int1`] module"]
1154pub type CPUSDIO_INT1 = crate::Reg<cpusdio_int1::CPUSDIO_INT1_SPEC>;
1155#[doc = "GPIO CPUSDIO interrupt status register for GPIO32-34"]
1156pub mod cpusdio_int1;
1157#[doc = "PIN (rw) register accessor: GPIO pin configuration register\n\nYou can [`read`](crate::Reg::read) this register and get [`pin::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pin::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pin`] module"]
1158pub type PIN = crate::Reg<pin::PIN_SPEC>;
1159#[doc = "GPIO pin configuration register"]
1160pub mod pin;
1161#[doc = "STATUS_NEXT (r) register accessor: GPIO interrupt source register for GPIO0-31\n\nYou can [`read`](crate::Reg::read) this register and get [`status_next::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status_next`] module"]
1162pub type STATUS_NEXT = crate::Reg<status_next::STATUS_NEXT_SPEC>;
1163#[doc = "GPIO interrupt source register for GPIO0-31"]
1164pub mod status_next;
1165#[doc = "STATUS_NEXT1 (r) register accessor: GPIO interrupt source register for GPIO32-34\n\nYou can [`read`](crate::Reg::read) this register and get [`status_next1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status_next1`] module"]
1166pub type STATUS_NEXT1 = crate::Reg<status_next1::STATUS_NEXT1_SPEC>;
1167#[doc = "GPIO interrupt source register for GPIO32-34"]
1168pub mod status_next1;
1169#[doc = "FUNC_IN_SEL_CFG (rw) register accessor: GPIO input function configuration register\n\nYou can [`read`](crate::Reg::read) this register and get [`func_in_sel_cfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`func_in_sel_cfg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@func_in_sel_cfg`] module"]
1170pub type FUNC_IN_SEL_CFG = crate::Reg<func_in_sel_cfg::FUNC_IN_SEL_CFG_SPEC>;
1171#[doc = "GPIO input function configuration register"]
1172pub mod func_in_sel_cfg;
1173#[doc = "FUNC_OUT_SEL_CFG (rw) register accessor: GPIO output function select register\n\nYou can [`read`](crate::Reg::read) this register and get [`func_out_sel_cfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`func_out_sel_cfg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@func_out_sel_cfg`] module"]
1174pub type FUNC_OUT_SEL_CFG = crate::Reg<func_out_sel_cfg::FUNC_OUT_SEL_CFG_SPEC>;
1175#[doc = "GPIO output function select register"]
1176pub mod func_out_sel_cfg;
1177#[doc = "CLOCK_GATE (rw) register accessor: GPIO clock gate register\n\nYou can [`read`](crate::Reg::read) this register and get [`clock_gate::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`clock_gate::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@clock_gate`] module"]
1178pub type CLOCK_GATE = crate::Reg<clock_gate::CLOCK_GATE_SPEC>;
1179#[doc = "GPIO clock gate register"]
1180pub mod clock_gate;
1181#[doc = "DATE (rw) register accessor: GPIO version register\n\nYou can [`read`](crate::Reg::read) this register and get [`date::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`date::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@date`] module"]
1182pub type DATE = crate::Reg<date::DATE_SPEC>;
1183#[doc = "GPIO version register"]
1184pub mod date;