This is an automated email from the ASF dual-hosted git repository.

linguini1 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit ebb53a7ae68477862e83637235119b9165ff8d82
Author: raiden00pl <[email protected]>
AuthorDate: Thu Apr 23 18:57:56 2026 +0200

    boards/stm32f1: migrate to new pinmap
    
    migrate stm32f1 to new pinmap
    
    Signed-off-by: raiden00pl <[email protected]>
---
 boards/arm/stm32/cloudctrl/configs/nsh/defconfig   |   1 +
 boards/arm/stm32/cloudctrl/include/board.h         |  49 ++++++++++
 .../arm/stm32/et-stm32-stamp/configs/nsh/defconfig |   1 +
 boards/arm/stm32/et-stm32-stamp/include/board.h    |   7 ++
 .../arm/stm32/fire-stm32v2/configs/nsh/defconfig   |   1 +
 boards/arm/stm32/fire-stm32v2/include/board.h      |  42 ++++++++
 .../arm/stm32/hymini-stm32v/configs/nsh/defconfig  |   1 +
 .../arm/stm32/hymini-stm32v/configs/nsh2/defconfig |   1 +
 .../stm32/hymini-stm32v/configs/usbmsc/defconfig   |   1 +
 .../stm32/hymini-stm32v/configs/usbnsh/defconfig   |   1 +
 .../hymini-stm32v/configs/usbserial/defconfig      |   1 +
 boards/arm/stm32/hymini-stm32v/include/board.h     |  82 ++++++++++++++++
 boards/arm/stm32/maple/configs/nsh/defconfig       |   1 +
 boards/arm/stm32/maple/configs/nx/defconfig        |   1 +
 boards/arm/stm32/maple/configs/usbnsh/defconfig    |   1 +
 boards/arm/stm32/maple/include/board.h             |  40 ++++++++
 .../arm/stm32/nucleo-f103rb/configs/adc/defconfig  |   1 +
 .../nucleo-f103rb/configs/ihm07m1_b16/defconfig    |   1 +
 .../arm/stm32/nucleo-f103rb/configs/nsh/defconfig  |   1 +
 .../arm/stm32/nucleo-f103rb/configs/pwm/defconfig  |   1 +
 .../stm32/nucleo-f103rb/configs/qenco/defconfig    |   1 +
 boards/arm/stm32/nucleo-f103rb/include/board.h     |  37 +++++++
 boards/arm/stm32/nucleo-f103rb/src/stm32_adc.c     |  18 ++--
 .../stm32/nucleo-f103rb/src/stm32_foc_ihm07m1.c    |  10 +-
 .../stm32/olimex-stm32-p107/configs/nsh/defconfig  |   1 +
 boards/arm/stm32/olimex-stm32-p107/include/board.h |  41 ++++++++
 boards/arm/stm32/shenzhou/configs/nsh/defconfig    |   1 +
 boards/arm/stm32/shenzhou/configs/nxwm/defconfig   |   1 +
 boards/arm/stm32/shenzhou/configs/thttpd/defconfig |   1 +
 boards/arm/stm32/shenzhou/include/board.h          |  56 +++++++++++
 .../stm3210e-eval/configs/composite/defconfig      |   1 +
 .../arm/stm32/stm3210e-eval/configs/nsh/defconfig  |   1 +
 .../arm/stm32/stm3210e-eval/configs/nsh2/defconfig |   1 +
 .../arm/stm32/stm3210e-eval/configs/nx/defconfig   |   1 +
 .../stm32/stm3210e-eval/configs/nxterm/defconfig   |   1 +
 .../arm/stm32/stm3210e-eval/configs/pm/defconfig   |   1 +
 .../stm32/stm3210e-eval/configs/usbmsc/defconfig   |   1 +
 .../stm3210e-eval/configs/usbserial/defconfig      |   1 +
 boards/arm/stm32/stm3210e-eval/include/board.h     | 107 +++++++++++++++++++++
 .../arm/stm32/stm3210e-eval/src/stm32_selectlcd.c  |   1 +
 .../arm/stm32/stm3210e-eval/src/stm32_selectnor.c  |   1 +
 .../arm/stm32/stm3210e-eval/src/stm32_selectsram.c |   1 +
 boards/arm/stm32/stm32_tiny/configs/nsh/defconfig  |   1 +
 .../arm/stm32/stm32_tiny/configs/usbnsh/defconfig  |   1 +
 boards/arm/stm32/stm32_tiny/include/board.h        |  19 ++++
 .../stm32/stm32butterfly2/configs/nsh/defconfig    |   1 +
 .../stm32/stm32butterfly2/configs/nshnet/defconfig |   1 +
 .../stm32butterfly2/configs/nshusbdev/defconfig    |   1 +
 .../stm32butterfly2/configs/nshusbhost/defconfig   |   1 +
 boards/arm/stm32/stm32butterfly2/include/board.h   |  61 ++++++++++++
 boards/arm/stm32/stm32butterfly2/src/stm32_adc.c   |   2 +-
 boards/arm/stm32/stm32butterfly2/src/stm32_usb.c   |   1 +
 .../stm32/stm32f103-minimum/configs/adb/defconfig  |   1 +
 .../stm32f103-minimum/configs/apds9960/defconfig   |   1 +
 .../stm32f103-minimum/configs/audio_tone/defconfig |   1 +
 .../stm32f103-minimum/configs/buttons/defconfig    |   1 +
 .../stm32/stm32f103-minimum/configs/can/defconfig  |   1 +
 .../stm32f103-minimum/configs/hello/defconfig      |   1 +
 .../stm32f103-minimum/configs/jlx12864g/defconfig  |   1 +
 .../stm32f103-minimum/configs/lcd1602/defconfig    |   1 +
 .../stm32f103-minimum/configs/mcp2515/defconfig    |   1 +
 .../stm32f103-minimum/configs/nrf24/defconfig      |   1 +
 .../stm32/stm32f103-minimum/configs/nsh/defconfig  |   1 +
 .../stm32/stm32f103-minimum/configs/pwm/defconfig  |   1 +
 .../stm32f103-minimum/configs/rfid-rc522/defconfig |   1 +
 .../stm32f103-minimum/configs/rgbled/defconfig     |   1 +
 .../stm32f103-minimum/configs/sensors/defconfig    |   1 +
 .../stm32f103-minimum/configs/ssd1306/defconfig    |   1 +
 .../stm32f103-minimum/configs/usbnsh/defconfig     |   1 +
 .../stm32f103-minimum/configs/userled/defconfig    |   1 +
 .../stm32f103-minimum/configs/veml6070/defconfig   |   1 +
 boards/arm/stm32/stm32f103-minimum/include/board.h |  91 ++++++++++++++++++
 .../stm32/stm32vldiscovery/configs/nsh/defconfig   |   1 +
 boards/arm/stm32/stm32vldiscovery/include/board.h  |   7 ++
 .../viewtool-stm32f107/configs/ft80x/defconfig     |   1 +
 .../viewtool-stm32f107/configs/highpri/defconfig   |   1 +
 .../viewtool-stm32f107/configs/netnsh/defconfig    |   1 +
 .../stm32/viewtool-stm32f107/configs/nsh/defconfig |   1 +
 .../configs/tcpblaster/defconfig                   |   1 +
 .../arm/stm32/viewtool-stm32f107/include/board.h   |  47 +++++++++
 80 files changed, 764 insertions(+), 15 deletions(-)

diff --git a/boards/arm/stm32/cloudctrl/configs/nsh/defconfig 
b/boards/arm/stm32/cloudctrl/configs/nsh/defconfig
index be4882c81d0..faa229fc338 100644
--- a/boards/arm/stm32/cloudctrl/configs/nsh/defconfig
+++ b/boards/arm/stm32/cloudctrl/configs/nsh/defconfig
@@ -8,6 +8,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 # CONFIG_SPI_CALLBACK is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="cloudctrl"
 CONFIG_ARCH_BOARD_CLOUDCTRL=y
diff --git a/boards/arm/stm32/cloudctrl/include/board.h 
b/boards/arm/stm32/cloudctrl/include/board.h
index d54fbcd727f..93955bad8b7 100644
--- a/boards/arm/stm32/cloudctrl/include/board.h
+++ b/boards/arm/stm32/cloudctrl/include/board.h
@@ -357,4 +357,53 @@ const char *stm32_getchipid_string(void);
 #endif
 
 #endif /* __ASSEMBLY__ */
