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 a8093281c44cbc279ff21ef17e3567fad90699ac
Author: David Sidrane <[email protected]>
AuthorDate: Tue Apr 11 12:11:36 2023 -0700

    stm32f0l0g0:stm32f0{3|5|7|9}x_pinmap & stm32g0_pinmap Remove GPIO_SPEED_xxx 
and add legacy pinmap
    
       Pinmaps should not have contained GPIO_SPEED_xxx settings.
       This is board dependent.
    
       This change adds CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP to allow for
       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 outut the 
required
       changes that one needs to make to a board.h file.
    
       Eventually, CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP will be deprecated and 
the legacy
       pinmaps removed from NuttX.
    
       Any new boards added should set CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP=n 
and
       fully define the pins in board.h
---
 arch/arm/src/stm32f0l0g0/Kconfig                   |  20 ++
 arch/arm/src/stm32f0l0g0/hardware/stm32_pinmap.h   |  45 ++-
 .../src/stm32f0l0g0/hardware/stm32f03x_pinmap.h    | 104 +++---
 ...tm32f03x_pinmap.h => stm32f03x_pinmap_legacy.h} |  10 +-
 .../src/stm32f0l0g0/hardware/stm32f05x_pinmap.h    |  72 ++--
 ...tm32f05x_pinmap.h => stm32f05x_pinmap_legacy.h} |  10 +-
 .../src/stm32f0l0g0/hardware/stm32f07x_pinmap.h    | 142 ++++----
 ...tm32f07x_pinmap.h => stm32f07x_pinmap_legacy.h} |  10 +-
 .../src/stm32f0l0g0/hardware/stm32f09x_pinmap.h    | 128 +++----
 ...tm32f09x_pinmap.h => stm32f09x_pinmap_legacy.h} |  10 +-
 arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h |  68 ++--
 .../{stm32g0_pinmap.h => stm32g0_pinmap_legacy.h}  |  10 +-
 arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h | 372 ++++++++++-----------
 .../{stm32l0_pinmap.h => stm32l0_pinmap_legacy.h}  |  10 +-
 arch/arm/src/stm32f0l0g0/stm32_gpio.c              |   4 +
 15 files changed, 528 insertions(+), 487 deletions(-)

diff --git a/arch/arm/src/stm32f0l0g0/Kconfig b/arch/arm/src/stm32f0l0g0/Kconfig
index f18276e02b..b6197adcd6 100644
--- a/arch/arm/src/stm32f0l0g0/Kconfig
+++ b/arch/arm/src/stm32f0l0g0/Kconfig
@@ -945,6 +945,26 @@ config ARCH_BOARD_STM32F0G0L0_CUSTOM_CLOCKCONFIG
        ---help---
                Enables special, board-specific STM32 clock configuration.
 
+config STM32F0G0L0_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.
+
+               STM32F0G0L0_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, STM32F0G0L0_USE_LEGACY_PINMAP will be deprecated 
and the
+               legacy pinmaps removed from NuttX. Any new boards added should 
set
+               STM32F0G0L0_USE_LEGACY_PINMAP=n and fully define the pins in 
board.h
+
 menu "STM32 Peripheral Support"
 
 # These "hidden" settings determine whether a peripheral option is available
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32_pinmap.h
index 2f320cb41c..abdc3cb4ca 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32_pinmap.h
@@ -28,20 +28,37 @@
 #include <nuttx/config.h>
 #include "chip.h"
 
-#if defined(CONFIG_STM32F0L0G0_STM32F03X)
-#  include "hardware/stm32f03x_pinmap.h"
-#elif defined(CONFIG_STM32F0L0G0_STM32F05X)
-#  include "hardware/stm32f05x_pinmap.h"
-#elif defined(CONFIG_STM32F0L0G0_STM32F07X)
-#  include "hardware/stm32f07x_pinmap.h"
-#elif defined(CONFIG_STM32F0L0G0_STM32F09X)
-#  include "hardware/stm32f09x_pinmap.h"
-#elif defined(CONFIG_ARCH_CHIP_STM32L0)
-#  include "hardware/stm32l0_pinmap.h"
-#elif defined(CONFIG_ARCH_CHIP_STM32G0)
-#  include "hardware/stm32g0_pinmap.h"
+#if defined(CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP)
+#  if defined(CONFIG_STM32F0L0G0_STM32F03X)
+#    include "hardware/stm32f03x_pinmap_legacy.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F05X)
+#    include "hardware/stm32f05x_pinmap_legacy.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F07X)
+#    include "hardware/stm32f07x_pinmap_legacy.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F09X)
+#    include "hardware/stm32f09x_pinmap_legacy.h"
+#  elif defined(CONFIG_ARCH_CHIP_STM32L0)
+#    include "hardware/stm32l0_pinmap_legacy.h"
+#  elif defined(CONFIG_ARCH_CHIP_STM32G0)
+#    include "hardware/stm32g0_pinmap_legacy.h"
+#  else
+#    error "Unsupported STM32 M0 pin map"
+#  endif
 #else
-#  error "Unsupported STM32 M0 pin map"
+#  if defined(CONFIG_STM32F0L0G0_STM32F03X)
+#    include "hardware/stm32f03x_pinmap.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F05X)
+#    include "hardware/stm32f05x_pinmap.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F07X)
+#    include "hardware/stm32f07x_pinmap.h"
+#  elif defined(CONFIG_STM32F0L0G0_STM32F09X)
+#    include "hardware/stm32f09x_pinmap.h"
+#  elif defined(CONFIG_ARCH_CHIP_STM32L0)
+#    include "hardware/stm32l0_pinmap.h"
+#  elif defined(CONFIG_ARCH_CHIP_STM32G0)
+#    include "hardware/stm32g0_pinmap.h"
+#  else
+#    error "Unsupported STM32 M0 pin map"
+#  endif
 #endif
-
 #endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32_PINMAP_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
index fd64ab8db9..d89136f0ad 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
@@ -39,7 +39,7 @@
  * etc. Drivers, however, will use the pin selection without the numeric
  * suffix.
  * Additional definitions are required in the board.h file.  For example, if
- * CAN1_RX connects vis PD0 on some board, then the following definition
+ * CAN1_RX connects via PD0 on some board, then the following definition
  * should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -55,22 +55,22 @@
 
 /* ADC 1 */
 
-#define GPIO_ADC1_IN0            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_ADC1_IN1            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_ADC1_IN2            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_ADC1_IN3            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_ADC1_IN4            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_ADC1_IN5            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_ADC1_IN6            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_ADC1_IN7            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_ADC1_IN8            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_ADC1_IN9            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_ADC1_IN10           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_ADC1_IN11           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_ADC1_IN12           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_ADC1_IN13           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_ADC1_IN14           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_ADC1_IN15           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_ADC1_IN0_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_ADC1_IN1_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_ADC1_IN2_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_ADC1_IN3_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_ADC1_IN4_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_ADC1_IN5_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_ADC1_IN6_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_ADC1_IN7_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_ADC1_IN8_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_ADC1_IN9_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_ADC1_IN10_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_ADC1_IN11_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_ADC1_IN12_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_ADC1_IN13_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_ADC1_IN14_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_ADC1_IN15_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
 
 /* Events */
 
@@ -97,20 +97,20 @@
 
 /* I2C */
 
-#define GPIO_I2C1_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_I2C1_SCL_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_I2C1_SCL_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTF | GPIO_PIN6)
-#define GPIO_I2C1_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_I2C1_SDA_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_I2C1_SDA_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTF | GPIO_PIN7)
-#define GPIO_I2C1_SMBA           (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN5)
-
-#define GPIO_I2C2_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_I2C2_SCL_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_I2C2_SCL_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTF | GPIO_PIN6)
-#define GPIO_I2C2_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_I2C2_SDA_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN14)
-#define GPIO_I2C2_SDA_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTF | GPIO_PIN7)
+#define GPIO_I2C1_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN6)
+#define GPIO_I2C1_SCL_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN8)
+#define GPIO_I2C1_SCL_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_PORTF | GPIO_PIN6)
+#define GPIO_I2C1_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN7)
+#define GPIO_I2C1_SDA_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN9)
+#define GPIO_I2C1_SDA_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_PORTF | GPIO_PIN7)
+#define GPIO_I2C1_SMBA_0         (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | 
GPIO_PORTB | GPIO_PIN5)
+
+#define GPIO_I2C2_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN10)
+#define GPIO_I2C2_SCL_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN13)
+#define GPIO_I2C2_SCL_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_PORTF | GPIO_PIN6)
+#define GPIO_I2C2_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN11)
+#define GPIO_I2C2_SDA_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN14)
+#define GPIO_I2C2_SDA_3          (GPIO_ALT | GPIO_AF0 | GPIO_OPENDRAIN | 
GPIO_PORTF | GPIO_PIN7)
 
 /* IR */
 
