Comment 155 for bug 760131

Matthew Hessel (matt-hessel) wrote :

@Erwin - not sure if you have this same hardware as mine, but I did find what makes the difference for my laptop.

Natty running 2.6.35 kernel, can idle at 18.5 watts - runs ok, but I find that power management screws up my primary drive when it goes to sleep, will not wake up the drive at all, system just locks hard - on Seagate Hybrid drive. On Western Digital drive - no issues with wake up. realtek based intel-hda shows ASPM unknown and disabled

sudo lspci -vvv shows that most things run with ASPM enabled, iwlagn, usb ports, half of the PCIE ports, and the video (Nvidia-running binary blob)

Natty running default kernel 2.6.38 - Even with pcie_aspm=force, iwlagn and the pcie root it sits on has ASPM disabled for some reason. intel-hda still not supporting ASPM - Idle with powertop shows my system it at 21.5 watts.

Natty running current upstream oneiric builds, 3.0.0.8. ASPM is the same, the kernel tweaks found after 2.6.38 with the idle changes helps some, best idle level is about 20 watts

Natty running upstream vanilla from git.kernel.org, ASPM works for the intel-hda card. iwlagn still is not enabling ASPM. Idle is at 19.8 watts

found good info at

http://linuxwireless.org/en/users/Documentation/ASPM

using that page, I looked at the output from LSPCI for the wireless card and the PCIe root for it, found that the bits were not set for aspm (hex= 0x40) I unloaded the iwlagn driver and changed to 0x43 for the root and the iwlagn stuff, then modprobe iwlagn again..

ASPM then shows it is working, - and confirm it works with the 2.6.38 kernel all the way up to the upstream sources - 3.0.0.8 and the vanilla source.

with the oneiric kernel, I seem to get the best results, 17.8 for idle wattage.. better than the maverick sources.

the pcie_aspm=force is only a workaround needed if your bios isn't set up right. if you run 'dmesg | grep OSC' I see

[ 2.061987] pci0000:00: Requesting ACPI _OSC control (0x1d)
[ 2.061992] pci0000:00: ACPI _OSC request failed (AE_NOT_FOUND), returned control mask: 0x1d
[ 2.061995] ACPI _OSC control for PCIe not granted, disabling ASPM

on the laptop, where it helps, but on another desktop --

[ 0.716560] pci0000:00: Requesting ACPI _OSC control (0x1d)
[ 0.717137] pci0000:00: ACPI _OSC control (0x15) granted

where the pcie_aspm=force does nothing at all..