diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2014-08-29 20:10:19 -0400 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-09-12 22:10:16 -0400 |
commit | c6285fc5b55ecbf78c53301a191f04bb2fda1b3a (patch) | |
tree | 4ba22b20bfc40277e4626835c65f7d5089abd2d2 /drivers/pci/probe.c | |
parent | fbfa398b84a5fc6e085dedba5ec3e94f21815d05 (diff) |
PCI: Apply _HPP settings to PCIe devices as well as PCI and PCI-X
The ACPI _HPP method was defined before PCIe existed, so its documentation
only mentions PCI. The _HPX Type 0 setting record is essentially identical
to _HPP, but the spec (ACPI rev 5.0, sec 6.2.8.1) says it should be applied
to PCI, PCI-X, and PCIe devices, with settings being ignored if they are
not applicable.
Some platforms with both conventional PCI and PCIe devices provide only
_HPP (not _HPX), so treat _HPP the same way as an _HPX Type 0 record and
apply it to PCIe devices as well as PCI and PCI-X.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Yinghai Lu <yinghai@kernel.org>
Diffstat (limited to 'drivers/pci/probe.c')
-rw-r--r-- | drivers/pci/probe.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 4b3b29bc7a82..003d112a783d 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c | |||
@@ -1249,15 +1249,8 @@ static void program_hpp_type0(struct pci_dev *dev, struct hpp_type0 *hpp) | |||
1249 | { | 1249 | { |
1250 | u16 pci_cmd, pci_bctl; | 1250 | u16 pci_cmd, pci_bctl; |
1251 | 1251 | ||
1252 | if (!hpp) { | 1252 | if (!hpp) |
1253 | /* | ||
1254 | * Perhaps we *should* use default settings for PCIe, but | ||
1255 | * pciehp didn't, so we won't either. | ||
1256 | */ | ||
1257 | if (pci_is_pcie(dev)) | ||
1258 | return; | ||
1259 | hpp = &pci_default_type0; | 1253 | hpp = &pci_default_type0; |
1260 | } | ||
1261 | 1254 | ||
1262 | if (hpp->revision > 1) { | 1255 | if (hpp->revision > 1) { |
1263 | dev_warn(&dev->dev, | 1256 | dev_warn(&dev->dev, |