diff options
| author | Bernard Xiong <[email protected]> | 2020-09-27 17:15:04 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-09-27 17:15:04 +0800 |
| commit | e3d1ed45c6707360b2042c542bc7e9fa167c8138 (patch) | |
| tree | f02fe130b3a0b2ea50a885a6f13f28a76eb303a3 | |
| parent | aa05fc14696500620286b54c2621d07f0464cee4 (diff) | |
| parent | 076e33aa03d5ff8bb8bda78cb7c8987be03235d0 (diff) | |
Merge pull request #3936 from thread-liu/liukang
[update] stm32mp1 pin-index
| -rw-r--r-- | bsp/stm32/libraries/HAL_Drivers/drv_gpio.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_gpio.c b/bsp/stm32/libraries/HAL_Drivers/drv_gpio.c index 822e4f8301..8d1995c41b 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_gpio.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_gpio.c @@ -21,7 +21,17 @@ #define PIN_PORT(pin) ((uint8_t)(((pin) >> 4) & 0xFu)) #define PIN_NO(pin) ((uint8_t)((pin) & 0xFu)) +#if defined(SOC_SERIES_STM32MP1) +#if defined(GPIOZ) +#define gpioz_port_base (175) /* PIN_STPORT_MAX * 16 - 16 */ +#define PIN_STPORT(pin) ((pin > gpioz_port_base) ? ((GPIO_TypeDef *)(GPIOZ_BASE )) : ((GPIO_TypeDef *)(GPIOA_BASE + (0x1000u * PIN_PORT(pin))))) +#else +#define PIN_STPORT(pin) ((GPIO_TypeDef *)(GPIOA_BASE + (0x1000u * PIN_PORT(pin))))) +#endif /* GPIOZ */ +#else #define PIN_STPORT(pin) ((GPIO_TypeDef *)(GPIOA_BASE + (0x400u * PIN_PORT(pin)))) +#endif /* SOC_SERIES_STM32MP1 */ + #define PIN_STPIN(pin) ((uint16_t)(1u << PIN_NO(pin))) #if defined(GPIOZ) |
