On Fri, Apr 04, 2025 at 06:53:49AM +1300, Simon Glass wrote: > At present it is impossible to change the qemu_arm64 defconfig to > obtain a devicetree from the U-Boot build. > > This is necessary for FIT validation, for example, where the signature > node must be compiled into U-Boot. > > A proposed change to QEMU has been blocked for several years. As a > workaround, the only option is to use QEMU's dumpdtb option, merge in > the signature node manually and then disable OF_HAS_PRIOR_STAGE > > Unfortunately the only way to disable OF_HAS_PRIOR_STAGE at present is > to hack the Kconfig. So update it to allow use from defconfig. This > avoids needing to patch U-Boot to get this working. > > Signed-off-by: Simon Glass <s...@chromium.org> > Link: > https://patchwork.kernel.org/project/qemu-devel/patch/20210926183410.256484-1-...@chromium.org/#24481799
How about instead we do something like: diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index b7311d3b754b..44e45a304cd0 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1080,7 +1080,7 @@ config ARCH_QEMU imply DM_RNG imply DM_RTC imply RTC_PL031 - imply OF_HAS_PRIOR_STAGE if !TARGET_QEMU_ARM_SBSA + imply OF_HAS_PRIOR_STAGE if !QEMU_MANUAL_DTB imply VIDEO imply VIDEO_BOCHS imply SYS_WHITE_ON_BLACK diff --git a/board/emulation/common/Kconfig b/board/emulation/common/Kconfig index 4c15c8bcb891..9053f2ff2f55 100644 --- a/board/emulation/common/Kconfig +++ b/board/emulation/common/Kconfig @@ -13,3 +13,10 @@ config MTDPARTS_NOR1 help This define the partition of nor1 used to build mtparts dynamically for the u-boot env stored on nor1. + +config QEMU_MANUAL_DTB + bool "Manually provide a device tree to QEMU" + depends on ARCH_QEMU # Expand more if needed + help + For some use cases, such as FIT validation of U-Boot itself we need + to override the device tree that QEMU would normally provide to us. This way we don't start opening asking OF_HAS_PRIOR_STAGE. -- Tom
signature.asc
Description: PGP signature