@@ -119,7 +119,7 @@
 
 /* Clock output */
 
-#define GPIO_MCO                 (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_MCO_0               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
 
 /* SPI */
 
@@ -143,24 +143,24 @@
 
 /* SWD */
 
-#define GPIO_SWCLK               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
-#define GPIO_SWDIO               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
+#define GPIO_SWCLK_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
+#define GPIO_SWDIO_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
 
 /* Timers */
 
 #define GPIO_TIM1_BKIN_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN6)
 #define GPIO_TIM1_BKIN_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN12)
-#define GPIO_TIM1_CH1            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_TIM1_CH1_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN8)
 #define GPIO_TIM1_CH1N_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN7)
 #define GPIO_TIM1_CH1N_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN13)
-#define GPIO_TIM1_CH2            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN9)
+#define GPIO_TIM1_CH2_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN9)
 #define GPIO_TIM1_CH2N_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN0)
 #define GPIO_TIM1_CH2N_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN14)
-#define GPIO_TIM1_CH3            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN10)
+#define GPIO_TIM1_CH3_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_TIM1_CH3N_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN1)
 #define GPIO_TIM1_CH3N_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN15)
-#define GPIO_TIM1_CH4            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_TIM1_ETR            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_TIM1_CH4_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_TIM1_ETR_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN12)
 
 #define GPIO_TIM3_CH1_1          (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN6)
 #define GPIO_TIM3_CH1_2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN6)
@@ -172,7 +172,7 @@
 #define GPIO_TIM3_CH3_2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN0)
 #define GPIO_TIM3_CH4_1          (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN9)
 #define GPIO_TIM3_CH4_2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_TIM3_ETR            (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN2)
+#define GPIO_TIM3_ETR_0          (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN2)
 
 #define GPIO_TIM14_CH1_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN1)
 #define GPIO_TIM14_CH1_2         (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN4)
@@ -187,30 +187,30 @@
 #define GPIO_TIM15_CH2_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN3)
 #define GPIO_TIM15_CH2_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN15)
 
-#define GPIO_TIM16_BKIN          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_TIM16_BKIN_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_TIM16_CH1_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN8)
 #define GPIO_TIM16_CH1_2         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TIM16_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TIM16_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
 
 #define GPIO_TIM17_BKIN_1        (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_TIM17_BKIN_2        (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_TIM17_CH1_1         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
 #define GPIO_TIM17_CH1_2         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM17_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TIM17_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
 
 /* USARTs */
 
-#define GPIO_USART1_CK           (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_USART1_CTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_USART1_RTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_USART1_CK_0         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_USART1_CTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_USART1_RTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
 #define GPIO_USART1_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN7)
 #define GPIO_USART1_RX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_USART1_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN6)
 #define GPIO_USART1_TX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN9)
 
-#define GPIO_USART2_CK           (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_USART2_CTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_USART2_RTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_USART2_CK_0         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_USART2_CTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_USART2_RTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART2_RX_1         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN15)
 #define GPIO_USART2_RX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN3)
 #define GPIO_USART2_TX_1         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN14)
@@ -231,9 +231,9 @@
 #define GPIO_USART3_TX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | 
GPIO_PIN10)
 #define GPIO_USART3_TX_3         (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | 
GPIO_PIN10)
 
-#define GPIO_USART4_CK           (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
-#define GPIO_USART4_CTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART4_RTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
+#define GPIO_USART4_CK_0         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
+#define GPIO_USART4_CTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART4_RTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
 #define GPIO_USART4_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN11)
 #define GPIO_USART4_RX_2         (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART4_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN10)
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap_legacy.h
similarity index 97%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap_legacy.h
index fd64ab8db9..97ad7197a2 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32f03x_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32f03x_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_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -39,7 +39,7 @@
  * etc. Drivers, however, will use the pin selection without the numeric
  * suffix.
  * Additional definitions are required in the board.h file.  For example, if
- * CAN1_RX connects vis PD0 on some board, then the following definition
+ * CAN1_RX connects via PD0 on some board, then the following definition
  * should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -239,4 +239,4 @@
 #define GPIO_USART4_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN10)
 #define GPIO_USART4_TX_2         (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN0)
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F03X_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
index 305bc65a68..bc9dbf7602 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
@@ -38,7 +38,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 USART1_TX connects vis PA9 on some board, then the following
+ * example, if USART1_TX connects via PA9 on some board, then the following
  * definition should appear in the board.h header file for that board:
  *
  * #define GPIO_USART1_TX GPIO_USART1_TX_1
@@ -54,22 +54,22 @@
 
 /* ADC 1 */
 
-#define GPIO_ADC1_IN0       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_ADC1_IN1       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_ADC1_IN2       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_ADC1_IN3       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_ADC1_IN4       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_ADC1_IN5       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_ADC1_IN6       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_ADC1_IN7       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_ADC1_IN8       (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_ADC1_IN9       (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_ADC1_IN10      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_ADC1_IN11      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_ADC1_IN12      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_ADC1_IN13      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_ADC1_IN14      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_ADC1_IN15      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_ADC1_IN0_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_ADC1_IN1_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_ADC1_IN2_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_ADC1_IN3_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_ADC1_IN4_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_ADC1_IN5_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_ADC1_IN6_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_ADC1_IN7_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_ADC1_IN8_0     (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_ADC1_IN9_0     (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_ADC1_IN10_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_ADC1_IN11_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_ADC1_IN12_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_ADC1_IN13_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_ADC1_IN14_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_ADC1_IN15_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
 
 /* TIMERS */
 
@@ -81,15 +81,15 @@
 #define GPIO_USART1_TX_2    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN6)
 #define GPIO_USART1_RX_1    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN10)
 #define GPIO_USART1_RX_2    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART1_CTS     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN11)
-#define GPIO_USART1_RTS     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN12)
-#define GPIO_USART1_CK      (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_USART1_CTS_0   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN11)
+#define GPIO_USART1_RTS_0   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN12)
+#define GPIO_USART1_CK_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
 
-#define GPIO_USART2_CTS     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_USART2_RTS     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_USART2_TX      (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_USART2_RX      (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_USART2_CK      (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_USART2_CTS_0   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_USART2_RTS_0   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_USART2_TX_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_USART2_RX_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_USART2_CK_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN4)
 
 /* SPI */
 
@@ -101,20 +101,20 @@
 #define GPIO_SPI1_MISO_2    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_SPI1_MOSI_1    (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN7)
 #define GPIO_SPI1_MOSI_2    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN5)
-#define GPIO_SPI2_NSS       (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN12)
-#define GPIO_SPI2_SCK       (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_SPI2_MISO      (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN14)
-#define GPIO_SPI2_MOSI      (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN15)
+#define GPIO_SPI2_NSS_0     (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN12)
+#define GPIO_SPI2_SCK_0     (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN13)
+#define GPIO_SPI2_MISO_0    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN14)
+#define GPIO_SPI2_MOSI_0    (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN15)
 
 /* I2C */
 
-#define GPIO_I2C1_SCL_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_I2C1_SCL_2     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_I2C1_SDA_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_I2C1_SDA_2     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_I2C1_SMBA      (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_I2C1_SCL_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN6)
+#define GPIO_I2C1_SCL_2     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN8)
+#define GPIO_I2C1_SDA_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN7)
+#define GPIO_I2C1_SDA_2     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN9)
+#define GPIO_I2C1_SMBA_0    (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | GPIO_PORTB | 
GPIO_PIN5)
 
-#define GPIO_I2C2_SCL       (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_I2C2_SDA       (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
+#define GPIO_I2C2_SCL_0     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN10)
+#define GPIO_I2C2_SDA_0     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN11)
 
 #endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap_legacy.h
similarity index 94%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap_legacy.h
index 305bc65a68..10d993a68e 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32f05x_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32f05x_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_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -38,7 +38,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 USART1_TX connects vis PA9 on some board, then the following
+ * example, if USART1_TX connects via PA9 on some board, then the following
  * definition should appear in the board.h header file for that board:
  *
  * #define GPIO_USART1_TX GPIO_USART1_TX_1
@@ -117,4 +117,4 @@
 #define GPIO_I2C2_SCL       (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
 #define GPIO_I2C2_SDA       (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F05X_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
