[PATCH 4.9 085/241] PCI: Apply Cavium ACS quirk only to CN81xx/CN83xx/CN88xx devices

From: Greg Kroah-Hartman
Date: Mon Mar 19 2018 - 14:22:45 EST


4.9-stable review patch. If anyone has any objections, please let me know.

------------------

From: Manish Jaggi <mjaggi@xxxxxxxxxxxxxxxxxx>


[ Upstream commit b77d537d00d08fcf0bf641cd3491dd7df0ad1475 ]

Only apply the Cavium ACS quirk to devices with ID in the range
0xa000-0xa0ff. These are the on-chip PCI devices for CN81xx/CN83xx/CN88xx.

Fixes: b404bcfbf035 ("PCI: Add ACS quirk for all Cavium devices")
Reported-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
Signed-off-by: Manish Jaggi <mjaggi@xxxxxxxxxx>
Acked-by: David Daney <david.daney@xxxxxxxxxx>
Acked-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
drivers/pci/quirks.c | 3 +++
1 file changed, 3 insertions(+)

--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -4104,6 +4104,9 @@ static int pci_quirk_cavium_acs(struct p
*/
acs_flags &= ~(PCI_ACS_RR | PCI_ACS_CR | PCI_ACS_SV | PCI_ACS_UF);

+ if (!((dev->device >= 0xa000) && (dev->device <= 0xa0ff)))
+ return -ENOTTY;
+
return acs_flags ? 0 : 1;
}