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

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

commit 7e42ca25380bd8864ccb07eb44a378eb4ca45807
Author: raiden00pl <raide...@railab.me>
AuthorDate: Tue Nov 19 09:41:08 2024 +0100

    boards/stm32: split nucleo-f4x1re into separate boards
    
    Split nucleo-f4x1re into nucleo-f401re and nucleo-f411re.
    These are separate boards and should be in separate directories as it's
    done for all other nucleo boards in NuttX
---
 .../arm/stm32f4/boards/nucleo-f401re/index.rst     |  40 ++--
 .../arm/stm32f4/boards/nucleo-f411re/index.rst     |  45 ++---
 boards/Kconfig                                     |  10 +-
 .../CMakeLists.txt                                 |   2 +-
 .../stm32/{nucleo-f4x1re => nucleo-f401re}/Kconfig |   0
 .../f401-fb => nucleo-f401re/configs/fb}/defconfig |   2 +-
 .../configs/nsh}/defconfig                         |   2 +-
 .../include/board.h}                               | 181 +++++++++++++++---
 .../scripts/Make.defs                              |   8 +-
 .../f401re.ld => nucleo-f401re/scripts/flash.ld}   |   2 +-
 .../src/CMakeLists.txt                             |   8 +-
 .../{nucleo-f4x1re => nucleo-f401re}/src/Make.defs |   2 +-
 .../src/nucleo-f401re.h}                           |   4 +-
 .../src/stm32_adc.c                                |   4 +-
 .../src/stm32_ajoystick.c                          |   4 +-
 .../src/stm32_appinit.c                            |   4 +-
 .../src/stm32_autoleds.c                           |   4 +-
 .../src/stm32_boot.c                               |   4 +-
 .../src/stm32_bringup.c                            |   4 +-
 .../src/stm32_buttons.c                            |   4 +-
 .../src/stm32_lcd_ssd1306.c                        |   4 +-
 .../src/stm32_mcp2515.c                            |   4 +-
 .../src/stm32_spi.c                                |   7 +-
 .../src/stm32_userleds.c                           |   4 +-
 .../CMakeLists.txt                                 |   2 +-
 .../stm32/{nucleo-f4x1re => nucleo-f411re}/Kconfig |   8 +-
 .../configs/mcp2515-extid}/defconfig               |   2 +-
 .../configs/nsh}/defconfig                         |   2 +-
 .../include/board.h}                               | 181 +++++++++++++++---
 .../scripts/Make.defs                              |   8 +-
 .../f411re.ld => nucleo-f411re/scripts/flash.ld}   |   2 +-
 .../src/CMakeLists.txt                             |   8 +-
 .../{nucleo-f4x1re => nucleo-f411re}/src/Make.defs |   2 +-
 .../src/nucleo-f411re.h}                           |  14 +-
 .../src/stm32_adc.c                                |   4 +-
 .../src/stm32_ajoystick.c                          |   8 +-
 .../src/stm32_appinit.c                            |   4 +-
 .../src/stm32_autoleds.c                           |   4 +-
 .../src/stm32_boot.c                               |   4 +-
 .../src/stm32_bringup.c                            |   6 +-
 .../src/stm32_buttons.c                            |   4 +-
 .../src/stm32_lcd_ssd1306.c                        |   4 +-
 .../src/stm32_mcp2515.c                            |   4 +-
 .../src/stm32_spi.c                                |   7 +-
 .../src/stm32_userleds.c                           |   4 +-
 boards/arm/stm32/nucleo-f4x1re/include/board.h     | 209 ---------------------
 tools/ci/testlist/arm-09.dat                       |   9 +-
 tools/ci/testlist/msys2.dat                        |   2 +-
 48 files changed, 439 insertions(+), 416 deletions(-)

diff --git a/Documentation/platforms/arm/stm32f4/boards/nucleo-f401re/index.rst 
b/Documentation/platforms/arm/stm32f4/boards/nucleo-f401re/index.rst
index 9bfbbdc589..b1d7a8f159 100644
--- a/Documentation/platforms/arm/stm32f4/boards/nucleo-f401re/index.rst
+++ b/Documentation/platforms/arm/stm32f4/boards/nucleo-f401re/index.rst
@@ -3,15 +3,9 @@ ST Nucleo F401RE
 ================
 
 This page discusses issues unique to NuttX configurations for the ST
-NucleoF401RE and NucleoF411RE boards from ST Micro.  See
+NucleoF401RE boards from ST Micro.  See
 
   http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN1810/PF258797
-  http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN1877/PF260049
-
-These two boards are very similar, both supporting STM32 "Dynamic Efficiency
-Line" parts but differing in the specific STM32 chip mounted on board.  The
-chips themselves are also very similar with the STM32F411RE having some
-additional capability:
 
 NucleoF401RE:
 
@@ -30,8 +24,6 @@ NucleoF401RE:
 - CRC calculation unit
 - RTC
 
-The NucleoF411RE also has additional DMA and SPI peripheral capabilities.
-
 Board features, however, are identical:
 
 - Peripherals:    1 led, 1 push button
@@ -41,8 +33,7 @@ Board features, however, are identical:
 Uses a STM32F103 to provide a ST-Link for programming, debug similar to the
 OpenOcd FTDI function - USB to JTAG front-end.
 
-See http://mbed.org/platforms/ST-Nucleo-F401RE and
-http://developer.mbed.org/platforms/ST-Nucleo-F411RE for more
+See http://mbed.org/platforms/ST-Nucleo-F401RE for more
 information about these boards.
 
 mbed
@@ -55,12 +46,12 @@ The Nucleo-F401RE includes boot loader from mbed:
 
 Using the mbed loader:
 
-1. Connect the Nucleo-F4x1RE to the host PC using the USB connector.
+1. Connect the Nucleo-F401RE to the host PC using the USB connector.
 2. A new file system will appear called NUCLEO; open it with Windows
    Explorer (assuming that you are using Windows).
 3. Drag and drop nuttx.bin into the MBED window.  This will load the
-   nuttx.bin binary into the Nucleo-F4x1RE.  The NUCLEO window will
-   close then re-open and the Nucleo-F4x1RE will be running the new code.
+   nuttx.bin binary into the Nucleo-F401RE.  The NUCLEO window will
+   close then re-open and the Nucleo-F401RE will be running the new code.
 
 Hardware
 ========
@@ -93,7 +84,7 @@ microcontroller.
 LEDs
 ----
 
-The Nucleo F401RE and Nucleo F411RE provide a single user LED, LD2.  LD2
+The Nucleo F401RE provides a single user LED, LD2.  LD2
 is the green LED connected to Arduino signal D13 corresponding to MCU I/O
 PA5 (pin 21) or PB13 (pin 34) depending on the STM32target.
 
@@ -141,7 +132,7 @@ pin selections.
 
 TTL to RS-232 converter connection::
 
-    Nucleo CN10 STM32F4x1RE
+    Nucleo CN10 STM32F401RE
     ----------- ------------
     Pin 21 PA9  USART1_RX   *Warning you make need to reverse RX/TX on
     Pin 33 PA10 USART1_TX    some RS-232 converters
@@ -174,7 +165,7 @@ Pins and Connectors::
 
 TTL to RS-232 converter connection::
 
-    Nucleo CN9  STM32F4x1RE
+    Nucleo CN9  STM32F401RE
     ----------- ------------
     Pin 1  PA3  USART2_RX   *Warning you make need to reverse RX/TX on
     Pin 2  PA2  USART2_TX    some RS-232 converters
@@ -258,7 +249,7 @@ RS-232 from Cutedigi.com
 
 Supports a single RS-232 connected via::
 
-    Nucleo CN9  STM32F4x1RE  Cutedigi
+    Nucleo CN9  STM32F401RE  Cutedigi
     ----------- ------------ --------
     Pin 1  PA3  USART2_RX    RXD
     Pin 2  PA2  USART2_TX    TXD
@@ -275,7 +266,7 @@ about this joystick.
 Itead Joystick Connection::
 
     --------- ----------------- ---------------------------------
-    ARDUINO   ITEAD             NUCLEO-F4x1
+    ARDUINO   ITEAD             NUCLEO-F401
     PIN NAME  SIGNAL            SIGNAL
     --------- ----------------- ---------------------------------
      D3       Button E Output   PB3
@@ -349,8 +340,8 @@ STATUS:
 Configurations
 ==============
 
-f401-nsh:
----------
+nsh:
+----
 
 Configures the NuttShell (nsh) located at apps/examples/nsh for the
 Nucleo-F401RE board.  The Configuration enables the serial interfaces
@@ -380,15 +371,10 @@ NOTES:
    Consoles).  I have been using a TTL-to-RS-232 converter connected
    as shown below::
 
