[RESEND PATCH] imx: Enable ACTLR.SMP in SPL for i.MX6
Fabio Estevam
festevam at gmail.com
Sat Jan 1 21:41:07 CET 2022
Hi Sven,
Thanks for your patch.
On Sat, Jan 1, 2022 at 3:47 PM Sven Schwermer <sven at svenschwermer.de> wrote:
>
> Similar to what has been done before with c5437e5b for u-boot proper, we
> enable the SMP bit for SPL as well. This is necessary when SDP booting
> straight into Linux, i.e. falcon boot. When SDP boot mode is active, the
> ROM code does not set this bit which makes the caches not work once
> activated in Linux.
I suggest adding the data about the boot time difference that you
noticed when booting
FIT image via SPL in falcon mode versus U-Boot proper (1.2s versus 5s).
> Signed-off-by: Sven Schwermer <sven at svenschwermer.de>
> ---
>
> arch/arm/include/asm/mach-imx/sys_proto.h | 5 +++++
> arch/arm/mach-imx/cache.c | 2 +-
> arch/arm/mach-imx/mx6/soc.c | 3 +++
> 3 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/include/asm/mach-imx/sys_proto.h b/arch/arm/include/asm/mach-imx/sys_proto.h
> index 444834995e..b12cbdf60e 100644
> --- a/arch/arm/include/asm/mach-imx/sys_proto.h
> +++ b/arch/arm/include/asm/mach-imx/sys_proto.h
> @@ -236,4 +236,9 @@ unsigned long call_imx_sip_ret2(unsigned long id, unsigned long reg0,
> unsigned long reg3);
>
> void imx_get_mac_from_fuse(int dev_id, unsigned char *mac);
> +
> +#if defined(CONFIG_MX6) || defined(CONFIG_MX7)
Please add || defined(CONFIG_MX7ULP) too.
> +void enable_ca7_smp(void);
> +#endif
> +
> #endif
> diff --git a/arch/arm/mach-imx/cache.c b/arch/arm/mach-imx/cache.c
> index 4e3b49a3fd..ab9b621a2a 100644
> --- a/arch/arm/mach-imx/cache.c
> +++ b/arch/arm/mach-imx/cache.c
> @@ -11,7 +11,7 @@
> #include <asm/io.h>
> #include <asm/mach-imx/sys_proto.h>
>
> -static void enable_ca7_smp(void)
> +void enable_ca7_smp(void)
> {
> u32 val;
>
> diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
> index aacfc854a2..41f1a6e64e 100644
> --- a/arch/arm/mach-imx/mx6/soc.c
> +++ b/arch/arm/mach-imx/mx6/soc.c
> @@ -487,6 +487,9 @@ int arch_cpu_init(void)
> if (is_mx6dqp())
> noc_setup();
> #endif
> +
> + enable_ca7_smp();
> +
Since this affects all i.MX Cortex-A7 devices, please also add
enable_ca7_smp() in:
arch/arm/mach-imx/mx7/soc.c
arch/arm/mach-imx/mx7ulp/soc.c
Thanks
More information about the U-Boot
mailing list