[PATCH] ARM: Distro boot: document the need for fdtfile variable to be set

Andre Heider a.heider at gmail.com
Thu Sep 3 21:53:02 CEST 2020


Hi Vagrant,

On 03/09/2020 20:59, Vagrant Cascadian wrote:
> On 2020-09-03, Andre Heider wrote:
>> On 03/09/2020 18:40, Dennis Gilmore wrote:
>>> When testing builds provided in https://github.com/openwrt/openwrt/pull/3360
>>> I discovered that fdtfile was not set and as a result the firmware was not
>>> functional. So I am documenting what is needed.
>>>
>>> Signed-off-by: Dennis Gilmore <dennis at ausil.us>
>>>
>>> Cc: Atish Patra <atish.patra at wdc.com>
>>> Cc: Lukas Auer <lukas.auer at aisec.fraunhofer.de>
>>> Cc: Tom Rini <trini at konsulko.com>
>>> Cc: Masahiro Yamada <yamada.masahiro at socionext.com>
>>> Cc: Vagrant Cascadian <vagrant at debian.org>
>>> Cc: Stephen Warren <swarren at nvidia.com>
>>> Cc: Karsten Merker <merker at debian.org>
>>> ---
>>>    doc/README.distro | 8 ++++++++
>>>    1 file changed, 8 insertions(+)
>>>
>>> diff --git a/doc/README.distro b/doc/README.distro
>>> index 5076bebd18..3eb70aeb14 100644
>>> --- a/doc/README.distro
>>> +++ b/doc/README.distro
>>> @@ -224,6 +224,14 @@ fdt_addr_r:
>>>    
>>>      A size of 1MB for the FDT/DTB seems reasonable.
>>>    
>>> +fdtfile:
>>> +
>>> +  Mandatory. the name of the DTB file for the specific board for instance
>>> +  the espressobin v5 board the value is "marvell/armada-3720-espressobin.dtb"
>>> +  while on a clearfog pro it is "armada-388-clearfog-pro.dtb" in the case of
>>> +  a board providing its firmware based DTB this value can be used to override
>>> +  the DTB with a different DTB.
> 
> Thanks for documenting this!
> 
> With my Debian hat on...
> 
> Reviewed-by: Vagrant Cascadian <vagrant at debian.org>
> 
> 
>> is that really supposed to include the vendor subdir on arm64?
> 
> Yes.
> 
> 
>> If so, adding fdtfile like that would break booting debian using its
>> flash-image. It installs dtbs without that subdir into /boot:
>> /boot/dtbs/4.19.0-9-arm64/armada-3720-espressobin.dtb
>>
>> But it already supports $fdtfile:
>> https://salsa.debian.org/installer-team/flash-kernel/-/blob/master/bootscript/arm64/bootscr.uboot-generic#L32
>>
>> If I read that script correctly, it would fail to boot with
>> fdtfile=marvell/armada-3720-espressobin.dtb...
> 
> Support for installing in vendor subdirs was added to flash-kernel 3.91
> from 2018, and I believe the vendor subdirs are included in the
> debian-installer boot media as well.

alright, but if the vendor path is missing from flash-kernel's db, 
everything silently works with a flattened tree. See attached patch, now 
it works here too :)

Before:
/boot/dtbs/4.19.0-10-arm64/armada-3720-espressobin.dtb
After:
/boot/dtbs/4.19.0-10-arm64/marvell/armada-3720-espressobin.dtb

Thanks,
Andre
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Fix-missing-vendor-subdirs-for-arm64-boards.patch
Type: text/x-patch
Size: 1747 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200903/65f6ee32/attachment.bin>


More information about the U-Boot mailing list