-       Nucleo CN10 STM32F4x1RE
+       Nucleo CN10 STM32F401RE
        ----------- ------------
        Pin 21 PA9  USART1_RX   *Warning you make need to reverse RX/TX on
        Pin 33 PA10 USART1_TX    some RS-232 converters
        Pin 20 GND
        Pin 8  U5V
 
-f411-nsh
---------
-
-This configuration is the same as the f401-nsh configuration, except
-that it is configured to support the Nucleo-F411RE.
diff --git a/Documentation/platforms/arm/stm32f4/boards/nucleo-f411re/index.rst 
b/Documentation/platforms/arm/stm32f4/boards/nucleo-f411re/index.rst
index 0d6bb7228b..57b76c0bc1 100644
--- a/Documentation/platforms/arm/stm32f4/boards/nucleo-f411re/index.rst
+++ b/Documentation/platforms/arm/stm32f4/boards/nucleo-f411re/index.rst
@@ -3,16 +3,10 @@ ST Nucleo F411RE
 ================
 
 This page discusses issues unique to NuttX configurations for the ST
-NucleoF401RE and NucleoF411RE boards from ST Micro.  See
+NucleoF411RE board from ST Micro.  See
 
-  http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN1810/PF258797
   http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1577/LN1877/PF260049
 
-These two boards are very similar, both supporting STM32 "Dynamic Efficiency
-Line" parts but differing in the specific STM32 chip mounted on board.  The
-chips themselves are also very similar with the STM32F411RE having some
-additional capability:
-
 NucleoF411RE:
 
 - Microprocessor: 32-bit ARM Cortex M4 at 100MHz STM32F411RE
@@ -30,8 +24,6 @@ NucleoF411RE:
 - CRC calculation unit
 - RTC
 
-The NucleoF411RE also has additional DMA and SPI peripheral capabilities.
-
 Board features, however, are identical:
 
 - Peripherals:    1 led, 1 push button
@@ -41,8 +33,7 @@ Board features, however, are identical:
 Uses a STM32F103 to provide a ST-Link for programming, debug similar to the
 OpenOcd FTDI function - USB to JTAG front-end.
 
-See http://mbed.org/platforms/ST-Nucleo-F401RE and
-http://developer.mbed.org/platforms/ST-Nucleo-F411RE for more
+See http://developer.mbed.org/platforms/ST-Nucleo-F411RE for more
 information about these boards.
 
 mbed
@@ -50,17 +41,17 @@ mbed
 
 The Nucleo-F411RE includes boot loader from mbed:
 
-    https://mbed.org/platforms/ST-Nucleo-F401RE/
+    https://mbed.org/platforms/ST-Nucleo-F411RE/
     https://mbed.org/handbook/Homepage
 
 Using the mbed loader:
 
-1. Connect the Nucleo-F4x1RE to the host PC using the USB connector.
+1. Connect the Nucleo-F411RE to the host PC using the USB connector.
 2. A new file system will appear called NUCLEO; open it with Windows
    Explorer (assuming that you are using Windows).
 3. Drag and drop nuttx.bin into the MBED window.  This will load the
-   nuttx.bin binary into the Nucleo-F4x1RE.  The NUCLEO window will
-   close then re-open and the Nucleo-F4x1RE will be running the new code.
+   nuttx.bin binary into the Nucleo-F411RE.  The NUCLEO window will
+   close then re-open and the Nucleo-F411RE will be running the new code.
 
 Hardware
 ========
@@ -82,7 +73,7 @@ GPIO
                LED2=D6=PB_10  I2C1_SDA=D14=PB_9 Probe
                     D7=PA_8   I2C1_SCL=D15=PB_8 Probe
 
-  From: https://mbed.org/platforms/ST-Nucleo-F401RE/
+  From: https://mbed.org/platforms/ST-Nucleo-F411RE/
 
 Buttons
 -------
@@ -93,7 +84,7 @@ microcontroller.
 LEDs
 ----
 
-The Nucleo F401RE and Nucleo F411RE provide a single user LED, LD2.  LD2
+The Nucleo F411RE provide a single user LED, LD2.  LD2
 is the green LED connected to Arduino signal D13 corresponding to MCU I/O
 PA5 (pin 21) or PB13 (pin 34) depending on the STM32target.
 
@@ -141,7 +132,7 @@ pin selections.
 
 TTL to RS-232 converter connection::
 
-    Nucleo CN10 STM32F4x1RE
+    Nucleo CN10 STM32F411RE
     ----------- ------------
     Pin 21 PA9  USART1_RX   *Warning you make need to reverse RX/TX on
     Pin 33 PA10 USART1_TX    some RS-232 converters
@@ -174,7 +165,7 @@ Pins and Connectors::
 
 TTL to RS-232 converter connection::
 
-    Nucleo CN9  STM32F4x1RE
+    Nucleo CN9  STM32F411RE
     ----------- ------------
     Pin 1  PA3  USART2_RX   *Warning you make need to reverse RX/TX on
     Pin 2  PA2  USART2_TX    some RS-232 converters
@@ -258,7 +249,7 @@ RS-232 from Cutedigi.com
 
 Supports a single RS-232 connected via::
 
-    Nucleo CN9  STM32F4x1RE  Cutedigi
+    Nucleo CN9  STM32F411RE  Cutedigi
     ----------- ------------ --------
     Pin 1  PA3  USART2_RX    RXD
     Pin 2  PA2  USART2_TX    TXD
@@ -275,7 +266,7 @@ about this joystick.
 Itead Joystick Connection::
 
     --------- ----------------- ---------------------------------
-    ARDUINO   ITEAD             NUCLEO-F4x1
+    ARDUINO   ITEAD             NUCLEO-F411
     PIN NAME  SIGNAL            SIGNAL
     --------- ----------------- ---------------------------------
      D3       Button E Output   PB3
@@ -349,8 +340,8 @@ STATUS:
 Configurations
 ==============
 
-f401-nsh:
----------
+nsh
+---
 
 Configures the NuttShell (nsh) located at apps/examples/nsh for the
 Nucleo-F401RE board.  The Configuration enables the serial interfaces
@@ -380,15 +371,9 @@ NOTES:
    Consoles).  I have been using a TTL-to-RS-232 converter connected
    as shown below::
 
-       Nucleo CN10 STM32F4x1RE
+       Nucleo CN10 STM32F411RE
        ----------- ------------
        Pin 21 PA9  USART1_RX   *Warning you make need to reverse RX/TX on
        Pin 33 PA10 USART1_TX    some RS-232 converters
        Pin 20 GND
        Pin 8  U5V
-
-f411-nsh
---------
-
-This configuration is the same as the f401-nsh configuration, except
-that it is configured to support the Nucleo-F411RE.
diff --git a/boards/Kconfig b/boards/Kconfig
index b870cd5919..ac166752cc 100644
--- a/boards/Kconfig
+++ b/boards/Kconfig
@@ -3391,7 +3391,8 @@ config ARCH_BOARD
        default "nucleo-f303re"             if ARCH_BOARD_NUCLEO_F303RE
        default "nucleo-f303ze"             if ARCH_BOARD_NUCLEO_F303ZE
        default "nucleo-f334r8"             if ARCH_BOARD_NUCLEO_F334R8
-       default "nucleo-f4x1re"             if ARCH_BOARD_NUCLEO_F401RE || 
ARCH_BOARD_NUCLEO_F411RE
+       default "nucleo-f401re"             if ARCH_BOARD_NUCLEO_F401RE
+       default "nucleo-f411re"             if ARCH_BOARD_NUCLEO_F411RE
        default "stm32f401rc-rs485"         if ARCH_BOARD_STM32F401RC_RS485
        default "nucleo-f429zi"             if ARCH_BOARD_NUCLEO_F429ZI
        default "nucleo-f446re"             if ARCH_BOARD_NUCLEO_F446RE
@@ -4190,8 +4191,11 @@ endif
 if ARCH_BOARD_NUCLEO_F446RE
 source "boards/arm/stm32/nucleo-f446re/Kconfig"
 endif
-if ARCH_BOARD_NUCLEO_F401RE || ARCH_BOARD_NUCLEO_F411RE
-source "boards/arm/stm32/nucleo-f4x1re/Kconfig"
+if ARCH_BOARD_NUCLEO_F401RE
+source "boards/arm/stm32/nucleo-f401re/Kconfig"
+endif
+if ARCH_BOARD_NUCLEO_F411RE
+source "boards/arm/stm32/nucleo-f411re/Kconfig"
 endif
 if ARCH_BOARD_STM32F401RC_RS485
 source "boards/arm/stm32/stm32f401rc-rs485/Kconfig"
