[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 04/19] hw/nvram/fw_cfg: Factor fw_cfg_init_mem_internal() out
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v3 04/19] hw/nvram/fw_cfg: Factor fw_cfg_init_mem_internal() out |
Date: |
Fri, 2 May 2025 20:56:36 +0200 |
Factor fw_cfg_init_mem_internal() out of fw_cfg_init_mem_wide().
In fw_cfg_init_mem_wide(), assert DMA arguments are provided.
Callers without DMA have to use the fw_cfg_init_mem() helper.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
hw/nvram/fw_cfg.c | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c
index 54cfa07d3f5..d119c10d308 100644
--- a/hw/nvram/fw_cfg.c
+++ b/hw/nvram/fw_cfg.c
@@ -1053,9 +1053,9 @@ FWCfgState *fw_cfg_init_io_dma(uint32_t iobase, uint32_t
dma_iobase,
return s;
}
-FWCfgState *fw_cfg_init_mem_wide(hwaddr ctl_addr,
- hwaddr data_addr, uint32_t data_width,
- hwaddr dma_addr, AddressSpace *dma_as)
+static FWCfgState *fw_cfg_init_mem_internal(hwaddr ctl_addr,
+ hwaddr data_addr, uint32_t data_width,
+ hwaddr dma_addr, AddressSpace *dma_as)
{
DeviceState *dev;
SysBusDevice *sbd;
@@ -1087,11 +1087,19 @@ FWCfgState *fw_cfg_init_mem_wide(hwaddr ctl_addr,
return s;
}
+FWCfgState *fw_cfg_init_mem_wide(hwaddr ctl_addr,
+ hwaddr data_addr, uint32_t data_width,
+ hwaddr dma_addr, AddressSpace *dma_as)
+{
+ assert(dma_iobase && dma_as);
+ fw_cfg_init_mem_internal(ctl_addr, data_addr, data_addr, dma_addr, dma_as);
+}
+
FWCfgState *fw_cfg_init_mem(hwaddr ctl_addr, hwaddr data_addr)
{
- return fw_cfg_init_mem_wide(ctl_addr, data_addr,
- fw_cfg_data_mem_ops.valid.max_access_size,
- 0, NULL);
+ return fw_cfg_init_mem_internal(ctl_addr, data_addr,
+ fw_cfg_data_mem_ops.valid.max_access_size,
+ 0, NULL);
}
--
2.47.1
- [PATCH v3 00/19] hw/i386/pc: Remove deprecated 2.6 and 2.7 PC machines, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 01/19] hw/i386/pc: Remove deprecated pc-q35-2.6 and pc-i440fx-2.6 machines, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 02/19] hw/i386/pc: Remove PCMachineClass::legacy_cpu_hotplug field, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 03/19] hw/mips/loongson3_virt: Prefer using fw_cfg_init_mem(), Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 04/19] hw/nvram/fw_cfg: Factor fw_cfg_init_mem_internal() out,
Philippe Mathieu-Daudé <=
- [PATCH v3 05/19] hw/i386/x86: Remove X86MachineClass::fwcfg_dma_enabled field, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 06/19] hw/nvram/fw_cfg: Remove fw_cfg_io_properties::dma_enabled, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 07/19] hw/i386/pc: Remove pc_compat_2_6[] array, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 08/19] hw/intc/apic: Remove APICCommonState::legacy_instance_id field, Philippe Mathieu-Daudé, 2025/05/02
- [PATCH v3 09/19] hw/core/machine: Remove hw_compat_2_6[] array, Philippe Mathieu-Daudé, 2025/05/02