On Tue, 2013-04-30 at 16:45 -0600, Bjorn Helgaas wrote: > I'm not convinced iwlwifi really needs to disable the link power > management states in the first place -- the 1a7123cdd9 changelog isn't > very convincing, and I'm not aware of any reported issues even though > we're actually leaving them enabled in many cases. > > More generally, I don't think the pci_disable_link_state() interface > is very useful because it often doesn't do what it claims, and the > caller has no indication. The general issue here is that Windows will (as far as we've been able to determine) never touch ASPM registers unless given PCIe control via _OSC. Drivers are presumably able to override this by hitting configuration registers themselves. The pci_disable_link_state() functions are currently broadly equivalent to the helper functions provided in the Windows .inf files, and if drivers really want to disable the control themselves then they can do so. Renaming the functions to make that clearer, and possibly adding some additional functions to force the case, may be worthwhile. The only time this should be relevant is if (a) the BIOS has enabled L1 on iwlwifi, (b) the BIOS has disabled ASPM control, and (c) the hardware doesn't work with L1 enabled. Are there really cases where that's true? -- Matthew Garrett | mjg59@xxxxxxxxxxxxx ��.n��������+%������w��{.n�����{���zW����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f