diff --git a/boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt 
b/boards/arm/stm32/nucleo-f401re/CMakeLists.txt
similarity index 95%
copy from boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
copy to boards/arm/stm32/nucleo-f401re/CMakeLists.txt
index 7c6db43bc5..fc3725e660 100644
--- a/boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
+++ b/boards/arm/stm32/nucleo-f401re/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
+# boards/arm/stm32/nucleo-f401re/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f4x1re/Kconfig 
b/boards/arm/stm32/nucleo-f401re/Kconfig
similarity index 100%
copy from boards/arm/stm32/nucleo-f4x1re/Kconfig
copy to boards/arm/stm32/nucleo-f401re/Kconfig
diff --git a/boards/arm/stm32/nucleo-f4x1re/configs/f401-fb/defconfig 
b/boards/arm/stm32/nucleo-f401re/configs/fb/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/configs/f401-fb/defconfig
rename to boards/arm/stm32/nucleo-f401re/configs/fb/defconfig
index 99a3d22d10..d0e8f3ccaf 100644
--- a/boards/arm/stm32/nucleo-f4x1re/configs/f401-fb/defconfig
+++ b/boards/arm/stm32/nucleo-f401re/configs/fb/defconfig
@@ -12,7 +12,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 CONFIG_ARCH="arm"
-CONFIG_ARCH_BOARD="nucleo-f4x1re"
+CONFIG_ARCH_BOARD="nucleo-f401re"
 CONFIG_ARCH_BOARD_COMMON=y
 CONFIG_ARCH_BOARD_NUCLEO_F401RE=y
 CONFIG_ARCH_BUTTONS=y
diff --git a/boards/arm/stm32/nucleo-f4x1re/configs/f401-nsh/defconfig 
b/boards/arm/stm32/nucleo-f401re/configs/nsh/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/configs/f401-nsh/defconfig
rename to boards/arm/stm32/nucleo-f401re/configs/nsh/defconfig
index 62a6fab877..e29dd5ce3b 100644
--- a/boards/arm/stm32/nucleo-f4x1re/configs/f401-nsh/defconfig
+++ b/boards/arm/stm32/nucleo-f401re/configs/nsh/defconfig
@@ -11,7 +11,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 CONFIG_ARCH="arm"
-CONFIG_ARCH_BOARD="nucleo-f4x1re"
+CONFIG_ARCH_BOARD="nucleo-f401re"
 CONFIG_ARCH_BOARD_NUCLEO_F401RE=y
 CONFIG_ARCH_BUTTONS=y
 CONFIG_ARCH_CHIP="stm32"
diff --git a/boards/arm/stm32/nucleo-f4x1re/include/nucleo-f401re.h 
b/boards/arm/stm32/nucleo-f401re/include/board.h
similarity index 59%
rename from boards/arm/stm32/nucleo-f4x1re/include/nucleo-f401re.h
rename to boards/arm/stm32/nucleo-f401re/include/board.h
index 0bac3bc2b8..2db6874d65 100644
--- a/boards/arm/stm32/nucleo-f4x1re/include/nucleo-f401re.h
+++ b/boards/arm/stm32/nucleo-f401re/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/include/nucleo-f401re.h
+ * boards/arm/stm32/nucleo-f401re/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,8 +20,8 @@
  *
  ****************************************************************************/
 
-#ifndef __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F401RE_H
-#define __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F401RE_H
+#ifndef __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H
+#define __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H
 
 /****************************************************************************
  * Included Files
@@ -208,29 +208,166 @@
 #  define SDIO_SDXFR_CLKDIV     (3 << SDIO_CLKCR_CLKDIV_SHIFT)
 #endif
 
-/****************************************************************************
- * Public Data
- ****************************************************************************/
+/* DMA Channel/Stream Selections ********************************************/
 
-#ifndef __ASSEMBLY__
+/* Stream selections are arbitrary for now but might become important in
+ * the future is we set aside more DMA channels/streams.
+ *
+ * SDIO DMA
+ *   DMAMAP_SDIO_1 = Channel 4, Stream 3 <- may later be used by SPI DMA
+ *   DMAMAP_SDIO_2 = Channel 4, Stream 6
+ */
+
+#define DMAMAP_SDIO DMAMAP_SDIO_1
 
-#undef EXTERN
-#if defined(__cplusplus)
-#define EXTERN extern "C"
-extern "C"
-{
+/* Need to VERIFY fwb */
+
+#define DMACHAN_SPI1_RX DMAMAP_SPI1_RX_1
+#define DMACHAN_SPI1_TX DMAMAP_SPI1_TX_1
+#define DMACHAN_SPI2_RX DMAMAP_SPI2_RX
+#define DMACHAN_SPI2_TX DMAMAP_SPI2_TX
+
+/* Alternate function pin selections ****************************************/
+
+/* USART1:
+ *   RXD: PA10  CN9 pin 3, CN10 pin 33
+ *        PB7   CN7 pin 21
+ *   TXD: PA9   CN5 pin 1, CN10 pin 21
+ *        PB6   CN5 pin 3, CN10 pin 17
+ */
+
+#if 1
+#  define GPIO_USART1_RX GPIO_USART1_RX_1    /* PA10 */
+#  define GPIO_USART1_TX GPIO_USART1_TX_1    /* PA9  */
 #else
-#define EXTERN extern
+#  define GPIO_USART1_RX GPIO_USART1_RX_2    /* PB7 */
+#  define GPIO_USART1_TX GPIO_USART1_TX_2    /* PB6  */
 #endif
 
-/****************************************************************************
- * Public Function Prototypes
- ****************************************************************************/
+/* USART2:
+ *   RXD: PA3   CN9 pin 1 (See SB13, 14, 62, 63). CN10 pin 37
+ *        PD6
+ *   TXD: PA2   CN9 pin 2(See SB13, 14, 62, 63). CN10 pin 35
+ *        PD5
+ */
 
-#undef EXTERN
-#if defined(__cplusplus)
-}
-#endif
+#define GPIO_USART2_RX   GPIO_USART2_RX_1    /* PA3 */
+#define GPIO_USART2_TX   GPIO_USART2_TX_1    /* PA2 */
+#define GPIO_USART2_RTS  GPIO_USART2_RTS_2
+#define GPIO_USART2_CTS  GPIO_USART2_CTS_2
+
+/* USART6:
+ *  RXD: PC7    CN5 pin2, CN10 pin 19
+ *       PA12   CN10, pin 12
+ *  TXD: PC6    CN10, pin 4
+ *       PA11   CN10, pin 14
+ */
+
+#define GPIO_USART6_RX   GPIO_USART6_RX_1    /* PC7 */
+#define GPIO_USART6_TX   GPIO_USART6_TX_1    /* PC6 */
+
+/* UART RX DMA configurations */
+
+#define DMAMAP_USART1_RX DMAMAP_USART1_RX_2
+#define DMAMAP_USART6_RX DMAMAP_USART6_RX_2
+
+/* I2C
+ *
+ * The optional _GPIO configurations allow the I2C driver to manually
+ * reset the bus to clear stuck slaves.  They match the pin configuration,
+ * but are normally-high GPIOs.
+ */
+
+#define GPIO_I2C1_SCL    GPIO_I2C1_SCL_2
+#define GPIO_I2C1_SDA    GPIO_I2C1_SDA_2
+#define GPIO_I2C1_SCL_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN8)
+#define GPIO_I2C1_SDA_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN9)
+
+#define GPIO_I2C2_SCL    GPIO_I2C2_SCL_1
+#define GPIO_I2C2_SDA    GPIO_I2C2_SDA_1
+#define GPIO_I2C2_SCL_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN10)
+#define GPIO_I2C2_SDA_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN11)
+
+/* SPI
+ *
+ * There are sensors on SPI1, and SPI2 is connected to the FRAM.
+ */
+
+#define GPIO_SPI1_MISO   GPIO_SPI1_MISO_1
+#define GPIO_SPI1_MOSI   GPIO_SPI1_MOSI_1
+#define GPIO_SPI1_SCK    GPIO_SPI1_SCK_1
+
+#define GPIO_SPI2_MISO   GPIO_SPI2_MISO_1
+#define GPIO_SPI2_MOSI   GPIO_SPI2_MOSI_1
+#define GPIO_SPI2_SCK    GPIO_SPI2_SCK_2
+
+/* LEDs
+ *
+ * The Nucleo F401RE board provide a single user LED, LD2.  LD2
+ * is the green LED connected to Arduino signal D13 corresponding to MCU I/O
+ * PA5 (pin 21) or PB13 (pin 34) depending on the STM32 target.
+ *
+ *   - When the I/O is HIGH value, the LED is on.
+ *   - When the I/O is LOW, the LED is off.
+ */
+
+/* LED index values for use with board_userled() */
+
+#define BOARD_LD2         0
+#define BOARD_NLEDS       1
+
+/* LED bits for use with board_userled_all() */
+
+#define BOARD_LD2_BIT     (1 << BOARD_LD2)
+
+/* These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is
+ * defined.  In that case, the usage by the board port is defined in
+ * include/board.h and src/sam_leds.c. The LEDs are used to encode OS-related
+ * events as follows when the red LED (PE24) is available:
+ *
+ *   SYMBOL                Meaning                   LD2
+ *   -------------------  -----------------------  -----------
+ *   LED_STARTED          NuttX has been started     OFF
+ *   LED_HEAPALLOCATE     Heap has been allocated    OFF
+ *   LED_IRQSENABLED      Interrupts enabled         OFF
+ *   LED_STACKCREATED     Idle stack created         ON
+ *   LED_INIRQ            In an interrupt            No change
+ *   LED_SIGNAL           In a signal handler        No change
+ *   LED_ASSERTION        An assertion failed        No change
+ *   LED_PANIC            The system has crashed     Blinking
+ *   LED_IDLE             MCU is is sleep mode       Not used
+ *
+ * Thus if LD2, NuttX has successfully booted and is, apparently, running
+ * normally.  If LD2 is flashing at approximately 2Hz, then a fatal error
+ * has been detected and the system has halted.
+ */
+
+#define LED_STARTED      0
+#define LED_HEAPALLOCATE 0
+#define LED_IRQSENABLED  0
+#define LED_STACKCREATED 1
+#define LED_INIRQ        2
+#define LED_SIGNAL       2
+#define LED_ASSERTION    2
+#define LED_PANIC        1
+
+/* Buttons
+ *
+ *   B1 USER:
+ *   the user button is connected to the I/O PC13 (pin 2) of the STM32
+ *   microcontroller.
+ */
+
+#define BUTTON_USER        0
+#define NUM_BUTTONS        1
+
+#define BUTTON_USER_BIT    (1 << BUTTON_USER)
+
+#define GPIO_TIM2_CH1IN (GPIO_TIM2_CH1IN_1 | GPIO_PULLUP)
+#define GPIO_TIM2_CH2IN (GPIO_TIM2_CH2IN_1 | GPIO_PULLUP)
 
