pci/shpc: perform unplug via the hotplug handler
commit8f560cdce42562a3c41d61c896667cf77c76d51f
authorDavid Hildenbrand <david@redhat.com>
Wed, 12 Dec 2018 09:16:22 +0000 (12 10:16 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Thu, 20 Dec 2018 16:19:12 +0000 (20 11:19 -0500)
tree38b27134228c8264e5b9cd11efe939ebce0faf30
parent62b765639691de36476c471117e96184a2a3c7a6
pci/shpc: perform unplug via the hotplug handler

Introduce and use the "unplug" callback.

This is a preparation for multi-stage hotplug handlers, whereby the bus
hotplug handler is overwritten by the machine hotplug handler. This handler
will then pass control to the bus hotplug handler. So to get this running
cleanly, we also have to make sure to go via the hotplug handler chain when
actually unplugging a device after an unplug request. Lookup the hotplug
handler and call "unplug".

Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/pci-bridge/pci_bridge_dev.c
hw/pci-bridge/pcie_pci_bridge.c
hw/pci/shpc.c
include/hw/pci/pci_bridge.h
include/hw/pci/shpc.h