On 5/23/25 11:46, Antonio Borneo wrote:
> From: Patrice Chotard <patrice.chot...@foss.st.com>
>
> On STM32MP reference boards, the watchdog is started by a previous
> boot stage (e.g. bootrom or secure OS), so the config flag
> WATCHDOG_AUTOSTART is not required.
> It's preferable to rely on the DT properties "u-boot,autostart" or
> "u-boot,noautostart", if needed.
>
> For backward compatibility on defconfigs that are based on SPL,
> thus cannot rely on a previous boot stage for starting the
> watchdog, enable WATCHDOG_AUTOSTART in their respective defconfig.
> The change in stm32mp15_dhsom.config is propagated to:
> - configs/stm32mp15_dhcom_basic.config
> - configs/stm32mp15_dhcor_basic.config
> and then to:
> - stm32mp15_dhcom_basic_defconfig
> - stm32mp15_dhcom_drc02_basic_defconfig
> - stm32mp15_dhcom_pdk2_basic_defconfig
> - stm32mp15_dhcom_picoitx_basic_defconfig
> - stm32mp15_dhcor_avenger96_basic_defconfig
> - stm32mp15_dhcor_basic_defconfig
> - stm32mp15_dhcor_drc_compact_basic_defconfig
> - stm32mp15_dhcor_testbench_basic_defconfig
>
> Signed-off-by: Patrice Chotard <patrice.chot...@foss.st.com>
> Signed-off-by: Antonio Borneo <antonio.bor...@foss.st.com>
> ---
> configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig | 1 +
> configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig | 1 +
> configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig | 1 +
> configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig | 1 +
> configs/stm32mp15_basic_defconfig | 1 +
> configs/stm32mp15_dhsom.config | 1 +
> drivers/watchdog/Kconfig | 1 +
> 7 files changed, 7 insertions(+)
>
> diff --git a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> index fc095ac0de1..4c371c17334 100644
> --- a/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> +++ b/configs/stm32mp15-icore-stm32mp1-ctouch2_defconfig
> @@ -88,6 +88,7 @@ CONFIG_DM_RTC=y
> CONFIG_RTC_STM32=y
> CONFIG_SERIAL_RX_BUFFER=y
> CONFIG_SYSRESET_SYSCON=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> CONFIG_WDT=y
> CONFIG_WDT_STM32MP=y
> # CONFIG_BINMAN_FDT is not set
> diff --git a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> index b243c45d690..7463eb5c95d 100644
> --- a/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> +++ b/configs/stm32mp15-icore-stm32mp1-edimm2.2_defconfig
> @@ -88,6 +88,7 @@ CONFIG_DM_RTC=y
> CONFIG_RTC_STM32=y
> CONFIG_SERIAL_RX_BUFFER=y
> CONFIG_SYSRESET_SYSCON=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> CONFIG_WDT=y
> CONFIG_WDT_STM32MP=y
> # CONFIG_BINMAN_FDT is not set
> diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> index e635c726459..e9f5bd32721 100644
> --- a/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> +++ b/configs/stm32mp15-microgea-stm32mp1-microdev2-of7_defconfig
> @@ -88,6 +88,7 @@ CONFIG_DM_RTC=y
> CONFIG_RTC_STM32=y
> CONFIG_SERIAL_RX_BUFFER=y
> CONFIG_SYSRESET_SYSCON=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> CONFIG_WDT=y
> CONFIG_WDT_STM32MP=y
> # CONFIG_BINMAN_FDT is not set
> diff --git a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> index 9e7849ff8f0..aefb78935b0 100644
> --- a/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> +++ b/configs/stm32mp15-microgea-stm32mp1-microdev2_defconfig
> @@ -88,6 +88,7 @@ CONFIG_DM_RTC=y
> CONFIG_RTC_STM32=y
> CONFIG_SERIAL_RX_BUFFER=y
> CONFIG_SYSRESET_SYSCON=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> CONFIG_WDT=y
> CONFIG_WDT_STM32MP=y
> # CONFIG_BINMAN_FDT is not set
> diff --git a/configs/stm32mp15_basic_defconfig
> b/configs/stm32mp15_basic_defconfig
> index e3090ec2a50..241c9402560 100644
> --- a/configs/stm32mp15_basic_defconfig
> +++ b/configs/stm32mp15_basic_defconfig
> @@ -191,6 +191,7 @@ CONFIG_SPLASH_SCREEN_ALIGN=y
> CONFIG_BMP_16BPP=y
> CONFIG_BMP_24BPP=y
> CONFIG_BMP_32BPP=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> CONFIG_WDT=y
> CONFIG_WDT_STM32MP=y
> # CONFIG_BINMAN_FDT is not set
> diff --git a/configs/stm32mp15_dhsom.config b/configs/stm32mp15_dhsom.config
> index c84116482f6..565b49584e3 100644
> --- a/configs/stm32mp15_dhsom.config
> +++ b/configs/stm32mp15_dhsom.config
> @@ -76,3 +76,4 @@ CONFIG_PREBOOT="run dh_preboot"
> CONFIG_SYS_SPI_U_BOOT_OFFS=0x80000
> CONFIG_TARGET_DH_STM32MP1_PDK2=y
> CONFIG_USE_SERVERIP=y
> +CONFIG_WATCHDOG_AUTOSTART=y
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index 1bb67f50352..510330be8a5 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -15,6 +15,7 @@ config WATCHDOG_AUTOSTART
> bool "Automatically start watchdog timer"
> depends on WDT
> default n if ARCH_SUNXI
> + default n if ARCH_STM32MP
> default y
> help
> Automatically start watchdog timer and start servicing it during
Reviewed-by: Patrice Chotard <patrice.chot...@foss.st.com>
Thanks
Patrice