mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
acpi/piix4pm: convert ACPI PCI hotplug to use hotplug-handler API
Split piix4_device_hotplug() into hotplug/unplug callbacks and register them as "hotplug-handler" interface implementation of PIIX4_PM device. Replace pci_bus_hotplug() wiring with setting link on PCI BUS "hotplug-handler" property to PIIX4_PM device. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
2897ae0267
commit
c24d5e0b91
4 changed files with 61 additions and 31 deletions
|
@ -29,7 +29,8 @@
|
|||
|
||||
#include <inttypes.h>
|
||||
#include <qemu/typedefs.h>
|
||||
#include "hw/pci/pci.h" /* for PCIHotplugState */
|
||||
#include "hw/acpi/acpi.h"
|
||||
#include "migration/vmstate.h"
|
||||
|
||||
typedef struct AcpiPciHpPciStatus {
|
||||
uint32_t up;
|
||||
|
@ -52,9 +53,10 @@ typedef struct AcpiPciHpState {
|
|||
void acpi_pcihp_init(AcpiPciHpState *, PCIBus *root,
|
||||
MemoryRegion *address_space_io, bool bridges_enabled);
|
||||
|
||||
/* Invoke on device hotplug */
|
||||
int acpi_pcihp_device_hotplug(AcpiPciHpState *, PCIDevice *,
|
||||
PCIHotplugState state);
|
||||
void acpi_pcihp_device_plug_cb(ACPIREGS *ar, qemu_irq irq, AcpiPciHpState *s,
|
||||
DeviceState *dev, Error **errp);
|
||||
void acpi_pcihp_device_unplug_cb(ACPIREGS *ar, qemu_irq irq, AcpiPciHpState *s,
|
||||
DeviceState *dev, Error **errp);
|
||||
|
||||
/* Called on reset */
|
||||
void acpi_pcihp_reset(AcpiPciHpState *s);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue