[PATCH 0/3] cmd: pxe: support INITRD and FDT selection with FIT

neil.armstrong at linaro.org neil.armstrong at linaro.org
Tue Dec 13 15:34:50 CET 2022


On 13/12/2022 15:31, Patrick DELAUNAY wrote:
> Hi,
> 
> On 11/22/22 20:43, Neil Armstrong wrote:
>> On 22/11/2022 20:11, Neil Armstrong wrote:
>>> Hi,
>>>
>>> On 21/11/2022 13:23, Quentin Schulz wrote:
>>>> Hi Patrick,
>>>>
>>>> Thanks for looking at it.
>>>>
>>>> On 10/28/22 11:01, Patrick Delaunay wrote:
>>>>>
>>>>> Since the commit d5ba6188dfbf ("cmd: pxe_utils: Check fdtcontroladdr
>>>>> in label_boot") the FDT or the FDTDIR label is required in extlinux.conf
>>>>> and the fallback done by bootm command when only the device tree is present
>>>>> in this command parameters is no more performed when FIT is used for
>>>>> kernel.
>>>>>
>>>>> The next file "extlinux.conf" no more selects the device tree in FIT
>>>>> but use the pxe fallback with the device tree of U-Boot.
>>>>>
>>>>> menu title Select the boot mode
>>>>> DEFAULT test
>>>>> LABEL test
>>>>>          KERNEL /fitImage
>>>>>
>>>>> This serie restores the possibility to use a FIT in extlinux.conf
>>>>> by using FDT label with the same string.
>>>>>
>>>>> menu title Select the boot mode
>>>>> DEFAULT test
>>>>> LABEL test
>>>>>          KERNEL /fitImage
>>>>>          FDT /fitImage
>>>>>
>>>>> even when a specific FIT config is used:
>>>>>
>>>>> menu title Select the boot mode
>>>>> DEFAULT test
>>>>> LABEL test
>>>>>          KERNEL /fitImage#config
>>>>>          FDT /fitImage#config
>>>>>
>>>>> The last commit of the series is only a minor improvement.
>>>>>
>>>>
>>>> I tested this on my Puma RK3399 and it does work again, thanks.
>>>>
>>>> However, I'm not sure this is what we should go for?
>>>>
>>>> My worry is the following:
>>>> What happens for old releases (pre-v2022.04) where KERNEL worked just fine without the FDT to load the fdt from the fitimage conf specified in KERNEL field? Would we now need to keep an extlinux.conf for pre-2022.04 releases where FDT wouldn't be set and one for 2023.01 and later where FDT would be mentioned? That does not seem like a good thing for distros.
>>>>
>>>> I unfortunately cannot answer the question myself without spending significant effort patching v2022.01 to get it to work on our Puma module. Does anyone have access to a board to quickly check an extlinux.conf with KERNEL and FDT set to /fitImage on a v2022.01 release?
>>>
>>> I'm building kirkstone images with meta-meson having v2022.01, I'll test with FDT set to /fitImage to see if it breaks.
>>
>> It breaks:
>> Found /extlinux/extlinux.conf
>> Retrieving file: /extlinux/extlinux.conf
>> 1:    Yocto
>> Retrieving file: /fitImage
>> append: root=PARTUUID=3ebc0005-02 rootwait console=ttyAML0,115200
>> Retrieving file: /fitImage
>> Bad Linux ARM64 Image magic!
>> SCRIPT FAILED: continuing...
>>
> 
> Can you share the extlinux file used for your test ?do you have my patch ?

It was explicitly without your patch as Quentin asked, he hoped addingh
"FDT /fitImage" would not break u-boot pre d5ba6188dfbf, but no.

> 
> 
> because I test the config on my board (STM32MP15x / armv7) the 2 cases :
> 
> 
> DEFAULT test
> LABEL test
>           KERNEL /fitImage
>           FDT /fitImage
> 
> 
> And
> 
> 
> DEFAULT test
> LABEL test
>           KERNEL /fitImage#config
>           FDT /fitImage#config
> 
> 
> and normally the file is retrieved one time => "/fitImage"
> 
> and in the trace it is retrieving 2 times = "Retrieving file: /fitImage" and it is stange
> 
> 
> I know I have limitation for mixed config:
> 
> DEFAULT test
> LABEL test
>           KERNEL /fitImage
>           FDT /fitImag#config
> 
> 
> Do you have this type of extlinux.conf ?
> 
> 
>>>
>>> Neil
>>>
>>>>
>>>> Is there really no other way than adding this new requirement? (Nothing against it if it does not break older releases with the "new" extlinux.conf though).
> 
> 
> The commit d5ba6188dfbf ("cmd: pxe_utils: Check fdtcontroladdr in label_boot") aready break the extlinux.conf support.....
> 
> => FTD or FDTDIR is now mandatory so potentially, some working extlinux.conf is ot more working
> 
>        since  v2022.01-rc2
> 
> 
> For example:
> 
> 
> menu title Select the boot mode
> DEFAULT test
> LABEL test
>           KERNEL /fitImage
> 
> 
> But this issue is not linked to this serie,
> 
> I just try to correct the regression
> 
> - keep the new behavior (usefull when FIT is not used)
> 
> - add a way to have a functional extlinux.conf for FIT
> 
>     (even if extlinux.conf files need to be modified and it is difficult for 'distros')
> 
> 
>>>>
>>>> Cheers,
>>>> Quentin
>>>
>>
> 
> I don't found a other solution / better solution for v202.01 => v2023.01...
> 
> Regards
> 
> 
> Patrick
> 



More information about the U-Boot mailing list