[U-Boot] arm: socfpga: unable to boot cyclone5 devkit or SocKit
Alexander Graf
agraf at suse.de
Thu Apr 12 09:15:34 UTC 2018
> Am 12.04.2018 um 10:37 schrieb Marek Vasut <marex at denx.de>:
>
>> On 04/12/2018 10:01 AM, Alexander Graf wrote:
>>
>>
>>> On 11.04.18 16:43, Dinh Nguyen wrote:
>>>> On Wed, Apr 11, 2018 at 7:55 AM, Alexander Graf <agraf at suse.de> wrote:
>>>>> On 04/11/2018 02:37 PM, Marek Vasut wrote:
>>>>>
>>>>>> On 04/11/2018 02:26 PM, Tom Rini wrote:
>>>>>>
>>>>>>> On Wed, Apr 11, 2018 at 10:12:42AM +0200, Marek Vasut wrote:
>>>>>>>
>>>>>>> On 04/11/2018 04:52 AM, Dinh Nguyen wrote:
>>>>>>> [...]
>>>>>>>
>>>>>>>>>>> u-boot$ git reset --hard v2018.01 ; bu socfpga_cyclone5 ; ls -la
>>>>>>>>>>> spl/u-boot-spl.bin
>>>>>>>>>>> HEAD is now at f3dd87e0b9 Prepare v2018.01
>>>>>>>>>>> -rw-r--r-- 1 marex marex 52902 Apr 11 00:34 spl/u-boot-spl.bin
>>>>>>>>>>>
>>>>>>>>>>> u-boot$ git reset --hard v2018.03 ; bu socfpga_cyclone5 ; ls -la
>>>>>>>>>>> spl/u-boot-spl.bin
>>>>>>>>>>> HEAD is now at f95ab1fb6e Prepare v2018.03
>>>>>>>>>>> -rw-r--r-- 1 marex marex 59706 Apr 11 00:34 spl/u-boot-spl.bin
>>>>>>>>>>>
>>>>>>>>>>> Try bisecting out the commit which caused this 7 kiB growth between
>>>>>>>>>>> 2018.01 and 2018.03 . Even those 53 kiB are quite borderline, but it
>>>>>>>>>>> was
>>>>>>>>>>> at 53 kiB for a while (2017.05 is also ~53 kiB)
>>>>>>
>>>>>> Do you have a size constraint and are not setting the correct CONFIG
>>>>>> options so that it becomes a build failure?
>>>>>>
>>>>>>>>>> Doing the bisect points me to this commit:
>>>>>>>>>>
>>>>>>>>>> commit fa2c14676c7c6f3115dd4d9b2a4cc3b35c3ad2a2
>>>>>>>>>> Author: Tom Rini <trini at konsulko.com>
>>>>>>>>>> Date: Sat Feb 10 16:54:38 2018 -0500
>>>>>>>>>>
>>>>>>>>>> configs: Re-sync with CONFIG_DISTRO_DEFAULTS
>>>>>>>>>>
>>>>>>>>>> A number of platforms include config_distro_defaults.h but do
>>>>>>>>>> not enable
>>>>>>>>>> CONFIG_DISTRO_DEFAULTS. As they plainly intended to, set that
>>>>>>>>>> flag and
>>>>>>>>>> re-sync config files.
>>>>>>>>>>
>>>>>>>>>> Signed-off-by: Tom Rini <trini at konsulko.com>
>>>>>>>>>>
>>>>>>>>>> Doing a revert of the above commit shrinks the SPL back down to ~7
>>>>>>>>>> kiB.
>>>>>>>>>>
>>>>>>>>>> Dinh
>>>>>>>>>>
>>>>>>>>> It looks like the enablement of CONFIG_DISTRO_DEFAULTS, enables these
>>>>>>>>> configs:
>>>>>>>>>
>>>>>>>>> CONFIG_ISO_PARTITION=y
>>>>>>>>> CONFIG_SPL_ISO_PARTITION=y
>>>>>>>>> # CONFIG_AMIGA_PARTITION is not set
>>>>>>>>> # CONFIG_SPL_AMIGA_PARTITION is not set
>>>>>>>>> CONFIG_EFI_PARTITION=y
>>>>>>>>> CONFIG_EFI_PARTITION_ENTRIES_NUMBERS=128
>>>>>>>>> CONFIG_EFI_PARTITION_ENTRIES_OFF=0
>>>>>>>>> CONFIG_SPL_EFI_PARTITION=y
>>>>>>>>> CONFIG_PARTITION_UUIDS=y
>>>>>>>>> CONFIG_SPL_PARTITION_UUIDS=y
>>>>>>>>> # CONFIG_PARTITION_TYPE_GUID is not set
>>>>>>>>>
>>>>>>>>> Which is contributing to the SPL growth.
>>>>>>>>>
>>>>>>>> Turning the following config options off subtracts 7k from the SPL:
>>>>>>>>
>>>>>>>> +# CONFIG_SPL_ISO_PARTITION is not set
>>>>>>>> +# CONFIG_SPL_EFI_PARTITION is not set
>>>>>>>>
>>>>>>>> Not sure if these are needed?
>>>>>>>
>>>>>>> IMO not on SoCFPGA. Also CCing Tom.
>>>>>>
>>>>>> Yes, all of those options are part of CONFIG_DISTRO_DEFAULTS and are
>>>>>> needed so that booting from various distro media works.
>>>>>
>>>>> In SPL on boards which usually boot from SDMMC or QSPI NOR ? How is EFI
>>>>> or ISO partition needed there ?
>>>>
>>>>
>>>>
>>>> I don't think ISO partitioning is needed in SPL. However, for GPT I'm not
>>>> 100% sure. People tend to go with GPT more often than not these days - and
>>>> to be able to fetch U-Boot proper from a GPT partition may make sense.
>>>>
>>>> How much reduction do you get when you only disable
>>>> CONFIG_SPL_ISO_PARTITION?
>>>>
>>>
>>> ~3 kiB
>>
>> Ok, so that's not enough to get us back to reasonable space, but it's at
>> least a step in the right direction. I sent a patch to disable
>> CONFIG_SPL_ISO_PARTITION for everyone by default ;).
>>
>> If we remove all printfs from part_efi.c we could for example gain
>> another 1.5kb. But I'm not sure that's worth it - and if feels like
>> we're shaving on the wrong end at this point.
>>
>> Is there any other big chunk in there that wastes space?
>
> The entire EFI support, which is never used on SoCFPGA to my knowledge,
> esp. in SPL .
None of it is enabled in SPL :). The „efi partition“ option is a misnomer - it really just enables GPT partition table support which are widely in use with Android for example.
Alex
More information about the U-Boot
mailing list