For UART serial boot, the console need to be deactivated to avoid issue with tools STM32CubeProgrammer.
This patch adds also the missing dependency for CMD_STM32PROG_SERIAL, to allow the silent and disable console. This avoid to add is on board level for STM32MP15 (with TARGET_ST_STM32MP15X or TARGET_ST_STM32MP13X) Signed-off-by: Patrick Delaunay <patrick.delau...@foss.st.com> Signed-off-by: Patrice Chotard <patrice.chot...@foss.st.com> --- arch/arm/mach-stm32mp/cmd_stm32prog/Kconfig | 2 ++ arch/arm/mach-stm32mp/stm32mp2/cpu.c | 13 +++++++++++++ 2 files changed, 15 insertions(+) diff --git a/arch/arm/mach-stm32mp/cmd_stm32prog/Kconfig b/arch/arm/mach-stm32mp/cmd_stm32prog/Kconfig index 589276282e4..490097e98be 100644 --- a/arch/arm/mach-stm32mp/cmd_stm32prog/Kconfig +++ b/arch/arm/mach-stm32mp/cmd_stm32prog/Kconfig @@ -27,6 +27,8 @@ config CMD_STM32PROG_USB config CMD_STM32PROG_SERIAL bool "support stm32prog over UART" depends on CMD_STM32PROG + imply DISABLE_CONSOLE + imply SILENT_CONSOLE default y help activate the command "stm32prog serial" for STM32MP soc family diff --git a/arch/arm/mach-stm32mp/stm32mp2/cpu.c b/arch/arm/mach-stm32mp/stm32mp2/cpu.c index 9548b27cfa7..c3b87d7f981 100644 --- a/arch/arm/mach-stm32mp/stm32mp2/cpu.c +++ b/arch/arm/mach-stm32mp/stm32mp2/cpu.c @@ -55,6 +55,19 @@ int arch_cpu_init(void) return 0; } +int mach_cpu_init(void) +{ + u32 boot_mode; + + boot_mode = get_bootmode(); + + if (IS_ENABLED(CONFIG_CMD_STM32PROG_SERIAL) && + (boot_mode & TAMP_BOOT_DEVICE_MASK) == BOOT_SERIAL_UART) + gd->flags |= GD_FLG_SILENT | GD_FLG_DISABLE_CONSOLE; + + return 0; +} + void enable_caches(void) { /* deactivate the data cache, early enabled in arch_cpu_init() */ -- 2.25.1