index 298ca8acd7..dd6ebe4f96 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
@@ -39,7 +39,7 @@
  * etc. Drivers, however, will use the pin selection without the numeric
  * suffix.
  * Additional definitions are required in the board.h file.  For example, if
- * CAN1_RX connects vis PD0 on some board, then the following definition
+ * CAN1_RX connects via PD0 on some board, then the following definition
  * should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -55,22 +55,22 @@
 
 /* ADC 1 */
 
-#define GPIO_ADC1_IN0            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_ADC1_IN1            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_ADC1_IN2            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_ADC1_IN3            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_ADC1_IN4            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_ADC1_IN5            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_ADC1_IN6            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_ADC1_IN7            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_ADC1_IN8            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_ADC1_IN9            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_ADC1_IN10           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_ADC1_IN11           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_ADC1_IN12           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_ADC1_IN13           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_ADC1_IN14           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_ADC1_IN15           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_ADC1_IN0_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_ADC1_IN1_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_ADC1_IN2_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_ADC1_IN3_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_ADC1_IN4_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_ADC1_IN5_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_ADC1_IN6_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_ADC1_IN7_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_ADC1_IN8_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_ADC1_IN9_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_ADC1_IN10_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_ADC1_IN11_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_ADC1_IN12_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_ADC1_IN13_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_ADC1_IN14_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_ADC1_IN15_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
 
 /* CAN 1 */
 
@@ -130,16 +130,16 @@
 
 /* I2C */
 
-#define GPIO_I2C1_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_I2C1_SCL_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_I2C1_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_I2C1_SDA_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_I2C1_SMBA           (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_I2C1_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN6)
+#define GPIO_I2C1_SCL_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN8)
+#define GPIO_I2C1_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN7)
+#define GPIO_I2C1_SDA_2          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN9)
+#define GPIO_I2C1_SMBA_0         (GPIO_ALT | GPIO_AF3 | GPIO_FLOAT | 
GPIO_PORTB | GPIO_PIN5)
 
-#define GPIO_I2C2_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_I2C2_SCL_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_I2C2_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_I2C2_SDA_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN14)
+#define GPIO_I2C2_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN10)
+#define GPIO_I2C2_SCL_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN13)
+#define GPIO_I2C2_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN11)
+#define GPIO_I2C2_SDA_2          (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | 
GPIO_PORTB | GPIO_PIN14)
 
 /* I2S */
 
@@ -176,7 +176,7 @@
 
 /* Clock output */
 
-#define GPIO_MCO                 (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_MCO_0               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
 
 /* SPI */
 
@@ -208,8 +208,8 @@
 
 /* SWD */
 
-#define GPIO_SWCLK               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
-#define GPIO_SWDIO               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
+#define GPIO_SWCLK_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
+#define GPIO_SWDIO_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
 
 /* Timers */
 
@@ -278,61 +278,61 @@
 #define GPIO_TIM15_CH2_2         (GPIO_ALT | GPIO_AF0 | GPIO_PORTF | 
GPIO_PIN10)
 #define GPIO_TIM15_CH2_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN15)
 
-#define GPIO_TIM16_BKIN          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_TIM16_BKIN_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_TIM16_CH1_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTE | GPIO_PIN0)
 #define GPIO_TIM16_CH1_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN8)
 #define GPIO_TIM16_CH1_3         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TIM16_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TIM16_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
 
 #define GPIO_TIM17_BKIN_1        (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_TIM17_BKIN_2        (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_TIM17_CH1_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTE | GPIO_PIN1)
 #define GPIO_TIM17_CH1_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
 #define GPIO_TIM17_CH1_3         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM17_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TIM17_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
 
 /* TSC */
 
-#define GPIO_TSC_G1_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_TSC_G1_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TSC_G1_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TSC_G1_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_TSC_G2_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_TSC_G2_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_TSC_G2_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TSC_G2_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TSC_G3_IO1          (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN5)
-#define GPIO_TSC_G3_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_TSC_G3_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_TSC_G3_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN2)
-#define GPIO_TSC_G4_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_TSC_G4_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN10)
-#define GPIO_TSC_G4_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_TSC_G4_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN12)
-#define GPIO_TSC_G5_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TSC_G5_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN4)
-#define GPIO_TSC_G5_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_TSC_G5_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_TSC_G6_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN11)
-#define GPIO_TSC_G6_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN12)
-#define GPIO_TSC_G6_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN13)
-#define GPIO_TSC_G6_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN14)
-#define GPIO_TSC_G7_IO1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN2)
-#define GPIO_TSC_G7_IO2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN3)
-#define GPIO_TSC_G7_IO3          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN4)
-#define GPIO_TSC_G7_IO4          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN5)
-#define GPIO_TSC_G8_IO1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN12)
-#define GPIO_TSC_G8_IO2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN13)
-#define GPIO_TSC_G8_IO3          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN14)
-#define GPIO_TSC_G8_IO4          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN15)
+#define GPIO_TSC_G1_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_TSC_G1_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_TSC_G1_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_TSC_G1_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_TSC_G2_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_TSC_G2_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_TSC_G2_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_TSC_G2_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_TSC_G3_IO1_0        (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_TSC_G3_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_TSC_G3_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_TSC_G3_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN2)
+#define GPIO_TSC_G4_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN9)
+#define GPIO_TSC_G4_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN10)
+#define GPIO_TSC_G4_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_TSC_G4_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_TSC_G5_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN3)
+#define GPIO_TSC_G5_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN4)
+#define GPIO_TSC_G5_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TSC_G5_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TSC_G6_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN11)
+#define GPIO_TSC_G6_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN12)
+#define GPIO_TSC_G6_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN13)
+#define GPIO_TSC_G6_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN14)
+#define GPIO_TSC_G7_IO1_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN2)
+#define GPIO_TSC_G7_IO2_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN3)
+#define GPIO_TSC_G7_IO3_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN4)
+#define GPIO_TSC_G7_IO4_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN5)
+#define GPIO_TSC_G8_IO1_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN12)
+#define GPIO_TSC_G8_IO2_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN13)
+#define GPIO_TSC_G8_IO3_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN14)
+#define GPIO_TSC_G8_IO4_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN15)
 #define GPIO_TSC_SYNC_1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN10)
 #define GPIO_TSC_SYNC_2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN8)
 
 /* USARTs */
 
-#define GPIO_USART1_CK           (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_USART1_CTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_USART1_RTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_USART1_CK_0         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_USART1_CTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_USART1_RTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
 #define GPIO_USART1_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN7)
 #define GPIO_USART1_RX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_USART1_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN6)
@@ -371,9 +371,9 @@
 #define GPIO_USART3_TX_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN4)
 #define GPIO_USART3_TX_4         (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | 
GPIO_PIN10)
 
-#define GPIO_USART4_CK           (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
-#define GPIO_USART4_CTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART4_RTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
+#define GPIO_USART4_CK_0         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
+#define GPIO_USART4_CTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART4_RTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
 #define GPIO_USART4_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN11)
 #define GPIO_USART4_RX_2         (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART4_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN10)
@@ -381,6 +381,6 @@
 
 /* USB */
 
-#define GPIO_USB_NOE             (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN13)
+#define GPIO_USB_NOE_0           (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN13)
 
 #endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap_legacy.h
similarity index 98%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap_legacy.h
index 298ca8acd7..fefd0741d1 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32f07x_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32f07x_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_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -39,7 +39,7 @@
  * etc. Drivers, however, will use the pin selection without the numeric
  * suffix.
  * Additional definitions are required in the board.h file.  For example, if
- * CAN1_RX connects vis PD0 on some board, then the following definition
+ * CAN1_RX connects via PD0 on some board, then the following definition
  * should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -383,4 +383,4 @@
 
 #define GPIO_USB_NOE             (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN13)
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F07X_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
index 9d620b5ee7..952ba5408f 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
@@ -38,7 +38,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 CAN1_RX connects vis PD0 on some board, then the following
+ * example, if CAN1_RX connects via PD0 on some board, then the following
  * definition should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -54,22 +54,22 @@
 
 /* ADC 1 */
 
-#define GPIO_ADC1_IN0            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_ADC1_IN1            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_ADC1_IN2            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_ADC1_IN3            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_ADC1_IN4            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_ADC1_IN5            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_ADC1_IN6            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_ADC1_IN7            (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_ADC1_IN8            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_ADC1_IN9            (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_ADC1_IN10           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_ADC1_IN11           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_ADC1_IN12           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_ADC1_IN13           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_ADC1_IN14           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_ADC1_IN15           (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_ADC1_IN0_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_ADC1_IN1_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_ADC1_IN2_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_ADC1_IN3_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_ADC1_IN4_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_ADC1_IN5_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_ADC1_IN6_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_ADC1_IN7_0          (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_ADC1_IN8_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_ADC1_IN9_0          (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_ADC1_IN10_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_ADC1_IN11_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_ADC1_IN12_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_ADC1_IN13_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_ADC1_IN14_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_ADC1_IN15_0         (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
 
 /* CAN 1 */
 
