[PATCH u-boot 2/2] Makefile: Build working u-boot-dtb.bin target also for mpc85xx

Simon Glass sjg at chromium.org
Fri Dec 30 16:49:08 CET 2022


Hi Pali,

On Fri, 30 Dec 2022 at 09:44, Pali Rohár <pali at kernel.org> wrote:
>
> On Friday 30 December 2022 10:41:47 Tom Rini wrote:
> > On Fri, Dec 30, 2022 at 04:24:43PM +0100, Pali Rohár wrote:
> > > On Friday 30 December 2022 10:21:04 Tom Rini wrote:
> > > > > In this case it would be better to build u-boot-dts.bin only by binman
> > > > > (for all platforms) instead of cat-ing rules in Makefile.
> > > >
> > > > This would also be an easier path forward perhaps for making sure that
> > > > the dtb is always 8 byte aligned?
> > >
> > > Well, no. With DTB the problem is that it is not put to the correct
> > > offset as can be specified in linker script. So moving this code from
> > > Makefile to binman also moves this problem to another location.
> > > 8 byte alignment is just subset of the "correct offset" problem.
> >
> > Right, the high level answer is binman is intended to be the tool to
> > assemble binaries, and has to deal with "make sure binary X is at offset
> > Y, which also has a linker symbol for run-time references".
>
> Ok, if this tool has access to ELF/linker symbols (or will have in
> future in case it does not have yet) then this problem could be solved
> here.

It does have this access and already updates symbols in some cases.
See [1]. I am a little nervous about a complete move to binman in this
area even for simple things like u-boot.bin, since it would set off
yet another migration. But perhaps most boards don't actually use
u-boot.bin anyway?

Part of me thinks we should solve this in the .lds files, since
otherwise we are blurring the line between building and packaging.

Regards,
SImon

[1] https://u-boot.readthedocs.io/en/latest/develop/package/binman.html#access-to-binman-entry-offsets-at-run-time-symbols


More information about the U-Boot mailing list