mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-27 04:13:53 -06:00
hw/pci/pcie: Do not set HPC flag if acpihp is used
Instead of changing the hot-plug type in _OSC register, do not set the 'Hot-Plug Capable' flag. This way guest will choose ACPI hot-plug if it is preferred and leave the option to use SHPC with pcie-pci-bridge. The ability to control hot-plug for each downstream port is retained, while 'hotplug=off' on the port means all hot-plug types are disabled. Signed-off-by: Julia Suvorova <jusual@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Marcel Apfelbaum <marcel.apfelbaum@gmail.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Message-Id: <20210713004205.775386-4-jusual@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
c0e427d6eb
commit
3f3cbbb236
6 changed files with 31 additions and 3 deletions
|
@ -529,7 +529,13 @@ void pcie_cap_slot_init(PCIDevice *dev, PCIESlot *s)
|
|||
PCI_EXP_SLTCAP_PIP |
|
||||
PCI_EXP_SLTCAP_AIP |
|
||||
PCI_EXP_SLTCAP_ABP);
|
||||
if (s->hotplug) {
|
||||
|
||||
/*
|
||||
* Enable native hot-plug on all hot-plugged bridges unless
|
||||
* hot-plug is disabled on the slot.
|
||||
*/
|
||||
if (s->hotplug &&
|
||||
(s->native_hotplug || DEVICE(dev)->hotplugged)) {
|
||||
pci_long_test_and_set_mask(dev->config + pos + PCI_EXP_SLTCAP,
|
||||
PCI_EXP_SLTCAP_HPS |
|
||||
PCI_EXP_SLTCAP_HPC);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue