diff options
author | Logan Gunthorpe <logang@deltatee.com> | 2018-08-09 23:51:43 +0200 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2018-08-10 00:48:28 +0200 |
commit | 73c47ddef29b5869a2221e93cefdb56fd8263718 (patch) | |
tree | 5b258b2b7d70ce1ac59847ceec2d0f7013297a25 /drivers/pci/pci.h | |
parent | PCI: Convert device-specific ACS quirks from NULL termination to ARRAY_SIZE (diff) | |
download | linux-73c47ddef29b5869a2221e93cefdb56fd8263718.tar.xz linux-73c47ddef29b5869a2221e93cefdb56fd8263718.zip |
PCI: Add device-specific ACS Redirect disable infrastructure
Intel Sunrise Point (SPT) PCH hardware has an implementation of the ACS
bits that does not comply with the PCIe standard. To deal with this we
need device-specific quirks to disable ACS redirection.
Add a new pci_dev_specific_disable_acs_redir() quirk and a new
.disable_acs_redir() function pointer for use by non-compliant devices. No
functional change intended.
Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
[bhelgaas: split to separate patch, move
pci_dev_specific_disable_acs_redir() declarations to drivers/pci/pci.h]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'drivers/pci/pci.h')
-rw-r--r-- | drivers/pci/pci.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h index a1224fef3409..04f5035d12c6 100644 --- a/drivers/pci/pci.h +++ b/drivers/pci/pci.h @@ -355,6 +355,7 @@ void pci_enable_acs(struct pci_dev *dev); #ifdef CONFIG_PCI_QUIRKS int pci_dev_specific_acs_enabled(struct pci_dev *dev, u16 acs_flags); int pci_dev_specific_enable_acs(struct pci_dev *dev); +int pci_dev_specific_disable_acs_redir(struct pci_dev *dev); #else static inline int pci_dev_specific_acs_enabled(struct pci_dev *dev, u16 acs_flags) @@ -365,6 +366,10 @@ static inline int pci_dev_specific_enable_acs(struct pci_dev *dev) { return -ENOTTY; } +static inline int pci_dev_specific_disable_acs_redir(struct pci_dev *dev) +{ + return -ENOTTY; +} #endif /* PCI error reporting and recovery */ |