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