[ltp] How are hotkey and ACPI events handled on newer Thinkpads (2010+)
with 3.x kernels?
Jonas Camillus Jeppesen
Mon, 21 Jan 2013 02:01:15 +0100
This is my first message to this mailing list, thank you for reading it.
I am trying to understand how hotkeys (special keys, thinkpad extra
keys, fn-combinations) and ACPI events are handled on newer Thinkpads
(lets say from 2010 and onwards. I am hoping to cover my own T420) when
they run Linux with a 3.x kernel. The reason being that I would like to
use no established desktop environment, but just a window manager and
status bar (xmonad+xmobar).
Right now only brightness up/down (fn+home/end) works if I choose not to
launch gnome-settings-daemon (i.e. toggle touchpad, volume etc. does not
I have been reading everything I can find on ThinkWiki about the
thinkpad acpi and also searched around the web for hours without finding
anything good. The only semi usable thing I've been able to find is that
maybe the things are controlled by event files in /etc/acpi/events. They
name key combinations and scripts in /etc/acpi and those scripts in
/etc/acpi actually gets called (I've inserted something like "echo
`date`: $0 >> /tmp/acpi-log" right after #!/bin/.. to keep track on when
they get called). fn+f8 results in a script called
/etc/acpi/thinkpad-stretchortouchpad.sh being called. When
gnome-settings-daemon is running this script gets called and the
toggling of the touchpad works. When gnome-settings-daemon is not
running the script still gets called but the toggling of the touchpad
does not work. So these scripts do nothing after all it seems.
What is then happening behind the scene? The thinkwiki seems pretty out
dated (everywere it is filled with notes about the 2.6 kernel and
examples for T6x laptops). Also the thinkpad acpi readme seems very old
(http://ibm-acpi.sourceforge.net/README) being from 2008. Is this still
the driver / module being used? thinkpad_acpi places some entries in my
syslog on boot (reporting different things being found like a screen
supporting brightness control etc.) so it is still alive, but is it
being used? Also acpid is running listening for events in
/etc/acpi/events but above I seem to have concluded that those script in
/etc/acpi do nothing.
Thank you for your input!
Jonas C. J.