[ltp] Aggressive Powersaving

Pedro Ribeiro linux-thinkpad@linux-thinkpad.org
Thu, 25 Feb 2010 22:19:22 +0000


2010/2/25 Karsten K=F6nig <remur@gmx.net>:
> Am Dienstag, 9. Februar 2010 16:16:36 schrieb Henrique de Moraes Holschuh=
:
>> On Tue, 09 Feb 2010, Karsten K=F6nig wrote:
>> > the new kernels really brought down the power consumption and I am
>> > interested in getting it a little bit further, on the road I don't use=
 my
>> > DVD drive nor ExpressCard nor USB nor Firewire nor Touchpad, is there =
a
>> > way to cleany cut the power to these devices/buses?
>>
>> Yes. =A0Disable them on the BIOS where possible, Linux doesn't put PCI
>> =A0devices in D3 state yet as a rule, so once a driver loads and brings =
that
>> =A0device to D0 state, the device will stay powered up. =A0There might b=
e
>> =A0exceptions.
>
> Hmm I disabled things like parallel port, bus disabling FireWire USB etc =
in
> the BIOS is not very practical as I want to use them without having to sw=
itch
> in the BIOS
> But the PCI D3 states got me to
> http://www.mjmwired.net/kernel/Documentation/power/pci.txt where the diff=
erent
> states and their transitions are documented, but I can't find sysfs knobs=
 for
> it, so I can't tell the kernel to just suspend the whole USB stack unless
> something blocks it? I imagine this as a smaller part of the suspend cycl=
e, I
> only want parts of the system to switch off.
>

To enable low power PCI states in the .33 kernel, just use
CONFIG_PCIEASPM=3Dy

Bear in mind this is marked as EXPERIMENTAL, probably for a good reason.

That being said, I have to say that enabling it on the T400 makes no
difference at all! I guess that is because of the BIOS setting, which
is enabled by default (can't remember the name, but I'm pretty sure
its related to PCI ASPM). It does not affect stability though.

However if your Thinkpad does not have this BIOS setting it might be
worth to try it. Once the module is compiled and loaded, just use
echo powersave > /sys/module/pcie_aspm/parameters/policy
or
echo performance > /sys/module/pcie_aspm/parameters/policy

Regards,
Pedro