On Fri, Jan 13, 2012 at 03:14:21PM -0800, Linus Torvalds wrote: > On Fri, Jan 13, 2012 at 1:24 PM, Matthew Garrett <mjg59@xxxxxxxxxxxxx> wrote: > >> > >> So why is acpi_pci_root_add() special? Cna you explain that part to me? > > > > pcie_no_aspm() means "Do not permit ASPM to be enabled" - it doesn't > > alter the existing state. pcie_clear_aspm() does that. > > I *know*. > > So look again. > > Why is acpi_pci_root_add() special? > > Because dammit, it does exactly that pcie_clear_aspm() for the > ACPI_FADT_NO_ASPM case. I'm sorry, I thought you were referring to the status quo rather than the patch - I see what you mean now. The intent here is to clear ASPM state if the FADT bit has been set *and* we've got _OSC control, whereas previously we'd clear ASPM state any time the FADT bit was set. There are some machines which (a) set the FADT bit, (b) hand over _OSC control, (c) program the device and (d) crash under certain circumstances if you then try to use it. My assumption here is that the FADT bit *does* mean "clear ASPM state", but only if we've been granted _OSC control. That's the behaviour described in the changelog. -- Matthew Garrett | mjg59@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html