This is an automated email from the ASF dual-hosted git repository. xiaoxiang781216 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit b94d4e3bff711d8a1c133e493f2792f4a5e215ed Author: raiden00pl <[email protected]> AuthorDate: Mon Oct 19 14:32:50 2026 +0200 boards/nucleo-f746zg: make the ST-LINK virtual COM port the default console Define the USART3 (virtual COM port) and USART6 (Arduino) pins unconditionally and default the console choice to the virtual COM port, so builds that bypass the board Kconfig still get a console. Signed-off-by: raiden00pl <[email protected]> Assisted-by: Claude Code --- .../arm/stm32f7/boards/nucleo-f746zg/index.rst | 24 ++++++++++-------- boards/arm/stm32f7/nucleo-f746zg/Kconfig | 2 +- .../stm32f7/nucleo-f746zg/configs/evalos/defconfig | 1 - .../nucleo-f746zg/configs/lorawan_gw/defconfig | 1 - .../stm32f7/nucleo-f746zg/configs/note/defconfig | 1 - .../stm32f7/nucleo-f746zg/configs/nsh/defconfig | 1 - .../stm32f7/nucleo-f746zg/configs/pysim/defconfig | 1 - boards/arm/stm32f7/nucleo-f746zg/include/board.h | 29 +++++----------------- 8 files changed, 21 insertions(+), 39 deletions(-) diff --git a/Documentation/platforms/arm/stm32f7/boards/nucleo-f746zg/index.rst b/Documentation/platforms/arm/stm32f7/boards/nucleo-f746zg/index.rst index ea90bbbedfc..29735ea79be 100644 --- a/Documentation/platforms/arm/stm32f7/boards/nucleo-f746zg/index.rst +++ b/Documentation/platforms/arm/stm32f7/boards/nucleo-f746zg/index.rst @@ -87,14 +87,18 @@ the above mentioned graphic may be helpful in identifying a serial port. There are 5 choices that can be made from the menuconfig:: - CONFIG_NUCLEO_CONSOLE_ARDUINO or CONFIG_NUCLEO_CONSOLE_MORPHO or - CONFIG_NUCLEO_CONSOLE_MORPHO_UART4 or CONFIG_NUCLEO_CONSOLE_VIRTUAL or - CONFIG_NUCLEO_CONSOLE_NONE + CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL (default) or + CONFIG_NUCLEO_F746ZG_CONSOLE_ARDUINO or CONFIG_NUCLEO_F746ZG_CONSOLE_MORPHO or + CONFIG_NUCLEO_F746ZG_CONSOLE_MORPHO_UART4 or CONFIG_NUCLEO_F746ZG_CONSOLE_NONE -The CONFIG_NUCLEO_CONSOLE_NONE makes no preset for the console. You should still +The USART3 (virtual COM port) and USART6 (Arduino) pins are always defined +in board.h, so a configuration that does not use this choice (for example a +custom board build) only needs to enable the U[S]ART and select the console. + +The CONFIG_NUCLEO_F746ZG_CONSOLE_NONE makes no preset for the console. You should still visit the U[S]ART selection and Device Drivers to disable any U[S]ART remaining. -The CONFIG_NUCLEO_CONSOLE_ARDUINO configurations assume that you are using a +The CONFIG_NUCLEO_F746ZG_CONSOLE_ARDUINO configurations assume that you are using a standard Arduino RS-232 shield with the serial interface with RX on pin D0 and TX on pin D1 from USART6:: @@ -106,7 +110,7 @@ TX on pin D1 from USART6:: D1 TX USART6_TX PG14 -- ----- --------- ----- -The CONFIG_NUCLEO_CONSOLE_MORPHO configurations uses Serial Port 8 (USART8) +The CONFIG_NUCLEO_F746ZG_CONSOLE_MORPHO configurations uses Serial Port 8 (USART8) with TX on PE1 and RX on PE0.:: Serial @@ -114,7 +118,7 @@ with TX on PE1 and RX on PE0.:: SERIAL_RX PE_0 SERIAL_TX PE_1 -The CONFIG_NUCLEO_CONSOLE_MORPHO_UART4 configurations uses Serial Port 4 (UART4) +The CONFIG_NUCLEO_F746ZG_CONSOLE_MORPHO_UART4 configurations uses Serial Port 4 (UART4) with TX on PA1 and RX on PA0. Zero Ohm resistor / solder short at SB13 must be removed/open. (Disables Ethernet MII clocking.):: @@ -123,7 +127,7 @@ SB13 must be removed/open. (Disables Ethernet MII clocking.):: SERIAL_RX PA_1 CN11 30 SERIAL_TX PA_0 CN11 28 -The CONFIG_NUCLEO_CONSOLE_VIRTUAL configurations uses Serial Port 3 (USART3) +The CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL configurations (the default) uses Serial Port 3 (USART3) with TX on PD8 and RX on PD9.:: Serial @@ -199,8 +203,8 @@ Flashing RED - In the event of a fatal crash, all other LEDs will be Serial Consoles =============== -USART6 (CONFIG_NUCLEO_CONSOLE_ARDUINO) --------------------------------------- +USART6 (CONFIG_NUCLEO_F746ZG_CONSOLE_ARDUINO) +--------------------------------------------- ======= ========== ===== ARDUINO FUNCTION GPIO diff --git a/boards/arm/stm32f7/nucleo-f746zg/Kconfig b/boards/arm/stm32f7/nucleo-f746zg/Kconfig index d59a47ec85b..0aa627770f5 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/Kconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/Kconfig @@ -7,7 +7,7 @@ if ARCH_BOARD_NUCLEO_F746ZG choice prompt "Select Console wiring." - default NUCLEO_F746ZG_CONSOLE_ARDUINO + default NUCLEO_F746ZG_CONSOLE_VIRTUAL ---help--- Select where you will connect the console. diff --git a/boards/arm/stm32f7/nucleo-f746zg/configs/evalos/defconfig b/boards/arm/stm32f7/nucleo-f746zg/configs/evalos/defconfig index 77ac80ec8b4..f9540497d34 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/configs/evalos/defconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/configs/evalos/defconfig @@ -37,7 +37,6 @@ CONFIG_MM_REGIONS=2 CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_READLINE=y -CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL=y CONFIG_PREALLOC_TIMERS=4 CONFIG_PRIORITY_INHERITANCE=y CONFIG_RAM_SIZE=245760 diff --git a/boards/arm/stm32f7/nucleo-f746zg/configs/lorawan_gw/defconfig b/boards/arm/stm32f7/nucleo-f746zg/configs/lorawan_gw/defconfig index de6018fa2b9..2219656b3d2 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/configs/lorawan_gw/defconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/configs/lorawan_gw/defconfig @@ -53,7 +53,6 @@ CONFIG_NET_UDP_CHECKSUMS=y CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_READLINE=y -CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL=y CONFIG_PREALLOC_TIMERS=4 CONFIG_RAM_SIZE=245760 CONFIG_RAM_START=0x20010000 diff --git a/boards/arm/stm32f7/nucleo-f746zg/configs/note/defconfig b/boards/arm/stm32f7/nucleo-f746zg/configs/note/defconfig index 0997aceb7ed..bbfaf3e7de6 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/configs/note/defconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/configs/note/defconfig @@ -67,7 +67,6 @@ CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_DISABLE_IFUPDOWN=y CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_READLINE=y -CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL=y CONFIG_POSIX_SPAWN_DEFAULT_STACKSIZE=4098 CONFIG_PREALLOC_TIMERS=4 CONFIG_PRIORITY_INHERITANCE=y diff --git a/boards/arm/stm32f7/nucleo-f746zg/configs/nsh/defconfig b/boards/arm/stm32f7/nucleo-f746zg/configs/nsh/defconfig index 9d0df1404d6..810d3d79060 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/configs/nsh/defconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/configs/nsh/defconfig @@ -33,7 +33,6 @@ CONFIG_MM_REGIONS=2 CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_READLINE=y -CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL=y CONFIG_PREALLOC_TIMERS=4 CONFIG_RAM_SIZE=245760 CONFIG_RAM_START=0x20010000 diff --git a/boards/arm/stm32f7/nucleo-f746zg/configs/pysim/defconfig b/boards/arm/stm32f7/nucleo-f746zg/configs/pysim/defconfig index fe194da3baf..53940319620 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/configs/pysim/defconfig +++ b/boards/arm/stm32f7/nucleo-f746zg/configs/pysim/defconfig @@ -66,7 +66,6 @@ CONFIG_NSH_BUILTIN_APPS=y CONFIG_NSH_DISABLE_IFUPDOWN=y CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_READLINE=y -CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL=y CONFIG_POSIX_SPAWN_DEFAULT_STACKSIZE=4098 CONFIG_PREALLOC_TIMERS=4 CONFIG_PRIORITY_INHERITANCE=y diff --git a/boards/arm/stm32f7/nucleo-f746zg/include/board.h b/boards/arm/stm32f7/nucleo-f746zg/include/board.h index 342f3803a47..76615e8a384 100644 --- a/boards/arm/stm32f7/nucleo-f746zg/include/board.h +++ b/boards/arm/stm32f7/nucleo-f746zg/include/board.h @@ -386,7 +386,10 @@ #define GPIO_TIM3_CH3OUT (GPIO_TIM3_CH3OUT_2|GPIO_SPEED_50MHz) #define GPIO_TIM3_CH4OUT (GPIO_TIM3_CH4OUT_1|GPIO_SPEED_50MHz) -#if defined(CONFIG_NUCLEO_F746ZG_CONSOLE_ARDUINO) +/* USART3: ST-LINK virtual COM port (PD8 TX, PD9 RX), the default console */ + +#define GPIO_USART3_RX (GPIO_USART3_RX_3|GPIO_SPEED_100MHz) +#define GPIO_USART3_TX (GPIO_USART3_TX_3|GPIO_SPEED_100MHz) /* USART6: * @@ -402,18 +405,8 @@ * -- ----- --------- ----- */ -# define GPIO_USART6_RX (GPIO_USART6_RX_2|GPIO_SPEED_100MHz) -# define GPIO_USART6_TX (GPIO_USART6_TX_2|GPIO_SPEED_100MHz) -#endif - -/* USART3: - * Use USART3 and the USB virtual COM port - */ - -#if defined(CONFIG_NUCLEO_F746ZG_CONSOLE_VIRTUAL) -# define GPIO_USART3_RX (GPIO_USART3_RX_3|GPIO_SPEED_100MHz) -# define GPIO_USART3_TX (GPIO_USART3_TX_3|GPIO_SPEED_100MHz) -#endif +#define GPIO_USART6_RX (GPIO_USART6_RX_2|GPIO_SPEED_100MHz) +#define GPIO_USART6_TX (GPIO_USART6_TX_2|GPIO_SPEED_100MHz) #if defined(CONFIG_NUCLEO_F746ZG_CONSOLE_MORPHO_UART4) @@ -434,16 +427,6 @@ # define GPIO_UART4_RX (GPIO_UART4_RX_1|GPIO_SPEED_100MHz) # define GPIO_UART4_TX (GPIO_UART4_TX_1|GPIO_SPEED_100MHz) -/* USART3 seems to be forced selected by the Nucleo-F746ZG kconfig - bug */ - -# define GPIO_USART3_RX (GPIO_USART3_RX_1|GPIO_SPEED_100MHz) -# define GPIO_USART3_TX (GPIO_USART3_TX_1|GPIO_SPEED_100MHz) - -/* USART6 seems to be forced selected by the Nucleo-F722E kconfig - bug */ - -# define GPIO_USART6_RX (GPIO_USART6_RX_2|GPIO_SPEED_100MHz) -# define GPIO_USART6_TX (GPIO_USART6_TX_2|GPIO_SPEED_100MHz) - #endif /* USART8:
