[patch 08/30] PCI: disable ASPM on VIA root-port-under-bridge configurations
From: Greg KH
Date: Tue Jun 30 2009 - 20:32:05 EST
2.6.27-stable review patch. If anyone has any objections, please let us know.
------------------
From: Shaohua Li <shaohua.li@xxxxxxxxx>
commit 8e822df700694ca6850d1e0c122fd7004b2778d8 upstream.
VIA has a strange chipset, it has root port under a bridge. Disable ASPM
for such strange chipset.
Tested-by: Wolfgang Denk <wd@xxxxxxx>
Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>
Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
---
drivers/pci/pcie/aspm.c | 4 ++++
1 file changed, 4 insertions(+)
--- a/drivers/pci/pcie/aspm.c
+++ b/drivers/pci/pcie/aspm.c
@@ -633,6 +633,10 @@ void pcie_aspm_init_link_state(struct pc
if (pdev->pcie_type != PCI_EXP_TYPE_ROOT_PORT &&
pdev->pcie_type != PCI_EXP_TYPE_DOWNSTREAM)
return;
+ /* VIA has a strange chipset, root port is under a bridge */
+ if (pdev->pcie_type == PCI_EXP_TYPE_ROOT_PORT &&
+ pdev->bus->self)
+ return;
down_read(&pci_bus_sem);
if (list_empty(&pdev->subordinate->devices))
goto out;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/