There were a lot of wild changes lately in ACPI event names so I was forced to clean up the mess that was growing over the years. Now it’s cleaner, modifiable, extendable and maintainable.
It does not depend on HAL in any way and I am finally free of any power manager (depends on pm-utils
for suspend command though).
⚠️ Note: It does not handle all events which Z61m scripts did since a lot changed with new ThinkPad generation, but it should be simple to incorporate them into this unified handler.
Volume and brightness handlers are included but not used in ACPI handler. I am using custom OSD handler instead (see download section).
You might want to add this piece of code to /etc/rc.local
:
echo disable > /proc/acpi/ibm/bluetooth || true
echo disable > /proc/acpi/ibm/wan || true
if acpi -a | grep -q on-line; then
for f in /etc/pm/power.d/*; do $f false || true; done
else
for f in /etc/pm/power.d/*; do $f true || true; done
fi
I am getting pretty decent power usage when idle (can occasionally drop under 8 W in lightweight X.org environment with fan at low RPM level [<2000?], minimum LCD backlight, WiFi connected [strong signal] and HDD spinning on ThinkPad X200 [not ULV processor]). I am not sure if the “kernel IPI: rescheduling interrupts” bug is real or not so maybe someday idling at 7-8 W will be possible for me. [Power consumption according to tp-smapi sysfs files.]
here’s the custom OSD I am using
:howto:acpi-2010-02-09.tar.bz2, :howto:pm-2010-02-09.tar.bz2 (should work on Debian and vanilla 2.6.32)