1 /***************************************************************************//**
2  * @file
3  * @brief Device Manager GPIO.
4  *******************************************************************************
5  * # License
6  * <b>Copyright 2024 Silicon Laboratories, Inc. www.silabs.com</b>
7  ******************************************************************************
8  *
9  * SPDX-License-Identifier: Zlib
10  *
11  * The licensor of this software is Silicon Laboratories Inc.
12  *
13  * This software is provided 'as-is', without any express or implied
14  * warranty. In no event will the authors be held liable for any damages
15  * arising from the use of this software.
16  *
17  * Permission is granted to anyone to use this software for any purpose,
18  * including commercial applications, and to alter it and redistribute it
19  * freely, subject to the following restrictions:
20  *
21  * 1. The origin of this software must not be misrepresented; you must not
22  *    claim that you wrote the original software. If you use this software
23  *    in a product, an acknowledgment in the product documentation would be
24  *    appreciated but is not required.
25  * 2. Altered source versions must be plainly marked as such, and must not be
26  *    misrepresented as being the original software.
27  * 3. This notice may not be removed or altered from any source distribution.
28  *
29  *****************************************************************************/
30 
31 #ifndef SL_DEVICE_GPIO_H
32 #define SL_DEVICE_GPIO_H
33 
34 #include <stdint.h>
35 #include <stdbool.h>
36 #include "sl_enum.h"
37 
38 #ifdef __cplusplus
39 extern "C" {
40 #endif
41 
42 /***************************************************************************//**
43  * @addtogroup device_gpio Device Manager GPIO
44  * @details
45  * ## Overview
46  *
47  * The Device Manager GPIO component defines the macros,
48  * structures, and enums that are used common across GPIO driver and
49  * peripheral.
50  *
51  * @{
52  ******************************************************************************/
53 
54 // ----------------------------------------------------------------------------
55 // ENUMS
56 
57 /// GPIO ports IDs.
SL_ENUM(sl_gpio_port_t)58 SL_ENUM(sl_gpio_port_t) {
59   SL_GPIO_PORT_A = 0,
60   SL_GPIO_PORT_B = 1,
61   SL_GPIO_PORT_C = 2,
62   SL_GPIO_PORT_D = 3,
63   SL_GPIO_PORT_E = 4,
64   SL_GPIO_PORT_F = 5,
65   SL_GPIO_PORT_G = 6,
66   SL_GPIO_PORT_H = 7,
67   SL_GPIO_PORT_I = 8,
68   SL_GPIO_PORT_J = 9,
69   SL_GPIO_PORT_K = 10,
70 };
71 
72 /// GPIO Pin Modes.
SL_ENUM(sl_gpio_mode_t)73 SL_ENUM(sl_gpio_mode_t) {
74   /// Input disabled. Pull-up if DOUT is set.
75   SL_GPIO_MODE_DISABLED,
76 
77   /// Input enabled. Filter if DOUT is set.
78   SL_GPIO_MODE_INPUT,
79 
80   /// Input enabled. DOUT determines pull direction.
81   SL_GPIO_MODE_INPUT_PULL,
82 
83   /// Input enabled with filter. DOUT determines pull direction.
84   SL_GPIO_MODE_INPUT_PULL_FILTER,
85 
86   /// Push-pull output.
87   SL_GPIO_MODE_PUSH_PULL,
88 
89   /// Push-pull using alternate control.
90   SL_GPIO_MODE_PUSH_PULL_ALTERNATE,
91 
92   /// Wired-or output.
93   SL_GPIO_MODE_WIRED_OR,
94 
95   /// Wired-or output with pull-down.
96   SL_GPIO_MODE_WIRED_OR_PULL_DOWN,
97 
98   /// Open-drain output.
99   SL_GPIO_MODE_WIRED_AND,
100 
101   /// Open-drain output with filter.
102   SL_GPIO_MODE_WIRED_AND_FILTER,
103 
104   /// Open-drain output with pull-up.
105   SL_GPIO_MODE_WIRED_AND_PULLUP,
106 
107   /// Open-drain output with filter and pull-up.
108   SL_GPIO_MODE_WIRED_AND_PULLUP_FILTER,
109 
110   /// Open-drain output using alternate control.
111   SL_GPIO_MODE_WIRED_AND_ALTERNATE,
112 
113   /// Open-drain output using alternate control with filter.
114   SL_GPIO_MODE_WIRED_AND_ALTERNATE_FILTER,
115 
116   /// Open-drain output using alternate control with pull-up.
117   SL_GPIO_MODE_WIRED_AND_ALTERNATE_PULLUP,
118 
119   /// Open-drain output using alternate control with filter and pull-up.
120   SL_GPIO_MODE_WIRED_AND_ALTERNATE_PULLUP_FILTER,
121 };
122 
123 /// GPIO Interrupt Configuration flags.
SL_ENUM(sl_gpio_interrupt_flag_t)124 SL_ENUM(sl_gpio_interrupt_flag_t) {
125   /// No edge configured.
126   SL_GPIO_INTERRUPT_NO_EDGE = 0,
127 
128   /// Interrupt on rising edge.
129   SL_GPIO_INTERRUPT_RISING_EDGE  = (1 << 0),
130 
131   /// Interrupt on falling edge.
132   SL_GPIO_INTERRUPT_FALLING_EDGE = (1 << 1),
133 
134   /// Interrupt on both rising and falling edge.
135   SL_GPIO_INTERRUPT_RISING_FALLING_EDGE = (1 << 2)
136 };
137 
138 /*******************************************************************************
139  ********************************   DEFINES   **********************************
140  ******************************************************************************/
141 
142 #define SL_GPIO_INTERRUPT_UNAVAILABLE (-1)
143 
144 /// Validation of flag.
145 #define SL_GPIO_FLAG_IS_VALID(flag)  ((flag == SL_GPIO_INTERRUPT_NO_EDGE) || (flag == SL_GPIO_INTERRUPT_RISING_EDGE) || (flag == SL_GPIO_INTERRUPT_FALLING_EDGE) || (flag == SL_GPIO_INTERRUPT_RISING_FALLING_EDGE))
146 
147 /// Define for available ports and pins
148 #define PA0 (&pa0)
149 #define PA1 (&pa1)
150 #define PA2 (&pa2)
151 #define PA3 (&pa3)
152 #define PA4 (&pa4)
153 #define PA5 (&pa5)
154 #define PA6 (&pa6)
155 #define PA7 (&pa7)
156 #define PA8 (&pa8)
157 #define PA9 (&pa9)
158 #define PA10 (&pa10)
159 #define PA11 (&pa11)
160 #define PA12 (&pa12)
161 #define PA13 (&pa13)
162 #define PA14 (&pa14)
163 #define PA15 (&pa15)
164 #define PA16 (&pa16)
165 #define PA17 (&pa17)
166 #define PA18 (&pa18)
167 #define PA19 (&pa19)
168 #define PA20 (&pa20)
169 #define PA21 (&pa21)
170 #define PA22 (&pa22)
171 #define PA23 (&pa23)
172 #define PA24 (&pa24)
173 #define PA25 (&pa25)
174 #define PA26 (&pa26)
175 #define PA27 (&pa27)
176 #define PA28 (&pa28)
177 #define PA29 (&pa29)
178 #define PA30 (&pa30)
179 #define PA31 (&pa31)
180 
181 #define PB0 (&pb0)
182 #define PB1 (&pb1)
183 #define PB2 (&pb2)
184 #define PB3 (&pb3)
185 #define PB4 (&pb4)
186 #define PB5 (&pb5)
187 #define PB6 (&pb6)
188 #define PB7 (&pb7)
189 #define PB8 (&pb8)
190 #define PB9 (&pb9)
191 #define PB10 (&pb10)
192 #define PB11 (&pb11)
193 #define PB12 (&pb12)
194 #define PB13 (&pb13)
195 #define PB14 (&pb14)
196 #define PB15 (&pb15)
197 #define PB16 (&pb16)
198 #define PB17 (&pb17)
199 #define PB18 (&pb18)
200 #define PB19 (&pb19)
201 #define PB20 (&pb20)
202 #define PB21 (&pb21)
203 #define PB22 (&pb22)
204 #define PB23 (&pb23)
205 #define PB24 (&pb24)
206 #define PB25 (&pb25)
207 #define PB26 (&pb26)
208 #define PB27 (&pb27)
209 #define PB28 (&pb28)
210 #define PB29 (&pb29)
211 #define PB30 (&pb30)
212 #define PB31 (&pb31)
213 
214 #define PC0 (&pc0)
215 #define PC1 (&pc1)
216 #define PC2 (&pc2)
217 #define PC3 (&pc3)
218 #define PC4 (&pc4)
219 #define PC5 (&pc5)
220 #define PC6 (&pc6)
221 #define PC7 (&pc7)
222 #define PC8 (&pc8)
223 #define PC9 (&pc9)
224 #define PC10 (&pc10)
225 #define PC11 (&pc11)
226 #define PC12 (&pc12)
227 #define PC13 (&pc13)
228 #define PC14 (&pc14)
229 #define PC15 (&pc15)
230 #define PC16 (&pc16)
231 #define PC17 (&pc17)
232 #define PC18 (&pc18)
233 #define PC19 (&pc19)
234 #define PC20 (&pc20)
235 #define PC21 (&pc21)
236 #define PC22 (&pc22)
237 #define PC23 (&pc23)
238 #define PC24 (&pc24)
239 #define PC25 (&pc25)
240 #define PC26 (&pc26)
241 #define PC27 (&pc27)
242 #define PC28 (&pc28)
243 #define PC29 (&pc29)
244 #define PC30 (&pc30)
245 #define PC31 (&pc31)
246 
247 #define PD0 (&pd0)
248 #define PD1 (&pd1)
249 #define PD2 (&pd2)
250 #define PD3 (&pd3)
251 #define PD4 (&pd4)
252 #define PD5 (&pd5)
253 #define PD6 (&pd6)
254 #define PD7 (&pd7)
255 #define PD8 (&pd8)
256 #define PD9 (&pd9)
257 #define PD10 (&pd10)
258 #define PD11 (&pd11)
259 #define PD12 (&pd12)
260 #define PD13 (&pd13)
261 #define PD14 (&pd14)
262 #define PD15 (&pd15)
263 #define PD16 (&pd16)
264 #define PD17 (&pd17)
265 #define PD18 (&pd18)
266 #define PD19 (&pd19)
267 #define PD20 (&pd20)
268 #define PD21 (&pd21)
269 #define PD22 (&pd22)
270 #define PD23 (&pd23)
271 #define PD24 (&pd24)
272 #define PD25 (&pd25)
273 #define PD26 (&pd26)
274 #define PD27 (&pd27)
275 #define PD28 (&pd28)
276 #define PD29 (&pd29)
277 #define PD30 (&pd30)
278 #define PD31 (&pd31)
279 
280 #define PE0 (&pe0)
281 #define PE1 (&pe1)
282 #define PE2 (&pe2)
283 #define PE3 (&pe3)
284 #define PE4 (&pe4)
285 #define PE5 (&pe5)
286 #define PE6 (&pe6)
287 #define PE7 (&pe7)
288 #define PE8 (&pe8)
289 #define PE9 (&pe9)
290 #define PE10 (&pe10)
291 #define PE11 (&pe11)
292 #define PE12 (&pe12)
293 #define PE13 (&pe13)
294 #define PE14 (&pe14)
295 #define PE15 (&pe15)
296 #define PE16 (&pe16)
297 #define PE17 (&pe17)
298 #define PE18 (&pe18)
299 #define PE19 (&pe19)
300 #define PE20 (&pe20)
301 #define PE21 (&pe21)
302 #define PE22 (&pe22)
303 #define PE23 (&pe23)
304 #define PE24 (&pe24)
305 #define PE25 (&pe25)
306 #define PE26 (&pe26)
307 #define PE27 (&pe27)
308 #define PE28 (&pe28)
309 #define PE29 (&pe29)
310 #define PE30 (&pe30)
311 #define PE31 (&pe31)
312 
313 #define PF0 (&pf0)
314 #define PF1 (&pf1)
315 #define PF2 (&pf2)
316 #define PF3 (&pf3)
317 #define PF4 (&pf4)
318 #define PF5 (&pf5)
319 #define PF6 (&pf6)
320 #define PF7 (&pf7)
321 #define PF8 (&pf8)
322 #define PF9 (&pf9)
323 #define PF10 (&pf10)
324 #define PF11 (&pf11)
325 #define PF12 (&pf12)
326 #define PF13 (&pf13)
327 #define PF14 (&pf14)
328 #define PF15 (&pf15)
329 #define PF16 (&pf16)
330 #define PF17 (&pf17)
331 #define PF18 (&pf18)
332 #define PF19 (&pf19)
333 #define PF20 (&pf20)
334 #define PF21 (&pf21)
335 #define PF22 (&pf22)
336 #define PF23 (&pf23)
337 #define PF24 (&pf24)
338 #define PF25 (&pf25)
339 #define PF26 (&pf26)
340 #define PF27 (&pf27)
341 #define PF28 (&pf28)
342 #define PF29 (&pf29)
343 #define PF30 (&pf30)
344 #define PF31 (&pf31)
345 
346 #define PG0 (&pg0)
347 #define PG1 (&pg1)
348 #define PG2 (&pg2)
349 #define PG3 (&pg3)
350 #define PG4 (&pg4)
351 #define PG5 (&pg5)
352 #define PG6 (&pg6)
353 #define PG7 (&pg7)
354 #define PG8 (&pg8)
355 #define PG9 (&pg9)
356 #define PG10 (&pg10)
357 #define PG11 (&pg11)
358 #define PG12 (&pg12)
359 #define PG13 (&pg13)
360 #define PG14 (&pg14)
361 #define PG15 (&pg15)
362 #define PG16 (&pg16)
363 #define PG17 (&pg17)
364 #define PG18 (&pg18)
365 #define PG19 (&pg19)
366 #define PG20 (&pg20)
367 #define PG21 (&pg21)
368 #define PG22 (&pg22)
369 #define PG23 (&pg23)
370 #define PG24 (&pg24)
371 #define PG25 (&pg25)
372 #define PG26 (&pg26)
373 #define PG27 (&pg27)
374 #define PG28 (&pg28)
375 #define PG29 (&pg29)
376 #define PG30 (&pg30)
377 #define PG31 (&pg31)
378 
379 #define PH0 (&ph0)
380 #define PH1 (&ph1)
381 #define PH2 (&ph2)
382 #define PH3 (&ph3)
383 #define PH4 (&ph4)
384 #define PH5 (&ph5)
385 #define PH6 (&ph6)
386 #define PH7 (&ph7)
387 #define PH8 (&ph8)
388 #define PH9 (&ph9)
389 #define PH10 (&ph10)
390 #define PH11 (&ph11)
391 #define PH12 (&ph12)
392 #define PH13 (&ph13)
393 #define PH14 (&ph14)
394 #define PH15 (&ph15)
395 #define PH16 (&ph16)
396 #define PH17 (&ph17)
397 #define PH18 (&ph18)
398 #define PH19 (&ph19)
399 #define PH20 (&ph20)
400 #define PH21 (&ph21)
401 #define PH22 (&ph22)
402 #define PH23 (&ph23)
403 #define PH24 (&ph24)
404 #define PH25 (&ph25)
405 #define PH26 (&ph26)
406 #define PH27 (&ph27)
407 #define PH28 (&ph28)
408 #define PH29 (&ph29)
409 #define PH30 (&ph30)
410 #define PH31 (&ph31)
411 
412 #define PI0 (&pi0)
413 #define PI1 (&pi1)
414 #define PI2 (&pi2)
415 #define PI3 (&pi3)
416 #define PI4 (&pi4)
417 #define PI5 (&pi5)
418 #define PI6 (&pi6)
419 #define PI7 (&pi7)
420 #define PI8 (&pi8)
421 #define PI9 (&pi9)
422 #define PI10 (&pi10)
423 #define PI11 (&pi11)
424 #define PI12 (&pi12)
425 #define PI13 (&pi13)
426 #define PI14 (&pi14)
427 #define PI15 (&pi15)
428 #define PI16 (&pi16)
429 #define PI17 (&pi17)
430 #define PI18 (&pi18)
431 #define PI19 (&pi19)
432 #define PI20 (&pi20)
433 #define PI21 (&pi21)
434 #define PI22 (&pi22)
435 #define PI23 (&pi23)
436 #define PI24 (&pi24)
437 #define PI25 (&pi25)
438 #define PI26 (&pi26)
439 #define PI27 (&pi27)
440 #define PI28 (&pi28)
441 #define PI29 (&pi29)
442 #define PI30 (&pi30)
443 #define PI31 (&pi31)
444 
445 #define PJ0 (&pj0)
446 #define PJ1 (&pj1)
447 #define PJ2 (&pj2)
448 #define PJ3 (&pj3)
449 #define PJ4 (&pj4)
450 #define PJ5 (&pj5)
451 #define PJ6 (&pj6)
452 #define PJ7 (&pj7)
453 #define PJ8 (&pj8)
454 #define PJ9 (&pj9)
455 #define PJ10 (&pj10)
456 #define PJ11 (&pj11)
457 #define PJ12 (&pj12)
458 #define PJ13 (&pj13)
459 #define PJ14 (&pj14)
460 #define PJ15 (&pj15)
461 #define PJ16 (&pj16)
462 #define PJ17 (&pj17)
463 #define PJ18 (&pj18)
464 #define PJ19 (&pj19)
465 #define PJ20 (&pj20)
466 #define PJ21 (&pj21)
467 #define PJ22 (&pj22)
468 #define PJ23 (&pj23)
469 #define PJ24 (&pj24)
470 #define PJ25 (&pj25)
471 #define PJ26 (&pj26)
472 #define PJ27 (&pj27)
473 #define PJ28 (&pj28)
474 #define PJ29 (&pj29)
475 #define PJ30 (&pj30)
476 #define PJ31 (&pj31)
477 
478 #define PK0 (&pk0)
479 #define PK1 (&pk1)
480 #define PK2 (&pk2)
481 #define PK3 (&pk3)
482 #define PK4 (&pk4)
483 #define PK5 (&pk5)
484 #define PK6 (&pk6)
485 #define PK7 (&pk7)
486 #define PK8 (&pk8)
487 #define PK9 (&pk9)
488 #define PK10 (&pk10)
489 #define PK11 (&pk11)
490 #define PK12 (&pk12)
491 #define PK13 (&pk13)
492 #define PK14 (&pk14)
493 #define PK15 (&pk15)
494 #define PK16 (&pk16)
495 #define PK17 (&pk17)
496 #define PK18 (&pk18)
497 #define PK19 (&pk19)
498 #define PK20 (&pk20)
499 #define PK21 (&pk21)
500 #define PK22 (&pk22)
501 #define PK23 (&pk23)
502 #define PK24 (&pk24)
503 #define PK25 (&pk25)
504 #define PK26 (&pk26)
505 #define PK27 (&pk27)
506 #define PK28 (&pk28)
507 #define PK29 (&pk29)
508 #define PK30 (&pk30)
509 #define PK31 (&pk31)
510 
511 /*******************************************************************************
512  *******************************   STRUCTS   ***********************************
513  ******************************************************************************/
514 
515 /// Structure for GPIO Port and Pin.
516 typedef struct {
517   uint8_t port;
518   uint8_t pin;
519 } sl_gpio_t;
520 
521 // ----------------------------------------------------------------------------
522 // EXTERNS
523 
524 /// @cond DO_NOT_INCLUDE_WITH_DOXYGEN
525 
526 extern const sl_gpio_t pa0;
527 extern const sl_gpio_t pa1;
528 extern const sl_gpio_t pa2;
529 extern const sl_gpio_t pa3;
530 extern const sl_gpio_t pa4;
531 extern const sl_gpio_t pa5;
532 extern const sl_gpio_t pa6;
533 extern const sl_gpio_t pa7;
534 extern const sl_gpio_t pa8;
535 extern const sl_gpio_t pa9;
536 extern const sl_gpio_t pa10;
537 extern const sl_gpio_t pa11;
538 extern const sl_gpio_t pa12;
539 extern const sl_gpio_t pa13;
540 extern const sl_gpio_t pa14;
541 extern const sl_gpio_t pa15;
542 extern const sl_gpio_t pa16;
543 extern const sl_gpio_t pa17;
544 extern const sl_gpio_t pa18;
545 extern const sl_gpio_t pa19;
546 extern const sl_gpio_t pa20;
547 extern const sl_gpio_t pa21;
548 extern const sl_gpio_t pa22;
549 extern const sl_gpio_t pa23;
550 extern const sl_gpio_t pa24;
551 extern const sl_gpio_t pa25;
552 extern const sl_gpio_t pa26;
553 extern const sl_gpio_t pa27;
554 extern const sl_gpio_t pa28;
555 extern const sl_gpio_t pa29;
556 extern const sl_gpio_t pa30;
557 extern const sl_gpio_t pa31;
558 extern const sl_gpio_t pa32;
559 
560 extern const sl_gpio_t pb0;
561 extern const sl_gpio_t pb1;
562 extern const sl_gpio_t pb2;
563 extern const sl_gpio_t pb3;
564 extern const sl_gpio_t pb4;
565 extern const sl_gpio_t pb5;
566 extern const sl_gpio_t pb6;
567 extern const sl_gpio_t pb7;
568 extern const sl_gpio_t pb8;
569 extern const sl_gpio_t pb9;
570 extern const sl_gpio_t pb10;
571 extern const sl_gpio_t pb11;
572 extern const sl_gpio_t pb12;
573 extern const sl_gpio_t pb13;
574 extern const sl_gpio_t pb14;
575 extern const sl_gpio_t pb15;
576 extern const sl_gpio_t pb16;
577 extern const sl_gpio_t pb17;
578 extern const sl_gpio_t pb18;
579 extern const sl_gpio_t pb19;
580 extern const sl_gpio_t pb20;
581 extern const sl_gpio_t pb21;
582 extern const sl_gpio_t pb22;
583 extern const sl_gpio_t pb23;
584 extern const sl_gpio_t pb24;
585 extern const sl_gpio_t pb25;
586 extern const sl_gpio_t pb26;
587 extern const sl_gpio_t pb27;
588 extern const sl_gpio_t pb28;
589 extern const sl_gpio_t pb29;
590 extern const sl_gpio_t pb30;
591 extern const sl_gpio_t pb31;
592 extern const sl_gpio_t pb32;
593 
594 extern const sl_gpio_t pc0;
595 extern const sl_gpio_t pc1;
596 extern const sl_gpio_t pc2;
597 extern const sl_gpio_t pc3;
598 extern const sl_gpio_t pc4;
599 extern const sl_gpio_t pc5;
600 extern const sl_gpio_t pc6;
601 extern const sl_gpio_t pc7;
602 extern const sl_gpio_t pc8;
603 extern const sl_gpio_t pc9;
604 extern const sl_gpio_t pc10;
605 extern const sl_gpio_t pc11;
606 extern const sl_gpio_t pc12;
607 extern const sl_gpio_t pc13;
608 extern const sl_gpio_t pc14;
609 extern const sl_gpio_t pc15;
610 extern const sl_gpio_t pc16;
611 extern const sl_gpio_t pc17;
612 extern const sl_gpio_t pc18;
613 extern const sl_gpio_t pc19;
614 extern const sl_gpio_t pc20;
615 extern const sl_gpio_t pc21;
616 extern const sl_gpio_t pc22;
617 extern const sl_gpio_t pc23;
618 extern const sl_gpio_t pc24;
619 extern const sl_gpio_t pc25;
620 extern const sl_gpio_t pc26;
621 extern const sl_gpio_t pc27;
622 extern const sl_gpio_t pc28;
623 extern const sl_gpio_t pc29;
624 extern const sl_gpio_t pc30;
625 extern const sl_gpio_t pc31;
626 extern const sl_gpio_t pc32;
627 
628 extern const sl_gpio_t pd0;
629 extern const sl_gpio_t pd1;
630 extern const sl_gpio_t pd2;
631 extern const sl_gpio_t pd3;
632 extern const sl_gpio_t pd4;
633 extern const sl_gpio_t pd5;
634 extern const sl_gpio_t pd6;
635 extern const sl_gpio_t pd7;
636 extern const sl_gpio_t pd8;
637 extern const sl_gpio_t pd9;
638 extern const sl_gpio_t pd10;
639 extern const sl_gpio_t pd11;
640 extern const sl_gpio_t pd12;
641 extern const sl_gpio_t pd13;
642 extern const sl_gpio_t pd14;
643 extern const sl_gpio_t pd15;
644 extern const sl_gpio_t pd16;
645 extern const sl_gpio_t pd17;
646 extern const sl_gpio_t pd18;
647 extern const sl_gpio_t pd19;
648 extern const sl_gpio_t pd20;
649 extern const sl_gpio_t pd21;
650 extern const sl_gpio_t pd22;
651 extern const sl_gpio_t pd23;
652 extern const sl_gpio_t pd24;
653 extern const sl_gpio_t pd25;
654 extern const sl_gpio_t pd26;
655 extern const sl_gpio_t pd27;
656 extern const sl_gpio_t pd28;
657 extern const sl_gpio_t pd29;
658 extern const sl_gpio_t pd30;
659 extern const sl_gpio_t pd31;
660 extern const sl_gpio_t pd32;
661 
662 /// @endcond
663 
664 /** @} (end addtogroup device_gpio) */
665 
666 #ifdef __cplusplus
667 }
668 #endif
669 
670 #endif // SL_DEVICE_GPIO_H
671