[PATCH v1 0/1] Fix booting kernels with ATAGS and extlinux

Tom Rini trini at konsulko.com
Thu Jan 25 15:47:48 CET 2024


On Thu, Jan 25, 2024 at 04:34:41PM +0200, Svyatoslav wrote:
> 
> 
> 25 січня 2024 р. 16:17:34 GMT+02:00, Tom Rini <trini at konsulko.com> написав(-ла):
> >On Thu, Jan 25, 2024 at 04:16:11PM +0200, Svyatoslav wrote:
> >> 
> >> 
> >> 25 січня 2024 р. 16:12:36 GMT+02:00, Tom Rini <trini at konsulko.com> написав(-ла):
> >> >On Thu, Jan 25, 2024 at 08:51:09AM +0200, Svyatoslav wrote:
> >> >> 
> >> >> 
> >> >> 25 січня 2024 р. 08:29:54 GMT+02:00, Dan Carpenter <dan.carpenter at linaro.org> написав(-ла):
> >> >> >On Wed, Jan 24, 2024 at 10:27:30PM +0200, Svyatoslav Ryhel wrote:
> >> >> >> Currently, if boot with extlinux.conf and do not set the fdt
> >> >> >> U-Boot will provide its own device tree. This behavior is
> >> >> >> beneficial if the U-Boot device tree is in sync with Linux,
> >> >> >> but it totally halts the booting of pre-dtb kernels (3.4 for
> >> >> >> example) since it uses ATAGs. To fix this, pass `-` in the
> >> >> >> fdt extlinux field as a signal that no tree should be used.
> >> >> >
> >> >> >Passing - doesn't seem like the most intuitive thing...  Is there a
> >> >> >different argument we could use?
> >> >> >
> >> >> 
> >> >> I agree that `-` is not the most intuitive argument,
> >> >> but this is a way to implement a fix with the least
> >> >> code posssible. To make this less obscure I have
> >> >> adjusted documentation. 
> >> >
> >> >It's also how historically we do similar things. eg, "bootm
> >> >$kernel_addr_r - $fdt_addr_r". My question is can we re-work this,
> >> >cleanly, with guards around SUPPORT_PASSING_ATAGS to not increase size
> >> >anywhere that doesn't need this legacy case.
> >> >
> >> 
> >> Which behavior you propose?
> >
> >Well, using the IS_ENABLED macro with the new tests around "-".
> >
> 
> So using "-" for booting with extlinux with ATAGs is fine for you?
> Guards, sure, I will handle this. Which tests you are interested in?
> Maybe you can point to an example? Thanks.

Sorry, I meant tests in terms of writing the code, not unit tests as no,
we don't have enough unit tests around booting a kernel as it stands and
I don't see how to just add a test for extlinux + legacy kernel.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20240125/a25dd66e/attachment.sig>


More information about the U-Boot mailing list