aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/laptops/thinkpad-acpi.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/laptops/thinkpad-acpi.txt')
-rw-r--r--Documentation/laptops/thinkpad-acpi.txt48
1 files changed, 27 insertions, 21 deletions
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt
index 6d03487ef1c7..aafcaa634191 100644
--- a/Documentation/laptops/thinkpad-acpi.txt
+++ b/Documentation/laptops/thinkpad-acpi.txt
@@ -199,18 +199,22 @@ kind to allow it (and it often doesn't!).
199 199
200Not all bits in the mask can be modified. Not all bits that can be 200Not all bits in the mask can be modified. Not all bits that can be
201modified do anything. Not all hot keys can be individually controlled 201modified do anything. Not all hot keys can be individually controlled
202by the mask. Some models do not support the mask at all, and in those 202by the mask. Some models do not support the mask at all. The behaviour
203models, hot keys cannot be controlled individually. The behaviour of 203of the mask is, therefore, highly dependent on the ThinkPad model.
204the mask is, therefore, highly dependent on the ThinkPad model. 204
205The driver will filter out any unmasked hotkeys, so even if the firmware
206doesn't allow disabling an specific hotkey, the driver will not report
207events for unmasked hotkeys.
205 208
206Note that unmasking some keys prevents their default behavior. For 209Note that unmasking some keys prevents their default behavior. For
207example, if Fn+F5 is unmasked, that key will no longer enable/disable 210example, if Fn+F5 is unmasked, that key will no longer enable/disable
208Bluetooth by itself. 211Bluetooth by itself in firmware.
209 212
210Note also that not all Fn key combinations are supported through ACPI. 213Note also that not all Fn key combinations are supported through ACPI
211For example, on the X40, the brightness, volume and "Access IBM" buttons 214depending on the ThinkPad model and firmware version. On those
212do not generate ACPI events even with this driver. They *can* be used 215ThinkPads, it is still possible to support some extra hotkeys by
213through the "ThinkPad Buttons" utility, see http://www.nongnu.org/tpb/ 216polling the "CMOS NVRAM" at least 10 times per second. The driver
217attempts to enables this functionality automatically when required.
214 218
215procfs notes: 219procfs notes:
216 220
@@ -255,18 +259,11 @@ sysfs notes:
255 1: does nothing 259 1: does nothing
256 260
257 hotkey_mask: 261 hotkey_mask:
258 bit mask to enable driver-handling (and depending on 262 bit mask to enable reporting (and depending on
259 the firmware, ACPI event generation) for each hot key 263 the firmware, ACPI event generation) for each hot key
260 (see above). Returns the current status of the hot keys 264 (see above). Returns the current status of the hot keys
261 mask, and allows one to modify it. 265 mask, and allows one to modify it.
262 266
263 Note: when NVRAM polling is active, the firmware mask
264 will be different from the value returned by
265 hotkey_mask. The driver will retain enabled bits for
266 hotkeys that are under NVRAM polling even if the
267 firmware refuses them, and will not set these bits on
268 the firmware hot key mask.
269
270 hotkey_all_mask: 267 hotkey_all_mask:
271 bit mask that should enable event reporting for all 268 bit mask that should enable event reporting for all
272 supported hot keys, when echoed to hotkey_mask above. 269 supported hot keys, when echoed to hotkey_mask above.
@@ -279,7 +276,8 @@ sysfs notes:
279 bit mask that should enable event reporting for all 276 bit mask that should enable event reporting for all
280 supported hot keys, except those which are always 277 supported hot keys, except those which are always
281 handled by the firmware anyway. Echo it to 278 handled by the firmware anyway. Echo it to
282 hotkey_mask above, to use. 279 hotkey_mask above, to use. This is the default mask
280 used by the driver.
283 281
284 hotkey_source_mask: 282 hotkey_source_mask:
285 bit mask that selects which hot keys will the driver 283 bit mask that selects which hot keys will the driver
@@ -287,9 +285,10 @@ sysfs notes:
287 based on the capabilities reported by the ACPI firmware, 285 based on the capabilities reported by the ACPI firmware,
288 but it can be overridden at runtime. 286 but it can be overridden at runtime.
289 287
290 Hot keys whose bits are set in both hotkey_source_mask 288 Hot keys whose bits are set in hotkey_source_mask are
291 and also on hotkey_mask are polled for in NVRAM. Only a 289 polled for in NVRAM, and reported as hotkey events if
292 few hot keys are available through CMOS NVRAM polling. 290 enabled in hotkey_mask. Only a few hot keys are
291 available through CMOS NVRAM polling.
293 292
294 Warning: when in NVRAM mode, the volume up/down/mute 293 Warning: when in NVRAM mode, the volume up/down/mute
295 keys are synthesized according to changes in the mixer, 294 keys are synthesized according to changes in the mixer,
@@ -525,6 +524,7 @@ compatibility purposes when hotkey_report_mode is set to 1.
5250x2305 System is waking up from suspend to eject bay 5240x2305 System is waking up from suspend to eject bay
5260x2404 System is waking up from hibernation to undock 5250x2404 System is waking up from hibernation to undock
5270x2405 System is waking up from hibernation to eject bay 5260x2405 System is waking up from hibernation to eject bay
5270x5010 Brightness level changed/control event
528 528
529The above events are never propagated by the driver. 529The above events are never propagated by the driver.
530 530
@@ -532,7 +532,6 @@ The above events are never propagated by the driver.
5320x4003 Undocked (see 0x2x04), can sleep again 5320x4003 Undocked (see 0x2x04), can sleep again
5330x500B Tablet pen inserted into its storage bay 5330x500B Tablet pen inserted into its storage bay
5340x500C Tablet pen removed from its storage bay 5340x500C Tablet pen removed from its storage bay
5350x5010 Brightness level changed (newer Lenovo BIOSes)
536 535
537The above events are propagated by the driver. 536The above events are propagated by the driver.
538 537
@@ -621,6 +620,8 @@ For Lenovo models *with* ACPI backlight control:
6212. Do *NOT* load up ACPI video, enable the hotkeys in thinkpad-acpi, 6202. Do *NOT* load up ACPI video, enable the hotkeys in thinkpad-acpi,
622 and map them to KEY_BRIGHTNESS_UP and KEY_BRIGHTNESS_DOWN. Process 621 and map them to KEY_BRIGHTNESS_UP and KEY_BRIGHTNESS_DOWN. Process
623 these keys on userspace somehow (e.g. by calling xbacklight). 622 these keys on userspace somehow (e.g. by calling xbacklight).
623 The driver will do this automatically if it detects that ACPI video
624 has been disabled.
624 625
625 626
626Bluetooth 627Bluetooth
@@ -1459,3 +1460,8 @@ Sysfs interface changelog:
14590x020400: Marker for 16 LEDs support. Also, LEDs that are known 14600x020400: Marker for 16 LEDs support. Also, LEDs that are known
1460 to not exist in a given model are not registered with 1461 to not exist in a given model are not registered with
1461 the LED sysfs class anymore. 1462 the LED sysfs class anymore.
1463
14640x020500: Updated hotkey driver, hotkey_mask is always available
1465 and it is always able to disable hot keys. Very old
1466 thinkpads are properly supported. hotkey_bios_mask
1467 is deprecated and marked for removal.