@@ -133,7 +133,7 @@
 #define GPIO_I2C1_SCL_2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN8)
 #define GPIO_I2C1_SDA_1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN7)
 #define GPIO_I2C1_SDA_2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_I2C1_SMBA           (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_I2C1_SMBA_0         (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN5)
 
 #define GPIO_I2C2_SCL_1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN10)
 #define GPIO_I2C2_SCL_2          (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | 
GPIO_PIN13)
@@ -175,7 +175,7 @@
 
 /* Clock output */
 
-#define GPIO_MCO                 (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_MCO_0               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN8)
 
 /* SPI */
 
@@ -207,8 +207,8 @@
 
 /* SWD */
 
-#define GPIO_SWCLK               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
-#define GPIO_SWDIO               (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
+#define GPIO_SWCLK_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN14)
+#define GPIO_SWDIO_0             (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN13)
 
 /* Timers */
 
@@ -277,61 +277,61 @@
 #define GPIO_TIM15_CH2_2         (GPIO_ALT | GPIO_AF0 | GPIO_PORTF | 
GPIO_PIN10)
 #define GPIO_TIM15_CH2_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN15)
 
-#define GPIO_TIM16_BKIN          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_TIM16_BKIN_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_TIM16_CH1_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTE | GPIO_PIN0)
 #define GPIO_TIM16_CH1_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN8)
 #define GPIO_TIM16_CH1_3         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TIM16_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TIM16_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
 
 #define GPIO_TIM17_BKIN_1        (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_TIM17_BKIN_2        (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_TIM17_CH1_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTE | GPIO_PIN1)
 #define GPIO_TIM17_CH1_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
 #define GPIO_TIM17_CH1_3         (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM17_CH1N          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TIM17_CH1N_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
 
 /* TSC */
 
-#define GPIO_TSC_G1_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_TSC_G1_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TSC_G1_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TSC_G1_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_TSC_G2_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_TSC_G2_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_TSC_G2_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TSC_G2_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TSC_G3_IO1          (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN5)
-#define GPIO_TSC_G3_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_TSC_G3_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_TSC_G3_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN2)
-#define GPIO_TSC_G4_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_TSC_G4_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN10)
-#define GPIO_TSC_G4_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_TSC_G4_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN12)
-#define GPIO_TSC_G5_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TSC_G5_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN4)
-#define GPIO_TSC_G5_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_TSC_G5_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_TSC_G6_IO1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN11)
-#define GPIO_TSC_G6_IO2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN12)
-#define GPIO_TSC_G6_IO3          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN13)
-#define GPIO_TSC_G6_IO4          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN14)
-#define GPIO_TSC_G7_IO1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN2)
-#define GPIO_TSC_G7_IO2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN3)
-#define GPIO_TSC_G7_IO3          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN4)
-#define GPIO_TSC_G7_IO4          (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN5)
-#define GPIO_TSC_G8_IO1          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN12)
-#define GPIO_TSC_G8_IO2          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN13)
-#define GPIO_TSC_G8_IO3          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN14)
-#define GPIO_TSC_G8_IO4          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN15)
+#define GPIO_TSC_G1_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_TSC_G1_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_TSC_G1_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_TSC_G1_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_TSC_G2_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_TSC_G2_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_TSC_G2_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_TSC_G2_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_TSC_G3_IO1_0        (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_TSC_G3_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_TSC_G3_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_TSC_G3_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN2)
+#define GPIO_TSC_G4_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN9)
+#define GPIO_TSC_G4_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN10)
+#define GPIO_TSC_G4_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_TSC_G4_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_TSC_G5_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN3)
+#define GPIO_TSC_G5_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN4)
+#define GPIO_TSC_G5_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TSC_G5_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TSC_G6_IO1_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN11)
+#define GPIO_TSC_G6_IO2_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN12)
+#define GPIO_TSC_G6_IO3_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN13)
+#define GPIO_TSC_G6_IO4_0        (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN14)
+#define GPIO_TSC_G7_IO1_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN2)
+#define GPIO_TSC_G7_IO2_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN3)
+#define GPIO_TSC_G7_IO3_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN4)
+#define GPIO_TSC_G7_IO4_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTE | GPIO_PIN5)
+#define GPIO_TSC_G8_IO1_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN12)
+#define GPIO_TSC_G8_IO2_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN13)
+#define GPIO_TSC_G8_IO3_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN14)
+#define GPIO_TSC_G8_IO4_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | 
GPIO_PIN15)
 #define GPIO_TSC_SYNC_1          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | 
GPIO_PIN10)
 #define GPIO_TSC_SYNC_2          (GPIO_ALT | GPIO_AF3 | GPIO_PORTB | GPIO_PIN8)
 
 /* USARTs */
 
-#define GPIO_USART1_CK           (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_USART1_CTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
-#define GPIO_USART1_RTS          (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_USART1_CK_0         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_USART1_CTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN11)
+#define GPIO_USART1_RTS_0        (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN12)
 #define GPIO_USART1_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN7)
 #define GPIO_USART1_RX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN10)
 #define GPIO_USART1_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN6)
@@ -370,9 +370,9 @@
 #define GPIO_USART3_TX_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN4)
 #define GPIO_USART3_TX_4         (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | 
GPIO_PIN10)
 
-#define GPIO_USART4_CK           (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
-#define GPIO_USART4_CTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART4_RTS          (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
+#define GPIO_USART4_CK_0         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN12)
+#define GPIO_USART4_CTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART4_RTS_0        (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | 
GPIO_PIN15)
 #define GPIO_USART4_RX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN11)
 #define GPIO_USART4_RX_2         (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART4_TX_1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | 
GPIO_PIN10)
@@ -393,7 +393,7 @@
 #define GPIO_USART6_RX_2         (GPIO_ALT | GPIO_AF2 | GPIO_PORTC | GPIO_PIN1)
 #define GPIO_USART6_TX_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTF | GPIO_PIN9)
 #define GPIO_USART6_RX_3         (GPIO_ALT | GPIO_AF1 | GPIO_PORTF | 
GPIO_PIN10)
-#define GPIO_USART6_CK_RST       (GPIO_ALT | GPIO_AF2 | GPIO_PORTF | GPIO_PIN3)
+#define GPIO_USART6_CK_RST_0     (GPIO_ALT | GPIO_AF2 | GPIO_PORTF | GPIO_PIN3)
 
 #define GPIO_USART7_TX_1         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN0)
 #define GPIO_USART7_RX_1         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN1)
@@ -410,6 +410,6 @@
 #define GPIO_USART8_RX_2         (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN9)
 #define GPIO_USART8_TX_3         (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN8)
 #define GPIO_USART8_RX_3         (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | 
GPIO_PIN13)
-#define GPIO_USART8_CK_RST       (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | 
GPIO_PIN14)
+#define GPIO_USART8_CK_RST_0     (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | 
GPIO_PIN14)
 
 #endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap_legacy.h
similarity index 98%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap_legacy.h
index 9d620b5ee7..799f9a1529 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32f09x_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32f09x_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_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -38,7 +38,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 CAN1_RX connects vis PD0 on some board, then the following
+ * example, if CAN1_RX connects via PD0 on some board, then the following
  * definition should appear in the board.h header file for that board:
  *
  * #define GPIO_CAN1_RX GPIO_CAN1_RX_1
@@ -412,4 +412,4 @@
 #define GPIO_USART8_RX_3         (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | 
GPIO_PIN13)
 #define GPIO_USART8_CK_RST       (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | 
GPIO_PIN14)
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32F09X_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
index bf053662ba..d0920b46ee 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
@@ -56,7 +56,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 CAN1_RX connects vis PA11 on some board, then the following
+ * example, if CAN1_RX connects via PA11 on some board, then the following
  * definitions should appear in the board.h header file for that board:
  *
  * #define GPIO_I2C1_SCL GPIO_I2C1_SCL_1
@@ -160,7 +160,7 @@
 #define GPIO_TIM1_CH3NOUT_3      (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | GPIO_PIN4)
 #define GPIO_TIM1_CH4OUT_1       (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN11)
 #define GPIO_TIM1_CH4OUT_2       (GPIO_ALT | GPIO_AF2 | GPIO_PORTC | 