+
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* MCO */
+
+#define GPIO_MCO           GPIO_ADJUST_MODE(GPIO_MCO_0, GPIO_MODE_50MHz)
+
+/* Ethernet (MII/RMII) */
+
+#define GPIO_ETH_MDC          GPIO_ADJUST_MODE(GPIO_ETH_MDC_0, GPIO_MODE_50MHz)
+#define GPIO_ETH_MDIO         GPIO_ADJUST_MODE(GPIO_ETH_MDIO_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_COL      GPIO_ETH_MII_COL_0
+#define GPIO_ETH_MII_CRS      GPIO_ETH_MII_CRS_0
+#define GPIO_ETH_MII_RX_CLK   GPIO_ETH_MII_RX_CLK_0
+#define GPIO_ETH_MII_RXD0     GPIO_ETH_MII_RXD0_0
+#define GPIO_ETH_MII_RXD1     GPIO_ETH_MII_RXD1_0
+#define GPIO_ETH_MII_RXD2     GPIO_ETH_MII_RXD2_0
+#define GPIO_ETH_MII_RXD3     GPIO_ETH_MII_RXD3_0
+#define GPIO_ETH_MII_RX_DV    GPIO_ETH_MII_RX_DV_0
+#define GPIO_ETH_MII_RX_ER    GPIO_ETH_MII_RX_ER_0
+#define GPIO_ETH_MII_TX_CLK   GPIO_ETH_MII_TX_CLK_0
+#define GPIO_ETH_MII_TXD0     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD1     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD2     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD2_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD3     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD3_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TX_EN    GPIO_ADJUST_MODE(GPIO_ETH_MII_TX_EN_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_CRS_DV  GPIO_ETH_RMII_CRS_DV_0
+#define GPIO_ETH_RMII_REF_CLK GPIO_ETH_RMII_REF_CLK_0
+#define GPIO_ETH_RMII_RXD0    GPIO_ETH_RMII_RXD0_0
+#define GPIO_ETH_RMII_RXD1    GPIO_ETH_RMII_RXD1_0
+#define GPIO_ETH_RMII_TXD0    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TXD1    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TX_EN   GPIO_ADJUST_MODE(GPIO_ETH_RMII_TX_EN_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_CLOUDCTRL_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/et-stm32-stamp/configs/nsh/defconfig 
b/boards/arm/stm32/et-stm32-stamp/configs/nsh/defconfig
index 4c71777c0f8..dd6d8e3605d 100644
--- a/boards/arm/stm32/et-stm32-stamp/configs/nsh/defconfig
+++ b/boards/arm/stm32/et-stm32-stamp/configs/nsh/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="et-stm32-stamp"
 CONFIG_ARCH_BOARD_ET_STM32_STAMP=y
diff --git a/boards/arm/stm32/et-stm32-stamp/include/board.h 
b/boards/arm/stm32/et-stm32-stamp/include/board.h
index 444d2d8b20a..c2d3dd4b1a9 100644
--- a/boards/arm/stm32/et-stm32-stamp/include/board.h
+++ b/boards/arm/stm32/et-stm32-stamp/include/board.h
@@ -145,4 +145,11 @@
 #define LED_ASSERTION     6  /* LED1 + LED2 */
 #define LED_PANIC         7  /* LED1 / LED2 blinking */
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
 #endif /* __BOARDS_ARM_STM32_ET_STM32_STAMP_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/fire-stm32v2/configs/nsh/defconfig 
b/boards/arm/stm32/fire-stm32v2/configs/nsh/defconfig
index 334352f9853..77d9371a67a 100644
--- a/boards/arm/stm32/fire-stm32v2/configs/nsh/defconfig
+++ b/boards/arm/stm32/fire-stm32v2/configs/nsh/defconfig
@@ -10,6 +10,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 # CONFIG_SPI_CALLBACK is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="fire-stm32v2"
 CONFIG_ARCH_BOARD_FIRE_STM32=y
diff --git a/boards/arm/stm32/fire-stm32v2/include/board.h 
b/boards/arm/stm32/fire-stm32v2/include/board.h
index d8e09d6f075..573773b7da3 100644
--- a/boards/arm/stm32/fire-stm32v2/include/board.h
+++ b/boards/arm/stm32/fire-stm32v2/include/board.h
@@ -406,4 +406,46 @@ void fire_lcdclear(uint16_t color);
 #undef EXTERN
 
 #endif /* __ASSEMBLY__ */
+
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* I2C1 */
+
+#define GPIO_I2C1_SCL      GPIO_ADJUST_MODE(GPIO_I2C1_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C1_SDA      GPIO_ADJUST_MODE(GPIO_I2C1_SDA_0, GPIO_MODE_50MHz)
+
+/* SDIO */
+
+#define GPIO_SDIO_CK       GPIO_ADJUST_MODE(GPIO_SDIO_CK_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_CMD      GPIO_ADJUST_MODE(GPIO_SDIO_CMD_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D0       GPIO_ADJUST_MODE(GPIO_SDIO_D0_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D1       GPIO_ADJUST_MODE(GPIO_SDIO_D1_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D2       GPIO_ADJUST_MODE(GPIO_SDIO_D2_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D3       GPIO_ADJUST_MODE(GPIO_SDIO_D3_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
 #endif /* __BOARDS_ARM_STM32_FIRE_STM32V2_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/hymini-stm32v/configs/nsh/defconfig 
b/boards/arm/stm32/hymini-stm32v/configs/nsh/defconfig
index 46a47095c31..d8fdb1a12a2 100644
--- a/boards/arm/stm32/hymini-stm32v/configs/nsh/defconfig
+++ b/boards/arm/stm32/hymini-stm32v/configs/nsh/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="hymini-stm32v"
 CONFIG_ARCH_BOARD_HYMINI_STM32V=y
diff --git a/boards/arm/stm32/hymini-stm32v/configs/nsh2/defconfig 
b/boards/arm/stm32/hymini-stm32v/configs/nsh2/defconfig
index 07770b9836b..fae24f1f3b1 100644
--- a/boards/arm/stm32/hymini-stm32v/configs/nsh2/defconfig
+++ b/boards/arm/stm32/hymini-stm32v/configs/nsh2/defconfig
@@ -12,6 +12,7 @@
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
 # CONFIG_SPI_CALLBACK is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="hymini-stm32v"
 CONFIG_ARCH_BOARD_HYMINI_STM32V=y
diff --git a/boards/arm/stm32/hymini-stm32v/configs/usbmsc/defconfig 
b/boards/arm/stm32/hymini-stm32v/configs/usbmsc/defconfig
index 429596080a6..40713d0ae51 100644
--- a/boards/arm/stm32/hymini-stm32v/configs/usbmsc/defconfig
+++ b/boards/arm/stm32/hymini-stm32v/configs/usbmsc/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_MMCSD_HAVE_CARDDETECT is not set
 # CONFIG_MMCSD_MMCSUPPORT is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="hymini-stm32v"
 CONFIG_ARCH_BOARD_HYMINI_STM32V=y
diff --git a/boards/arm/stm32/hymini-stm32v/configs/usbnsh/defconfig 
b/boards/arm/stm32/hymini-stm32v/configs/usbnsh/defconfig
index 73800aa8adf..87da1fac707 100644
--- a/boards/arm/stm32/hymini-stm32v/configs/usbnsh/defconfig
+++ b/boards/arm/stm32/hymini-stm32v/configs/usbnsh/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="hymini-stm32v"
 CONFIG_ARCH_BOARD_HYMINI_STM32V=y
diff --git a/boards/arm/stm32/hymini-stm32v/configs/usbserial/defconfig 
b/boards/arm/stm32/hymini-stm32v/configs/usbserial/defconfig
index 7f6da595e2a..a74f5c81310 100644
--- a/boards/arm/stm32/hymini-stm32v/configs/usbserial/defconfig
+++ b/boards/arm/stm32/hymini-stm32v/configs/usbserial/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="hymini-stm32v"
 CONFIG_ARCH_BOARD_HYMINI_STM32V=y
diff --git a/boards/arm/stm32/hymini-stm32v/include/board.h 
b/boards/arm/stm32/hymini-stm32v/include/board.h
index 441980e64bb..9fae5bdda94 100644
--- a/boards/arm/stm32/hymini-stm32v/include/board.h
+++ b/boards/arm/stm32/hymini-stm32v/include/board.h
@@ -157,4 +157,86 @@
 #define BUTTON_KEYA_BIT  (1 << BUTTON_KEYA)
 #define BUTTON_KEYB_BIT  (1 << BUTTON_KEYB)
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
+/* SDIO */
+
+#define GPIO_SDIO_CK       GPIO_ADJUST_MODE(GPIO_SDIO_CK_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_CMD      GPIO_ADJUST_MODE(GPIO_SDIO_CMD_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D0       GPIO_ADJUST_MODE(GPIO_SDIO_D0_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D1       GPIO_ADJUST_MODE(GPIO_SDIO_D1_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D2       GPIO_ADJUST_MODE(GPIO_SDIO_D2_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D3       GPIO_ADJUST_MODE(GPIO_SDIO_D3_0, GPIO_MODE_50MHz)
+
+/* TIM3 */
+
+#define GPIO_TIM3_CH1IN     GPIO_TIM3_CH1IN_0
+#define GPIO_TIM3_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH2IN     GPIO_TIM3_CH2IN_0
+#define GPIO_TIM3_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH3IN     GPIO_TIM3_CH3IN_0
+#define GPIO_TIM3_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH4IN     GPIO_TIM3_CH4IN_0
+#define GPIO_TIM3_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH4OUT_0, 
GPIO_MODE_50MHz)
+
+/* FSMC NPS_A address pins (used by LCD srcs) */
+
+#define GPIO_NPS_A16      GPIO_ADJUST_MODE(GPIO_NPS_A16_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A17      GPIO_ADJUST_MODE(GPIO_NPS_A17_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A18      GPIO_ADJUST_MODE(GPIO_NPS_A18_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A19      GPIO_ADJUST_MODE(GPIO_NPS_A19_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A20      GPIO_ADJUST_MODE(GPIO_NPS_A20_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A21      GPIO_ADJUST_MODE(GPIO_NPS_A21_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A22      GPIO_ADJUST_MODE(GPIO_NPS_A22_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A23      GPIO_ADJUST_MODE(GPIO_NPS_A23_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A24      GPIO_ADJUST_MODE(GPIO_NPS_A24_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A25      GPIO_ADJUST_MODE(GPIO_NPS_A25_0, GPIO_MODE_50MHz)
+
+/* FSMC NPS_D pins (used by LCD srcs) */
+
+#define GPIO_NPS_D0       GPIO_ADJUST_MODE(GPIO_NPS_D0_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D1       GPIO_ADJUST_MODE(GPIO_NPS_D1_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D10      GPIO_ADJUST_MODE(GPIO_NPS_D10_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D11      GPIO_ADJUST_MODE(GPIO_NPS_D11_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D12      GPIO_ADJUST_MODE(GPIO_NPS_D12_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D13      GPIO_ADJUST_MODE(GPIO_NPS_D13_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D14      GPIO_ADJUST_MODE(GPIO_NPS_D14_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D15      GPIO_ADJUST_MODE(GPIO_NPS_D15_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D2       GPIO_ADJUST_MODE(GPIO_NPS_D2_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D3       GPIO_ADJUST_MODE(GPIO_NPS_D3_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D4       GPIO_ADJUST_MODE(GPIO_NPS_D4_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D5       GPIO_ADJUST_MODE(GPIO_NPS_D5_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D6       GPIO_ADJUST_MODE(GPIO_NPS_D6_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D7       GPIO_ADJUST_MODE(GPIO_NPS_D7_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D8       GPIO_ADJUST_MODE(GPIO_NPS_D8_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D9       GPIO_ADJUST_MODE(GPIO_NPS_D9_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NE1      GPIO_ADJUST_MODE(GPIO_NPS_NE1_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NOE      GPIO_ADJUST_MODE(GPIO_NPS_NOE_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NWE      GPIO_ADJUST_MODE(GPIO_NPS_NWE_0, GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_HYMINI_STM32V_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/maple/configs/nsh/defconfig 
b/boards/arm/stm32/maple/configs/nsh/defconfig
index 7c9ac9e17fb..76c8d71b6ab 100644
--- a/boards/arm/stm32/maple/configs/nsh/defconfig
+++ b/boards/arm/stm32/maple/configs/nsh/defconfig
@@ -20,6 +20,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="maple"
 CONFIG_ARCH_BOARD_MAPLE=y
