This is an automated email from the ASF dual-hosted git repository. raiden00 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit ac6ad4504514b2fd10ee7b2e9a1980a6f5eaf0d8 Author: David Sidrane <[email protected]> AuthorDate: Wed Apr 12 06:55:10 2023 -0700 stm32l5:pinmap Add suffix to all pins and add legacy pinmap Pinmaps should not have contained GPIO_SPEED_xxx settings and all pins should have had suffixes to allow any pins attributes to be set. This is board dependent. This change adds CONFIG_STM32L5_USE_LEGACY_PINMAP to allow for lazy migration to using pinmaps with suffixes. The work required to do this can be aided by running tools/stm32_pinmap_tool.py. The tools will take a board.h file and a legacy pinmap and outut the required changes that one needs to make to a board.h file. Eventually, CONFIG_STM32L5_USE_LEGACY_PINMAP will be deprecated and the legacy pinmaps removed from NuttX. Any new boards added should set CONFIG_STM32L5_USE_LEGACY_PINMAP=n and fully define the pins in board.h --- arch/arm/src/stm32l5/Kconfig | 20 +++ arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h | 144 ++++++++++----------- ...l562xx_pinmap.h => stm32l562xx_pinmap_legacy.h} | 10 +- arch/arm/src/stm32l5/hardware/stm32l5_pinmap.h | 6 +- arch/arm/src/stm32l5/stm32l5_gpio.c | 4 + 5 files changed, 106 insertions(+), 78 deletions(-) diff --git a/arch/arm/src/stm32l5/Kconfig b/arch/arm/src/stm32l5/Kconfig index a7516b0b90..e6bbf904fb 100644 --- a/arch/arm/src/stm32l5/Kconfig +++ b/arch/arm/src/stm32l5/Kconfig @@ -196,6 +196,26 @@ config STM32L5_SRAM2_INIT case, the board should handle the initialization itself at the appropriate time. +config STM32L5_USE_LEGACY_PINMAP + bool "Use the legacy pinmap with GPIO_SPEED_xxx included." + default y + ---help--- + In the past, pinmap files included GPIO_SPEED_xxxMhz. These speed + settings should have come from the board.h as it describes the wiring + of the SoC to the board. The speed is really slew rate control and + therefore is related to the layout and can only be properly set + in board.h. + + CONFIG_STM32L5_USE_LEGACY_PINMAP is provided, to allow lazy migration to + using pinmaps without speeds. The work required to do this can be aided + by running tools/stm32_pinmap_tool.py. The tools will take a board.h + file and a legacy pinmap and output the required changes that one needs + to make to a board.h file. + + Eventually, CONFIG_STM32L5_USE_LEGACY_PINMAP will be deprecated and the + legacy pinmaps removed from NuttX. Any new boards added should set + CONFIG_STM32L5_USE_LEGACY_PINMAP=n and fully define the pins in board.h + comment "STM32L5 Peripherals" menu "STM32L5 Peripheral Support" diff --git a/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h b/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h index ac63302694..42130b7fb9 100644 --- a/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h +++ b/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h @@ -39,7 +39,7 @@ * Alternative pin selections are provided with a numeric suffix like _1, _2, * etc. Drivers, however, will use the pin selection without the numeric * suffix. Additional definitions are required in the board.h file. For - * example, if FDCAN1_RX connects vis PA11 on some board, then the following + * example, if FDCAN1_RX connects via PA11 on some board, then the following * definitions should appear inthe board.h header file for that board: * * #define GPIO_FDCAN1_RX GPIO_FDCAN1_RX_1 @@ -49,22 +49,22 @@ /* ADC */ -#define GPIO_ADC12_IN1 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN0) -#define GPIO_ADC12_IN2 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN1) -#define GPIO_ADC12_IN3 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN2) -#define GPIO_ADC12_IN4 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN3) -#define GPIO_ADC12_IN5 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN0) -#define GPIO_ADC12_IN6 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN1) -#define GPIO_ADC12_IN7 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN2) -#define GPIO_ADC12_IN8 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN3) -#define GPIO_ADC12_IN9 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN4) -#define GPIO_ADC12_IN10 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN5) -#define GPIO_ADC12_IN11 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN6) -#define GPIO_ADC12_IN12 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN7) -#define GPIO_ADC12_IN13 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN4) -#define GPIO_ADC12_IN14 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN5) -#define GPIO_ADC12_IN15 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN0) -#define GPIO_ADC12_IN16 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN1) +#define GPIO_ADC12_IN1_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN0) +#define GPIO_ADC12_IN2_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN1) +#define GPIO_ADC12_IN3_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN2) +#define GPIO_ADC12_IN4_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN3) +#define GPIO_ADC12_IN5_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN0) +#define GPIO_ADC12_IN6_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN1) +#define GPIO_ADC12_IN7_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN2) +#define GPIO_ADC12_IN8_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN3) +#define GPIO_ADC12_IN9_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN4) +#define GPIO_ADC12_IN10_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN5) +#define GPIO_ADC12_IN11_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN6) +#define GPIO_ADC12_IN12_0 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN7) +#define GPIO_ADC12_IN13_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN4) +#define GPIO_ADC12_IN14_0 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN5) +#define GPIO_ADC12_IN15_0 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN0) +#define GPIO_ADC12_IN16_0 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN1) /* FDCAN */ @@ -77,7 +77,7 @@ /* Clocks outputs */ -#define GPIO_MCO (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN8) +#define GPIO_MCO_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN8) /* Comparators */ @@ -171,11 +171,11 @@ /* JTAG */ -#define GPIO_JTCK_SWCLK (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN14) -#define GPIO_JTDI (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN15) -#define GPIO_JTDO (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN3) -#define GPIO_JTMS_SWDAT (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN13) -#define GPIO_JTRST (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN4) +#define GPIO_JTCK_SWCLK_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN14) +#define GPIO_JTDI_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN15) +#define GPIO_JTDO_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN3) +#define GPIO_JTMS_SWDAT_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTA|GPIO_PIN13) +#define GPIO_JTRST_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN4) /* OCTOSPI */ @@ -221,7 +221,7 @@ /* RTC */ -#define GPIO_RTC_REFIN (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN15) +#define GPIO_RTC_REFIN_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTB|GPIO_PIN15) /* SAI */ @@ -606,52 +606,52 @@ #define GPIO_TSC_SYNC_1 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN10) #define GPIO_TSC_SYNC_2 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN2) -#define GPIO_TSC_G1_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN12) -#define GPIO_TSC_G1_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN13) -#define GPIO_TSC_G1_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN14) -#define GPIO_TSC_G1_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN3) - -#define GPIO_TSC_G2_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN4) -#define GPIO_TSC_G2_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN5) -#define GPIO_TSC_G2_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN6) -#define GPIO_TSC_G2_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN7) - -#define GPIO_TSC_G3_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN2) -#define GPIO_TSC_G3_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN10) -#define GPIO_TSC_G3_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN11) -#define GPIO_TSC_G3_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN12) - -#define GPIO_TSC_G4_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN6) -#define GPIO_TSC_G4_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN7) -#define GPIO_TSC_G4_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN8) -#define GPIO_TSC_G4_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN9) - -#define GPIO_TSC_G5_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN10) -#define GPIO_TSC_G5_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN11) -#define GPIO_TSC_G5_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN12) -#define GPIO_TSC_G5_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN13) - -#define GPIO_TSC_G6_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN10) -#define GPIO_TSC_G6_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN11) -#define GPIO_TSC_G6_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN12) -#define GPIO_TSC_G6_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN13) - -#define GPIO_TSC_G7_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN2) -#define GPIO_TSC_G7_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN3) -#define GPIO_TSC_G7_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN4) -#define GPIO_TSC_G7_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN5) - -#define GPIO_TSC_G8_IO1 (GPIO_ALT|GPIO_AF9|GPIO_PORTF|GPIO_PIN14) -#define GPIO_TSC_G8_IO2 (GPIO_ALT|GPIO_AF9|GPIO_PORTF|GPIO_PIN15) -#define GPIO_TSC_G8_IO3 (GPIO_ALT|GPIO_AF9|GPIO_PORTG|GPIO_PIN0) -#define GPIO_TSC_G8_IO4 (GPIO_ALT|GPIO_AF9|GPIO_PORTG|GPIO_PIN1) +#define GPIO_TSC_G1_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN12) +#define GPIO_TSC_G1_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN13) +#define GPIO_TSC_G1_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN14) +#define GPIO_TSC_G1_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN3) + +#define GPIO_TSC_G2_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN4) +#define GPIO_TSC_G2_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN5) +#define GPIO_TSC_G2_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN6) +#define GPIO_TSC_G2_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTB|GPIO_PIN7) + +#define GPIO_TSC_G3_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN2) +#define GPIO_TSC_G3_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN10) +#define GPIO_TSC_G3_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN11) +#define GPIO_TSC_G3_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN12) + +#define GPIO_TSC_G4_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN6) +#define GPIO_TSC_G4_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN7) +#define GPIO_TSC_G4_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN8) +#define GPIO_TSC_G4_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTC|GPIO_PIN9) + +#define GPIO_TSC_G5_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN10) +#define GPIO_TSC_G5_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN11) +#define GPIO_TSC_G5_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN12) +#define GPIO_TSC_G5_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN13) + +#define GPIO_TSC_G6_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN10) +#define GPIO_TSC_G6_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN11) +#define GPIO_TSC_G6_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN12) +#define GPIO_TSC_G6_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTD|GPIO_PIN13) + +#define GPIO_TSC_G7_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN2) +#define GPIO_TSC_G7_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN3) +#define GPIO_TSC_G7_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN4) +#define GPIO_TSC_G7_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTE|GPIO_PIN5) + +#define GPIO_TSC_G8_IO1_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTF|GPIO_PIN14) +#define GPIO_TSC_G8_IO2_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTF|GPIO_PIN15) +#define GPIO_TSC_G8_IO3_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTG|GPIO_PIN0) +#define GPIO_TSC_G8_IO4_0 (GPIO_ALT|GPIO_AF9|GPIO_PORTG|GPIO_PIN1) #define GPIO_IR_OUT_1 (GPIO_ALT|GPIO_AF1|GPIO_PORTA|GPIO_PIN13) #define GPIO_IR_OUT_2 (GPIO_ALT|GPIO_AF1|GPIO_PORTB|GPIO_PIN9) /* Trace */ -#define GPIO_TRACECK (GPIO_ALT|GPIO_AF0|GPIO_PORTE|GPIO_PIN2) +#define GPIO_TRACECK_0 (GPIO_ALT|GPIO_AF0|GPIO_PORTE|GPIO_PIN2) #define GPIO_TRACED0_1 (GPIO_ALT|GPIO_AF0|GPIO_PORTC|GPIO_PIN1) #define GPIO_TRACED0_2 (GPIO_ALT|GPIO_AF0|GPIO_PORTC|GPIO_PIN9) #define GPIO_TRACED0_3 (GPIO_ALT|GPIO_AF0|GPIO_PORTE|GPIO_PIN3) @@ -712,13 +712,13 @@ #define GPIO_UART4_TX_2 (GPIO_ALT|GPIO_AF8|GPIO_PORTC|GPIO_PIN10) #define GPIO_UART4_RX_1 (GPIO_ALT|GPIO_AF8|GPIO_PORTA|GPIO_PIN1) #define GPIO_UART4_RX_2 (GPIO_ALT|GPIO_AF8|GPIO_PORTC|GPIO_PIN11) -#define GPIO_UART4_CTS (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN7) -#define GPIO_UART4_RTS_DE (GPIO_ALT|GPIO_AF8|GPIO_PORTA|GPIO_PIN15) +#define GPIO_UART4_CTS_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN7) +#define GPIO_UART4_RTS_DE_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTA|GPIO_PIN15) -#define GPIO_UART5_TX (GPIO_ALT|GPIO_AF8|GPIO_PORTC|GPIO_PIN12) -#define GPIO_UART5_RX (GPIO_ALT|GPIO_AF8|GPIO_PORTD|GPIO_PIN2) -#define GPIO_UART5_CTS (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN5) -#define GPIO_UART5_RTS_DE (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN4) +#define GPIO_UART5_TX_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTC|GPIO_PIN12) +#define GPIO_UART5_RX_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTD|GPIO_PIN2) +#define GPIO_UART5_CTS_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN5) +#define GPIO_UART5_RTS_DE_0 (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN4) #define GPIO_LPUART1_TX_1 (GPIO_ALT|GPIO_AF8|GPIO_PORTA|GPIO_PIN2) #define GPIO_LPUART1_TX_2 (GPIO_ALT|GPIO_AF8|GPIO_PORTB|GPIO_PIN11) @@ -737,8 +737,8 @@ /* USB */ -#define GPIO_USB_DM (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN11) -#define GPIO_USB_DP (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN12) +#define GPIO_USB_DM_0 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN11) +#define GPIO_USB_DP_0 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN12) #define GPIO_USB_NOE_1 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN13) #define GPIO_USB_NOE_2 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTC|GPIO_PIN9) diff --git a/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h b/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap_legacy.h similarity index 99% copy from arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h copy to arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap_legacy.h index ac63302694..c178b0fe27 100644 --- a/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h +++ b/arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap_legacy.h @@ -1,5 +1,5 @@ /**************************************************************************** - * arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap.h + * arch/arm/src/stm32l5/hardware/stm32l562xx_pinmap_legacy.h * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with @@ -18,8 +18,8 @@ * ****************************************************************************/ -#ifndef __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_H -#define __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_H +#ifndef __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_LEGACY_H +#define __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_LEGACY_H /**************************************************************************** * Included Files @@ -39,7 +39,7 @@ * Alternative pin selections are provided with a numeric suffix like _1, _2, * etc. Drivers, however, will use the pin selection without the numeric * suffix. Additional definitions are required in the board.h file. For - * example, if FDCAN1_RX connects vis PA11 on some board, then the following + * example, if FDCAN1_RX connects via PA11 on some board, then the following * definitions should appear inthe board.h header file for that board: * * #define GPIO_FDCAN1_RX GPIO_FDCAN1_RX_1 @@ -742,4 +742,4 @@ #define GPIO_USB_NOE_1 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTA|GPIO_PIN13) #define GPIO_USB_NOE_2 (GPIO_ALT|GPIO_AF10|GPIO_PUSHPULL|GPIO_PORTC|GPIO_PIN9) -#endif /* __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_H */ +#endif /* __ARCH_ARM_SRC_STM32L5_HARDWARE_STM32L562XX_PINMAP_LEGACY_H */ diff --git a/arch/arm/src/stm32l5/hardware/stm32l5_pinmap.h b/arch/arm/src/stm32l5/hardware/stm32l5_pinmap.h index cce5e5e0f1..f31373612d 100644 --- a/arch/arm/src/stm32l5/hardware/stm32l5_pinmap.h +++ b/arch/arm/src/stm32l5/hardware/stm32l5_pinmap.h @@ -29,7 +29,11 @@ #include "chip.h" #if defined(CONFIG_STM32L5_STM32L562XX) -# include "hardware/stm32l562xx_pinmap.h" +# if defined(CONFIG_STM32L5_USE_LEGACY_PINMAP) +# include "hardware/stm32l562xx_pinmap_legacy.h" +# else +# include "hardware/stm32l562xx_pinmap.h" +# endif #else # error "Unsupported STM32 L5 pin map" #endif diff --git a/arch/arm/src/stm32l5/stm32l5_gpio.c b/arch/arm/src/stm32l5/stm32l5_gpio.c index 85b8469a2c..ba8ca6bb44 100644 --- a/arch/arm/src/stm32l5/stm32l5_gpio.c +++ b/arch/arm/src/stm32l5/stm32l5_gpio.c @@ -43,6 +43,10 @@ * Public Data ****************************************************************************/ +#if defined(CONFIG_STM32L5_USE_LEGACY_PINMAP) +# pragma message "CONFIG_STM32L5_USE_LEGACY_PINMAP will be deprecated migrate board.h see tools/stm32_pinmap_tool.py" +#endif + /* Base addresses for each GPIO block */ const uint32_t g_gpiobase[STM32L5_NPORTS] =
