aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/laptops
diff options
context:
space:
mode:
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>2008-04-26 00:02:17 -0400
committerLen Brown <len.brown@intel.com>2008-04-29 09:46:59 -0400
commitb59727965d7f286489206c292e2788d4835a8a23 (patch)
tree644211bb3c0cd4e3e2451df97ea11b0b80c08315 /Documentation/laptops
parenta01e035ebb552223c03f2d9138ffc73f2d4d3965 (diff)
ACPI: thinkpad-acpi: BIOS backlight mode helper (v2.1)
Lenovo ThinkPads with generic ACPI backlight level control can be easily set to react to keyboard brightness key presses in a more predictable way than what they do when in "DOS / bootloader" mode after Linux brings up the ACPI interface. The switch to the ACPI backlight mode in the firmware is designed to be safe to use only as an one way trapdoor. One is not to force the firmware to switch back to "DOS/bootloader" mode except by rebooting. The mode switch itself is performed by calling any of the ACPI _BCL methods at least once. When in ACPI mode, the backlight firmware just issues (standard) events for the brightness up/down hot key presses along with the non-standard HKEY events which thinkpad-acpi traps, and doesn't touch the hardware. thinkpad-acpi will: 1. Place the ThinkPad firmware in ACPI backlight control mode if one is available 2. Suppress HKEY backlight change notifications by default to avoid double-reporting when ACPI video is loaded when the ThinkPad is in ACPI backlight control mode 3. Urge the user to load the ACPI video driver The user is free to use either the ACPI video driver to get the brightness key events, or to override the thinkpad-acpi default hotkey mask to get them from thinkpad-acpi as well (this will result in duplicate events if ACPI video is loaded, so let's hope distros won't screw this up). Provided userspace is sane, all should work (and *keep* working), which is more that can be said about the non-ACPI mode of the new Lenovo ThinkPad BIOSes when coupled to current userspace and X.org drivers. Full guidelines for backlight hot key reporting and use of the thinkpad-acpi backlight interface have been added to the documentation. Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> Cc: Matthew Garrett <mjg59@srcf.ucam.org> Cc: Thomas Renninger <trenn@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'Documentation/laptops')
-rw-r--r--Documentation/laptops/thinkpad-acpi.txt50
1 files changed, 50 insertions, 0 deletions
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt
index 76cb428435da..a77da28a6f8e 100644
--- a/Documentation/laptops/thinkpad-acpi.txt
+++ b/Documentation/laptops/thinkpad-acpi.txt
@@ -571,6 +571,47 @@ netlink interface and the input layer interface, and don't bother at all
571with hotkey_report_mode. 571with hotkey_report_mode.
572 572
573 573
574Brightness hotkey notes:
575
576These are the current sane choices for brightness key mapping in
577thinkpad-acpi:
578
579For IBM and Lenovo models *without* ACPI backlight control (the ones on
580which thinkpad-acpi will autoload its backlight interface by default,
581and on which ACPI video does not export a backlight interface):
582
5831. Don't enable or map the brightness hotkeys in thinkpad-acpi, as
584 these older firmware versions unfortunately won't respect the hotkey
585 mask for brightness keys anyway, and always reacts to them. This
586 usually work fine, unless X.org drivers are doing something to block
587 the BIOS. In that case, use (3) below. This is the default mode of
588 operation.
589
5902. Enable the hotkeys, but map them to something else that is NOT
591 KEY_BRIGHTNESS_UP/DOWN or any other keycode that would cause
592 userspace to try to change the backlight level, and use that as an
593 on-screen-display hint.
594
5953. IF AND ONLY IF X.org drivers find a way to block the firmware from
596 automatically changing the brightness, enable the hotkeys and map
597 them to KEY_BRIGHTNESS_UP and KEY_BRIGHTNESS_DOWN, and feed that to
598 something that calls xbacklight. thinkpad-acpi will not be able to
599 change brightness in that case either, so you should disable its
600 backlight interface.
601
602For Lenovo models *with* ACPI backlight control:
603
6041. Load up ACPI video and use that. ACPI video will report ACPI
605 events for brightness change keys. Do not mess with thinkpad-acpi
606 defaults in this case. thinkpad-acpi should not have anything to do
607 with backlight events in a scenario where ACPI video is loaded:
608 brightness hotkeys must be disabled, and the backlight interface is
609 to be kept disabled as well. This is the default mode of operation.
610
6112. Do *NOT* load up ACPI video, enable the hotkeys in thinkpad-acpi,
612 and map them to KEY_BRIGHTNESS_UP and KEY_BRIGHTNESS_DOWN. Process
613 these keys on userspace somehow (e.g. by calling xbacklight).
614
574Bluetooth 615Bluetooth
575--------- 616---------
576 617
@@ -1090,6 +1131,15 @@ it there will be the following attributes:
1090 dim the display. 1131 dim the display.
1091 1132
1092 1133
1134WARNING:
1135
1136 Whatever you do, do NOT ever call thinkpad-acpi backlight-level change
1137 interface and the ACPI-based backlight level change interface
1138 (available on newer BIOSes, and driven by the Linux ACPI video driver)
1139 at the same time. The two will interact in bad ways, do funny things,
1140 and maybe reduce the life of the backlight lamps by needlessly kicking
1141 its level up and down at every change.
1142
1093Volume control -- /proc/acpi/ibm/volume 1143Volume control -- /proc/acpi/ibm/volume
1094--------------------------------------- 1144---------------------------------------
1095 1145