[PATCH 1/9] arm: stm32mp: spl: add bsec driver in SPL
Patrice CHOTARD
patrice.chotard at st.com
Mon May 11 15:48:38 CEST 2020
Hi Patrick
On 4/21/20 5:11 PM, Patrick Delaunay wrote:
> Add the bsec driver in SPL, as it is needed by SOC part number detection
> to found the supported OPP.
>
>
> Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
> ---
>
> I already sent in unrelated serie
>
> http://patchwork.ozlabs.org/patch/1264829/
>
> Patrick
>
>
> arch/arm/dts/stm32mp15-u-boot.dtsi | 2 +-
> arch/arm/mach-stm32mp/Makefile | 2 +-
> arch/arm/mach-stm32mp/bsec.c | 11 ++++++-----
> 3 files changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/dts/stm32mp15-u-boot.dtsi b/arch/arm/dts/stm32mp15-u-boot.dtsi
> index 8f9535a4db..e0b1223de8 100644
> --- a/arch/arm/dts/stm32mp15-u-boot.dtsi
> +++ b/arch/arm/dts/stm32mp15-u-boot.dtsi
> @@ -40,7 +40,7 @@
> };
>
> &bsec {
> - u-boot,dm-pre-proper;
> + u-boot,dm-pre-reloc;
> };
>
> &clk_csi {
> diff --git a/arch/arm/mach-stm32mp/Makefile b/arch/arm/mach-stm32mp/Makefile
> index eee39c27c3..f29d6f795f 100644
> --- a/arch/arm/mach-stm32mp/Makefile
> +++ b/arch/arm/mach-stm32mp/Makefile
> @@ -6,11 +6,11 @@
> obj-y += cpu.o
> obj-y += dram_init.o
> obj-y += syscon.o
> +obj-y += bsec.o
>
> ifdef CONFIG_SPL_BUILD
> obj-y += spl.o
> else
> -obj-y += bsec.o
> obj-$(CONFIG_CMD_STM32KEY) += cmd_stm32key.o
> obj-$(CONFIG_ARMV7_PSCI) += psci.o
> endif
> diff --git a/arch/arm/mach-stm32mp/bsec.c b/arch/arm/mach-stm32mp/bsec.c
> index 0d5850b4a9..98a950c640 100644
> --- a/arch/arm/mach-stm32mp/bsec.c
> +++ b/arch/arm/mach-stm32mp/bsec.c
> @@ -473,20 +473,23 @@ static int stm32mp_bsec_ofdata_to_platdata(struct udevice *dev)
> return 0;
> }
>
> -#ifndef CONFIG_TFABOOT
> static int stm32mp_bsec_probe(struct udevice *dev)
> {
> +#if !defined(CONFIG_TFABOOT) && !defined(CONFIG_SPL_BUILD)
> int otp;
> struct stm32mp_bsec_platdata *plat = dev_get_platdata(dev);
>
> - /* update unlocked shadow for OTP cleared by the rom code */
> + /*
> + * update unlocked shadow for OTP cleared by the rom code
> + * only executed in U-Boot proper when TF-A is not used
> + */
> for (otp = 57; otp <= BSEC_OTP_MAX_VALUE; otp++)
> if (!bsec_read_SR_lock(plat->base, otp))
> bsec_shadow_register(plat->base, otp);
> +#endif
>
> return 0;
> }
> -#endif
>
> static const struct udevice_id stm32mp_bsec_ids[] = {
> { .compatible = "st,stm32mp15-bsec" },
> @@ -500,7 +503,5 @@ U_BOOT_DRIVER(stm32mp_bsec) = {
> .ofdata_to_platdata = stm32mp_bsec_ofdata_to_platdata,
> .platdata_auto_alloc_size = sizeof(struct stm32mp_bsec_platdata),
> .ops = &stm32mp_bsec_ops,
> -#ifndef CONFIG_TFABOOT
> .probe = stm32mp_bsec_probe,
> -#endif
> };
Reviewed-by: Patrice Chotard <patrice.chotard at st.com>
Thanks
Patrice
More information about the U-Boot
mailing list