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

Masahiro Yamada yamada.masahiro at socionext.com
Mon Sep 12 06:42:42 CEST 2016


Hi Simon,


2016-09-12 13:21 GMT+09:00 Simon Glass <sjg at chromium.org>:
> 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.


I am OK with it, but it will not help reducing the defcongis very much
at this point.


I can test all the UniPhier boards,
so probably OK with switching to 0x800.

Zynq boards now use 0x600, but I guess it is OK to increase it to 0x800
(if Michal gives us Ack).


I am not sure if SoCFPGA really needs 0x2000.  Marek can answer the question.


-- 
Best Regards
Masahiro Yamada


More information about the U-Boot mailing list