diff --git a/boards/arm/stm32/maple/configs/nx/defconfig 
b/boards/arm/stm32/maple/configs/nx/defconfig
index 9ffbeb782a2..e12bbf17ced 100644
--- a/boards/arm/stm32/maple/configs/nx/defconfig
+++ b/boards/arm/stm32/maple/configs/nx/defconfig
@@ -22,6 +22,7 @@
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
 # CONFIG_NX_DISABLE_1BPP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="maple"
 CONFIG_ARCH_BOARD_MAPLE=y
diff --git a/boards/arm/stm32/maple/configs/usbnsh/defconfig 
b/boards/arm/stm32/maple/configs/usbnsh/defconfig
index 5dac2d20570..385671cd6d7 100644
--- a/boards/arm/stm32/maple/configs/usbnsh/defconfig
+++ b/boards/arm/stm32/maple/configs/usbnsh/defconfig
@@ -21,6 +21,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="maple"
 CONFIG_ARCH_BOARD_MAPLE=y
diff --git a/boards/arm/stm32/maple/include/board.h 
b/boards/arm/stm32/maple/include/board.h
index 399e9cf93b9..dd3a2053a28 100644
--- a/boards/arm/stm32/maple/include/board.h
+++ b/boards/arm/stm32/maple/include/board.h
@@ -147,4 +147,44 @@
 #define LED_ASSERTION     6  /* LED1 + LED2 */
 #define LED_PANIC         7  /* LED1 / LED2 blinking */
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* I2C1 */
+
+#define GPIO_I2C1_SCL      GPIO_ADJUST_MODE(GPIO_I2C1_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C1_SDA      GPIO_ADJUST_MODE(GPIO_I2C1_SDA_0, GPIO_MODE_50MHz)
+
+/* I2C2 */
+
+#define GPIO_I2C2_SCL      GPIO_ADJUST_MODE(GPIO_I2C2_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C2_SDA      GPIO_ADJUST_MODE(GPIO_I2C2_SDA_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
+/* TIM2 */
+
+#define GPIO_TIM2_CH1IN     GPIO_TIM2_CH1IN_0
+#define GPIO_TIM2_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH2IN     GPIO_TIM2_CH2IN_0
+#define GPIO_TIM2_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH3IN     GPIO_TIM2_CH3IN_0
+#define GPIO_TIM2_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH4IN     GPIO_TIM2_CH4IN_0
+#define GPIO_TIM2_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH4OUT_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_MAPLE_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/nucleo-f103rb/configs/adc/defconfig 
b/boards/arm/stm32/nucleo-f103rb/configs/adc/defconfig
index 46570b4a608..4672e20b396 100644
--- a/boards/arm/stm32/nucleo-f103rb/configs/adc/defconfig
+++ b/boards/arm/stm32/nucleo-f103rb/configs/adc/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ADC_FIFOSIZE=4
 CONFIG_ANALOG=y
diff --git a/boards/arm/stm32/nucleo-f103rb/configs/ihm07m1_b16/defconfig 
b/boards/arm/stm32/nucleo-f103rb/configs/ihm07m1_b16/defconfig
index e8185cb7802..69ae9ce793f 100644
--- a/boards/arm/stm32/nucleo-f103rb/configs/ihm07m1_b16/defconfig
+++ b/boards/arm/stm32/nucleo-f103rb/configs/ihm07m1_b16/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_DISABLE_MQUEUE is not set
 # CONFIG_DISABLE_PTHREAD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ADC_FIFOSIZE=3
 CONFIG_ANALOG=y
diff --git a/boards/arm/stm32/nucleo-f103rb/configs/nsh/defconfig 
b/boards/arm/stm32/nucleo-f103rb/configs/nsh/defconfig
index 2be574f9f86..e271f5b26d0 100644
--- a/boards/arm/stm32/nucleo-f103rb/configs/nsh/defconfig
+++ b/boards/arm/stm32/nucleo-f103rb/configs/nsh/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f103rb"
 CONFIG_ARCH_BOARD_NUCLEO_F103RB=y
diff --git a/boards/arm/stm32/nucleo-f103rb/configs/pwm/defconfig 
b/boards/arm/stm32/nucleo-f103rb/configs/pwm/defconfig
index 1fd7b4dd5e8..11c00cc11fc 100644
--- a/boards/arm/stm32/nucleo-f103rb/configs/pwm/defconfig
+++ b/boards/arm/stm32/nucleo-f103rb/configs/pwm/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f103rb"
 CONFIG_ARCH_BOARD_NUCLEO_F103RB=y
diff --git a/boards/arm/stm32/nucleo-f103rb/configs/qenco/defconfig 
b/boards/arm/stm32/nucleo-f103rb/configs/qenco/defconfig
index df060b58063..99ed163dd1e 100644
--- a/boards/arm/stm32/nucleo-f103rb/configs/qenco/defconfig
+++ b/boards/arm/stm32/nucleo-f103rb/configs/qenco/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="nucleo-f103rb"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/nucleo-f103rb/include/board.h 
b/boards/arm/stm32/nucleo-f103rb/include/board.h
index ab9b840ee27..6eb712c909c 100644
--- a/boards/arm/stm32/nucleo-f103rb/include/board.h
+++ b/boards/arm/stm32/nucleo-f103rb/include/board.h
@@ -211,4 +211,41 @@
 
 #endif /* CONFIG_BOARD_STM32_IHM07M1 */
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* TIM1 */
+
+#define GPIO_TIM1_CH1IN     GPIO_TIM1_CH1IN_0
+#define GPIO_TIM1_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2IN     GPIO_TIM1_CH2IN_0
+#define GPIO_TIM1_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3IN     GPIO_TIM1_CH3IN_0
+#define GPIO_TIM1_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH4IN     GPIO_TIM1_CH4IN_0
+#define GPIO_TIM1_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH4OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_BKIN      GPIO_TIM1_BKIN_0
+#define GPIO_TIM1_ETR       GPIO_TIM1_ETR_0
+#define GPIO_TIM1_CH1NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH1NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH2NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH3NOUT_0, 
GPIO_MODE_50MHz)
+
+/* TIM2 */
+
+#define GPIO_TIM2_CH1IN     GPIO_TIM2_CH1IN_0
+#define GPIO_TIM2_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH2IN     GPIO_TIM2_CH2IN_0
+#define GPIO_TIM2_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH3IN     GPIO_TIM2_CH3IN_0
+#define GPIO_TIM2_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH4IN     GPIO_TIM2_CH4IN_0
+#define GPIO_TIM2_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH4OUT_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_NUCLEO_F103RB_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/nucleo-f103rb/src/stm32_adc.c 
b/boards/arm/stm32/nucleo-f103rb/src/stm32_adc.c
index 844472d3721..e3f6006eabc 100644
--- a/boards/arm/stm32/nucleo-f103rb/src/stm32_adc.c
+++ b/boards/arm/stm32/nucleo-f103rb/src/stm32_adc.c
@@ -91,9 +91,9 @@ static const uint8_t g_chanlist1[3] =
 
 static const uint32_t g_pinlist1[3]  =
 {
-  GPIO_ADC123_IN0,                /* PA0/A0 */
-  GPIO_ADC123_IN1,                /* PA1/A1 */
-  GPIO_ADC12_IN4,                 /* PA4/A2 */
+  GPIO_ADC123_IN0_0,                /* PA0/A0 */
+  GPIO_ADC123_IN1_0,                /* PA1/A1 */
+  GPIO_ADC12_IN4_0,                 /* PA4/A2 */
 };
 
 #elif DEV1_PORT == 2