-#endif /* __ASSEMBLY__ */
-#endif /* __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F401RE_H */
+#endif /* __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs 
b/boards/arm/stm32/nucleo-f401re/scripts/Make.defs
similarity index 90%
copy from boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
copy to boards/arm/stm32/nucleo-f401re/scripts/Make.defs
index 780bd120a1..a106e21e6a 100644
--- a/boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
+++ b/boards/arm/stm32/nucleo-f401re/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
+# boards/arm/stm32/nucleo-f401re/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -24,11 +24,7 @@ include $(TOPDIR)/.config
 include $(TOPDIR)/tools/Config.mk
 include $(TOPDIR)/arch/arm/src/armv7-m/Toolchain.defs
 
-ifeq ($(CONFIG_ARCH_CHIP_STM32F401RE),y)
-LDSCRIPT = f401re.ld
-else ifeq ($(CONFIG_ARCH_CHIP_STM32F411RE),y)
-LDSCRIPT = f411re.ld
-endif
+LDSCRIPT = flash.ld
 
 ARCHSCRIPT += $(BOARD_DIR)$(DELIM)scripts$(DELIM)$(LDSCRIPT)
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld 
b/boards/arm/stm32/nucleo-f401re/scripts/flash.ld
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld
rename to boards/arm/stm32/nucleo-f401re/scripts/flash.ld
index 8992ad490a..baa6ff5ad1 100644
--- a/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld
+++ b/boards/arm/stm32/nucleo-f401re/scripts/flash.ld
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld
+ * boards/arm/stm32/nucleo-f401re/scripts/flash.ld
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt 
b/boards/arm/stm32/nucleo-f401re/src/CMakeLists.txt
similarity index 84%
copy from boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
copy to boards/arm/stm32/nucleo-f401re/src/CMakeLists.txt
index d7db323a06..804ea88612 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
+++ b/boards/arm/stm32/nucleo-f401re/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
+# boards/arm/stm32/nucleo-f401re/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -55,8 +55,4 @@ endif()
 
 target_sources(board PRIVATE ${SRCS})
 
-if(CONFIG_ARCH_CHIP_STM32F401RE)
-  set_property(GLOBAL PROPERTY LD_SCRIPT 
"${NUTTX_BOARD_DIR}/scripts/f401re.ld")
-elseif(CONFIG_ARCH_CHIP_STM32F411RE)
-  set_property(GLOBAL PROPERTY LD_SCRIPT 
"${NUTTX_BOARD_DIR}/scripts/f411re.ld")
-endif()
+set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/flash.ld")
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/Make.defs 
b/boards/arm/stm32/nucleo-f401re/src/Make.defs
similarity index 97%
copy from boards/arm/stm32/nucleo-f4x1re/src/Make.defs
copy to boards/arm/stm32/nucleo-f401re/src/Make.defs
index cefced9d60..372f00f248 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/Make.defs
+++ b/boards/arm/stm32/nucleo-f401re/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f4x1re/src/Make.defs
+# boards/arm/stm32/nucleo-f401re/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h 
b/boards/arm/stm32/nucleo-f401re/src/nucleo-f401re.h
similarity index 99%
copy from boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
copy to boards/arm/stm32/nucleo-f401re/src/nucleo-f401re.h
index 8683f29c1a..976fca4a40 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
+++ b/boards/arm/stm32/nucleo-f401re/src/nucleo-f401re.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
+ * boards/arm/stm32/nucleo-f401re/src/nucleo-f401re.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -143,7 +143,7 @@
  * about this joystick.
  *
  *   --------- ----------------- ---------------------------------
- *   ARDUINO   ITEAD             NUCLEO-F4x1
+ *   ARDUINO   ITEAD             NUCLEO-F401
  *   PIN NAME  SIGNAL            SIGNAL
  *   --------- ----------------- ---------------------------------
  *    D3       Button E Output   PB3
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_adc.c
similarity index 97%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_adc.c
index e693f7621c..426061b6eb 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_adc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_adc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32_adc.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_ajoystick.c
similarity index 99%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_ajoystick.c
index 13993a5c64..cbad8b5e1c 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_ajoystick.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_ajoystick.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -40,7 +40,7 @@
 #include "stm32_gpio.h"
 #include "stm32_adc.h"
 #include "hardware/stm32_adc.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 /****************************************************************************
  * Pre-processor Definitions
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_appinit.c
similarity index 97%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_appinit.c
index 0f56e20c2e..b1562d2d4a 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_appinit.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_appinit.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -29,7 +29,7 @@
 #include <sys/types.h>
 #include <stdint.h>
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_autoleds.c
similarity index 96%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_autoleds.c
index 02c875f866..dd8cc76628 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_boot.c
similarity index 97%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_boot.c
index 52eb2163de..f46b1ed781 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -34,7 +34,7 @@
 #include <arch/board/board.h>
 
 #include "arm_internal.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_bringup.c
similarity index 98%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_bringup.c
index 3193bd4b45..b1daccc915 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_bringup.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_bringup.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -47,7 +47,7 @@
 #  include <nuttx/input/buttons.h>
 #endif
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_buttons.c
similarity index 98%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_buttons.c
index d745997f24..b0a02f7a87 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -33,7 +33,7 @@
 #include <arch/board/board.h>
 
 #include "stm32_gpio.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_lcd_ssd1306.c
similarity index 97%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_lcd_ssd1306.c
index 2bf8219530..9bee0a0317 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_lcd_ssd1306.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_lcd_ssd1306.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -33,7 +33,7 @@
 #include <nuttx/lcd/ssd1306.h>
 
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include "stm32_ssd1306.h"
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_mcp2515.c
similarity index 98%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_mcp2515.c
index 4806158cdc..e8c490e4d9 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_mcp2515.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_mcp2515.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 
 #include "stm32.h"
 #include "stm32_spi.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #if defined(CONFIG_SPI) && defined(CONFIG_STM32_SPI1) && \
     defined(CONFIG_CAN_MCP2515)
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_spi.c
similarity index 98%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_spi.c
index 1e2aadac22..fd83961422 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_spi.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_spi.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -37,7 +37,7 @@
 #include "chip.h"
 #include "stm32.h"
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <arch/board/board.h>
 
@@ -65,8 +65,7 @@ struct spi_dev_s *g_spi2;
  * Name: stm32_spidev_initialize
  *
  * Description:
