[PATCH v3 1/5] arm: stm32mp: add config for STM32IMAGE support
Patrice CHOTARD
patrice.chotard at foss.st.com
Mon Aug 16 13:38:24 CEST 2021
Hi Patrick
On 7/26/21 11:21 AM, Patrick Delaunay wrote:
> By default for trusted boot with TF-A, U-Boot (u-boot-nodtb)
> is located in FIP container with its device tree and with
> the secure monitor (provided by TF-A or OP-TEE).
> The FIP file is loaded by TF-A BL2 and each components is
> extracted at the final location.
>
> This patch add CONFIG_STM32MP15x_STM32IMAGE to request the
> STM32 image generation for SOC STM32MP15x
> when FIP container is not used (u-boot.stm32 is loaded by TF-A
> as done previously to keep the backward compatibility).
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
> Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>
> ---
>
> (no changes since v1)
>
> arch/arm/mach-stm32mp/Kconfig | 7 +++++++
> arch/arm/mach-stm32mp/config.mk | 2 +-
> board/st/stm32mp1/stm32mp1.c | 10 +++++++---
> configs/stm32mp15_trusted_defconfig | 1 +
> 4 files changed, 16 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
> index 0e59931679..b9e623bc3c 100644
> --- a/arch/arm/mach-stm32mp/Kconfig
> +++ b/arch/arm/mach-stm32mp/Kconfig
> @@ -56,6 +56,13 @@ config STM32MP15x
> dual core A7 for STM32MP157/3, monocore for STM32MP151
> target all the STMicroelectronics board with SOC STM32MP1 family
>
> +config STM32MP15x_STM32IMAGE
> + bool "Support STM32 image for generated U-Boot image"
> + depends on STM32MP15x && TFABOOT
> + help
> + Support of STM32 image generation for SOC STM32MP15x
> + for TF-A boot when FIP container is not used
> +
> choice
> prompt "STM32MP15x board select"
> optional
> diff --git a/arch/arm/mach-stm32mp/config.mk b/arch/arm/mach-stm32mp/config.mk
> index c30bf482f7..f7f5b77c41 100644
> --- a/arch/arm/mach-stm32mp/config.mk
> +++ b/arch/arm/mach-stm32mp/config.mk
> @@ -4,7 +4,7 @@
> #
>
> ifndef CONFIG_SPL
> -INPUTS-y += u-boot.stm32
> +INPUTS-$(CONFIG_STM32MP15x_STM32IMAGE) += u-boot.stm32
> else
> ifdef CONFIG_SPL_BUILD
> INPUTS-y += u-boot-spl.stm32
> diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
> index 2faf5c81b4..70bd4d1ed5 100644
> --- a/board/st/stm32mp1/stm32mp1.c
> +++ b/board/st/stm32mp1/stm32mp1.c
> @@ -105,10 +105,14 @@ int checkboard(void)
> const char *fdt_compat;
> int fdt_compat_len;
>
> - if (IS_ENABLED(CONFIG_TFABOOT))
> - mode = "trusted";
> - else
> + if (IS_ENABLED(CONFIG_TFABOOT)) {
> + if (IS_ENABLED(CONFIG_STM32MP15x_STM32IMAGE))
> + mode = "trusted - stm32image";
> + else
> + mode = "trusted";
> + } else {
> mode = "basic";
> + }
>
> fdt_compat = fdt_getprop(gd->fdt_blob, 0, "compatible",
> &fdt_compat_len);
> diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
> index a58ea91d3e..6a8ccb1f3d 100644
> --- a/configs/stm32mp15_trusted_defconfig
> +++ b/configs/stm32mp15_trusted_defconfig
> @@ -7,6 +7,7 @@ CONFIG_SYS_MEMTEST_END=0xc4000000
> CONFIG_ENV_OFFSET=0x280000
> CONFIG_ENV_SECT_SIZE=0x40000
> CONFIG_DEFAULT_DEVICE_TREE="stm32mp157c-ev1"
> +CONFIG_STM32MP15x_STM32IMAGE=y
> CONFIG_TARGET_ST_STM32MP15x=y
> CONFIG_CMD_STM32KEY=y
> CONFIG_CMD_STM32PROG=y
>
Applied to u-boot-stm/master
Thanks
Patrice
More information about the U-Boot
mailing list