From: Alper Nebi Yasak <alpernebiyasak@gmail.com>
To: "Peng Fan (OSS)" <peng.fan@oss.nxp.com>
Cc: u-boot@lists.denx.de, Peng Fan <peng.fan@nxp.com>,
sbabic@denx.de, festevam@gmail.com, michael@amarulasolutions.com,
ariel.dalessandro@collabora.com, tharvey@gateworks.com,
sjg@chromium.org, marek.behun@nic.cz, pali@kernel.org,
sr@denx.de, ricardo@foundries.io, trini@konsulko.com,
patrick.delaunay@foss.st.com
Subject: Re: [PATCH V4 1/8] spl: guard u_boot_any with X86
Date: Sun, 22 May 2022 16:55:36 +0300 [thread overview]
Message-ID: <334898af-f495-acb5-0c5a-1f4a9acce66e@gmail.com> (raw)
In-Reply-To: <20220520141048.20034-2-peng.fan@oss.nxp.com>
On 20/05/2022 17:10, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
>
> set the symbol as weak not work if LTO is enabled. Since u_boot_any is
> only used on X86 for now, so guard it with X86, otherwise build break
> if we use BINMAN_SYMBOLS on i.MX.
>
> Tested-by: Tim Harvey <tharvey@gateworks.com> #imx8m[m,n,p]-venice
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
> common/spl/spl.c | 8 ++++++--
> common/spl/spl_ram.c | 4 ++++
> 2 files changed, 10 insertions(+), 2 deletions(-)
>
> [...]
If I apply the series without this patch and try to build imx8mm-beacon,
I get the following error, and I'm assuming that's what you're trying to
solve here:
binman: Section '/binman/u-boot-spl-ddr': \
Symbol '_binman_u_boot_any_prop_image_pos' in entry \
'/binman/u-boot-spl-ddr/u-boot-spl/u-boot-spl-nodtb': \
Entry 'u-boot-any' not found in list (...)
The immediate cause for this is that your 'u-boot-spl-ddr' image has no
'u-boot'-like entry, meaning there's no reasonable value to write into
the non-optional 'u_boot_any' symbol.
(I think it might be OK to make this symbol optional, but LTO breaks
that as you found out. The rest of this email is about my thoughts
before I realized the LTO problem, but they're still relevant.)
It looks like binman images were designed to be monolithic instead of
modular, and it's assumed you'd have one fully-specified image for your
'flash.bin' where 'u-boot-spl' would know about (for example) a 'u-boot'
in a FIT entry. (I would like things to be modular eventually, though).
I tried to merge things into a single binman image, but mkimage is
trying to read 'u-boot-spl-ddr.bin' which would no longer exist. I see
this is because it's specified in 'spl/u-boot-spl.cfgout' as a LOADER
file in a later patch.
Maybe 'imx8mimage.c' can be changed to use mkimage's -d argument as the
LOADER instead? That's how binman passes the input data to mkimage, but
that seems to be ignored in this case. Then we can merge things into a
single image which will be able to set the 'u_boot_any' symbols without
error.
Otherwise, the mkimage file reading error can be solved by creating a
new binman 'imx8m-image' entry type that creates the 'cfgout' and calls
mkimage with it. (Binman images would still need to be merged).
next prev parent reply other threads:[~2022-05-22 13:58 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-20 14:10 [PATCH V4 0/8] arm64: binman: use binman symbols for imx Peng Fan (OSS)
2022-05-20 14:10 ` [PATCH V4 1/8] spl: guard u_boot_any with X86 Peng Fan (OSS)
2022-05-20 15:21 ` Tom Rini
2022-05-21 8:33 ` Peng Fan
2022-05-21 12:05 ` Tom Rini
2022-05-22 13:56 ` Alper Nebi Yasak
2022-05-22 14:50 ` Tom Rini
2022-05-23 21:10 ` Alper Nebi Yasak
2022-05-23 6:19 ` Peng Fan (OSS)
2022-05-23 6:28 ` Peng Fan (OSS)
2022-05-23 14:10 ` Tom Rini
2022-05-23 21:10 ` Alper Nebi Yasak
2022-05-22 13:55 ` Alper Nebi Yasak [this message]
2022-05-20 14:10 ` [PATCH V4 2/8] arm: dts: imx8m: update binman ddr firmware node name Peng Fan (OSS)
2022-05-22 13:56 ` Alper Nebi Yasak
2022-05-23 7:01 ` Peng Fan (OSS)
2022-05-23 21:11 ` Alper Nebi Yasak
2022-05-20 14:10 ` [PATCH V4 3/8] imx: imx8mm-icore: migrate to use BINMAN Peng Fan (OSS)
2022-05-22 13:56 ` Alper Nebi Yasak
2022-05-23 7:02 ` Peng Fan (OSS)
2022-05-20 14:10 ` [PATCH V4 4/8] armv8: u-boot-spl.lds: mark __image_copy_start as symbol Peng Fan (OSS)
2022-05-20 15:21 ` Tom Rini
2022-05-20 14:10 ` [PATCH V4 5/8] tools: binman: section: replace @ with - Peng Fan (OSS)
2022-05-22 13:57 ` Alper Nebi Yasak
2022-05-23 7:05 ` Peng Fan (OSS)
2022-05-20 14:10 ` [PATCH V4 6/8] ddr: imx8m: helper: load ddr firmware according to binman symbols Peng Fan (OSS)
2022-05-22 13:57 ` Alper Nebi Yasak
2022-05-23 7:08 ` Peng Fan (OSS)
2022-05-20 14:10 ` [PATCH V4 7/8] arm: dts: imx8m: shrink ddr firmware size to actual file size Peng Fan (OSS)
2022-05-23 21:12 ` Alper Nebi Yasak
2022-05-24 5:50 ` Michael Nazzareno Trimarchi
2022-05-20 14:10 ` [PATCH V4 8/8] binman_sym: guard with CONFIG_SPL_BINMAN_SYMBOLS Peng Fan (OSS)
2022-05-22 13:57 ` Alper Nebi Yasak
2022-05-23 7:10 ` Peng Fan (OSS)
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=334898af-f495-acb5-0c5a-1f4a9acce66e@gmail.com \
--to=alpernebiyasak@gmail.com \
--cc=ariel.dalessandro@collabora.com \
--cc=festevam@gmail.com \
--cc=marek.behun@nic.cz \
--cc=michael@amarulasolutions.com \
--cc=pali@kernel.org \
--cc=patrick.delaunay@foss.st.com \
--cc=peng.fan@nxp.com \
--cc=peng.fan@oss.nxp.com \
--cc=ricardo@foundries.io \
--cc=sbabic@denx.de \
--cc=sjg@chromium.org \
--cc=sr@denx.de \
--cc=tharvey@gateworks.com \
--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.