Hi, Experimental and untested patch series to implement acpi-based pci hotplug on q35. I'm only looking for comments on the approach taken, especially on patch #3.
The actual hotplug protocol is identical to piix, the difference is how the io ports are mapped. piix has magic io ports at a fixed address. For ich9 I don't want to do the same and create a pci device instead, so the io ports show up as usual in the guests ressource management and we can be sure we don't get conflicts. No seabios bits yet. Should be largely identical to the piix ones, except that we create the OperationalRegion using PciBarTarget instead of SystemIO. cheers, Gerd Gerd Hoffmann (3): split acpi pci hotplug code into separate file fix off-byone in hw/acpi_pci_hotplug.h q35: add & windup ich9-pci-hotplug device hw/Makefile.objs | 2 +- hw/acpi_ich9.c | 89 ++++++++++++++++++++ hw/acpi_ich9.h | 1 + hw/acpi_pci_hotplug.c | 214 +++++++++++++++++++++++++++++++++++++++++++++++++ hw/acpi_pci_hotplug.h | 26 ++++++ hw/acpi_piix4.c | 202 ++-------------------------------------------- hw/lpc_ich9.c | 5 +- 7 files changed, 344 insertions(+), 195 deletions(-) create mode 100644 hw/acpi_pci_hotplug.c create mode 100644 hw/acpi_pci_hotplug.h