From: Denys Dmytriyenko <denis@denix.org>
To: Romain Naour <romain.naour@smile.fr>
Cc: u-boot@lists.denx.de, Tom Rini <trini@konsulko.com>
Subject: Re: [PATCH] configs: ti: use standard configuration nodes naming
Date: Mon, 28 Feb 2022 15:38:15 -0500 [thread overview]
Message-ID: <20220228203815.GA1766@denix.org> (raw)
In-Reply-To: <20220210221336.1263949-1-romain.naour@smile.fr>
On Thu, Feb 10, 2022 at 11:13:36PM +0100, Romain Naour wrote:
> Currently, any u-boot bootloader for ti armv7 platforms using
> DEFAULT_FIT_TI_ARGS to boot with a fitimage (boot_fit = 1)
> doesn't boot when built with Yocto Poky (openembedded-core).
>
> ## Loading kernel from FIT Image at 90000000 ...
> Could not find configuration node
> ERROR: can't get kernel image!
>
> Arago forked the kernel-fitimage class [1] and altered the
> configuration nodes naming while adding the OPTEE support by
> using FITIMAGE_CONF_BY_NAME by default [2].
>
> The "upstream" kernel-fitimage class from openembedded-core still
> add the "conf-" prefix for each configuration nodes [3].
>
> The ITS file format (from doc/uImage.FIT/source_file_format.txt)
> is not really accurate with the expected naming of these nodes.
> But in practice the "conf-" prefix is widely used.
>
> When the FIT image support has been added for ti armv7 platforms
> the naming from Arago has been used [3]. Fix this issue by adding
> the prefix expected by the ITS file generated by kernel-fitimage
> class from openembedded-core.
Well, this is a bit more complicated and convoluted, than what you
explained here...
[with my Arago/downstream hat on]
Arago forked kernel-fitimage class long time ago to add support for TI
ARMv7 HS (High Secure) devices, which used some custom ways of signing
and handling images. Unfortunately, kernel-fitimage class in OE-Core
was and is not that flexible or easily extendable, hence the fork.
Back then OE-Core was using numbered nodes "fdt@<num>" in the FIT image,
while Arago switched to using named nodes. As you correctly mentioned,
there's actually no defined standard on naming those nodes in ITS.
Moreover, OE-Core changed its way few times, until coming to the
current naming scheme with "conf-" prefix.
Since Arago fork of kernel-fitimage class was heavily customized, it
fell behind and wasn't updated with more recent changes in OE-Core.
Unlike "legacy" TI HS devices of ARMv7 architecture, TI K3 HS devices
of Aarch64 architecture are fully standard with open tooling. To that
extent, I made a recent change to use upstream kernel-fitimage class
from OE-Core:
https://git.yoctoproject.org/meta-arago/commit/?id=ae07d01dc54f84a88c479d0aaad8c5fa110182eb
[with my OpenEmbedded/upstream hat on]
I support this change in U-boot, which means Arago/TI-SDK will have to
adjust once it catches up with the latest version of U-boot.
> [1] http://arago-project.org/git/meta-arago.git?p=meta-arago.git;a=commitdiff;h=719ab1b2098bcdc59c249e3529fa82cb1b9130e6
> [2] http://arago-project.org/git/meta-arago.git?p=meta-arago.git;a=commitdiff;h=f23f2876a0cda89241d031bb7ba0b4256ed90035
> [3] https://git.openembedded.org/openembedded-core/tree/meta/classes/kernel-fitimage.bbclass?h=yocto-3.1.13#n290
> [3] 1e93cc8473e4fe018aececc8ed3bf8fc2b3ff561
>
> Signed-off-by: Romain Naour <romain.naour@smile.fr>
> Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Denys Dmytriyenko <denys@konsulko.com>
> ---
> include/configs/ti_armv7_common.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/configs/ti_armv7_common.h b/include/configs/ti_armv7_common.h
> index 9733707009..7483bc821d 100644
> --- a/include/configs/ti_armv7_common.h
> +++ b/include/configs/ti_armv7_common.h
> @@ -55,7 +55,7 @@
> "do;" \
> "setenv overlaystring ${overlaystring}'#'${overlay};" \
> "done;\0" \
> - "run_fit=bootm ${addr_fit}#${fdtfile}${overlaystring}\0" \
> + "run_fit=bootm ${addr_fit}#conf-${fdtfile}${overlaystring}\0" \
>
> /*
> * DDR information. If the CONFIG_NR_DRAM_BANKS is not defined,
--
Regards,
Denys Dmytriyenko <denis@denix.org>
PGP: 0x420902729A92C964 - https://denix.org/0x420902729A92C964
Fingerprint: 25FC E4A5 8A72 2F69 1186 6D76 4209 0272 9A92 C964
next prev parent reply other threads:[~2022-02-28 20:43 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-10 22:13 [PATCH] configs: ti: use standard configuration nodes naming Romain Naour
2022-02-28 20:38 ` Denys Dmytriyenko [this message]
2022-03-03 10:40 ` Romain Naour
2022-03-05 16:35 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220228203815.GA1766@denix.org \
--to=denis@denix.org \
--cc=romain.naour@smile.fr \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.