diff mbox series

ls10xxx: Use a sane SPL_SYS_MALLOC_F_LEN default

Message ID 20220428160206.1943777-1-sean.anderson@seco.com
State Superseded
Delegated to: Tom Rini
Headers show
Series ls10xxx: Use a sane SPL_SYS_MALLOC_F_LEN default | expand

Commit Message

Sean Anderson April 28, 2022, 4:02 p.m. UTC
SPL_SYS_MALLOC_F_LEN defaults to SYS_MALLOC_F_LEN. 0x10000 (the new
default) is 64 KiB, or around half of the total OCRAM size. Revert to
the previous default of 0x2000. This fixes SPL boot.

Fixes: 545eceb520 ("imx8/ls10xx: Use a sane SYS_MALLOC_F_LEN default")
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
---

 Kconfig | 1 +
 1 file changed, 1 insertion(+)

Comments

Fabio Estevam April 28, 2022, 4:23 p.m. UTC | #1
Hi Sean,

On Thu, Apr 28, 2022 at 1:02 PM Sean Anderson <sean.anderson@seco.com> wrote:
>
> SPL_SYS_MALLOC_F_LEN defaults to SYS_MALLOC_F_LEN. 0x10000 (the new
> default) is 64 KiB, or around half of the total OCRAM size. Revert to
> the previous default of 0x2000. This fixes SPL boot.
>
> Fixes: 545eceb520 ("imx8/ls10xx: Use a sane SYS_MALLOC_F_LEN default")
> Signed-off-by: Sean Anderson <sean.anderson@seco.com>

Thanks for the fix.

Would it be better to fix it like this instead?

--- a/Kconfig
+++ b/Kconfig
@@ -257,9 +257,7 @@ config SYS_MALLOC_F_LEN
        default 0x4000 if SANDBOX || RISCV || ARCH_APPLE || ROCKCHIP_RK3368 || \
                          ROCKCHIP_RK3399
        default 0x8000 if RCAR_GEN3
-       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ) || \
-                          ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || \
-                          ARCH_LS1046A
+       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ)
        default 0x2000
        help
          Before relocation, memory is very limited on many platforms. Still,
Sean Anderson April 28, 2022, 4:31 p.m. UTC | #2
Hi Fabio,

On 4/28/22 12:23 PM, Fabio Estevam wrote:
> Hi Sean,
> 
> On Thu, Apr 28, 2022 at 1:02 PM Sean Anderson <sean.anderson@seco.com> wrote:
>>
>> SPL_SYS_MALLOC_F_LEN defaults to SYS_MALLOC_F_LEN. 0x10000 (the new
>> default) is 64 KiB, or around half of the total OCRAM size. Revert to
>> the previous default of 0x2000. This fixes SPL boot.
>>
>> Fixes: 545eceb520 ("imx8/ls10xx: Use a sane SYS_MALLOC_F_LEN default")
>> Signed-off-by: Sean Anderson <sean.anderson@seco.com>
> 
> Thanks for the fix.
> 
> Would it be better to fix it like this instead?
> 
> --- a/Kconfig
> +++ b/Kconfig
> @@ -257,9 +257,7 @@ config SYS_MALLOC_F_LEN
>         default 0x4000 if SANDBOX || RISCV || ARCH_APPLE || ROCKCHIP_RK3368 || \
>                           ROCKCHIP_RK3399
>         default 0x8000 if RCAR_GEN3
> -       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ) || \
> -                          ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || \
> -                          ARCH_LS1046A
> +       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ)
>         default 0x2000
>         help
>           Before relocation, memory is very limited on many platforms. Still,
> 

That would also work. The primary problem is that between v2 and v3 the default
got raised from 0x2000 to 0x10000. Do you remember why you added layerscape
stuff in the first place? The only non-default value for this property for this
family was to set it to 0x6000 for some ls2 (ls3?) SoCs (e.g. ls1088).

--Sean
Fabio Estevam April 28, 2022, 4:34 p.m. UTC | #3
Hi Sean,

On 28/04/2022 13:31, Sean Anderson wrote:

> That would also work. The primary problem is that between v2 and v3 the 
> default
> got raised from 0x2000 to 0x10000. Do you remember why you added 
> layerscape
> stuff in the first place? The only non-default value for this property 
> for this
> family was to set it to 0x6000 for some ls2 (ls3?) SoCs (e.g. ls1088).

My original patch only touched imx8m, but Tom suggested I also bump 
Layerscape too.

Please send a v2 with my suggestion and feel free to add a:

Reviewed-by: Fabio Estevam <festevam@denx.de>989-80 Email: 
festevam@denx.de
Tom Rini April 28, 2022, 5:22 p.m. UTC | #4
On Thu, Apr 28, 2022 at 12:31:08PM -0400, Sean Anderson wrote:
> Hi Fabio,
> 
> On 4/28/22 12:23 PM, Fabio Estevam wrote:
> > Hi Sean,
> > 
> > On Thu, Apr 28, 2022 at 1:02 PM Sean Anderson <sean.anderson@seco.com> wrote:
> >>
> >> SPL_SYS_MALLOC_F_LEN defaults to SYS_MALLOC_F_LEN. 0x10000 (the new
> >> default) is 64 KiB, or around half of the total OCRAM size. Revert to
> >> the previous default of 0x2000. This fixes SPL boot.
> >>
> >> Fixes: 545eceb520 ("imx8/ls10xx: Use a sane SYS_MALLOC_F_LEN default")
> >> Signed-off-by: Sean Anderson <sean.anderson@seco.com>
> > 
> > Thanks for the fix.
> > 
> > Would it be better to fix it like this instead?
> > 
> > --- a/Kconfig
> > +++ b/Kconfig
> > @@ -257,9 +257,7 @@ config SYS_MALLOC_F_LEN
> >         default 0x4000 if SANDBOX || RISCV || ARCH_APPLE || ROCKCHIP_RK3368 || \
> >                           ROCKCHIP_RK3399
> >         default 0x8000 if RCAR_GEN3
> > -       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ) || \
> > -                          ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || \
> > -                          ARCH_LS1046A
> > +       default 0x10000 if ARCH_IMX8 || (ARCH_IMX8M && !IMX8MQ)
> >         default 0x2000
> >         help
> >           Before relocation, memory is very limited on many platforms. Still,
> > 
> 
> That would also work. The primary problem is that between v2 and v3 the default
> got raised from 0x2000 to 0x10000. Do you remember why you added layerscape
> stuff in the first place? The only non-default value for this property for this
> family was to set it to 0x6000 for some ls2 (ls3?) SoCs (e.g. ls1088).

So yes, I asked since I _think_ before layerscape was using a
smaller-than-0x2000 value and we have had a number of problems with
that.  Sorry for the noise!
diff mbox series

Patch

diff --git a/Kconfig b/Kconfig
index bdae59e06f..2a8ccd79ec 100644
--- a/Kconfig
+++ b/Kconfig
@@ -285,6 +285,7 @@  config SPL_SYS_MALLOC_F_LEN
 	depends on SYS_MALLOC_F && SPL
 	default 0 if !SPL_FRAMEWORK
 	default 0x2800 if RCAR_GEN3
+	default 0x2000 if ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || ARCH_LS1046A
 	default SYS_MALLOC_F_LEN
 	help
 	  In SPL memory is very limited on many platforms. Still,