[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/15] Q35 and I440FX host bridge QOM cleanup
From: |
Bernhard Beschow |
Subject: |
[PATCH 00/15] Q35 and I440FX host bridge QOM cleanup |
Date: |
Sun, 11 Jun 2023 12:33:57 +0200 |
This series resolves the legacy i440fx_init() function and instantiates the
I440FX host bridge the QOM way. As a preparation the Q35 host bridge receives
some cleanup as well.
Most of the Q35 patches have been submitted under [1] before. This series
incorporates only the changes making the two device models consistent with
each other.
The original plan of [1] was to clean up Q35 first and then submit a separate
follow-up I440FX QOM'ification series. This series takes a more direct approach
by cutting down on the changes in both device models while still allowing both
device models to be instantiated the same way. The remaining patches in [1]
would still be doable.
The series is structured as follows: The first 5 patches clean up Q35, the next
patch massages Q35 to share its property names with I440FX. The rest of the
series resolves i440fx_init().
Tesging done:
* `make check`
* `make check-avocado`
* Run `xl create` under Xen with the following config:
name = "Manjaro"
type = 'hvm'
memory = 1536
apic = 1
usb = 1
disk = [ "file:manjaro-kde-21.2.6-220416-linux515.iso,hdc:cdrom,r" ]
device_model_override = "/usr/bin/qemu-system-x86_64"
vga = "stdvga"
sdl = 1
[1] https://patchew.org/QEMU/20230304152648.103749-1-shentey@gmail.com/
Bernhard Beschow (15):
hw/i386/pc_q35: Resolve redundant q35_host variable
hw/pci-host/q35: Fix double, contradicting .endianness assignment
hw/pci-host/q35: Initialize PCMachineState::bus in board code
hw/pci/pci_host: Introduce PCI_HOST_BYPASS_IOMMU macro
hw/pci-host/q35: Initialize PCI_HOST_BYPASS_IOMMU property from board
code
hw/pci-host/q35: Make some property name macros reusable by i440fx
hw/pci-host/i440fx: Replace magic values by existing constants
hw/pci-host/i440fx: Have common names for some local variables
hw/pci-host/i440fx: Move i440fx_realize() into PCII440FXState section
hw/pci-host/i440fx: Make MemoryRegion pointers accessible as
properties
hw/pci-host/i440fx: Add PCI_HOST_PROP_IO_MEM property
hw/pci-host/i440fx: Add PCI_HOST_{ABOVE,BELOW}_4G_MEM_SIZE properties
hw/pci-host/i440fx: Add I440FX_HOST_PROP_PCI_TYPE property
hw/pci-host/i440fx: Resolve i440fx_init()
hw/i386/pc_piix: Move i440fx' realize near its qdev_new()
include/hw/i386/pc.h | 4 ++
include/hw/pci-host/i440fx.h | 16 +----
include/hw/pci-host/q35.h | 5 --
include/hw/pci/pci_host.h | 2 +
hw/i386/pc_piix.c | 48 ++++++++-----
hw/i386/pc_q35.c | 31 +++++----
hw/pci-host/i440fx.c | 130 +++++++++++++++++++----------------
hw/pci-host/q35.c | 13 ++--
hw/pci/pci_host.c | 2 +-
9 files changed, 134 insertions(+), 117 deletions(-)
--
2.41.0
- [PATCH 00/15] Q35 and I440FX host bridge QOM cleanup,
Bernhard Beschow <=
- [PATCH 01/15] hw/i386/pc_q35: Resolve redundant q35_host variable, Bernhard Beschow, 2023/06/11
- [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Bernhard Beschow, 2023/06/11
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Igor Mammedov, 2023/06/12
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Bernhard Beschow, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Michael S. Tsirkin, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, BALATON Zoltan, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Igor Mammedov, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Philippe Mathieu-Daudé, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Michael S. Tsirkin, 2023/06/13
- Re: [PATCH 02/15] hw/pci-host/q35: Fix double, contradicting .endianness assignment, Bernhard Beschow, 2023/06/13