U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Patrice CHOTARD <patrice.chotard@foss.st.com>
To: Pascal Zimmermann <pzimmermann@dh-electronics.com>,
	<u-boot@lists.denx.de>
Cc: Marek Vasut <marex@denx.de>,
	Patrick Delaunay <patrick.delaunay@foss.st.com>,
	Tom Rini <trini@konsulko.com>, Simon Glass <sjg@chromium.org>,
	<u-boot@dh-electronics.com>,
	<uboot-stm32@st-md-mailman.stormreply.com>
Subject: Re: [RESEND PATCH 2/2] ARM: stm32: env: Enable scan and start for AB schema on STM32MP15 DHSOM
Date: Fri, 11 Apr 2025 09:24:12 +0200	[thread overview]
Message-ID: <fa360159-299f-4083-bcef-96df4915d0c3@foss.st.com> (raw)
In-Reply-To: <20250327143843.19358-3-pzimmermann@dh-electronics.com>



On 3/27/25 15:38, Pascal Zimmermann wrote:
> For the STM32MP15 DHSOM, change the default environment so an AB schema
> on a device can be detected.
> 
> For this the define "SCAN_DEV_FOR_BOOT_PARTS" is overwritten and
> appended.
> 
> The detection works by looking for the partitions with specific lables.
> The name of those partitions are in the variables and its defaults:
> * dh_ab_partname_primary=rootfs-a
> * dh_ab_partname_secondary=rootfs-b
> 
> To prevent being hanging at bootcmd, enable "CONFIG_BOOT_RETRY" and
> "CONFIG_RESET_TO_RETRY", but the timer will only be activated, if the AB
> partitions are detected.
> 
> Signed-off-by: Pascal Zimmermann <pzimmermann@dh-electronics.com>
> ---
> Cc: Marek Vasut <marex@denx.de>
> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
> Cc: Patrice Chotard <patrice.chotard@foss.st.com>
> Cc: Tom Rini <trini@konsulko.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: u-boot@dh-electronics.com
> Cc: uboot-stm32@st-md-mailman.stormreply.com
> Cc: u-boot@lists.denx.de
> ---
>  configs/stm32mp15_dhsom.config       |  3 +++
>  include/configs/stm32mp15_dh_dhsom.h | 33 ++++++++++++++++++++++++++++
>  2 files changed, 36 insertions(+)
> 
> diff --git a/configs/stm32mp15_dhsom.config b/configs/stm32mp15_dhsom.config
> index 7e5b5aa67ef..c84116482f6 100644
> --- a/configs/stm32mp15_dhsom.config
> +++ b/configs/stm32mp15_dhsom.config
> @@ -10,6 +10,9 @@ CONFIG_BOARD_EARLY_INIT_F=y
>  CONFIG_BOARD_SIZE_LIMIT=1441792
>  CONFIG_BOOTCOUNT_BOOTLIMIT=3
>  CONFIG_BOOTDELAY=1
> +CONFIG_BOOTRETRY=y
> +CONFIG_RESET_TO_RETRY=y
> +CONFIG_BOOT_RETRY_TIME=-1
>  CONFIG_CMD_ADC=y
>  CONFIG_CMD_REMOTEPROC=y
>  CONFIG_CMD_STBOARD=y
> diff --git a/include/configs/stm32mp15_dh_dhsom.h b/include/configs/stm32mp15_dh_dhsom.h
> index c004a8cec82..267e3446779 100644
> --- a/include/configs/stm32mp15_dh_dhsom.h
> +++ b/include/configs/stm32mp15_dh_dhsom.h
> @@ -17,7 +17,40 @@
>  			" 0x800000\0"
>  #endif
>  
> +/* Add the search for AB partitons */
> +#define SCAN_DEV_FOR_BOOT_PARTS						\
> +	"run dh_check_if_ab; "						\
> +	"if test -z \"${devplist}\"; "					\
> +		"then "							\
> +		"part list ${devtype} ${devnum} -bootable devplist; "	\
> +	"fi; "
> +
>  #define STM32MP_BOARD_EXTRA_ENV						\
> +	"altbootcmd= "							\
> +	"setenv dh_ab_get_partnames "					\
> +		"'setenv dh_ab_partnames ${dh_ab_partname_secondary} "	\
> +			"${dh_ab_partname_primary}' && "		\
> +		"run bootcmd\0"						\
> +	"dh_check_if_ab= " /* Sets devplist if AB partitions*/		\
> +		"echo test for AB on ${devtype} ${devnum} && "		\
> +		"run dh_ab_get_partnames && "				\
> +		"setenv devplist && "					\
> +		"for partname in ${dh_ab_partnames}; do "		\
> +			"setenv partnum && "				\
> +			"if part number ${devtype} ${devnum} ${partname} partnum; "\
> +				"then "					\
> +				"setenv devplist \"${devplist} ${partnum}\" && "\
> +				"setenv bootretry 60 ;"			\
> +			"fi; "						\
> +		"done ; "						\
> +		"if test -n \"${devplist}\"; "				\
> +			"then echo AB partitions found! ; "		\
> +		"fi\0"							\
> +	"dh_ab_get_partnames= " /* Sets dh_ab_partnames */		\
> +		"setenv dh_ab_partnames ${dh_ab_partname_primary} "	\
> +			"${dh_ab_partname_secondary}\0"			\
> +	"dh_ab_partname_primary=rootfs-a\0" /* Names of AB partitions */\
> +	"dh_ab_partname_secondary=rootfs-b\0"				\
>  	"dh_preboot="							\
>  		"run dh_testbench_backward_compat\0"			\
>  	"dh_update_sd_to_emmc=" /* Install U-Boot from SD to eMMC */	\

Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>

Thanks
Patrice

  reply	other threads:[~2025-04-11  7:28 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-27 14:38 [RESEND PATCH 0/2] ARM: stm32: env: Enable scan and start for AB schema on STM32MP15 DHSOM Pascal Zimmermann
2025-03-27 14:38 ` [RESEND PATCH 1/2] config_distro_bootcmd: make possible to substitute 'part list' in distro_bootcmd Pascal Zimmermann
2025-04-11  7:15   ` Patrice CHOTARD
2025-05-05 12:42     ` Patrice CHOTARD
2025-03-27 14:38 ` [RESEND PATCH 2/2] ARM: stm32: env: Enable scan and start for AB schema on STM32MP15 DHSOM Pascal Zimmermann
2025-04-11  7:24   ` Patrice CHOTARD [this message]
2025-05-05 12:43     ` Patrice CHOTARD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fa360159-299f-4083-bcef-96df4915d0c3@foss.st.com \
    --to=patrice.chotard@foss.st.com \
    --cc=marex@denx.de \
    --cc=patrick.delaunay@foss.st.com \
    --cc=pzimmermann@dh-electronics.com \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@dh-electronics.com \
    --cc=u-boot@lists.denx.de \
    --cc=uboot-stm32@st-md-mailman.stormreply.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox