diff options
author | James Morris <james.l.morris@oracle.com> | 2016-11-14 09:34:01 +1100 |
---|---|---|
committer | James Morris <james.l.morris@oracle.com> | 2016-11-14 09:34:01 +1100 |
commit | 185c0f26c0267d5978b5c30d3a04f90cb245cd76 (patch) | |
tree | 4b1324c9445bbcff095fb3ce755ec46d315bda5a /drivers/pci/setup-res.c | |
parent | eafb7b9d01a7001ff8e9624e7dcb706844f981b3 (diff) | |
parent | a25f0944ba9b1d8a6813fd6f1a86f1bd59ac25a6 (diff) |
Merge commit 'v4.9-rc5' into next
Diffstat (limited to 'drivers/pci/setup-res.c')
-rw-r--r-- | drivers/pci/setup-res.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/pci/setup-res.c b/drivers/pci/setup-res.c index 66c4d8f42233..9526e341988b 100644 --- a/drivers/pci/setup-res.c +++ b/drivers/pci/setup-res.c @@ -121,6 +121,14 @@ int pci_claim_resource(struct pci_dev *dev, int resource) return -EINVAL; } + /* + * If we have a shadow copy in RAM, the PCI device doesn't respond + * to the shadow range, so we don't need to claim it, and upstream + * bridges don't need to route the range to the device. + */ + if (res->flags & IORESOURCE_ROM_SHADOW) + return 0; + root = pci_find_parent_resource(dev, res); if (!root) { dev_info(&dev->dev, "can't claim BAR %d %pR: no compatible bridge window\n", |