GPIO_PIN11)
-#define GPIO_TIM1_ETR            (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN12)
+#define GPIO_TIM1_ETR_0          (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN12)
 
 #define GPIO_TIM3_CH1OUT_1       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN6)
 #define GPIO_TIM3_CH1OUT_2       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN4)
@@ -172,7 +172,7 @@
 #define GPIO_TIM3_CH3OUT_2       (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN8)
 #define GPIO_TIM3_CH4OUT_1       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN1)
 #define GPIO_TIM3_CH4OUT_2       (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN9)
-#define GPIO_TIM3_ETR            (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
+#define GPIO_TIM3_ETR_0          (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
 
 #define GPIO_TIM14_CH1OUT_1      (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN4)
 #define GPIO_TIM14_CH1OUT_2      (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN7)
@@ -191,16 +191,16 @@
 #define GPIO_TIM15_CH1NOUT_3     (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | 
GPIO_PIN15)
 #define GPIO_TIM15_CH1NOUT_4     (GPIO_ALT | GPIO_AF2 | GPIO_PORTF | GPIO_PIN1)
 
-#define GPIO_TIM16_BKIN          (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_TIM16_BKIN_0        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_TIM16_CH1OUT_1      (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN6)
 #define GPIO_TIM16_CH1OUT_2      (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN8)
 #define GPIO_TIM16_CH1OUT_3      (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | GPIO_PIN0)
-#define GPIO_TIM16_CH1NOUT       (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_TIM16_CH1NOUT_0     (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN6)
 
 #define GPIO_TIM17_CH1OUT_1      (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
 #define GPIO_TIM17_CH1OUT_2      (GPIO_ALT | GPIO_AF2 | GPIO_PORTD | GPIO_PIN1)
 #define GPIO_TIM17_CH1OUT_3      (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM17_CH1NOUT       (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_TIM17_CH1NOUT_0     (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN7)
 
 /* USART */
 
@@ -208,47 +208,47 @@
 #define GPIO_USART1_CTS_2    (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_USART1_RTS_1    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN12)
 #define GPIO_USART1_RTS_2    (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_USART1_RX_1     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN10)
-#define GPIO_USART1_RX_2     (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART1_RX_3     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN5)
-#define GPIO_USART1_TX_1     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_USART1_TX_2     (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_USART1_TX_3     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_USART1_RX_1     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN10)
+#define GPIO_USART1_RX_2     (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART1_RX_3     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_USART1_TX_1     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN9)
+#define GPIO_USART1_TX_2     (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_USART1_TX_3     (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN4)
 
 #define GPIO_USART2_CTS_1   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN0)
 #define GPIO_USART2_CTS_2   (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN3)
 #define GPIO_USART2_RTS_1   (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART2_RTS_2   (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN4)
-#define GPIO_USART2_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_USART2_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_USART2_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTD | GPIO_PIN6)
-#define GPIO_USART2_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_USART2_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN14)
-#define GPIO_USART2_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTD | GPIO_PIN6)
+#define GPIO_USART2_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN3)
+#define GPIO_USART2_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN15)
+#define GPIO_USART2_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTD | GPIO_PIN6)
+#define GPIO_USART2_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN2)
+#define GPIO_USART2_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN14)
+#define GPIO_USART2_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTD | GPIO_PIN6)
 
 #define GPIO_USART3_CTS_1   (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN6)
 #define GPIO_USART3_CTS_2   (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_USART3_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_USART3_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_USART3_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_USART3_RX_4    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_USART3_RX_5    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN5)
-#define GPIO_USART3_RX_6    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN11)
-#define GPIO_USART3_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_USART3_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN2)
-#define GPIO_USART3_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_USART3_TX_4    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_USART3_TX_5    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_USART3_TX_6    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN10)
+#define GPIO_USART3_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN3)
+#define GPIO_USART3_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN0)
+#define GPIO_USART3_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN9)
+#define GPIO_USART3_RX_4    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN11)
+#define GPIO_USART3_RX_5    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN5)
+#define GPIO_USART3_RX_6    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN11)
+#define GPIO_USART3_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN5)
+#define GPIO_USART3_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN2)
+#define GPIO_USART3_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN8)
+#define GPIO_USART3_TX_4    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN10)
+#define GPIO_USART3_TX_5    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN4)
+#define GPIO_USART3_TX_6    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN10)
 #define GPIO_USART3_RTS_1   (GPIO_ALT | GPIO_AF5 | GPIO_PORTA | GPIO_PIN15)
 #define GPIO_USART3_RTS_2   (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN1)
 #define GPIO_USART3_RTS_3   (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN14)
 
 #define GPIO_USART4_CTS_1   (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART4_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_USART4_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN11)
-#define GPIO_USART4_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_USART4_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN10)
+#define GPIO_USART4_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN1)
+#define GPIO_USART4_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN11)
+#define GPIO_USART4_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN0)
+#define GPIO_USART4_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF1 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN10)
 #define GPIO_USART4_RTS_1   (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN15)
 
 /* TODO: LPTIM */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap_legacy.h
similarity index 98%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap_legacy.h
index bf053662ba..ea47cc881c 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32g0_pinmap_legacy.h
  *
  *   Copyright (C) 2019 Gregory Nutt. All rights reserved.
  *   Author: Mateusz Szafoni <[email protected]>
@@ -36,8 +36,8 @@
  *
  ****************************************************************************/
 
-#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -56,7 +56,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 CAN1_RX connects vis PA11 on some board, then the following
+ * example, if CAN1_RX connects via PA11 on some board, then the following
  * definitions should appear in the board.h header file for that board:
  *
  * #define GPIO_I2C1_SCL GPIO_I2C1_SCL_1
@@ -261,4 +261,4 @@
 
 /* TODO: CEC */
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32G0_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
index f54d36862a..75e12d25a9 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
@@ -38,7 +38,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 CAN1_RX connects vis PA11 on some board, then the following
+ * example, if CAN1_RX connects via PA11 on some board, then the following
  * definitions should appear in the board.h header file for that board:
  *
  * #define GPIO_I2C1_SCL GPIO_I2C1_SCL_1
@@ -52,7 +52,7 @@
  * defined for most pins in this file.
  */
 
-#define GPIO_BOOT1         (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN2)
+#define GPIO_BOOT1_0       (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN2)
 
 /* ADC
  *
@@ -60,121 +60,121 @@
  * ADC_IN17 is internal Vrefint
  */
 
-#define GPIO_ADC1_IN0       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_ADC1_IN1       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_ADC1_IN2       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_ADC1_IN3       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_ADC1_IN4       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
-#define GPIO_ADC1_IN5       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_ADC1_IN6       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_ADC1_IN7       (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_ADC1_IN8       (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_ADC1_IN9       (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_ADC1_IN10      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_ADC1_IN11      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_ADC1_IN12      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_ADC1_IN13      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_ADC1_IN14      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_ADC1_IN15      (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_ADC1_IN0_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_ADC1_IN1_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_ADC1_IN2_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_ADC1_IN3_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_ADC1_IN4_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_ADC1_IN5_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN5)
+#define GPIO_ADC1_IN6_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_ADC1_IN7_0     (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_ADC1_IN8_0     (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_ADC1_IN9_0     (GPIO_ANALOG | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_ADC1_IN10_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_ADC1_IN11_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_ADC1_IN12_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_ADC1_IN13_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_ADC1_IN14_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_ADC1_IN15_0    (GPIO_ANALOG | GPIO_PORTC | GPIO_PIN5)
 
 /* DAC */
 
-#define GPIO_DAC1_OUT1      (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
+#define GPIO_DAC1_OUT1_0    (GPIO_ANALOG | GPIO_PORTA | GPIO_PIN4)
 
 /* I2C */
 