- *   Called to configure SPI chip select GPIO pins for the Nucleo-F401RE and
- *   Nucleo-F411RE boards.
+ *   Called to configure SPI chip select GPIO pins for the Nucleo-F401RE
  *
  ****************************************************************************/
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c 
b/boards/arm/stm32/nucleo-f401re/src/stm32_userleds.c
similarity index 98%
copy from boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
copy to boards/arm/stm32/nucleo-f401re/src/stm32_userleds.c
index dd25e5f692..e85b48cbbb 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
+++ b/boards/arm/stm32/nucleo-f401re/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
+ * boards/arm/stm32/nucleo-f401re/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -36,7 +36,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f401re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt 
b/boards/arm/stm32/nucleo-f411re/CMakeLists.txt
similarity index 95%
rename from boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
rename to boards/arm/stm32/nucleo-f411re/CMakeLists.txt
index 7c6db43bc5..53fe0025e4 100644
--- a/boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
+++ b/boards/arm/stm32/nucleo-f411re/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/nucleo-f4x1re/CMakeLists.txt
+# boards/arm/stm32/nucleo-f411re/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f4x1re/Kconfig 
b/boards/arm/stm32/nucleo-f411re/Kconfig
similarity index 83%
rename from boards/arm/stm32/nucleo-f4x1re/Kconfig
rename to boards/arm/stm32/nucleo-f411re/Kconfig
index 166b75a72a..d8f9cca70a 100644
--- a/boards/arm/stm32/nucleo-f4x1re/Kconfig
+++ b/boards/arm/stm32/nucleo-f411re/Kconfig
@@ -3,14 +3,14 @@
 # see the file kconfig-language.txt in the NuttX tools repository.
 #
 
-if ARCH_BOARD_NUCLEO_F401RE
+if ARCH_BOARD_NUCLEO_F411RE
 
-config NUCLEO_F401RE_QETIMER
+config NUCLEO_F411RE_QETIMER
        int "Timer to use with QE encoder"
        default 3
        depends on SENSORS_QENCODER
 
-config NUCLEO_F401RE_AJOY_MINBUTTONS
+config NUCLEO_F411RE_AJOY_MINBUTTONS
        bool "Minimal Joystick Buttons"
        default STM32_USART1
        depends on INPUT_AJOYSTICK
@@ -22,4 +22,4 @@ config NUCLEO_F401RE_AJOY_MINBUTTONS
                minimal set:  SELECT (joystick down), FIRE (BUTTON B), and JUMP
                (BUTTON A).
 
-endif # ARCH_BOARD_NUCLEO_F401RE
+endif # ARCH_BOARD_NUCLEO_F411RE
diff --git 
a/boards/arm/stm32/nucleo-f4x1re/configs/f411-mcp2515-extid/defconfig 
b/boards/arm/stm32/nucleo-f411re/configs/mcp2515-extid/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/configs/f411-mcp2515-extid/defconfig
rename to boards/arm/stm32/nucleo-f411re/configs/mcp2515-extid/defconfig
index 9a48f82f22..e785312732 100644
--- a/boards/arm/stm32/nucleo-f4x1re/configs/f411-mcp2515-extid/defconfig
+++ b/boards/arm/stm32/nucleo-f411re/configs/mcp2515-extid/defconfig
@@ -11,7 +11,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 CONFIG_ARCH="arm"
-CONFIG_ARCH_BOARD="nucleo-f4x1re"
+CONFIG_ARCH_BOARD="nucleo-f411re"
 CONFIG_ARCH_BOARD_NUCLEO_F411RE=y
 CONFIG_ARCH_BUTTONS=y
 CONFIG_ARCH_CHIP="stm32"
diff --git a/boards/arm/stm32/nucleo-f4x1re/configs/f411-nsh/defconfig 
b/boards/arm/stm32/nucleo-f411re/configs/nsh/defconfig
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/configs/f411-nsh/defconfig
rename to boards/arm/stm32/nucleo-f411re/configs/nsh/defconfig
index 886bb96aa8..ea0120452e 100644
--- a/boards/arm/stm32/nucleo-f4x1re/configs/f411-nsh/defconfig
+++ b/boards/arm/stm32/nucleo-f411re/configs/nsh/defconfig
@@ -11,7 +11,7 @@
 # CONFIG_NSH_DISABLE_IFCONFIG is not set
 # CONFIG_NSH_DISABLE_PS is not set
 CONFIG_ARCH="arm"
-CONFIG_ARCH_BOARD="nucleo-f4x1re"
+CONFIG_ARCH_BOARD="nucleo-f411re"
 CONFIG_ARCH_BOARD_NUCLEO_F411RE=y
 CONFIG_ARCH_BUTTONS=y
 CONFIG_ARCH_CHIP="stm32"
diff --git a/boards/arm/stm32/nucleo-f4x1re/include/nucleo-f411re.h 
b/boards/arm/stm32/nucleo-f411re/include/board.h
similarity index 58%
rename from boards/arm/stm32/nucleo-f4x1re/include/nucleo-f411re.h
rename to boards/arm/stm32/nucleo-f411re/include/board.h
index 506d45835c..c036fece69 100644
--- a/boards/arm/stm32/nucleo-f4x1re/include/nucleo-f411re.h
+++ b/boards/arm/stm32/nucleo-f411re/include/board.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/include/nucleo-f411re.h
+ * boards/arm/stm32/nucleo-f411re/include/board.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,8 +20,8 @@
  *
  ****************************************************************************/
 
-#ifndef __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F411RE_H
-#define __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F411RE_H
+#ifndef __BOARDS_ARM_STM32_NUCLEO_F411RE_INCLUDE_BOARD_H
+#define __BOARDS_ARM_STM32_NUCLEO_F411RE_INCLUDE_BOARD_H
 
 /****************************************************************************
  * Included Files
@@ -205,29 +205,166 @@
 #  define SDIO_SDXFR_CLKDIV     (3 << SDIO_CLKCR_CLKDIV_SHIFT)
 #endif
 
-/****************************************************************************
- * Public Data
- ****************************************************************************/
+/* DMA Channel/Stream Selections ********************************************/
 
-#ifndef __ASSEMBLY__
+/* Stream selections are arbitrary for now but might become important in
+ * the future is we set aside more DMA channels/streams.
+ *
+ * SDIO DMA
+ *   DMAMAP_SDIO_1 = Channel 4, Stream 3 <- may later be used by SPI DMA
+ *   DMAMAP_SDIO_2 = Channel 4, Stream 6
+ */
+
+#define DMAMAP_SDIO DMAMAP_SDIO_1
 