@@ -113,9 +113,9 @@ static const uint8_t g_chanlist1[3] =
 
 static const uint32_t g_pinlist1[3] =
 {
-  GPIO_ADC12_IN8,                /* PB0/A3 */
-  GPIO_ADC123_IN11,              /* PC1/A4 */
-  GPIO_ADC123_IN10,              /* PC0/A5 */
+  GPIO_ADC12_IN8_0,                /* PB0/A3 */
+  GPIO_ADC123_IN11_0,              /* PC1/A4 */
+  GPIO_ADC123_IN10_0,              /* PC0/A5 */
 };
 
 #endif /* DEV1_PORT == 1 */
@@ -141,9 +141,9 @@ static const uint8_t g_chanlist2[3] =
 
 static const uint32_t g_pinlist2[3] =
 {
-  GPIO_ADC12_IN8,                /* PB0/A3 */
-  GPIO_ADC123_IN11,              /* PC1/A4 */
-  GPIO_ADC123_IN10,              /* PC0/A5 */
+  GPIO_ADC12_IN8_0,                /* PB0/A3 */
+  GPIO_ADC123_IN11_0,              /* PC1/A4 */
+  GPIO_ADC123_IN10_0,              /* PC0/A5 */
 };
 
 #endif /* DEV2_PORT == 2 */
diff --git a/boards/arm/stm32/nucleo-f103rb/src/stm32_foc_ihm07m1.c 
b/boards/arm/stm32/nucleo-f103rb/src/stm32_foc_ihm07m1.c
index d584691bd53..f22035b78c4 100644
--- a/boards/arm/stm32/nucleo-f103rb/src/stm32_foc_ihm07m1.c
+++ b/boards/arm/stm32/nucleo-f103rb/src/stm32_foc_ihm07m1.c
@@ -104,17 +104,17 @@ static uint8_t g_adc1_chan[] =
 static uint32_t g_adc1_pins[] =
 {
 #ifdef CONFIG_BOARD_STM32_IHM07M1_VBUS
-  GPIO_ADC123_IN1,
+  GPIO_ADC123_IN1_0,
 #endif
 #ifdef CONFIG_BOARD_STM32_IHM07M1_POT
-  GPIO_ADC12_IN9,
+  GPIO_ADC12_IN9_0,
 #endif
-  GPIO_ADC123_IN0,
+  GPIO_ADC123_IN0_0,
 #if CONFIG_MOTOR_FOC_SHUNTS > 1
-  GPIO_ADC123_IN11,
+  GPIO_ADC123_IN11_0,
 #endif
 #if CONFIG_MOTOR_FOC_SHUNTS > 2
-  GPIO_ADC123_IN10,
+  GPIO_ADC123_IN10_0,
 #endif
 };
 
diff --git a/boards/arm/stm32/olimex-stm32-p107/configs/nsh/defconfig 
b/boards/arm/stm32/olimex-stm32-p107/configs/nsh/defconfig
index 0e6f00bff3b..89faba8bb22 100644
--- a/boards/arm/stm32/olimex-stm32-p107/configs/nsh/defconfig
+++ b/boards/arm/stm32/olimex-stm32-p107/configs/nsh/defconfig
@@ -10,6 +10,7 @@
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="olimex-stm32-p107"
 CONFIG_ARCH_BOARD_OLIMEX_STM32P107=y
diff --git a/boards/arm/stm32/olimex-stm32-p107/include/board.h 
b/boards/arm/stm32/olimex-stm32-p107/include/board.h
index 8e2f5380388..2af99acd922 100644
--- a/boards/arm/stm32/olimex-stm32-p107/include/board.h
+++ b/boards/arm/stm32/olimex-stm32-p107/include/board.h
@@ -101,4 +101,45 @@
 #  define STM32_PLL_PLL3MUL     RCC_CFGR2_PLL3MULx10  /* MCO 5MHz * 10 = 50MHz 
*/
 #endif
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* MCO */
+
+#define GPIO_MCO           GPIO_ADJUST_MODE(GPIO_MCO_0, GPIO_MODE_50MHz)
+
+/* Ethernet (MII/RMII) */
+
+#define GPIO_ETH_MDC          GPIO_ADJUST_MODE(GPIO_ETH_MDC_0, GPIO_MODE_50MHz)
+#define GPIO_ETH_MDIO         GPIO_ADJUST_MODE(GPIO_ETH_MDIO_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_COL      GPIO_ETH_MII_COL_0
+#define GPIO_ETH_MII_CRS      GPIO_ETH_MII_CRS_0
+#define GPIO_ETH_MII_RX_CLK   GPIO_ETH_MII_RX_CLK_0
+#define GPIO_ETH_MII_RXD0     GPIO_ETH_MII_RXD0_0
+#define GPIO_ETH_MII_RXD1     GPIO_ETH_MII_RXD1_0
+#define GPIO_ETH_MII_RXD2     GPIO_ETH_MII_RXD2_0
+#define GPIO_ETH_MII_RXD3     GPIO_ETH_MII_RXD3_0
+#define GPIO_ETH_MII_RX_DV    GPIO_ETH_MII_RX_DV_0
+#define GPIO_ETH_MII_RX_ER    GPIO_ETH_MII_RX_ER_0
+#define GPIO_ETH_MII_TX_CLK   GPIO_ETH_MII_TX_CLK_0
+#define GPIO_ETH_MII_TXD0     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD1     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD2     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD2_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD3     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD3_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TX_EN    GPIO_ADJUST_MODE(GPIO_ETH_MII_TX_EN_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_CRS_DV  GPIO_ETH_RMII_CRS_DV_0
+#define GPIO_ETH_RMII_REF_CLK GPIO_ETH_RMII_REF_CLK_0
+#define GPIO_ETH_RMII_RXD0    GPIO_ETH_RMII_RXD0_0
+#define GPIO_ETH_RMII_RXD1    GPIO_ETH_RMII_RXD1_0
+#define GPIO_ETH_RMII_TXD0    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TXD1    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TX_EN   GPIO_ADJUST_MODE(GPIO_ETH_RMII_TX_EN_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_OLIMEX_STM32_P107_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/shenzhou/configs/nsh/defconfig 
b/boards/arm/stm32/shenzhou/configs/nsh/defconfig
index 3cad521d666..f5e912a5a65 100644
--- a/boards/arm/stm32/shenzhou/configs/nsh/defconfig
+++ b/boards/arm/stm32/shenzhou/configs/nsh/defconfig
@@ -8,6 +8,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 # CONFIG_SPI_CALLBACK is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="shenzhou"
 CONFIG_ARCH_BOARD_SHENZHOU=y
diff --git a/boards/arm/stm32/shenzhou/configs/nxwm/defconfig 
b/boards/arm/stm32/shenzhou/configs/nxwm/defconfig
index 815572c9038..21bcee32a6f 100644
--- a/boards/arm/stm32/shenzhou/configs/nxwm/defconfig
+++ b/boards/arm/stm32/shenzhou/configs/nxwm/defconfig
@@ -12,6 +12,7 @@
 # CONFIG_NXTK_DEFAULT_BORDERCOLORS is not set
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADS7843E_SPIDEV=3
 CONFIG_ADS7843E_SWAPXY=y
 CONFIG_ADS7843E_THRESHX=39
diff --git a/boards/arm/stm32/shenzhou/configs/thttpd/defconfig 
b/boards/arm/stm32/shenzhou/configs/thttpd/defconfig
index 7a6bad14a95..33c2fbd9a6a 100644
--- a/boards/arm/stm32/shenzhou/configs/thttpd/defconfig
+++ b/boards/arm/stm32/shenzhou/configs/thttpd/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="shenzhou"
 CONFIG_ARCH_BOARD_SHENZHOU=y
diff --git a/boards/arm/stm32/shenzhou/include/board.h 
b/boards/arm/stm32/shenzhou/include/board.h
index b0cb18b8e1f..394f305ee98 100644
--- a/boards/arm/stm32/shenzhou/include/board.h
+++ b/boards/arm/stm32/shenzhou/include/board.h
@@ -404,4 +404,60 @@ const char *stm32_getchipid_string(void);
 #endif
 
 #endif /* __ASSEMBLY__ */
