Re: [PATCH 2/3] qemu-x86: Wire support for applying capsule updates to pflash

Elliot Berman <[email protected]> Mon, 3 Aug 2026 17:23:42 -0700
Newsgroups gmane.comp.boot-loaders.u-boot
Message-ID <[email protected]>
On Mon, Aug 03, 2026 at 01:25:32PM -0600, Simon Glass wrote:
> Hi Elliot,
> 
> On 2026-07-30T19:37:45, Elliot Berman <[email protected]> wrote:
> > qemu-x86: Wire support for applying capsule updates to pflash
> 
> The other two patches use the 'x86: qemu:' / 'x86: emulation:' prefix
> — please make this one consistent (e.g., 'x86: qemu: Wire support for
> capsule updates to pflash').
> 
> >
> > Following the flow used for qemu-arm64, probe the pflash MTD device
> > and set dfu_alt_info/mtdparts for qemu-x86 and qemu-x86_64 so EFI
> > capsule updates can target the u-boot pflash partition.
> >
> > Signed-off-by: Elliot Berman <[email protected]>
> >
> > board/emulation/common/Kconfig         |  2 ++
> >  board/emulation/common/qemu_dfu.c      |  6 ++++--
> >  board/emulation/common/qemu_mtdparts.c |  6 ++++--
> >  board/emulation/qemu-x86/Kconfig       |  3 +++
> >  board/emulation/qemu-x86/Makefile      |  3 +++
> >  board/emulation/qemu-x86/qemu-x86.c    | 38 ++++++++++++++++++++++++++++++++++
> >  6 files changed, 54 insertions(+), 4 deletions(-)
> 
> > diff --git a/board/emulation/qemu-x86/Kconfig b/board/emulation/qemu-x86/Kconfig
> > @@ -24,5 +24,8 @@ config BOARD_SPECIFIC_OPTIONS # dummy
> >       imply VIRTIO_NET
> >       imply VIRTIO_BLK
> >       imply CMD_SMBIOS
> > +     imply SET_DFU_ALT_INFO
> > +     imply SYS_MTDPARTS_RUNTIME
> 
> These are only useful when EFI capsule updates are wanted. qemu-arm
> gates them by putting them in a separate 'if TARGET_QEMU_ARM_64BIT &&
> !TFABOOT' block that also sources common/Kconfig - please follow the
> same pattern here.
> 

I can't guard against EFI_HAVE_CAPSULE_SUPPORT or DFU since it causes
dependency loop. I believe the config guard is set up because it isn't
(wasn't?) clear how to set up capsule updates with TF-A? Is there a
Kconfig symbol you had in mind for x86?

Thanks,
Elliot