-#undef EXTERN
-#if defined(__cplusplus)
-#define EXTERN extern "C"
-extern "C"
-{
+/* Need to VERIFY fwb */
+
+#define DMACHAN_SPI1_RX DMAMAP_SPI1_RX_1
+#define DMACHAN_SPI1_TX DMAMAP_SPI1_TX_1
+#define DMACHAN_SPI2_RX DMAMAP_SPI2_RX
+#define DMACHAN_SPI2_TX DMAMAP_SPI2_TX
+
+/* Alternate function pin selections ****************************************/
+
+/* USART1:
+ *   RXD: PA10  CN9 pin 3, CN10 pin 33
+ *        PB7   CN7 pin 21
+ *   TXD: PA9   CN5 pin 1, CN10 pin 21
+ *        PB6   CN5 pin 3, CN10 pin 17
+ */
+
+#if 1
+#  define GPIO_USART1_RX GPIO_USART1_RX_1    /* PA10 */
+#  define GPIO_USART1_TX GPIO_USART1_TX_1    /* PA9  */
 #else
-#define EXTERN extern
+#  define GPIO_USART1_RX GPIO_USART1_RX_2    /* PB7 */
+#  define GPIO_USART1_TX GPIO_USART1_TX_2    /* PB6  */
 #endif
 
-/****************************************************************************
- * Public Function Prototypes
- ****************************************************************************/
+/* USART2:
+ *   RXD: PA3   CN9 pin 1 (See SB13, 14, 62, 63). CN10 pin 37
+ *        PD6
+ *   TXD: PA2   CN9 pin 2(See SB13, 14, 62, 63). CN10 pin 35
+ *        PD5
+ */
 
-#undef EXTERN
-#if defined(__cplusplus)
-}
-#endif
+#define GPIO_USART2_RX   GPIO_USART2_RX_1    /* PA3 */
+#define GPIO_USART2_TX   GPIO_USART2_TX_1    /* PA2 */
+#define GPIO_USART2_RTS  GPIO_USART2_RTS_2
+#define GPIO_USART2_CTS  GPIO_USART2_CTS_2
+
+/* USART6:
+ *  RXD: PC7    CN5 pin2, CN10 pin 19
+ *       PA12   CN10, pin 12
+ *  TXD: PC6    CN10, pin 4
+ *       PA11   CN10, pin 14
+ */
+
+#define GPIO_USART6_RX   GPIO_USART6_RX_1    /* PC7 */
+#define GPIO_USART6_TX   GPIO_USART6_TX_1    /* PC6 */
+
+/* UART RX DMA configurations */
+
+#define DMAMAP_USART1_RX DMAMAP_USART1_RX_2
+#define DMAMAP_USART6_RX DMAMAP_USART6_RX_2
+
+/* I2C
+ *
+ * The optional _GPIO configurations allow the I2C driver to manually
+ * reset the bus to clear stuck slaves.  They match the pin configuration,
+ * but are normally-high GPIOs.
+ */
+
+#define GPIO_I2C1_SCL    GPIO_I2C1_SCL_2
+#define GPIO_I2C1_SDA    GPIO_I2C1_SDA_2
+#define GPIO_I2C1_SCL_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN8)
+#define GPIO_I2C1_SDA_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN9)
+
+#define GPIO_I2C2_SCL    GPIO_I2C2_SCL_1
+#define GPIO_I2C2_SDA    GPIO_I2C2_SDA_1
+#define GPIO_I2C2_SCL_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN10)
+#define GPIO_I2C2_SDA_GPIO \
+   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN11)
+
+/* SPI
+ *
+ * There are sensors on SPI1, and SPI2 is connected to the FRAM.
+ */
+
+#define GPIO_SPI1_MISO   GPIO_SPI1_MISO_1
+#define GPIO_SPI1_MOSI   GPIO_SPI1_MOSI_1
+#define GPIO_SPI1_SCK    GPIO_SPI1_SCK_1
+
+#define GPIO_SPI2_MISO   GPIO_SPI2_MISO_1
+#define GPIO_SPI2_MOSI   GPIO_SPI2_MOSI_1
+#define GPIO_SPI2_SCK    GPIO_SPI2_SCK_2
+
+/* LEDs
+ *
+ * The Nucleo F411RE board provide a single user LED, LD2.  LD2
+ * is the green LED connected to Arduino signal D13 corresponding to MCU I/O
+ * PA5 (pin 21) or PB13 (pin 34) depending on the STM32 target.
+ *
+ *   - When the I/O is HIGH value, the LED is on.
+ *   - When the I/O is LOW, the LED is off.
+ */
+
+/* LED index values for use with board_userled() */
+
+#define BOARD_LD2         0
+#define BOARD_NLEDS       1
+
+/* LED bits for use with board_userled_all() */
+
+#define BOARD_LD2_BIT     (1 << BOARD_LD2)
+
+/* These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is
+ * defined.  In that case, the usage by the board port is defined in
+ * include/board.h and src/sam_leds.c. The LEDs are used to encode OS-related
+ * events as follows when the red LED (PE24) is available:
+ *
+ *   SYMBOL                Meaning                   LD2
+ *   -------------------  -----------------------  -----------
+ *   LED_STARTED          NuttX has been started     OFF
+ *   LED_HEAPALLOCATE     Heap has been allocated    OFF
+ *   LED_IRQSENABLED      Interrupts enabled         OFF
+ *   LED_STACKCREATED     Idle stack created         ON
+ *   LED_INIRQ            In an interrupt            No change
+ *   LED_SIGNAL           In a signal handler        No change
+ *   LED_ASSERTION        An assertion failed        No change
+ *   LED_PANIC            The system has crashed     Blinking
+ *   LED_IDLE             MCU is is sleep mode       Not used
+ *
+ * Thus if LD2, NuttX has successfully booted and is, apparently, running
+ * normally.  If LD2 is flashing at approximately 2Hz, then a fatal error
+ * has been detected and the system has halted.
+ */
+
+#define LED_STARTED      0
+#define LED_HEAPALLOCATE 0
+#define LED_IRQSENABLED  0
+#define LED_STACKCREATED 1
+#define LED_INIRQ        2
+#define LED_SIGNAL       2
+#define LED_ASSERTION    2
+#define LED_PANIC        1
+
+/* Buttons
+ *
+ *   B1 USER:
+ *   the user button is connected to the I/O PC13 (pin 2) of the STM32
+ *   microcontroller.
+ */
+
+#define BUTTON_USER        0
+#define NUM_BUTTONS        1
+
+#define BUTTON_USER_BIT    (1 << BUTTON_USER)
+
+#define GPIO_TIM2_CH1IN (GPIO_TIM2_CH1IN_1 | GPIO_PULLUP)
+#define GPIO_TIM2_CH2IN (GPIO_TIM2_CH2IN_1 | GPIO_PULLUP)
 
-#endif /* __ASSEMBLY__ */
-#endif /* __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_NUCLEO_F411RE_H */
+#endif /* __BOARDS_ARM_STM32_NUCLEO_F411RE_INCLUDE_BOARD_H */
diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs 
b/boards/arm/stm32/nucleo-f411re/scripts/Make.defs
similarity index 90%
rename from boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
rename to boards/arm/stm32/nucleo-f411re/scripts/Make.defs
index 780bd120a1..88f77e2be6 100644
--- a/boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
+++ b/boards/arm/stm32/nucleo-f411re/scripts/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f4x1re/scripts/Make.defs
+# boards/arm/stm32/nucleo-f411re/scripts/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -24,11 +24,7 @@ include $(TOPDIR)/.config
 include $(TOPDIR)/tools/Config.mk
 include $(TOPDIR)/arch/arm/src/armv7-m/Toolchain.defs
 
-ifeq ($(CONFIG_ARCH_CHIP_STM32F401RE),y)
-LDSCRIPT = f401re.ld
-else ifeq ($(CONFIG_ARCH_CHIP_STM32F411RE),y)
-LDSCRIPT = f411re.ld
-endif
+LDSCRIPT = flash.ld
 
 ARCHSCRIPT += $(BOARD_DIR)$(DELIM)scripts$(DELIM)$(LDSCRIPT)
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld 
b/boards/arm/stm32/nucleo-f411re/scripts/flash.ld
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld
rename to boards/arm/stm32/nucleo-f411re/scripts/flash.ld
index 9b4c82898a..03d21e6818 100644
--- a/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld
+++ b/boards/arm/stm32/nucleo-f411re/scripts/flash.ld
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld
+ * boards/arm/stm32/nucleo-f411re/scripts/flash.ld
  *
  * SPDX-License-Identifier: Apache-2.0
  *
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt 
b/boards/arm/stm32/nucleo-f411re/src/CMakeLists.txt
similarity index 84%
rename from boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
rename to boards/arm/stm32/nucleo-f411re/src/CMakeLists.txt
index d7db323a06..112eee3d55 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
+++ b/boards/arm/stm32/nucleo-f411re/src/CMakeLists.txt
@@ -1,5 +1,5 @@
 # 
##############################################################################
-# boards/arm/stm32/nucleo-f4x1re/src/CMakeLists.txt
+# boards/arm/stm32/nucleo-f411re/src/CMakeLists.txt
 #
 # SPDX-License-Identifier: Apache-2.0
 #
@@ -55,8 +55,4 @@ endif()
 
 target_sources(board PRIVATE ${SRCS})
 
-if(CONFIG_ARCH_CHIP_STM32F401RE)
-  set_property(GLOBAL PROPERTY LD_SCRIPT 
"${NUTTX_BOARD_DIR}/scripts/f401re.ld")
-elseif(CONFIG_ARCH_CHIP_STM32F411RE)
-  set_property(GLOBAL PROPERTY LD_SCRIPT 
"${NUTTX_BOARD_DIR}/scripts/f411re.ld")
-endif()
+set_property(GLOBAL PROPERTY LD_SCRIPT "${NUTTX_BOARD_DIR}/scripts/flash.ld")
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/Make.defs 
b/boards/arm/stm32/nucleo-f411re/src/Make.defs
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/Make.defs
rename to boards/arm/stm32/nucleo-f411re/src/Make.defs
index cefced9d60..20c1fcb2be 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/Make.defs
+++ b/boards/arm/stm32/nucleo-f411re/src/Make.defs
@@ -1,5 +1,5 @@
 ############################################################################
-# boards/arm/stm32/nucleo-f4x1re/src/Make.defs
+# boards/arm/stm32/nucleo-f411re/src/Make.defs
 #
 # SPDX-License-Identifier: Apache-2.0
 #
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h 
b/boards/arm/stm32/nucleo-f411re/src/nucleo-f411re.h
similarity index 96%
rename from boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
rename to boards/arm/stm32/nucleo-f411re/src/nucleo-f411re.h
index 8683f29c1a..88f6fdce85 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
+++ b/boards/arm/stm32/nucleo-f411re/src/nucleo-f411re.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/nucleo-f4x1re.h
+ * boards/arm/stm32/nucleo-f411re/src/nucleo-f411re.h
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -20,8 +20,8 @@
  *
  ****************************************************************************/
 