-#define GPIO_I2C1_SCL_1     (GPIO_ALT | GPIO_AF1 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN6)
-#define GPIO_I2C1_SCL_2     (GPIO_ALT | GPIO_AF4 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_I2C1_SDA_1     (GPIO_ALT | GPIO_AF1 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_I2C1_SDA_2     (GPIO_ALT | GPIO_AF4 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_I2C1_SMBA      (GPIO_ALT | GPIO_AF3 | GPIO_SPEED_HIGH | 
GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN5)
-#define GPIO_I2C2_SCL_1     (GPIO_ALT | GPIO_AF6 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_I2C2_SCL_2     (GPIO_ALT | GPIO_AF5 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_I2C2_SDA_1     (GPIO_ALT | GPIO_AF6 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_I2C2_SDA_2     (GPIO_ALT | GPIO_AF5 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTB | GPIO_PIN14)
-#define GPIO_I2C2_SMBA      (GPIO_ALT | GPIO_AF5 | GPIO_SPEED_HIGH | 
GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN12)
-#define GPIO_I2C3_SCL       (GPIO_ALT | GPIO_AF7 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_I2C3_SDA_1     (GPIO_ALT | GPIO_AF4 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_I2C3_SDA_2     (GPIO_ALT | GPIO_AF4 | GPIO_SPEED_HIGH | 
GPIO_OPENDRAIN | GPIO_PORTC | GPIO_PIN9)
+#define GPIO_I2C1_SCL_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN6)
+#define GPIO_I2C1_SCL_2     (GPIO_ALT | GPIO_AF4 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN8)
+#define GPIO_I2C1_SDA_1     (GPIO_ALT | GPIO_AF1 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN7)
+#define GPIO_I2C1_SDA_2     (GPIO_ALT | GPIO_AF4 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN9)
+#define GPIO_I2C1_SMBA_0    (GPIO_ALT | GPIO_AF3 | GPIO_PUSHPULL | GPIO_PORTB 
| GPIO_PIN5)
+#define GPIO_I2C2_SCL_1     (GPIO_ALT | GPIO_AF6 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN10)
+#define GPIO_I2C2_SCL_2     (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN13)
+#define GPIO_I2C2_SDA_1     (GPIO_ALT | GPIO_AF6 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN11)
+#define GPIO_I2C2_SDA_2     (GPIO_ALT | GPIO_AF5 | GPIO_OPENDRAIN | GPIO_PORTB 
| GPIO_PIN14)
+#define GPIO_I2C2_SMBA_0    (GPIO_ALT | GPIO_AF5 | GPIO_PUSHPULL | GPIO_PORTB 
| GPIO_PIN12)
+#define GPIO_I2C3_SCL_0     (GPIO_ALT | GPIO_AF7 | GPIO_OPENDRAIN | GPIO_PORTC 
| GPIO_PIN0)
+#define GPIO_I2C3_SDA_1     (GPIO_ALT | GPIO_AF4 | GPIO_OPENDRAIN | GPIO_PORTC 
| GPIO_PIN1)
+#define GPIO_I2C3_SDA_2     (GPIO_ALT | GPIO_AF4 | GPIO_OPENDRAIN | GPIO_PORTC 
| GPIO_PIN9)
 
 /* LCD */
 
-#define GPIO_LCD_COM0       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_LCD_COM1       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_LCD_COM2       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN10)
-#define GPIO_LCD_COM3       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_LCD_COM4       (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN10)
-#define GPIO_LCD_COM5       (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN11)
-#define GPIO_LCD_COM6       (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN12)
-#define GPIO_LCD_COM7       (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
-#define GPIO_LCD_SEG0       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_LCD_SEG1       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_LCD_SEG2       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_LCD_SEG3       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_LCD_SEG4       (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_LCD_SEG5       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_LCD_SEG6       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_LCD_SEG7       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_LCD_SEG8       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN4)
-#define GPIO_LCD_SEG9       (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN5)
-#define GPIO_LCD_SEG10      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_LCD_SEG11      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_LCD_SEG12      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN12)
-#define GPIO_LCD_SEG13      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN13)
-#define GPIO_LCD_SEG14      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN14)
-#define GPIO_LCD_SEG15      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN15)
-#define GPIO_LCD_SEG16      (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN8)
-#define GPIO_LCD_SEG17      (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_LCD_SEG18      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_LCD_SEG19      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_LCD_SEG20      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN2)
-#define GPIO_LCD_SEG21      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN3)
-#define GPIO_LCD_SEG22      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_LCD_SEG23      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN5)
-#define GPIO_LCD_SEG24      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN6)
-#define GPIO_LCD_SEG25      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN7)
-#define GPIO_LCD_SEG26      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN8)
-#define GPIO_LCD_SEG27      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN9)
-#define GPIO_LCD_SEG28      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN10)
-#define GPIO_LCD_SEG29      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN11)
-#define GPIO_LCD_SEG30      (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN12)
-#define GPIO_LCD_SEG31      (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
+#define GPIO_LCD_COM0_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_LCD_COM1_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN9)
+#define GPIO_LCD_COM2_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN10)
+#define GPIO_LCD_COM3_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN9)
+#define GPIO_LCD_COM4_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN10)
+#define GPIO_LCD_COM5_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN11)
+#define GPIO_LCD_COM6_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN12)
+#define GPIO_LCD_COM7_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
+#define GPIO_LCD_SEG0_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_LCD_SEG1_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN2)
+#define GPIO_LCD_SEG2_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN3)
+#define GPIO_LCD_SEG3_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_LCD_SEG4_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_LCD_SEG5_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_LCD_SEG6_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN1)
+#define GPIO_LCD_SEG7_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN3)
+#define GPIO_LCD_SEG8_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN4)
+#define GPIO_LCD_SEG9_0     (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN5)
+#define GPIO_LCD_SEG10_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN10)
+#define GPIO_LCD_SEG11_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN11)
+#define GPIO_LCD_SEG12_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN12)
+#define GPIO_LCD_SEG13_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN13)
+#define GPIO_LCD_SEG14_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN14)
+#define GPIO_LCD_SEG15_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN15)
+#define GPIO_LCD_SEG16_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTB | GPIO_PIN8)
+#define GPIO_LCD_SEG17_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTA | GPIO_PIN15)
+#define GPIO_LCD_SEG18_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_LCD_SEG19_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_LCD_SEG20_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN2)
+#define GPIO_LCD_SEG21_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN3)
+#define GPIO_LCD_SEG22_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_LCD_SEG23_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN5)
+#define GPIO_LCD_SEG24_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN6)
+#define GPIO_LCD_SEG25_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN7)
+#define GPIO_LCD_SEG26_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN8)
+#define GPIO_LCD_SEG27_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN9)
+#define GPIO_LCD_SEG28_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN10)
+#define GPIO_LCD_SEG29_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN11)
+#define GPIO_LCD_SEG30_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTC | GPIO_PIN12)
+#define GPIO_LCD_SEG31_0    (GPIO_ALT | GPIO_AF1 | GPIO_PORTD | GPIO_PIN2)
 
 /* Clocking */
 
-#define GPIO_MCO_1          (GPIO_ALT | GPIO_AF0 | GPIO_SPEED_HIGH | 
GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_MCO_2          (GPIO_ALT | GPIO_AF0 | GPIO_SPEED_HIGH | 
GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_OSC32_IN       (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN14)
-#define GPIO_OSC32_OUT      (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN15)
-#define GPIO_OSC_IN         (GPIO_ALT | GPIO_AF0 | GPIO_PORTH | GPIO_PIN0)
-#define GPIO_OSC_OUT        (GPIO_ALT | GPIO_AF0 | GPIO_PORTH | GPIO_PIN1)
+#define GPIO_MCO_1          (GPIO_ALT | GPIO_AF0 | GPIO_PUSHPULL | GPIO_PORTA 
| GPIO_PIN8)
+#define GPIO_MCO_2          (GPIO_ALT | GPIO_AF0 | GPIO_PUSHPULL | GPIO_PORTA 
| GPIO_PIN9)
+#define GPIO_OSC32_IN_0     (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN14)
+#define GPIO_OSC32_OUT_0    (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN15)
+#define GPIO_OSC_IN_0       (GPIO_ALT | GPIO_AF0 | GPIO_PORTH | GPIO_PIN0)
+#define GPIO_OSC_OUT_0      (GPIO_ALT | GPIO_AF0 | GPIO_PORTH | GPIO_PIN1)
 
 /* Event outputs */
 