+
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* SPI3 */
+
+#define GPIO_SPI3_NSS      GPIO_ADJUST_MODE(GPIO_SPI3_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI3_SCK      GPIO_ADJUST_MODE(GPIO_SPI3_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI3_MISO     GPIO_ADJUST_MODE(GPIO_SPI3_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI3_MOSI     GPIO_ADJUST_MODE(GPIO_SPI3_MOSI_0, GPIO_MODE_50MHz)
+
+/* MCO */
+
+#define GPIO_MCO           GPIO_ADJUST_MODE(GPIO_MCO_0, GPIO_MODE_50MHz)
+
+/* Ethernet (MII/RMII) */
+
+#define GPIO_ETH_MDC          GPIO_ADJUST_MODE(GPIO_ETH_MDC_0, GPIO_MODE_50MHz)
+#define GPIO_ETH_MDIO         GPIO_ADJUST_MODE(GPIO_ETH_MDIO_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_COL      GPIO_ETH_MII_COL_0
+#define GPIO_ETH_MII_CRS      GPIO_ETH_MII_CRS_0
+#define GPIO_ETH_MII_RX_CLK   GPIO_ETH_MII_RX_CLK_0
+#define GPIO_ETH_MII_RXD0     GPIO_ETH_MII_RXD0_0
+#define GPIO_ETH_MII_RXD1     GPIO_ETH_MII_RXD1_0
+#define GPIO_ETH_MII_RXD2     GPIO_ETH_MII_RXD2_0
+#define GPIO_ETH_MII_RXD3     GPIO_ETH_MII_RXD3_0
+#define GPIO_ETH_MII_RX_DV    GPIO_ETH_MII_RX_DV_0
+#define GPIO_ETH_MII_RX_ER    GPIO_ETH_MII_RX_ER_0
+#define GPIO_ETH_MII_TX_CLK   GPIO_ETH_MII_TX_CLK_0
+#define GPIO_ETH_MII_TXD0     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD1     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD2     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD2_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD3     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD3_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TX_EN    GPIO_ADJUST_MODE(GPIO_ETH_MII_TX_EN_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_CRS_DV  GPIO_ETH_RMII_CRS_DV_0
+#define GPIO_ETH_RMII_REF_CLK GPIO_ETH_RMII_REF_CLK_0
+#define GPIO_ETH_RMII_RXD0    GPIO_ETH_RMII_RXD0_0
+#define GPIO_ETH_RMII_RXD1    GPIO_ETH_RMII_RXD1_0
+#define GPIO_ETH_RMII_TXD0    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TXD1    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TX_EN   GPIO_ADJUST_MODE(GPIO_ETH_RMII_TX_EN_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_SHENZHOU_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/stm3210e-eval/configs/composite/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/composite/defconfig
index 82259cb8156..6d8698ad559 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/composite/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/composite/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_MMCSD_HAVE_CARDDETECT is not set
 # CONFIG_MMCSD_MMCSUPPORT is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/nsh/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/nsh/defconfig
index 315e9136cf1..14d440e6666 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/nsh/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/nsh/defconfig
@@ -9,6 +9,7 @@
 # CONFIG_MMCSD_MMCSUPPORT is not set
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/nsh2/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/nsh2/defconfig
index 0f9b059c5d2..0bb98436ab5 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/nsh2/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/nsh2/defconfig
@@ -18,6 +18,7 @@
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
 # CONFIG_NX_WRITEONLY is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/nx/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/nx/defconfig
index f221932c7c7..95c3e488e91 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/nx/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/nx/defconfig
@@ -12,6 +12,7 @@
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
 # CONFIG_NX_WRITEONLY is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/nxterm/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/nxterm/defconfig
index 395633cb5f0..8df4d1ad281 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/nxterm/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/nxterm/defconfig
@@ -12,6 +12,7 @@
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
 # CONFIG_NX_WRITEONLY is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/pm/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/pm/defconfig
index 4fd1d15afc4..554614db4c9 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/pm/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/pm/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NX_DISABLE_16BPP is not set
 # CONFIG_NX_PACKEDMSFIRST is not set
 # CONFIG_NX_WRITEONLY is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/usbmsc/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/usbmsc/defconfig
index 976438a2393..16d0241c818 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/usbmsc/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/usbmsc/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_MMCSD_HAVE_CARDDETECT is not set
 # CONFIG_MMCSD_MMCSUPPORT is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/configs/usbserial/defconfig 
b/boards/arm/stm32/stm3210e-eval/configs/usbserial/defconfig
index 205b97bbc4e..bfdb5fd9b4c 100644
--- a/boards/arm/stm32/stm3210e-eval/configs/usbserial/defconfig
+++ b/boards/arm/stm32/stm3210e-eval/configs/usbserial/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm3210e-eval"
 CONFIG_ARCH_BOARD_STM3210E_EVAL=y
diff --git a/boards/arm/stm32/stm3210e-eval/include/board.h 
b/boards/arm/stm32/stm3210e-eval/include/board.h
index 49ffd9d730b..6f3c4414492 100644
--- a/boards/arm/stm32/stm3210e-eval/include/board.h
+++ b/boards/arm/stm32/stm3210e-eval/include/board.h
@@ -292,4 +292,111 @@ int stm32_lm75attach(xcpt_t irqhandler, void *arg);
 #endif
 
 #endif /* __ASSEMBLY__ */
+
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* I2C1 */
+
+#define GPIO_I2C1_SCL      GPIO_ADJUST_MODE(GPIO_I2C1_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C1_SDA      GPIO_ADJUST_MODE(GPIO_I2C1_SDA_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
+/* SDIO */
+
+#define GPIO_SDIO_CK       GPIO_ADJUST_MODE(GPIO_SDIO_CK_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_CMD      GPIO_ADJUST_MODE(GPIO_SDIO_CMD_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D0       GPIO_ADJUST_MODE(GPIO_SDIO_D0_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D1       GPIO_ADJUST_MODE(GPIO_SDIO_D1_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D2       GPIO_ADJUST_MODE(GPIO_SDIO_D2_0, GPIO_MODE_50MHz)
+#define GPIO_SDIO_D3       GPIO_ADJUST_MODE(GPIO_SDIO_D3_0, GPIO_MODE_50MHz)
+
+/* TIM1 */
+
+#define GPIO_TIM1_CH1IN     GPIO_TIM1_CH1IN_0
+#define GPIO_TIM1_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2IN     GPIO_TIM1_CH2IN_0
+#define GPIO_TIM1_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3IN     GPIO_TIM1_CH3IN_0
+#define GPIO_TIM1_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH4IN     GPIO_TIM1_CH4IN_0
+#define GPIO_TIM1_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH4OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_BKIN     GPIO_TIM1_BKIN_0
+#define GPIO_TIM1_ETR      GPIO_TIM1_ETR_0
+#define GPIO_TIM1_CH1NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH1NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH2NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH3NOUT_0, 
GPIO_MODE_50MHz)
+
+/* FSMC NPS pins (used by board srcs) */
+
+#define GPIO_NPS_A0       GPIO_ADJUST_MODE(GPIO_NPS_A0_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A1       GPIO_ADJUST_MODE(GPIO_NPS_A1_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A10      GPIO_ADJUST_MODE(GPIO_NPS_A10_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A11      GPIO_ADJUST_MODE(GPIO_NPS_A11_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A12      GPIO_ADJUST_MODE(GPIO_NPS_A12_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A13      GPIO_ADJUST_MODE(GPIO_NPS_A13_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A14      GPIO_ADJUST_MODE(GPIO_NPS_A14_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A15      GPIO_ADJUST_MODE(GPIO_NPS_A15_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A16      GPIO_ADJUST_MODE(GPIO_NPS_A16_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A17      GPIO_ADJUST_MODE(GPIO_NPS_A17_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A18      GPIO_ADJUST_MODE(GPIO_NPS_A18_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A19      GPIO_ADJUST_MODE(GPIO_NPS_A19_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A2       GPIO_ADJUST_MODE(GPIO_NPS_A2_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A20      GPIO_ADJUST_MODE(GPIO_NPS_A20_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A21      GPIO_ADJUST_MODE(GPIO_NPS_A21_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A22      GPIO_ADJUST_MODE(GPIO_NPS_A22_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A3       GPIO_ADJUST_MODE(GPIO_NPS_A3_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A4       GPIO_ADJUST_MODE(GPIO_NPS_A4_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A5       GPIO_ADJUST_MODE(GPIO_NPS_A5_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A6       GPIO_ADJUST_MODE(GPIO_NPS_A6_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A7       GPIO_ADJUST_MODE(GPIO_NPS_A7_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A8       GPIO_ADJUST_MODE(GPIO_NPS_A8_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_A9       GPIO_ADJUST_MODE(GPIO_NPS_A9_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D0       GPIO_ADJUST_MODE(GPIO_NPS_D0_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D1       GPIO_ADJUST_MODE(GPIO_NPS_D1_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D10      GPIO_ADJUST_MODE(GPIO_NPS_D10_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D11      GPIO_ADJUST_MODE(GPIO_NPS_D11_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D12      GPIO_ADJUST_MODE(GPIO_NPS_D12_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D13      GPIO_ADJUST_MODE(GPIO_NPS_D13_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D14      GPIO_ADJUST_MODE(GPIO_NPS_D14_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D15      GPIO_ADJUST_MODE(GPIO_NPS_D15_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D2       GPIO_ADJUST_MODE(GPIO_NPS_D2_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D3       GPIO_ADJUST_MODE(GPIO_NPS_D3_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D4       GPIO_ADJUST_MODE(GPIO_NPS_D4_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D5       GPIO_ADJUST_MODE(GPIO_NPS_D5_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D6       GPIO_ADJUST_MODE(GPIO_NPS_D6_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D7       GPIO_ADJUST_MODE(GPIO_NPS_D7_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D8       GPIO_ADJUST_MODE(GPIO_NPS_D8_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_D9       GPIO_ADJUST_MODE(GPIO_NPS_D9_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NBL0     GPIO_ADJUST_MODE(GPIO_NPS_NBL0_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NBL1     GPIO_ADJUST_MODE(GPIO_NPS_NBL1_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NE2      GPIO_ADJUST_MODE(GPIO_NPS_NE2_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NE3      GPIO_ADJUST_MODE(GPIO_NPS_NE3_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NE4      GPIO_ADJUST_MODE(GPIO_NPS_NE4_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NOE      GPIO_ADJUST_MODE(GPIO_NPS_NOE_0, GPIO_MODE_50MHz)
+#define GPIO_NPS_NWE      GPIO_ADJUST_MODE(GPIO_NPS_NWE_0, GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_STM3210E_EVAL_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/stm3210e-eval/src/stm32_selectlcd.c 
b/boards/arm/stm32/stm3210e-eval/src/stm32_selectlcd.c
index bfbffb92488..d128d108edd 100644
--- a/boards/arm/stm32/stm3210e-eval/src/stm32_selectlcd.c
+++ b/boards/arm/stm32/stm3210e-eval/src/stm32_selectlcd.c
@@ -32,6 +32,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
+#include <arch/board/board.h>
 #include "stm3210e-eval.h"
 
 #ifdef CONFIG_STM32_FSMC
diff --git a/boards/arm/stm32/stm3210e-eval/src/stm32_selectnor.c 
b/boards/arm/stm32/stm3210e-eval/src/stm32_selectnor.c
index 255d51a151c..ce5039b0501 100644
--- a/boards/arm/stm32/stm3210e-eval/src/stm32_selectnor.c
+++ b/boards/arm/stm32/stm3210e-eval/src/stm32_selectnor.c
@@ -32,6 +32,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
+#include <arch/board/board.h>
 #include "stm3210e-eval.h"
 
 #ifdef CONFIG_STM32_FSMC
diff --git a/boards/arm/stm32/stm3210e-eval/src/stm32_selectsram.c 
b/boards/arm/stm32/stm3210e-eval/src/stm32_selectsram.c
index 5c9df4383fb..3569e423e7c 100644
--- a/boards/arm/stm32/stm3210e-eval/src/stm32_selectsram.c
+++ b/boards/arm/stm32/stm3210e-eval/src/stm32_selectsram.c
@@ -32,6 +32,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
+#include <arch/board/board.h>
 #include "stm3210e-eval.h"
 
 #ifdef CONFIG_STM32_FSMC
diff --git a/boards/arm/stm32/stm32_tiny/configs/nsh/defconfig 
b/boards/arm/stm32/stm32_tiny/configs/nsh/defconfig
index 221484c5f59..946c0a7e779 100644
--- a/boards/arm/stm32/stm32_tiny/configs/nsh/defconfig
+++ b/boards/arm/stm32/stm32_tiny/configs/nsh/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32_tiny"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32_tiny/configs/usbnsh/defconfig 
b/boards/arm/stm32/stm32_tiny/configs/usbnsh/defconfig
index 39ded7939a6..6b6478efe71 100644
--- a/boards/arm/stm32/stm32_tiny/configs/usbnsh/defconfig
+++ b/boards/arm/stm32/stm32_tiny/configs/usbnsh/defconfig
@@ -18,6 +18,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32_tiny"
 CONFIG_ARCH_BOARD_STM32_TINY=y
diff --git a/boards/arm/stm32/stm32_tiny/include/board.h 
b/boards/arm/stm32/stm32_tiny/include/board.h
index c6cbb860494..26354257da2 100644
--- a/boards/arm/stm32/stm32_tiny/include/board.h
+++ b/boards/arm/stm32/stm32_tiny/include/board.h
@@ -160,4 +160,23 @@
 #define BOARD_NRF24L01_GPIO_CE     GPIO_NRF24L01_CE
 #define BOARD_NRF24L01_GPIO_IRQ    GPIO_NRF24L01_IRQ
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* SPI2 */
+
+#define GPIO_SPI2_NSS      GPIO_ADJUST_MODE(GPIO_SPI2_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI2_SCK      GPIO_ADJUST_MODE(GPIO_SPI2_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI2_MISO     GPIO_ADJUST_MODE(GPIO_SPI2_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI2_MOSI     GPIO_ADJUST_MODE(GPIO_SPI2_MOSI_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
 #endif /* __ARCH_ARM_STM32_STM32_TINY_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/stm32butterfly2/configs/nsh/defconfig 
b/boards/arm/stm32/stm32butterfly2/configs/nsh/defconfig
index 79655e199f1..bd8a4ab0b3f 100644
--- a/boards/arm/stm32/stm32butterfly2/configs/nsh/defconfig
+++ b/boards/arm/stm32/stm32butterfly2/configs/nsh/defconfig
@@ -9,6 +9,7 @@
 # CONFIG_MMCSD_MMCSUPPORT is not set
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_DISABLE_LOSMART is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ANALOG=y
 CONFIG_ARCH="arm"
diff --git a/boards/arm/stm32/stm32butterfly2/configs/nshnet/defconfig 
b/boards/arm/stm32/stm32butterfly2/configs/nshnet/defconfig
index 762efdfdce2..86def145d18 100644
--- a/boards/arm/stm32/stm32butterfly2/configs/nshnet/defconfig
+++ b/boards/arm/stm32/stm32butterfly2/configs/nshnet/defconfig
@@ -10,6 +10,7 @@
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_DISABLE_LOSMART is not set
 # CONFIG_STM32_AUTONEG is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ANALOG=y
 CONFIG_ARCH="arm"
diff --git a/boards/arm/stm32/stm32butterfly2/configs/nshusbdev/defconfig 
b/boards/arm/stm32/stm32butterfly2/configs/nshusbdev/defconfig
index 294531d34d6..b3eec264861 100644
--- a/boards/arm/stm32/stm32butterfly2/configs/nshusbdev/defconfig
+++ b/boards/arm/stm32/stm32butterfly2/configs/nshusbdev/defconfig
@@ -9,6 +9,7 @@
 # CONFIG_MMCSD_MMCSUPPORT is not set
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_DISABLE_LOSMART is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ANALOG=y
 CONFIG_ARCH="arm"
diff --git a/boards/arm/stm32/stm32butterfly2/configs/nshusbhost/defconfig 
b/boards/arm/stm32/stm32butterfly2/configs/nshusbhost/defconfig
index 79655e199f1..bd8a4ab0b3f 100644
--- a/boards/arm/stm32/stm32butterfly2/configs/nshusbhost/defconfig
+++ b/boards/arm/stm32/stm32butterfly2/configs/nshusbhost/defconfig
@@ -9,6 +9,7 @@
 # CONFIG_MMCSD_MMCSUPPORT is not set
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_DISABLE_LOSMART is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADC=y
 CONFIG_ANALOG=y
 CONFIG_ARCH="arm"
diff --git a/boards/arm/stm32/stm32butterfly2/include/board.h 
b/boards/arm/stm32/stm32butterfly2/include/board.h
index c97586ef276..47811ad89f0 100644
--- a/boards/arm/stm32/stm32butterfly2/include/board.h
+++ b/boards/arm/stm32/stm32butterfly2/include/board.h
@@ -155,4 +155,65 @@
 #  error "CONFIG_STM32_SPI2 is not supported"
 #endif
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
+/* MCO */
+
+#define GPIO_MCO           GPIO_ADJUST_MODE(GPIO_MCO_0, GPIO_MODE_50MHz)
+
+/* Ethernet (MII/RMII) */
+
+#define GPIO_ETH_MDC          GPIO_ADJUST_MODE(GPIO_ETH_MDC_0, GPIO_MODE_50MHz)
+#define GPIO_ETH_MDIO         GPIO_ADJUST_MODE(GPIO_ETH_MDIO_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_COL      GPIO_ETH_MII_COL_0
+#define GPIO_ETH_MII_CRS      GPIO_ETH_MII_CRS_0
+#define GPIO_ETH_MII_RX_CLK   GPIO_ETH_MII_RX_CLK_0
+#define GPIO_ETH_MII_RXD0     GPIO_ETH_MII_RXD0_0
+#define GPIO_ETH_MII_RXD1     GPIO_ETH_MII_RXD1_0
+#define GPIO_ETH_MII_RXD2     GPIO_ETH_MII_RXD2_0
+#define GPIO_ETH_MII_RXD3     GPIO_ETH_MII_RXD3_0
+#define GPIO_ETH_MII_RX_DV    GPIO_ETH_MII_RX_DV_0
+#define GPIO_ETH_MII_RX_ER    GPIO_ETH_MII_RX_ER_0
+#define GPIO_ETH_MII_TX_CLK   GPIO_ETH_MII_TX_CLK_0
+#define GPIO_ETH_MII_TXD0     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD1     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD2     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD2_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD3     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD3_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TX_EN    GPIO_ADJUST_MODE(GPIO_ETH_MII_TX_EN_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_CRS_DV  GPIO_ETH_RMII_CRS_DV_0
+#define GPIO_ETH_RMII_REF_CLK GPIO_ETH_RMII_REF_CLK_0
+#define GPIO_ETH_RMII_RXD0    GPIO_ETH_RMII_RXD0_0
+#define GPIO_ETH_RMII_RXD1    GPIO_ETH_RMII_RXD1_0
+#define GPIO_ETH_RMII_TXD0    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TXD1    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TX_EN   GPIO_ADJUST_MODE(GPIO_ETH_RMII_TX_EN_0, 
GPIO_MODE_50MHz)
+
+/* USB OTG FS */
+
+#define GPIO_OTGFS_DM    GPIO_ADJUST_MODE(GPIO_OTGFS_DM_0, GPIO_MODE_50MHz)
+#define GPIO_OTGFS_DP    GPIO_ADJUST_MODE(GPIO_OTGFS_DP_0, GPIO_MODE_50MHz)
+#define GPIO_OTGFS_ID    GPIO_ADJUST_MODE(GPIO_OTGFS_ID_0, GPIO_MODE_50MHz)
+#define GPIO_OTGFS_SOF   GPIO_ADJUST_MODE(GPIO_OTGFS_SOF_0, GPIO_MODE_50MHz)
+#define GPIO_OTGFS_VBUS  GPIO_OTGFS_VBUS_0
+
 #endif /* __BOARDS_ARM_STM32_STM32_BUTTERFLY2_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/stm32butterfly2/src/stm32_adc.c 
