[U-Boot] [PATCH] Increase default of CONFIG_SYS_MALLOC_F_LEN for SPL_OF_CONTROL

Simon Glass sjg at chromium.org
Mon Sep 12 06:21:23 CEST 2016


Hi Masahiro,

On 11 September 2016 at 06:50, Masahiro Yamada
<yamada.masahiro at socionext.com> wrote:
> Hi Simon,
>
>
> 2016-09-06 21:46 GMT+09:00 Simon Glass <sjg at chromium.org>:
>> Hi Masahiro,
>>
>> On 6 September 2016 at 06:24, Masahiro Yamada
>> <yamada.masahiro at socionext.com> wrote:
>>>
>>> 2016-09-06 10:04 GMT+09:00 Simon Glass <sjg at chromium.org>:
>>> > On 30 August 2016 at 03:56, Stefan Roese <sr at denx.de> wrote:
>>> >> On 30.08.2016 11:50, Masahiro Yamada wrote:
>>> >>>
>>> >>> If both SPL_DM and SPL_OF_CONTROL are enabled, SPL needs to bind
>>> >>> several devices, but CONFIG_SYS_MALLOC_F_LEN=0x400 is apparently
>>> >>> not enough.  Increase the default to 0x2000 for the case.  This
>>> >>> will be helpful for shorter defconfigs.
>>> >>>
>>> >>> Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
>>> >>
>>> >>
>>> >> Reviewed-by: Stefan Roese <sr at denx.de>
>>> >
>>> > Reviewed-by: Simon Glass <sjg at chromium.org>
>>> >
>>> > It would be worth checking why. I fixed a bug where simple-bus would
>>> > bring in all devices regardless of the u-boot,dm-pre-reloc flag.
>>> > Perhaps that was it?
>>>
>>> I do not think so.
>>>
>>> Recently I tested this.  In spite of "u-boot,dm-pre-reloc"
>>> in the SPL device tree, my board failed in SPL.
>>>
>>> I guess CONFIG_SYS_MALLOC_F_LEN=0x400 is not enough
>>> for binding/probing UART, pinctrl, MMC in SPL.
>>>
>>> I increased the malloc size and it worked fine.
>>
>> You could turn on DEBUG in common/spl/spl.c and it will print out how
>> much memory is used. But by making it the default you are affecting a
>> lot of boards which don't use pinctrl, etc. 8KB is a lot for some
>> boards.
>
> I tried this, and found I was a bit exaggerating.
>
> 0x400 was too small for my boards, but 0x800 worked.
> Given SYS_MALLOC_F_LEN specifies the sum of malloc and stack,
> so perhaps 0x800 is on the border.
> However, 0x2000 is too much.
>
> This patch is in the mainline, so revert it?

Well how about adjusting to 0x800? That's 2KB which is a lot better than 8KB.

Regards,
Simon


More information about the U-Boot mailing list