The generic barebox-dt-2nd.img depends on the user to fish out the correct device tree from arch/${SRCARCH}/dts and to instruct the preceding boot stage to pass that device tree to the barebox image. To make this easier, especially with an eye towards using this as a coreboot payload, let's have the barebox build system produce a FIT image combining barebox-dt-2nd.img and all the enabled device trees. As this introduces a python3 and python3-libfdt dependency that wasn't there before, this is only built by default if CONFIG_BOARD_GENERIC_FIT is enabled or make barebox.fit is explicitly invoked. Ahmad Fatoum (13): ARM: dts: add device trees for the QEMU Virt machine treewide: collect the name of all board device trees kbuild: collect available device trees in dtbs-list scripts: add new scripts_dtc target kbuild: restrict dtbs target to enabled DTs by default kbuild: improve make help description kbuild: allow dependency on any file in images/ arch: maintain Linux kernel and mkimage ARCH mapping in Kconfig arch: make BOARD_GENERIC_DT a user-selectable option across archs images: add barebox FIT image target MAKEALL: rename target in symbols to more appropiate defconfig MAKEALL: add support for building arbitrary targets ci: container: add python3-libfdt dependency for barebox.fit .gitignore | 1 + Documentation/devicetree/index.rst | 4 +- Documentation/user/barebox.rst | 31 +- MAKEALL | 76 ++--- Makefile | 47 ++- arch/Kconfig | 43 +++ arch/arm/Kconfig | 15 +- arch/arm/configs/multi_v5_v6_defconfig | 2 +- arch/arm/configs/rockchip_v7a_defconfig | 2 +- arch/arm/configs/rockchip_v8_defconfig | 2 +- arch/arm/configs/rpi_defconfig | 2 +- arch/arm/configs/stm32mp_defconfig | 2 +- arch/arm/dts/Makefile | 3 + arch/arm/dts/qemu-virt32.dts | 402 +++++++++++++++++++++++ arch/arm/dts/qemu-virt64.dts | 403 ++++++++++++++++++++++++ arch/kvx/dts/Makefile | 4 +- arch/mips/Kconfig | 9 + arch/openrisc/Kconfig | 4 + arch/openrisc/dts/Makefile | 2 +- arch/powerpc/Kconfig | 8 + arch/riscv/Kconfig | 19 +- arch/riscv/Kconfig.socs | 2 +- arch/riscv/configs/rv64i_defconfig | 2 +- arch/sandbox/Kconfig | 4 + arch/sandbox/dts/Makefile | 2 +- arch/x86/Kconfig | 10 + drivers/of/Kconfig | 11 + images/Makefile | 9 + scripts/Kbuild.include | 6 + scripts/Makefile | 3 +- scripts/Makefile.build | 11 + scripts/Makefile.dtbs | 32 ++ scripts/Makefile.lib | 20 ++ scripts/make_fit.py | 331 +++++++++++++++++++ test/Containerfile | 1 + 35 files changed, 1429 insertions(+), 96 deletions(-) create mode 100644 arch/arm/dts/qemu-virt32.dts create mode 100644 arch/arm/dts/qemu-virt64.dts create mode 100644 scripts/Makefile.dtbs create mode 100755 scripts/make_fit.py -- 2.39.5