b/boards/arm/stm32/stm32butterfly2/src/stm32_adc.c
index 813b75ef1ab..1c15f9556a9 100644
--- a/boards/arm/stm32/stm32butterfly2/src/stm32_adc.c
+++ b/boards/arm/stm32/stm32butterfly2/src/stm32_adc.c
@@ -59,7 +59,7 @@ int stm32_adc_setup(void)
     }
 
   ainfo("INFO: Initializing ADC12_IN10\n");
-  stm32_configgpio(GPIO_ADC12_IN10);
+  stm32_configgpio(GPIO_ADC12_IN10_0);
   if ((adc = stm32_adcinitialize(1, channel, 1)) == NULL)
     {
       aerr("ERROR: Failed to get adc interface\n");
diff --git a/boards/arm/stm32/stm32butterfly2/src/stm32_usb.c 
b/boards/arm/stm32/stm32butterfly2/src/stm32_usb.c
index c6341136ca7..56ebf480d74 100644
--- a/boards/arm/stm32/stm32butterfly2/src/stm32_usb.c
+++ b/boards/arm/stm32/stm32butterfly2/src/stm32_usb.c
@@ -28,6 +28,7 @@
 
 #include "stm32_gpio.h"
 
+#include <arch/board/board.h>
 #include "stm32_butterfly2.h"
 
 /****************************************************************************
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/adb/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/adb/defconfig
index 493f2fdb003..3521b92a665 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/adb/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/adb/defconfig
@@ -25,6 +25,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ADBD_DEVICE_ID="test"
 CONFIG_ADBD_FILE_SERVICE=y
 CONFIG_ADBD_SHELL_SERVICE=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/apds9960/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/apds9960/defconfig
index 2789b752ecf..1e5fb4b6bcf 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/apds9960/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/apds9960/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/audio_tone/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/audio_tone/defconfig
index 6c6800df69d..54c6aab4b13 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/audio_tone/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/audio_tone/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/buttons/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/buttons/defconfig
index 11c015562a8..3fda9ae4401 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/buttons/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/buttons/defconfig
@@ -17,6 +17,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/can/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/can/defconfig
index 8d76332f3de..2468d46f415 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/can/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/can/defconfig
@@ -29,6 +29,7 @@
 # CONFIG_NSH_DISABLE_UNAME is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/hello/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/hello/defconfig
index 029d1efc944..dca8f45e242 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/hello/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/hello/defconfig
@@ -14,6 +14,7 @@
 # CONFIG_NSH_DISABLE_HEXDUMP is not set
 # CONFIG_NSH_DISABLE_PS is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/jlx12864g/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/jlx12864g/defconfig
index 5eea66e1f1b..93e1abc7943 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/jlx12864g/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/jlx12864g/defconfig
@@ -17,6 +17,7 @@
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
 # CONFIG_NX_DISABLE_1BPP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/lcd1602/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/lcd1602/defconfig
index b91f9cca66b..13afb713846 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/lcd1602/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/lcd1602/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/mcp2515/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/mcp2515/defconfig
index 9f2e614adb3..6db6e34cb71 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/mcp2515/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/mcp2515/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/nrf24/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/nrf24/defconfig
index ac06a6bc606..7c70eca5046 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/nrf24/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/nrf24/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/nsh/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/nsh/defconfig
index 3c704737ee2..755bba373f5 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/nsh/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/nsh/defconfig
@@ -29,6 +29,7 @@
 # CONFIG_NSH_DISABLE_UNAME is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/pwm/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/pwm/defconfig
index 8d0dda31037..c6c2be3f573 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/pwm/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/pwm/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/rfid-rc522/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/rfid-rc522/defconfig
index 9b30668c97e..53343e092f7 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/rfid-rc522/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/rfid-rc522/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/rgbled/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/rgbled/defconfig
index 393c1bbddde..eba053ef7c6 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/rgbled/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/rgbled/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/sensors/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/sensors/defconfig
index 589d6e8d4dd..d78e167c663 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/sensors/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/sensors/defconfig
@@ -15,6 +15,7 @@
 # CONFIG_NSH_DISABLE_MH is not set
 # CONFIG_NSH_DISABLE_MW is not set
 # CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/ssd1306/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/ssd1306/defconfig
index 8ab229454da..a63e1b7b2e5 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/ssd1306/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/ssd1306/defconfig
@@ -29,6 +29,7 @@
 # CONFIG_NSH_DISABLE_UNAME is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/usbnsh/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/usbnsh/defconfig
index a633b578537..bcb04bbf5cc 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/usbnsh/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/usbnsh/defconfig
@@ -18,6 +18,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/userled/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/userled/defconfig
index 931b29c9ded..bbb7696c7ba 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/userled/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/userled/defconfig
@@ -17,6 +17,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_STM32F103_MINIMUM=y
diff --git a/boards/arm/stm32/stm32f103-minimum/configs/veml6070/defconfig 
b/boards/arm/stm32/stm32f103-minimum/configs/veml6070/defconfig
index 3f439883df6..b26691916df 100644
--- a/boards/arm/stm32/stm32f103-minimum/configs/veml6070/defconfig
+++ b/boards/arm/stm32/stm32f103-minimum/configs/veml6070/defconfig
@@ -16,6 +16,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32f103-minimum"
 CONFIG_ARCH_BOARD_COMMON=y
diff --git a/boards/arm/stm32/stm32f103-minimum/include/board.h 
b/boards/arm/stm32/stm32f103-minimum/include/board.h
index 7a9d812198c..45dd778262d 100644
--- a/boards/arm/stm32/stm32f103-minimum/include/board.h
+++ b/boards/arm/stm32/stm32f103-minimum/include/board.h
@@ -226,4 +226,95 @@
 #define BOARD_ZEROCROSS_GPIO \
   (GPIO_INPUT|GPIO_CNF_INFLOAT|GPIO_PORTA|GPIO_PIN0)
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* USART2 */
+
+#define GPIO_USART2_TX     GPIO_ADJUST_MODE(GPIO_USART2_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_RX     GPIO_USART2_RX_0
+#define GPIO_USART2_CTS    GPIO_USART2_CTS_0
+#define GPIO_USART2_RTS    GPIO_ADJUST_MODE(GPIO_USART2_RTS_0, GPIO_MODE_50MHz)
+#define GPIO_USART2_CK     GPIO_ADJUST_MODE(GPIO_USART2_CK_0, GPIO_MODE_50MHz)
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* I2C1 */
+
+#define GPIO_I2C1_SCL      GPIO_ADJUST_MODE(GPIO_I2C1_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C1_SDA      GPIO_ADJUST_MODE(GPIO_I2C1_SDA_0, GPIO_MODE_50MHz)
+
+/* I2C2 */
+
+#define GPIO_I2C2_SCL      GPIO_ADJUST_MODE(GPIO_I2C2_SCL_0, GPIO_MODE_50MHz)
+#define GPIO_I2C2_SDA      GPIO_ADJUST_MODE(GPIO_I2C2_SDA_0, GPIO_MODE_50MHz)
+
+/* CAN1 */
+
+#define GPIO_CAN1_RX       GPIO_CAN1_RX_0
+#define GPIO_CAN1_TX       GPIO_ADJUST_MODE(GPIO_CAN1_TX_0, GPIO_MODE_50MHz)
+
+/* USB */
+
+#define GPIO_USB_DM        GPIO_USB_DM_0
+#define GPIO_USB_DP        GPIO_USB_DP_0
+
+/* TIM1 */
+
+#define GPIO_TIM1_CH1IN     GPIO_TIM1_CH1IN_0
+#define GPIO_TIM1_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2IN     GPIO_TIM1_CH2IN_0
+#define GPIO_TIM1_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3IN     GPIO_TIM1_CH3IN_0
+#define GPIO_TIM1_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH4IN     GPIO_TIM1_CH4IN_0
+#define GPIO_TIM1_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM1_CH4OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_BKIN     GPIO_TIM1_BKIN_0
+#define GPIO_TIM1_ETR      GPIO_TIM1_ETR_0
+#define GPIO_TIM1_CH1NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH1NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH2NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH2NOUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM1_CH3NOUT   GPIO_ADJUST_MODE(GPIO_TIM1_CH3NOUT_0, 
GPIO_MODE_50MHz)
+
+/* TIM2 */
+
+#define GPIO_TIM2_CH1IN     GPIO_TIM2_CH1IN_0
+#define GPIO_TIM2_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH2IN     GPIO_TIM2_CH2IN_0
+#define GPIO_TIM2_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH3IN     GPIO_TIM2_CH3IN_0
+#define GPIO_TIM2_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM2_CH4IN     GPIO_TIM2_CH4IN_0
+#define GPIO_TIM2_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM2_CH4OUT_0, 
GPIO_MODE_50MHz)
+
+/* TIM3 */
+
+#define GPIO_TIM3_CH1IN     GPIO_TIM3_CH1IN_0
+#define GPIO_TIM3_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH2IN     GPIO_TIM3_CH2IN_0
+#define GPIO_TIM3_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH3IN     GPIO_TIM3_CH3IN_0
+#define GPIO_TIM3_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM3_CH4IN     GPIO_TIM3_CH4IN_0
+#define GPIO_TIM3_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM3_CH4OUT_0, 
GPIO_MODE_50MHz)
+
+/* TIM4 */
+
+#define GPIO_TIM4_CH1IN     GPIO_TIM4_CH1IN_0
+#define GPIO_TIM4_CH1OUT    GPIO_ADJUST_MODE(GPIO_TIM4_CH1OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM4_CH2IN     GPIO_TIM4_CH2IN_0
+#define GPIO_TIM4_CH2OUT    GPIO_ADJUST_MODE(GPIO_TIM4_CH2OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM4_CH3IN     GPIO_TIM4_CH3IN_0
+#define GPIO_TIM4_CH3OUT    GPIO_ADJUST_MODE(GPIO_TIM4_CH3OUT_0, 
GPIO_MODE_50MHz)
+#define GPIO_TIM4_CH4IN     GPIO_TIM4_CH4IN_0
+#define GPIO_TIM4_CH4OUT    GPIO_ADJUST_MODE(GPIO_TIM4_CH4OUT_0, 
GPIO_MODE_50MHz)
+
 #endif /* __BOARDS_ARM_STM32_STM32F103_MINIMUM_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/stm32vldiscovery/configs/nsh/defconfig 
