New (unreviewed) patches: 1, 2, 5-8
On 3/12/25 07:09, Philippe Mathieu-Daudé wrote:
Hi Zhao,
This is my answer to this comment of yours:
> Although other callers of fw_cfg_init_io_dma() besides x86 also pass
> DMA arguments to create DMA-enabled FwCfgIoState, the "dma_enabled"
> property of FwCfgIoState cannot yet be removed, because Sun4u and Sun4v
> still create DMA-disabled FwCfgIoState (bypass fw_cfg_init_io_dma()) in
> sun4uv_init() (hw/sparc64/sun4u.c).
>
> Maybe reusing fw_cfg_init_io_dma() for them would be a better choice, or
> adding fw_cfg_init_io_nodma(). However, before that, first simplify the
> handling of FwCfgState in x86.
>
> Considering that FwCfgIoState in x86 enables DMA by default, remove the
> handling for DMA-disabled cases and replace DMA checks with assertions
> to ensure that the default DMA-enabled setting is not broken.
My series is to apply just after this patch of your series:
[PATCH v5 10/28] hw/mips/loongson3_virt: Prefer using fw_cfg_init_mem_nodma()
Regards,
Phil.
Based-on: <[email protected]>
Philippe Mathieu-Daudé (12):
hw/ppc/mac: Use fw_cfg_init_mem_nodma()
hw/sparc/sun4m: Use fw_cfg_init_mem_nodma()
hw/nvram/fw_cfg: Factor fw_cfg_init_mem_internal() out
hw/nvram/fw_cfg: Rename fw_cfg_init_mem_wide() ->
fw_cfg_init_mem_dma()
hw/nvram/fw_cfg: Propagate I/O MemoryRegion to fw_cfg_init_io_dma()
hw/nvram/fw_cfg: Factor fw_cfg_init_io_internal() out
hw/nvram/fw_cfg: Add fw_cfg_init_io_nodma() helper
hw/sparc64/sun4u: Use fw_cfg_init_io_nodma()
hw/nvram/fw_cfg: Remove fw_cfg_io_properties::dma_enabled
hw/i386/x86: Remove X86MachineClass::fwcfg_dma_enabled field
hw/i386/pc: Remove multiboot.bin
hw/i386: Remove linuxboot.bin