1 /*
2  * Copyright (c) 2017 Linaro Limited
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #ifndef ZEPHYR_STM32_PINCTRL_COMMON_H_
8 #define ZEPHYR_STM32_PINCTRL_COMMON_H_
9 
10 /**
11  * @brief numerical IDs for IO ports
12  */
13 
14 #define	STM32_PORTA 0	/* IO port A */
15 #define	STM32_PORTB 1	/* .. */
16 #define	STM32_PORTC 2
17 #define	STM32_PORTD 3
18 #define	STM32_PORTE 4
19 #define	STM32_PORTF 5
20 #define	STM32_PORTG 6
21 #define	STM32_PORTH 7
22 #define	STM32_PORTI 8
23 #define	STM32_PORTJ 9
24 #define	STM32_PORTK 10	/* IO port K */
25 
26 #ifndef STM32_PORTS_MAX
27 #define STM32_PORTS_MAX (STM32_PORTK + 1)
28 #endif
29 
30 /**
31  * @brief helper macro to encode an IO port pin in a numerical format
32  */
33 #define STM32PIN(_port, _pin) \
34 	(_port << 4 | _pin)
35 
36 #endif	/* ZEPHYR_STM32_PINCTRL_COMMON_H_ */
37