Hi, On 05.06.23 08:37, Ahmad Fatoum wrote: > Unless overridden by SORT*, LD will place sections matched by wildcards > in the order they were seen in the link. So far, this meant that > arch/ initcalls and device trees compiled into barebox proper, were > always last. > > For platforms with PBL or with only one device tree in barebox proper, > this didn't matter much, but when enabling the of_manipulation selftest, > a second device tree would be built into barebox on kvx, openrisc and > some MIPS. > > Because all directories appear before arch/, this had the effect that > on kvx, openrisc and some MIPS, __dtb_start would end up pointing at the > test's device tree instead of the board device tree breaking the build. > > Switching the affected platforms to use PBL would be one fix for the > issue, but there's a simple one: let's do what Linux does in its > top-level Kbuild file and have arch/ not be the last in sequence. > > This may fause fallout for code that depended on specific ordering of > initcalls or other linker-defined lists, which would need to be fixed. > > Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> > --- > While a fix, I think this needs to sit a while in next first. Any feedback? > --- > Makefile | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/Makefile b/Makefile > index 711cba7bed29..4fdb8f1b41af 100644 > --- a/Makefile > +++ b/Makefile > @@ -586,11 +586,12 @@ endif > # We need some generic definitions. > include $(srctree)/scripts/Makefile.lib > > -# Objects we will link into barebox / subdirs we need to visit > -common-y := common/ drivers/ commands/ lib/ crypto/ net/ fs/ firmware/ test/ > > +# Objects we will link into barebox / subdirs we need to visit > include $(srctree)/arch/$(SRCARCH)/Makefile > > +common-y += common/ drivers/ commands/ lib/ crypto/ net/ fs/ firmware/ test/ > + > ifdef need-config > ifdef may-sync-config > # Read in dependencies to all Kconfig* files, make sure to run syncconfig if -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |