[PATCH] PCI: ignore pre-1.1 ASPM quirking when ASPM is disabled

From: Matthew Garrett
Date: Tue Mar 06 2012 - 13:41:49 EST


Right now we won't touch ASPM state if ASPM is disabled, except in the case
where we find a device that appears to be too old to reliably support ASPM.
Right now we'll clear it in that case, which is almost certainly the wrong
thing to do. The easiest way around this is just to disable the blacklisting
when ASPM is disabled.

Signed-off-by: Matthew Garrett <mjg@xxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>

It looks like your system's FADT says it doesn't support ASPM, so we
are disabling it:

ACPI FADT declares the system doesn't support PCIe ASPM, so disable it

and this device (or at least the other function on the same JMicron
SATA/PATA controller device) is a pre-PCIe 1.1 device:

pci 0000:03:00.0: disabling ASPM on pre-1.1 PCIe device. You can
enable it with 'pcie_aspm=force'

Before this patch we would have been forcing ASPM off on this device,
whereas now it appears we'll leave it as it was. Maybe this device
busts somehow if ASPM is allowed to be left on for it?

Matthew, any thoughts? Maybe this device needs a specific blacklist
entry to disable ASPM or something?
--
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/