PCI: Disable ASPM if BIOS asks us to
authorMatthew Garrett <mjg@redhat.com>
Mon, 6 Dec 2010 19:00:56 +0000 (14:00 -0500)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Thu, 23 Dec 2010 20:53:08 +0000 (12:53 -0800)
commit2f671e2dbff6eb5ef4e2600adbec550c13b8fe72
treefb5debb042218dcf1cbdf11eb4d8d603208c219f
parent8d805286968811223cca002134ba3d81244d5313
PCI: Disable ASPM if BIOS asks us to

We currently refuse to touch the ASPM registers if the BIOS tells us that
ASPM isn't supported. This can cause problems if the BIOS has (for any
reason) enabled ASPM on some devices anyway. Change the code such that we
explicitly clear ASPM if the FADT indicates that ASPM isn't supported,
and make sure we tidy up appropriately on device removal in order to deal
with the hotplug case. If ASPM is disabled because the BIOS doesn't hand
over control then we won't touch the registers.

Signed-off-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pci-acpi.c
drivers/pci/pcie/aspm.c
include/linux/pci-aspm.h