-#define GPIO_PA1_EVENT_OUT  (GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_PA6_EVENT_OUT  (GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_PA7_EVENT_OUT  (GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_PA8_EVENT_OUT  (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN8)
-#define GPIO_PA11_EVENT_OUT (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN11)
-#define GPIO_PA12_EVENT_OUT (GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN12)
-#define GPIO_PA15_EVENT_OUT (GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_PB0_EVENT_OUT  (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_PB3_EVENT_OUT  (GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_PB9_EVENT_OUT  (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
-#define GPIO_PB11_EVENT_OUT (GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_PB12_EVENT_OUT (GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN12)
-#define GPIO_PC0_EVENT_OUT  (GPIO_ALT | GPIO_AF2 | GPIO_PORTC | GPIO_PIN0)
-#define GPIO_PC1_EVENT_OUT  (GPIO_ALT | GPIO_AF2 | GPIO_PORTC | GPIO_PIN1)
-#define GPIO_PC4_EVENT_OUT  (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN4)
-#define GPIO_PE0_EVENT_OUT  (GPIO_ALT | GPIO_AF2 | GPIO_PORTE | GPIO_PIN0)
-#define GPIO_PE1_EVENT_OUT  (GPIO_ALT | GPIO_AF2 | GPIO_PORTE | GPIO_PIN1)
+#define GPIO_PA1_EVENT_OUT_0(GPIO_ALT | GPIO_AF0 | GPIO_PORTA | GPIO_PIN1)
+#define GPIO_PA6_EVENT_OUT_0(GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN6)
+#define GPIO_PA7_EVENT_OUT_0(GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN7)
+#define GPIO_PA8_EVENT_OUT_0(GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN8)
+#define GPIO_PA11_EVENT_OUT_0GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN11)
+#define GPIO_PA12_EVENT_OUT_0GPIO_ALT | GPIO_AF2 | GPIO_PORTA | GPIO_PIN12)
+#define GPIO_PA15_EVENT_OUT_0GPIO_ALT | GPIO_AF3 | GPIO_PORTA | GPIO_PIN15)
+#define GPIO_PB0_EVENT_OUT_0(GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN0)
+#define GPIO_PB3_EVENT_OUT_0(GPIO_ALT | GPIO_AF4 | GPIO_PORTB | GPIO_PIN3)
+#define GPIO_PB9_EVENT_OUT_0(GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN9)
+#define GPIO_PB11_EVENT_OUT_0GPIO_ALT | GPIO_AF0 | GPIO_PORTB | GPIO_PIN11)
+#define GPIO_PB12_EVENT_OUT_0GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN12)
+#define GPIO_PC0_EVENT_OUT_0(GPIO_ALT | GPIO_AF2 | GPIO_PORTC | GPIO_PIN0)
+#define GPIO_PC1_EVENT_OUT_0(GPIO_ALT | GPIO_AF2 | GPIO_PORTC | GPIO_PIN1)
+#define GPIO_PC4_EVENT_OUT_0(GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN4)
+#define GPIO_PE0_EVENT_OUT_0(GPIO_ALT | GPIO_AF2 | GPIO_PORTE | GPIO_PIN0)
+#define GPIO_PE1_EVENT_OUT_0(GPIO_ALT | GPIO_AF2 | GPIO_PORTE | GPIO_PIN1)
 
 /* RTC */
 
-#define GPIO_RTC_OUT        (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN14)
-#define GPIO_RTC_REFIN      (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN15)
-#define GPIO_RTC_TAMP1      (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN13)
-#define GPIO_RTC_TS         (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN13)
+#define GPIO_RTC_OUT_0      (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN14)
+#define GPIO_RTC_REFIN_0    (GPIO_ALT | GPIO_AF2 | GPIO_PORTB | GPIO_PIN15)
+#define GPIO_RTC_TAMP1_0    (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN13)
+#define GPIO_RTC_TS_0       (GPIO_ALT | GPIO_AF0 | GPIO_PORTC | GPIO_PIN13)
 
 /* SPI */
 
@@ -207,67 +207,67 @@
 
 /* Timers */
 
-#define GPIO_TIM2_CH1_ETR_1 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN0)
-#define GPIO_TIM2_CH1_ETR_2 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_TIM2_CH1_ETR_3 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN9)
-#define GPIO_TIM2_CH1_ETR_4 (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN5)
-#define GPIO_TIM2_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TIM2_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TIM2_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN10)
-#define GPIO_TIM2_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TIM2_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TIM2_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN10)
-#define GPIO_TIM2_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TIM2_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TIM2_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN10)
-#define GPIO_TIM2_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_TIM2_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_TIM2_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN10)
-#define GPIO_TIM2_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TIM2_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_TIM2_CH3IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN11)
-#define GPIO_TIM2_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TIM2_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_TIM2_CH3IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN11)
-#define GPIO_TIM2_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TIM2_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_TIM2_CH3OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN11)
-#define GPIO_TIM2_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_TIM2_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN10)
-#define GPIO_TIM2_CH3OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN11)
-#define GPIO_TIM2_CH4IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_TIM2_CH4IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_TIM2_CH4IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN12)
-#define GPIO_TIM2_CH4OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_TIM2_CH4OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN11)
-#define GPIO_TIM2_CH4OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN12)
-
-#define GPIO_TIM3_CH1IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TIM3_CH1IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN4)
-#define GPIO_TIM3_CH1IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN6)
-#define GPIO_TIM3_CH1IN_4   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN3)
-#define GPIO_TIM3_CH1OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN6)
-#define GPIO_TIM3_CH1OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN4)
-#define GPIO_TIM3_CH1OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN6)
-#define GPIO_TIM3_CH1OUT_4  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN3)
-#define GPIO_TIM3_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM3_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN5)
-#define GPIO_TIM3_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN7)
-#define GPIO_TIM3_CH2IN_4   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN4)
-#define GPIO_TIM3_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTA | GPIO_PIN7)
-#define GPIO_TIM3_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN5)
-#define GPIO_TIM3_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN7)
-#define GPIO_TIM3_CH2OUT_4  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN4)
-#define GPIO_TIM3_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_TIM3_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN8)
-#define GPIO_TIM3_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN0)
-#define GPIO_TIM3_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN8)
-#define GPIO_TIM3_CH4IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_TIM3_CH4IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN9)
-#define GPIO_TIM3_CH4OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTB | GPIO_PIN1)
-#define GPIO_TIM3_CH4OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTC | GPIO_PIN9)
-#define GPIO_TIM3_ETR_1     (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTD | GPIO_PIN2)
-#define GPIO_TIM3_ETR_2     (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PORTE | GPIO_PIN2)
+#define GPIO_TIM2_CH1_ETR_1 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN0)
+#define GPIO_TIM2_CH1_ETR_2 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN15)
+#define GPIO_TIM2_CH1_ETR_3 (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN9)
+#define GPIO_TIM2_CH1_ETR_4 (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN5)
+#define GPIO_TIM2_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN1)
+#define GPIO_TIM2_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN3)
+#define GPIO_TIM2_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN10)
+#define GPIO_TIM2_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN1)
+#define GPIO_TIM2_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN3)
+#define GPIO_TIM2_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN10)
+#define GPIO_TIM2_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTA 
| GPIO_PIN1)
+#define GPIO_TIM2_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTB 
| GPIO_PIN3)
+#define GPIO_TIM2_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTE 
| GPIO_PIN10)
+#define GPIO_TIM2_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTA 
| GPIO_PIN1)
+#define GPIO_TIM2_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTB 
| GPIO_PIN3)
+#define GPIO_TIM2_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTE 
| GPIO_PIN10)
+#define GPIO_TIM2_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN2)
+#define GPIO_TIM2_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN10)
+#define GPIO_TIM2_CH3IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN11)
+#define GPIO_TIM2_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN2)
+#define GPIO_TIM2_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN10)
+#define GPIO_TIM2_CH3IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN11)
+#define GPIO_TIM2_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTA 
| GPIO_PIN2)
+#define GPIO_TIM2_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTB 
| GPIO_PIN10)
+#define GPIO_TIM2_CH3OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTE 
| GPIO_PIN11)
+#define GPIO_TIM2_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTA 
| GPIO_PIN2)
+#define GPIO_TIM2_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTB 
| GPIO_PIN10)
+#define GPIO_TIM2_CH3OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTE 
| GPIO_PIN11)
+#define GPIO_TIM2_CH4IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTA | 
GPIO_PIN3)
+#define GPIO_TIM2_CH4IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTB | 
GPIO_PIN11)
+#define GPIO_TIM2_CH4IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF1 | GPIO_PORTE | 
GPIO_PIN12)
+#define GPIO_TIM2_CH4OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTA 
| GPIO_PIN3)
+#define GPIO_TIM2_CH4OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTB 
| GPIO_PIN11)
+#define GPIO_TIM2_CH4OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF1 | GPIO_PORTE 
| GPIO_PIN12)
+
+#define GPIO_TIM3_CH1IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN6)
+#define GPIO_TIM3_CH1IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN4)
+#define GPIO_TIM3_CH1IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTC | 
GPIO_PIN6)
+#define GPIO_TIM3_CH1IN_4   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTE | 
GPIO_PIN3)
+#define GPIO_TIM3_CH1OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTA 
| GPIO_PIN6)
+#define GPIO_TIM3_CH1OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTB 
| GPIO_PIN4)
+#define GPIO_TIM3_CH1OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTC 
| GPIO_PIN6)
+#define GPIO_TIM3_CH1OUT_4  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTE 
| GPIO_PIN3)
+#define GPIO_TIM3_CH2IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTA | 
GPIO_PIN7)
+#define GPIO_TIM3_CH2IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN5)
+#define GPIO_TIM3_CH2IN_3   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTC | 
GPIO_PIN7)
+#define GPIO_TIM3_CH2IN_4   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTE | 
GPIO_PIN4)
+#define GPIO_TIM3_CH2OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTA 
| GPIO_PIN7)
+#define GPIO_TIM3_CH2OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTB 
| GPIO_PIN5)
+#define GPIO_TIM3_CH2OUT_3  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTC 
| GPIO_PIN7)
+#define GPIO_TIM3_CH2OUT_4  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTE 
| GPIO_PIN4)
+#define GPIO_TIM3_CH3IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN0)
+#define GPIO_TIM3_CH3IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTC | 
GPIO_PIN8)
+#define GPIO_TIM3_CH3OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTB 
| GPIO_PIN0)
+#define GPIO_TIM3_CH3OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTC 
| GPIO_PIN8)
+#define GPIO_TIM3_CH4IN_1   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTB | 
GPIO_PIN1)
+#define GPIO_TIM3_CH4IN_2   (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTC | 
GPIO_PIN9)
+#define GPIO_TIM3_CH4OUT_1  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTB 
| GPIO_PIN1)
+#define GPIO_TIM3_CH4OUT_2  (GPIO_ALT | GPIO_PUSHPULL | GPIO_AF2 | GPIO_PORTC 
| GPIO_PIN9)
+#define GPIO_TIM3_ETR_1     (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTD | 
GPIO_PIN2)
+#define GPIO_TIM3_ETR_2     (GPIO_ALT | GPIO_FLOAT | GPIO_AF2 | GPIO_PORTE | 
GPIO_PIN2)
 
 /* TODO: TIM21, TIM22 */
 