-#ifndef __BOARDS_ARM_STM32_NUCLEO_F401RE_SRC_NUCLEO_F401RE_H
-#define __BOARDS_ARM_STM32_NUCLEO_F401RE_SRC_NUCLEO_F401RE_H
+#ifndef __BOARDS_ARM_STM32_NUCLEO_F411RE_SRC_NUCLEO_F411RE_H
+#define __BOARDS_ARM_STM32_NUCLEO_F411RE_SRC_NUCLEO_F411RE_H
 
 /****************************************************************************
  * Included Files
@@ -86,7 +86,7 @@
  *                 LED2=D6=PB_10    I2C1_SDA=D14=PB_9 WIFI Probe
  *                      D7=PA_8     I2C1_SCL=D15=PB_8 WIFI Probe
  *
- *  mostly from: https://mbed.org/platforms/ST-Nucleo-F401RE/
+ *  mostly from: https://mbed.org/platforms/ST-Nucleo-F411RE/
  *
  */
 
@@ -143,7 +143,7 @@
  * about this joystick.
  *
  *   --------- ----------------- ---------------------------------
- *   ARDUINO   ITEAD             NUCLEO-F4x1
+ *   ARDUINO   ITEAD             NUCLEO-F411
  *   PIN NAME  SIGNAL            SIGNAL
  *   --------- ----------------- ---------------------------------
  *    D3       Button E Output   PB3
@@ -163,7 +163,7 @@
  *   NOTE: Button F cannot be used with the default USART1 configuration
  *   because PA9 is configured for USART1_RX by default.  Use select
  *   different USART1 pins in the board.h file or select a different
- *   USART or select CONFIG_NUCLEO_F401RE_AJOY_MINBUTTONS which will
+ *   USART or select CONFIG_NUCLEO_F411RE_AJOY_MINBUTTONS which will
  *   eliminate all but buttons A, B, and C.
  */
 
@@ -308,4 +308,4 @@ int board_ajoy_initialize(void);
 int stm32_mcp2515initialize(const char *devpath);
 #endif
 
-#endif /* __BOARDS_ARM_STM32_NUCLEO_F401RE_SRC_NUCLEO_F401RE_H */
+#endif /* __BOARDS_ARM_STM32_NUCLEO_F411RE_SRC_NUCLEO_F411RE_H */
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_adc.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_adc.c
index e693f7621c..4abf451586 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_adc.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_adc.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_adc.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32_adc.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_ajoystick.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_ajoystick.c
index 13993a5c64..a2f055fd61 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_ajoystick.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_ajoystick.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_ajoystick.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -40,7 +40,7 @@
 #include "stm32_gpio.h"
 #include "stm32_adc.h"
 #include "hardware/stm32_adc.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 /****************************************************************************
  * Pre-processor Definitions
@@ -76,7 +76,7 @@
 #  define NJOYSTICK_CHANNELS 1
 #endif
 
-#ifdef CONFIG_NUCLEO_F401RE_AJOY_MINBUTTONS
+#ifdef CONFIG_NUCLEO_F411RE_AJOY_MINBUTTONS
 /* Number of Joystick buttons */
 
 #  define AJOY_NGPIOS  3
@@ -123,7 +123,7 @@ static int ajoy_interrupt(int irq, void *context, void 
*arg);
  * button definitions in include/nuttx/input/ajoystick.h.
  */
 
