diff options
author | Alexander Duyck <alexander.h.duyck@redhat.com> | 2015-07-07 21:24:35 +0200 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2015-07-21 17:40:56 +0200 |
commit | ccbc175aad819e1d4b6af6246b12d55b13d97815 (patch) | |
tree | 9814cde7741c61d198b3e6c32150a73bfb691ab2 /drivers/pci/pci.c | |
parent | Linux 4.2-rc2 (diff) | |
download | linux-ccbc175aad819e1d4b6af6246b12d55b13d97815.tar.xz linux-ccbc175aad819e1d4b6af6246b12d55b13d97815.zip |
PCI: Restore ACS configuration as part of pci_restore_state()
Previously we did not restore ACS state after a PCIe reset. This meant
that we could not reassign interfaces after a system suspend because the
D0->D3 transition disabled ACS, and we didn't restore it when going back to
D0.
Restore ACS configuration in pci_restore_state().
[bhelgaas: changelog]
Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Allen Kay <allen.m.kay@intel.com>
CC: Chris Wright <chris@sous-sol.org>
CC: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'drivers/pci/pci.c')
-rw-r--r-- | drivers/pci/pci.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 0008c950452c..9bd9526f3388 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -1092,6 +1092,9 @@ void pci_restore_state(struct pci_dev *dev) pci_restore_pcix_state(dev); pci_restore_msi_state(dev); + + /* Restore ACS and IOV configuration state */ + pci_enable_acs(dev); pci_restore_iov_state(dev); dev->state_saved = false; |