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 #define STM32_PORTM 12 /* IO port M (0xC) */ 26 #define STM32_PORTN 13 27 #define STM32_PORTO 14 28 #define STM32_PORTP 15 /* IO port P (0xF) */ 29 30 #ifndef STM32_PORTS_MAX 31 #define STM32_PORTS_MAX (STM32_PORTP + 1) 32 #endif 33 34 /** 35 * @brief helper macro to encode an IO port pin in a numerical format 36 */ 37 #define STM32PIN(_port, _pin) \ 38 (_port << 4 | _pin) 39 40 #endif /* ZEPHYR_STM32_PINCTRL_COMMON_H_ */ 41