[PATCH 00/10] ARM32: allow disabling ATAGS and DT fallback
Ahmad Fatoum
a.fatoum at pengutronix.de
Wed May 28 03:50:36 PDT 2025
New platforms shouldn't use atags, but we compile the code always.
New platforms should use device tree, but there may be binding
incompatibilities between barebox embedded device tree and device tree
shipped with the kernel.
For that reason, this series introduces two config options:
- CONFIG_BOOT_ATAGS: Now disabled by default as it has been
replaced by device trees
- BOOTM_OFTREE_FALLBACK: Enabled by default, but should likely
be disabled in products, so the device tree should be explicitly
suppied.
Ahmad Fatoum (10):
arch: add new HAVE_ARCH_BOOTM_OFTREE symbol
bootm: enable CONFIG_BOOTM_OFTREE by default
ARM: lib32: disable ATAGS support by default
kvx: bootm: enforce existence of device tree
bootm: booti: make device tree optional
filetype: add new file type for 0-sized files
bootm: have bootm_get_devicetree return NULL if passed empty DT
bootm: make fallback to barebox internal tree optional
commands: oftree: add option to return device tree without fixups
of: drop undefined fdt_get_tree declaration
.../migration-guides/migration-2025.07.0.rst | 7 +
arch/Kconfig | 6 +
arch/arm/Kconfig | 13 +-
arch/arm/configs/animeo_ip_defconfig | 1 +
arch/arm/configs/at91rm9200ek_defconfig | 1 +
arch/arm/configs/at91sam9260ek_defconfig | 1 +
.../configs/at91sam9261ek_bootstrap_defconfig | 1 +
arch/arm/configs/at91sam9261ek_defconfig | 1 +
arch/arm/configs/at91sam9g10ek_defconfig | 1 +
arch/arm/configs/at91sam9g20ek_defconfig | 1 +
arch/arm/configs/at91sam9m10g45ek_defconfig | 1 +
arch/arm/configs/at91sam9m10ihd_defconfig | 1 +
arch/arm/configs/at91sam9n12ek_defconfig | 1 +
arch/arm/configs/dss11_defconfig | 1 +
arch/arm/configs/haba_knx_lite_defconfig | 1 +
arch/arm/configs/imx23_defconfig | 1 +
arch/arm/configs/imx28_defconfig | 1 +
arch/arm/configs/kindle-mx50_defconfig | 1 +
arch/arm/configs/multi_v5_v6_defconfig | 1 +
arch/arm/configs/mvebu_defconfig | 1 +
arch/arm/configs/omap_defconfig | 1 +
arch/arm/configs/pm9261_defconfig | 1 +
arch/arm/configs/pm9263_defconfig | 1 +
arch/arm/configs/pm9g45_defconfig | 1 +
arch/arm/configs/qil_a9260_defconfig | 1 +
arch/arm/configs/qil_a9g20_defconfig | 1 +
arch/arm/configs/rockchip_v7a_defconfig | 1 +
arch/arm/configs/telit_evk_pro3_defconfig | 1 +
arch/arm/configs/tny_a9260_defconfig | 1 +
.../arm/configs/tny_a9263_bootstrap_defconfig | 1 +
arch/arm/configs/tny_a9263_defconfig | 1 +
arch/arm/configs/tny_a9g20_defconfig | 1 +
arch/arm/configs/usb_a9260_defconfig | 1 +
.../arm/configs/usb_a9263_bootstrap_defconfig | 1 +
arch/arm/configs/usb_a9263_defconfig | 1 +
arch/arm/configs/usb_a9g20_defconfig | 1 +
arch/arm/include/asm/armlinux.h | 25 +-
arch/arm/lib32/Makefile | 1 +
arch/arm/lib32/armlinux.c | 234 +-----------------
arch/arm/lib32/atags.c | 230 +++++++++++++++++
arch/arm/lib32/bootm.c | 2 +-
arch/arm/lib32/bootu.c | 11 +-
arch/arm/lib32/bootz.c | 9 +-
arch/arm/lib64/armlinux.c | 2 +-
arch/arm/mach-imx/Kconfig | 1 +
arch/kvx/Kconfig | 1 +
arch/kvx/lib/bootm.c | 2 +
arch/mips/Kconfig | 1 +
arch/powerpc/Kconfig | 1 +
arch/powerpc/lib/ppclinux.c | 2 +-
arch/riscv/Kconfig | 1 +
arch/riscv/lib/bootm.c | 2 +-
arch/sandbox/Kconfig | 1 +
arch/x86/configs/efi_defconfig | 1 -
commands/Kconfig | 8 +-
commands/oftree.c | 14 +-
common/Kconfig | 22 +-
common/booti.c | 14 +-
common/bootm.c | 14 +-
common/filetype.c | 3 +-
common/oftree.c | 22 +-
include/filetype.h | 1 +
include/of.h | 37 ++-
63 files changed, 447 insertions(+), 274 deletions(-)
create mode 100644 arch/arm/lib32/atags.c
--
2.39.5
More information about the barebox
mailing list