Hi, On Fri, 19 Sept 2025 at 18:24, <chalian...@gmail.com> wrote: > > From: Chali Anis <chalian...@gmail.com> > > add the ability to be booted from Arm Trusted Firmware for qemu aarch64, > to do so we need to skip NOR flash partition setup. > U-boot launched as BL33 from TF-A is supported and Tested on arm64 with > qemu-system-aarch64 and the qemu ARM64 support ARCH_SUPPORT_TFABOOT. > Actually the patch is trying to skip part of the initialization when U-Boot is running as BL33, so the statement like "add the ability to be booted...", "U-boot launched as BL33 from TF-A is supported" won't help as U-Boot is working as BL33 already.
> Signed-off-by: Chali Anis <chalian...@gmail.com> > --- > arch/arm/mach-qemu/Kconfig | 1 + > board/emulation/common/qemu_mtdparts.c | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/arch/arm/mach-qemu/Kconfig b/arch/arm/mach-qemu/Kconfig > index 9c06c6a3a5ce..316dde5145c0 100644 > --- a/arch/arm/mach-qemu/Kconfig > +++ b/arch/arm/mach-qemu/Kconfig > @@ -18,6 +18,7 @@ config TARGET_QEMU_ARM_64BIT > bool "ARMv8, 64bit" > select ARM64 > select BOARD_LATE_INIT > + select ARCH_SUPPORT_TFABOOT > > config TARGET_QEMU_ARM_SBSA > bool "SBSA Reference" > diff --git a/board/emulation/common/qemu_mtdparts.c > b/board/emulation/common/qemu_mtdparts.c > index c1501276789c..c3863d3b0479 100644 > --- a/board/emulation/common/qemu_mtdparts.c > +++ b/board/emulation/common/qemu_mtdparts.c > @@ -59,6 +59,7 @@ void board_mtdparts_default(const char **mtdids, const char > **mtdparts) > debug("mtd device = %s\n", dev->name); > } > > +#ifndef CONFIG_TFABOOT > mtd = get_mtd_device_nm("nor0"); > if (!IS_ERR_OR_NULL(mtd)) { > mtd_partition = CONFIG_MTDPARTS_NOR0; > @@ -72,6 +73,7 @@ void board_mtdparts_default(const char **mtdids, const char > **mtdparts) > board_get_mtdparts("nor1", mtd_partition, ids, parts); > put_mtd_device(mtd); > } > +#endif > Skipping the default NOR mtdparts when TFABOOT is selected looks fine. However, qemu_dfu.c still sets dfu_alt_info based on those NOR partitions (used by DFU/EFI capsule flows). This actually brings one concern related to capsule update: currently the QEMU ARM64 board depends on mtdparts to make EFI capsule update work. It raises a question: do we actually want to support capsule update when U-Boot is running as BL33? If yes, then the current patch breaks capsule update and more work is needed. If no, we should make it explicit (e.g. prevent EFI_CAPSULE_FIRMWARE_MANAGEMENT from being selected together with TFABOOT). BTW, can you please add a rev number in the subject line? E.g. [PATCH v2], [PATCH v3]... See the patterns from other patches. Regards, Raymond > } > > mtd_initialized = true; > -- > 2.34.1 >