@@ -279,10 +279,10 @@
 #define GPIO_USART1_CTS_2   (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | GPIO_PIN4)
 #define GPIO_USART1_RTS_1   (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN12)
 #define GPIO_USART1_RTS_2   (GPIO_ALT | GPIO_AF5 | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_USART1_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN10)
-#define GPIO_USART1_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART1_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN9)
-#define GPIO_USART1_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN6)
+#define GPIO_USART1_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN10)
+#define GPIO_USART1_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART1_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN9)
+#define GPIO_USART1_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN6)
 
 #define GPIO_USART2_CK_1    (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN4)
 #define GPIO_USART2_CK_2    (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN7)
@@ -290,33 +290,33 @@
 #define GPIO_USART2_CTS_2   (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN3)
 #define GPIO_USART2_RTS_1   (GPIO_ALT | GPIO_AF4 | GPIO_PORTA | GPIO_PIN1)
 #define GPIO_USART2_RTS_2   (GPIO_ALT | GPIO_AF0 | GPIO_PORTD | GPIO_PIN4)
-#define GPIO_USART2_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN3)
-#define GPIO_USART2_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTD | GPIO_PIN6)
-#define GPIO_USART2_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_USART2_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN2)
-#define GPIO_USART2_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTD | GPIO_PIN5)
-#define GPIO_USART2_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN14)
-
-#define GPIO_USART4_CK      (GPIO_ALT | GPIO_AF6 | GPIO_PORTC | GPIO_PIN12)
-#define GPIO_USART4_RTS     (GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN15)
-#define GPIO_USART4_CTS     (GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN7)
-#define GPIO_USART4_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN11)
-#define GPIO_USART4_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTE | GPIO_PIN9)
-#define GPIO_USART4_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN1)
-#define GPIO_USART4_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN10)
-#define GPIO_USART4_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTE | GPIO_PIN8)
-#define GPIO_USART4_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTA | GPIO_PIN0)
+#define GPIO_USART2_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN3)
+#define GPIO_USART2_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTD | GPIO_PIN6)
+#define GPIO_USART2_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN15)
+#define GPIO_USART2_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN2)
+#define GPIO_USART2_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF0 | GPIO_PUSHPULL 
| GPIO_PORTD | GPIO_PIN5)
+#define GPIO_USART2_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF4 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN14)
+
+#define GPIO_USART4_CK_0    (GPIO_ALT | GPIO_AF6 | GPIO_PORTC | GPIO_PIN12)
+#define GPIO_USART4_RTS_0   (GPIO_ALT | GPIO_AF6 | GPIO_PORTA | GPIO_PIN15)
+#define GPIO_USART4_CTS_0   (GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN7)
+#define GPIO_USART4_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN11)
+#define GPIO_USART4_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTE | GPIO_PIN9)
+#define GPIO_USART4_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN1)
+#define GPIO_USART4_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN10)
+#define GPIO_USART4_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTE | GPIO_PIN8)
+#define GPIO_USART4_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTA | GPIO_PIN0)
 
 #define GPIO_USART5_CK_1    (GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_USART5_CK_2    (GPIO_ALT | GPIO_AF6 | GPIO_PORTE | GPIO_PIN7)
 #define GPIO_USART5_RTS_1   (GPIO_ALT | GPIO_AF6 | GPIO_PORTB | GPIO_PIN5)
 #define GPIO_USART5_RTS_2   (GPIO_ALT | GPIO_AF6 | GPIO_PORTE | GPIO_PIN7)
-#define GPIO_USART5_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTD | GPIO_PIN2)
-#define GPIO_USART5_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTE | GPIO_PIN11)
-#define GPIO_USART5_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN3)
-#define GPIO_USART5_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF2 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTC | GPIO_PIN12)
-#define GPIO_USART5_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTE | GPIO_PIN10)
-#define GPIO_USART5_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | 
GPIO_SPEED_HIGH | GPIO_PUSHPULL | GPIO_PORTB | GPIO_PIN4)
+#define GPIO_USART5_RX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTD | GPIO_PIN2)
+#define GPIO_USART5_RX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTE | GPIO_PIN11)
+#define GPIO_USART5_RX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN3)
+#define GPIO_USART5_TX_1    (GPIO_ALT | GPIO_PULLUP | GPIO_AF2 | GPIO_PUSHPULL 
| GPIO_PORTC | GPIO_PIN12)
+#define GPIO_USART5_TX_2    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTE | GPIO_PIN10)
+#define GPIO_USART5_TX_3    (GPIO_ALT | GPIO_PULLUP | GPIO_AF6 | GPIO_PUSHPULL 
| GPIO_PORTB | GPIO_PIN4)
 
 /* TODO: USB */
 
diff --git a/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h 
b/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap_legacy.h
similarity index 98%
copy from arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
copy to arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap_legacy.h
index f54d36862a..4fe0ac1b4f 100644
--- a/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
+++ b/arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap_legacy.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * arch/arm/src/stm32f0l0g0/hardware/stm32l0_pinmap.h
+ * arch/arm/src/stm32f0l0g0/hardware/stm32l0_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_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_H
-#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_H
+#ifndef __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_LEGACY_H
+#define __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_LEGACY_H
 
 /****************************************************************************
  * Included Files
@@ -38,7 +38,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 CAN1_RX connects vis PA11 on some board, then the following
+ * example, if CAN1_RX connects via PA11 on some board, then the following
  * definitions should appear in the board.h header file for that board:
  *
  * #define GPIO_I2C1_SCL GPIO_I2C1_SCL_1
@@ -324,4 +324,4 @@
 
 /* TODO: LPUART */
 
-#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_H */
+#endif /* __ARCH_ARM_SRC_STM32F0L0G0_HARDWARE_STM32L0_PINMAP_LEGACY_H */
diff --git a/arch/arm/src/stm32f0l0g0/stm32_gpio.c 
b/arch/arm/src/stm32f0l0g0/stm32_gpio.c
index 5e05bcac50..6fd0e1d123 100644
--- a/arch/arm/src/stm32f0l0g0/stm32_gpio.c
+++ b/arch/arm/src/stm32f0l0g0/stm32_gpio.c
@@ -43,6 +43,10 @@
 #  include "hardware/stm32_exti.h"
 #endif
 
+#if defined(CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP)
+#  pragma message "CONFIG_STM32F0G0L0_USE_LEGACY_PINMAP will be deprecated 
migrate board.h see tools/stm32_pinmap_tool.py"
+#endif
+
 /****************************************************************************
  * Public Data
  ****************************************************************************/

Reply via email to