b/boards/arm/stm32/stm32vldiscovery/configs/nsh/defconfig
index 58ac9e12dae..010d7226f47 100644
--- a/boards/arm/stm32/stm32vldiscovery/configs/nsh/defconfig
+++ b/boards/arm/stm32/stm32vldiscovery/configs/nsh/defconfig
@@ -19,6 +19,7 @@
 # CONFIG_NSH_DISABLE_PUT is not set
 # CONFIG_NSH_DISABLE_WGET is not set
 # CONFIG_NSH_DISABLE_XD is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="stm32vldiscovery"
 CONFIG_ARCH_BOARD_STM32VL_DISCOVERY=y
diff --git a/boards/arm/stm32/stm32vldiscovery/include/board.h 
b/boards/arm/stm32/stm32vldiscovery/include/board.h
index b661c8d155c..2d6b6419de4 100644
--- a/boards/arm/stm32/stm32vldiscovery/include/board.h
+++ b/boards/arm/stm32/stm32vldiscovery/include/board.h
@@ -132,4 +132,11 @@
 
 #define BUTTON_0_BIT       (1 << BUTTON_0)
 
+/* Alternate function pin selections ****************************************/
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
 #endif /* __BOARDS_ARM_STM32_STM32VLDISCOVERY_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/viewtool-stm32f107/configs/ft80x/defconfig 
b/boards/arm/stm32/viewtool-stm32f107/configs/ft80x/defconfig
index f952c3ca348..eb91c9b7cd7 100644
--- a/boards/arm/stm32/viewtool-stm32f107/configs/ft80x/defconfig
+++ b/boards/arm/stm32/viewtool-stm32f107/configs/ft80x/defconfig
@@ -6,6 +6,7 @@
 # modifications.
 #
 # CONFIG_NSH_CMDOPT_HEXDUMP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="viewtool-stm32f107"
 CONFIG_ARCH_BOARD_VIEWTOOL_STM32F107=y
diff --git a/boards/arm/stm32/viewtool-stm32f107/configs/highpri/defconfig 
b/boards/arm/stm32/viewtool-stm32f107/configs/highpri/defconfig
index 817e9d62fd4..c2d38ea7190 100644
--- a/boards/arm/stm32/viewtool-stm32f107/configs/highpri/defconfig
+++ b/boards/arm/stm32/viewtool-stm32f107/configs/highpri/defconfig
@@ -5,6 +5,7 @@
 # You can then do "make savedefconfig" to generate a new defconfig file that 
includes your
 # modifications.
 #
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="viewtool-stm32f107"
 CONFIG_ARCH_BOARD_VIEWTOOL_STM32F107=y
diff --git a/boards/arm/stm32/viewtool-stm32f107/configs/netnsh/defconfig 
b/boards/arm/stm32/viewtool-stm32f107/configs/netnsh/defconfig
index 083ecf7359a..827ed140458 100644
--- a/boards/arm/stm32/viewtool-stm32f107/configs/netnsh/defconfig
+++ b/boards/arm/stm32/viewtool-stm32f107/configs/netnsh/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_CMDOPT_HEXDUMP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="viewtool-stm32f107"
 CONFIG_ARCH_BOARD_VIEWTOOL_STM32F107=y
diff --git a/boards/arm/stm32/viewtool-stm32f107/configs/nsh/defconfig 
b/boards/arm/stm32/viewtool-stm32f107/configs/nsh/defconfig
index b68528e2301..c4ac9b1d726 100644
--- a/boards/arm/stm32/viewtool-stm32f107/configs/nsh/defconfig
+++ b/boards/arm/stm32/viewtool-stm32f107/configs/nsh/defconfig
@@ -6,6 +6,7 @@
 # modifications.
 #
 # CONFIG_NSH_CMDOPT_HEXDUMP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="viewtool-stm32f107"
 CONFIG_ARCH_BOARD_VIEWTOOL_STM32F107=y
diff --git a/boards/arm/stm32/viewtool-stm32f107/configs/tcpblaster/defconfig 
b/boards/arm/stm32/viewtool-stm32f107/configs/tcpblaster/defconfig
index 1e3c72298e8..03ad7584d8d 100644
--- a/boards/arm/stm32/viewtool-stm32f107/configs/tcpblaster/defconfig
+++ b/boards/arm/stm32/viewtool-stm32f107/configs/tcpblaster/defconfig
@@ -7,6 +7,7 @@
 #
 # CONFIG_NSH_ARGCAT is not set
 # CONFIG_NSH_CMDOPT_HEXDUMP is not set
+# CONFIG_STM32_USE_LEGACY_PINMAP is not set
 CONFIG_ARCH="arm"
 CONFIG_ARCH_BOARD="viewtool-stm32f107"
 CONFIG_ARCH_BOARD_VIEWTOOL_STM32F107=y
diff --git a/boards/arm/stm32/viewtool-stm32f107/include/board.h 
b/boards/arm/stm32/viewtool-stm32f107/include/board.h
index 9bc4e570aa1..28494c647cc 100644
--- a/boards/arm/stm32/viewtool-stm32f107/include/board.h
+++ b/boards/arm/stm32/viewtool-stm32f107/include/board.h
@@ -116,4 +116,51 @@
 #define BUTTON_SW3_BIT    (1 << BUTTON_SW3)
 #define BUTTON_SW4_BIT    (1 << BUTTON_SW4)
 
+/* Alternate function pin selections (auto-aliased for new pinmap) */
+
+/* USART1 */
+
+#define GPIO_USART1_TX     GPIO_ADJUST_MODE(GPIO_USART1_TX_0, GPIO_MODE_50MHz)
+#define GPIO_USART1_RX     GPIO_USART1_RX_0
+
+/* SPI1 */
+
+#define GPIO_SPI1_NSS      GPIO_ADJUST_MODE(GPIO_SPI1_NSS_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_SCK      GPIO_ADJUST_MODE(GPIO_SPI1_SCK_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MISO     GPIO_ADJUST_MODE(GPIO_SPI1_MISO_0, GPIO_MODE_50MHz)
+#define GPIO_SPI1_MOSI     GPIO_ADJUST_MODE(GPIO_SPI1_MOSI_0, GPIO_MODE_50MHz)
+
+/* MCO */
+
+#define GPIO_MCO           GPIO_ADJUST_MODE(GPIO_MCO_0, GPIO_MODE_50MHz)
+
+/* Ethernet (MII/RMII) */
+
+#define GPIO_ETH_MDC          GPIO_ADJUST_MODE(GPIO_ETH_MDC_0, GPIO_MODE_50MHz)
+#define GPIO_ETH_MDIO         GPIO_ADJUST_MODE(GPIO_ETH_MDIO_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_COL      GPIO_ETH_MII_COL_0
+#define GPIO_ETH_MII_CRS      GPIO_ETH_MII_CRS_0
+#define GPIO_ETH_MII_RX_CLK   GPIO_ETH_MII_RX_CLK_0
+#define GPIO_ETH_MII_RXD0     GPIO_ETH_MII_RXD0_0
+#define GPIO_ETH_MII_RXD1     GPIO_ETH_MII_RXD1_0
+#define GPIO_ETH_MII_RXD2     GPIO_ETH_MII_RXD2_0
+#define GPIO_ETH_MII_RXD3     GPIO_ETH_MII_RXD3_0
+#define GPIO_ETH_MII_RX_DV    GPIO_ETH_MII_RX_DV_0
+#define GPIO_ETH_MII_RX_ER    GPIO_ETH_MII_RX_ER_0
+#define GPIO_ETH_MII_TX_CLK   GPIO_ETH_MII_TX_CLK_0
+#define GPIO_ETH_MII_TXD0     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD1     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD2     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD2_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TXD3     GPIO_ADJUST_MODE(GPIO_ETH_MII_TXD3_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_MII_TX_EN    GPIO_ADJUST_MODE(GPIO_ETH_MII_TX_EN_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_CRS_DV  GPIO_ETH_RMII_CRS_DV_0
+#define GPIO_ETH_RMII_REF_CLK GPIO_ETH_RMII_REF_CLK_0
+#define GPIO_ETH_RMII_RXD0    GPIO_ETH_RMII_RXD0_0
+#define GPIO_ETH_RMII_RXD1    GPIO_ETH_RMII_RXD1_0
+#define GPIO_ETH_RMII_TXD0    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD0_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TXD1    GPIO_ADJUST_MODE(GPIO_ETH_RMII_TXD1_0, 
GPIO_MODE_50MHz)
+#define GPIO_ETH_RMII_TX_EN   GPIO_ADJUST_MODE(GPIO_ETH_RMII_TX_EN_0, 
GPIO_MODE_50MHz)
+
+/* TIM6 has no GPIO pins (basic timer) */
+
 #endif /* __BOARDS_ARM_STM32_VIEWTOOL_STM32F107_INCLUDE_BOARD_H */

Reply via email to