-#ifdef CONFIG_NUCLEO_F401RE_AJOY_MINBUTTONS
+#ifdef CONFIG_NUCLEO_F411RE_AJOY_MINBUTTONS
 static const uint32_t g_joygpio[AJOY_NGPIOS] =
 {
   GPIO_BUTTON_1, GPIO_BUTTON_2, GPIO_BUTTON_3
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_appinit.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_appinit.c
index 0f56e20c2e..c2b6d362be 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_appinit.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_appinit.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_appinit.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -29,7 +29,7 @@
 #include <sys/types.h>
 #include <stdint.h>
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_autoleds.c
similarity index 96%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_autoleds.c
index 02c875f866..c9a53c8197 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_autoleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_autoleds.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_autoleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_boot.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_boot.c
index 52eb2163de..d279630946 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_boot.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_boot.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_boot.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -34,7 +34,7 @@
 #include <arch/board/board.h>
 
 #include "arm_internal.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_bringup.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_bringup.c
index 3193bd4b45..22e899f055 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_bringup.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_bringup.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_bringup.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -47,7 +47,7 @@
 #  include <nuttx/input/buttons.h>
 #endif
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <nuttx/board.h>
 
@@ -194,7 +194,7 @@ int stm32_bringup(void)
 #ifdef CONFIG_SENSORS_QENCODER
   /* Initialize and register the qencoder driver */
 
-  ret = board_qencoder_initialize(0, CONFIG_NUCLEO_F401RE_QETIMER);
+  ret = board_qencoder_initialize(0, CONFIG_NUCLEO_F411RE_QETIMER);
   if (ret != OK)
     {
       syslog(LOG_ERR,
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_buttons.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_buttons.c
index d745997f24..7d064a6b2d 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_buttons.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_buttons.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_buttons.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -33,7 +33,7 @@
 #include <arch/board/board.h>
 
 #include "stm32_gpio.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <nuttx/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_lcd_ssd1306.c
similarity index 97%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_lcd_ssd1306.c
index 2bf8219530..ac67c71350 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_lcd_ssd1306.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_lcd_ssd1306.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_lcd_ssd1306.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -33,7 +33,7 @@
 #include <nuttx/lcd/ssd1306.h>
 
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include "stm32_ssd1306.h"
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_mcp2515.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_mcp2515.c
index 4806158cdc..a5138a38d7 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_mcp2515.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_mcp2515.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_mcp2515.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -35,7 +35,7 @@
 
 #include "stm32.h"
 #include "stm32_spi.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #if defined(CONFIG_SPI) && defined(CONFIG_STM32_SPI1) && \
     defined(CONFIG_CAN_MCP2515)
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_spi.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_spi.c
index 1e2aadac22..9462a72809 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_spi.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_spi.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_spi.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -37,7 +37,7 @@
 #include "chip.h"
 #include "stm32.h"
 
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <arch/board/board.h>
 
@@ -65,8 +65,7 @@ struct spi_dev_s *g_spi2;
  * Name: stm32_spidev_initialize
  *
  * Description:
- *   Called to configure SPI chip select GPIO pins for the Nucleo-F401RE and
- *   Nucleo-F411RE boards.
+ *   Called to configure SPI chip select GPIO pins for the Nucleo-F411RE
  *
  ****************************************************************************/
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c 
b/boards/arm/stm32/nucleo-f411re/src/stm32_userleds.c
similarity index 98%
rename from boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
rename to boards/arm/stm32/nucleo-f411re/src/stm32_userleds.c
index dd25e5f692..0e9370c49e 100644
--- a/boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
+++ b/boards/arm/stm32/nucleo-f411re/src/stm32_userleds.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/src/stm32_userleds.c
+ * boards/arm/stm32/nucleo-f411re/src/stm32_userleds.c
  *
  * SPDX-License-Identifier: Apache-2.0
  *
@@ -36,7 +36,7 @@
 #include "chip.h"
 #include "arm_internal.h"
 #include "stm32.h"
-#include "nucleo-f4x1re.h"
+#include "nucleo-f411re.h"
 
 #include <arch/board/board.h>
 
diff --git a/boards/arm/stm32/nucleo-f4x1re/include/board.h 
b/boards/arm/stm32/nucleo-f4x1re/include/board.h
deleted file mode 100644
index 408cad5d7a..0000000000
--- a/boards/arm/stm32/nucleo-f4x1re/include/board.h
+++ /dev/null
@@ -1,209 +0,0 @@
-/****************************************************************************
- * boards/arm/stm32/nucleo-f4x1re/include/board.h
- *
- * SPDX-License-Identifier: Apache-2.0
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.  The
- * ASF licenses this file to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the
- * License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
- * License for the specific language governing permissions and limitations
- * under the License.
- *
- ****************************************************************************/
-
-#ifndef __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H
-#define __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H
-
-/****************************************************************************
- * Included Files
- ****************************************************************************/
-
-#include <nuttx/config.h>
-#ifndef __ASSEMBLY__
-#  include <stdint.h>
-#endif
-
-/* Clocking *****************************************************************/
-
-#if defined(CONFIG_ARCH_CHIP_STM32F401RE)
-#  include <arch/board/nucleo-f401re.h>
-#elif defined(CONFIG_ARCH_CHIP_STM32F411RE)
-#  include <arch/board/nucleo-f411re.h>
-#endif
-
-/****************************************************************************
- * Pre-processor Definitions
- ****************************************************************************/
-
-/* DMA Channel/Stream Selections ********************************************/
-
-/* Stream selections are arbitrary for now but might become important in
- * the future is we set aside more DMA channels/streams.
- *
- * SDIO DMA
- *   DMAMAP_SDIO_1 = Channel 4, Stream 3 <- may later be used by SPI DMA
- *   DMAMAP_SDIO_2 = Channel 4, Stream 6
- */
-
-#define DMAMAP_SDIO DMAMAP_SDIO_1
-
-/* Need to VERIFY fwb */
-
-#define DMACHAN_SPI1_RX DMAMAP_SPI1_RX_1
-#define DMACHAN_SPI1_TX DMAMAP_SPI1_TX_1
-#define DMACHAN_SPI2_RX DMAMAP_SPI2_RX
-#define DMACHAN_SPI2_TX DMAMAP_SPI2_TX
-
-/* Alternate function pin selections ****************************************/
-
-/* USART1:
- *   RXD: PA10  CN9 pin 3, CN10 pin 33
- *        PB7   CN7 pin 21
- *   TXD: PA9   CN5 pin 1, CN10 pin 21
- *        PB6   CN5 pin 3, CN10 pin 17
- */
-
-#if 1
-#  define GPIO_USART1_RX GPIO_USART1_RX_1    /* PA10 */
-#  define GPIO_USART1_TX GPIO_USART1_TX_1    /* PA9  */
-#else
-#  define GPIO_USART1_RX GPIO_USART1_RX_2    /* PB7 */
-#  define GPIO_USART1_TX GPIO_USART1_TX_2    /* PB6  */
-#endif
-
-/* USART2:
- *   RXD: PA3   CN9 pin 1 (See SB13, 14, 62, 63). CN10 pin 37
- *        PD6
- *   TXD: PA2   CN9 pin 2(See SB13, 14, 62, 63). CN10 pin 35
- *        PD5
- */
-
-#define GPIO_USART2_RX   GPIO_USART2_RX_1    /* PA3 */
-#define GPIO_USART2_TX   GPIO_USART2_TX_1    /* PA2 */
-#define GPIO_USART2_RTS  GPIO_USART2_RTS_2
-#define GPIO_USART2_CTS  GPIO_USART2_CTS_2
-
-/* USART6:
- *  RXD: PC7    CN5 pin2, CN10 pin 19
- *       PA12   CN10, pin 12
- *  TXD: PC6    CN10, pin 4
- *       PA11   CN10, pin 14
- */
-
-#define GPIO_USART6_RX   GPIO_USART6_RX_1    /* PC7 */
-#define GPIO_USART6_TX   GPIO_USART6_TX_1    /* PC6 */
-
-/* UART RX DMA configurations */
-
-#define DMAMAP_USART1_RX DMAMAP_USART1_RX_2
-#define DMAMAP_USART6_RX DMAMAP_USART6_RX_2
-
-/* I2C
- *
- * The optional _GPIO configurations allow the I2C driver to manually
- * reset the bus to clear stuck slaves.  They match the pin configuration,
- * but are normally-high GPIOs.
- */
-
-#define GPIO_I2C1_SCL    GPIO_I2C1_SCL_2
-#define GPIO_I2C1_SDA    GPIO_I2C1_SDA_2
-#define GPIO_I2C1_SCL_GPIO \
-   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN8)
-#define GPIO_I2C1_SDA_GPIO \
-   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN9)
-
-#define GPIO_I2C2_SCL    GPIO_I2C2_SCL_1
-#define GPIO_I2C2_SDA    GPIO_I2C2_SDA_1
-#define GPIO_I2C2_SCL_GPIO \
-   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN10)
-#define GPIO_I2C2_SDA_GPIO \
-   
(GPIO_OUTPUT|GPIO_OPENDRAIN|GPIO_SPEED_50MHz|GPIO_OUTPUT_SET|GPIO_PORTB|GPIO_PIN11)
-
-/* SPI
- *
- * There are sensors on SPI1, and SPI2 is connected to the FRAM.
- */
-
-#define GPIO_SPI1_MISO   GPIO_SPI1_MISO_1
-#define GPIO_SPI1_MOSI   GPIO_SPI1_MOSI_1
-#define GPIO_SPI1_SCK    GPIO_SPI1_SCK_1
-
-#define GPIO_SPI2_MISO   GPIO_SPI2_MISO_1
-#define GPIO_SPI2_MOSI   GPIO_SPI2_MOSI_1
-#define GPIO_SPI2_SCK    GPIO_SPI2_SCK_2
-
-/* LEDs
- *
- * The Nucleo F401RE and F411RE boards provide a single user LED, LD2.  LD2
- * is the green LED connected to Arduino signal D13 corresponding to MCU I/O
- * PA5 (pin 21) or PB13 (pin 34) depending on the STM32 target.
- *
- *   - When the I/O is HIGH value, the LED is on.
- *   - When the I/O is LOW, the LED is off.
- */
-
-/* LED index values for use with board_userled() */
-
-#define BOARD_LD2         0
-#define BOARD_NLEDS       1
-
-/* LED bits for use with board_userled_all() */
-
-#define BOARD_LD2_BIT     (1 << BOARD_LD2)
-
-/* These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is
- * defined.  In that case, the usage by the board port is defined in
- * include/board.h and src/sam_leds.c. The LEDs are used to encode OS-related
- * events as follows when the red LED (PE24) is available:
- *
- *   SYMBOL                Meaning                   LD2
- *   -------------------  -----------------------  -----------
- *   LED_STARTED          NuttX has been started     OFF
- *   LED_HEAPALLOCATE     Heap has been allocated    OFF
- *   LED_IRQSENABLED      Interrupts enabled         OFF
- *   LED_STACKCREATED     Idle stack created         ON
- *   LED_INIRQ            In an interrupt            No change
- *   LED_SIGNAL           In a signal handler        No change
- *   LED_ASSERTION        An assertion failed        No change
- *   LED_PANIC            The system has crashed     Blinking
- *   LED_IDLE             MCU is is sleep mode       Not used
- *
- * Thus if LD2, NuttX has successfully booted and is, apparently, running
- * normally.  If LD2 is flashing at approximately 2Hz, then a fatal error
- * has been detected and the system has halted.
- */
-
-#define LED_STARTED      0
-#define LED_HEAPALLOCATE 0
-#define LED_IRQSENABLED  0
-#define LED_STACKCREATED 1
-#define LED_INIRQ        2
-#define LED_SIGNAL       2
-#define LED_ASSERTION    2
-#define LED_PANIC        1
-
-/* Buttons
- *
- *   B1 USER:
- *   the user button is connected to the I/O PC13 (pin 2) of the STM32
- *   microcontroller.
- */
-
-#define BUTTON_USER        0
-#define NUM_BUTTONS        1
-
-#define BUTTON_USER_BIT    (1 << BUTTON_USER)
-
-#define GPIO_TIM2_CH1IN (GPIO_TIM2_CH1IN_1 | GPIO_PULLUP)
-#define GPIO_TIM2_CH2IN (GPIO_TIM2_CH2IN_1 | GPIO_PULLUP)
-
-#endif /* __BOARDS_ARM_STM32_NUCLEO_F401RE_INCLUDE_BOARD_H */
diff --git a/tools/ci/testlist/arm-09.dat b/tools/ci/testlist/arm-09.dat
index effe67e4d3..f3af9f5162 100644
--- a/tools/ci/testlist/arm-09.dat
+++ b/tools/ci/testlist/arm-09.dat
@@ -36,10 +36,11 @@ CMake,nucleo-f446re:pwm
 CMake,nucleo-f446re:qenco
 CMake,nucleo-f446re:systemview
 
-CMake,nucleo-f4x1re:f401-fb
-CMake,nucleo-f4x1re:f401-nsh
-CMake,nucleo-f4x1re:f411-mcp2515-extid
-CMake,nucleo-f4x1re:f411-nsh
+CMake,nucleo-f401re:fb
+CMake,nucleo-f401re:nsh
+
+CMake,nucleo-f411re:mcp2515-extid
+CMake,nucleo-f411re:nsh
 
 CMake,nucleo-g431kb:comp
 CMake,nucleo-g431kb:nsh
diff --git a/tools/ci/testlist/msys2.dat b/tools/ci/testlist/msys2.dat
index 66e4c6adbb..542b59af41 100644
--- a/tools/ci/testlist/msys2.dat
+++ b/tools/ci/testlist/msys2.dat
@@ -5,7 +5,7 @@
 
 /arm/stm32/nucleo-l152re/configs/nsh,CONFIG_ARM_TOOLCHAIN_GNU_EABI
 
-/arm/stm32/nucleo-f4x1re/configs/f411-nsh,CONFIG_ARM_TOOLCHAIN_GNU_EABI
+/arm/stm32/nucleo-f411re/configs/nsh,CONFIG_ARM_TOOLCHAIN_GNU_EABI
 
 # ARM64
 

Reply via email to