diff options
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/laptops/thinkpad-acpi.txt | 63 |
1 files changed, 38 insertions, 25 deletions
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt index 6c2477754a2a..76cb428435da 100644 --- a/Documentation/laptops/thinkpad-acpi.txt +++ b/Documentation/laptops/thinkpad-acpi.txt | |||
@@ -160,7 +160,7 @@ Hot keys | |||
160 | procfs: /proc/acpi/ibm/hotkey | 160 | procfs: /proc/acpi/ibm/hotkey |
161 | sysfs device attribute: hotkey_* | 161 | sysfs device attribute: hotkey_* |
162 | 162 | ||
163 | In a ThinkPad, the ACPI HKEY handler is responsible for comunicating | 163 | In a ThinkPad, the ACPI HKEY handler is responsible for communicating |
164 | some important events and also keyboard hot key presses to the operating | 164 | some important events and also keyboard hot key presses to the operating |
165 | system. Enabling the hotkey functionality of thinkpad-acpi signals the | 165 | system. Enabling the hotkey functionality of thinkpad-acpi signals the |
166 | firmware that such a driver is present, and modifies how the ThinkPad | 166 | firmware that such a driver is present, and modifies how the ThinkPad |
@@ -193,7 +193,7 @@ Not all bits in the mask can be modified. Not all bits that can be | |||
193 | modified do anything. Not all hot keys can be individually controlled | 193 | modified do anything. Not all hot keys can be individually controlled |
194 | by the mask. Some models do not support the mask at all, and in those | 194 | by the mask. Some models do not support the mask at all, and in those |
195 | models, hot keys cannot be controlled individually. The behaviour of | 195 | models, hot keys cannot be controlled individually. The behaviour of |
196 | the mask is, therefore, higly dependent on the ThinkPad model. | 196 | the mask is, therefore, highly dependent on the ThinkPad model. |
197 | 197 | ||
198 | Note that unmasking some keys prevents their default behavior. For | 198 | Note that unmasking some keys prevents their default behavior. For |
199 | example, if Fn+F5 is unmasked, that key will no longer enable/disable | 199 | example, if Fn+F5 is unmasked, that key will no longer enable/disable |
@@ -288,7 +288,7 @@ sysfs notes: | |||
288 | in ACPI event mode, volume up/down/mute are reported as | 288 | in ACPI event mode, volume up/down/mute are reported as |
289 | separate events, but this behaviour may be corrected in | 289 | separate events, but this behaviour may be corrected in |
290 | future releases of this driver, in which case the | 290 | future releases of this driver, in which case the |
291 | ThinkPad volume mixer user interface semanthics will be | 291 | ThinkPad volume mixer user interface semantics will be |
292 | enforced. | 292 | enforced. |
293 | 293 | ||
294 | hotkey_poll_freq: | 294 | hotkey_poll_freq: |
@@ -306,13 +306,20 @@ sysfs notes: | |||
306 | The recommended polling frequency is 10Hz. | 306 | The recommended polling frequency is 10Hz. |
307 | 307 | ||
308 | hotkey_radio_sw: | 308 | hotkey_radio_sw: |
309 | if the ThinkPad has a hardware radio switch, this | 309 | If the ThinkPad has a hardware radio switch, this |
310 | attribute will read 0 if the switch is in the "radios | 310 | attribute will read 0 if the switch is in the "radios |
311 | disabled" postition, and 1 if the switch is in the | 311 | disabled" position, and 1 if the switch is in the |
312 | "radios enabled" position. | 312 | "radios enabled" position. |
313 | 313 | ||
314 | This attribute has poll()/select() support. | 314 | This attribute has poll()/select() support. |
315 | 315 | ||
316 | hotkey_tablet_mode: | ||
317 | If the ThinkPad has tablet capabilities, this attribute | ||
318 | will read 0 if the ThinkPad is in normal mode, and | ||
319 | 1 if the ThinkPad is in tablet mode. | ||
320 | |||
321 | This attribute has poll()/select() support. | ||
322 | |||
316 | hotkey_report_mode: | 323 | hotkey_report_mode: |
317 | Returns the state of the procfs ACPI event report mode | 324 | Returns the state of the procfs ACPI event report mode |
318 | filter for hot keys. If it is set to 1 (the default), | 325 | filter for hot keys. If it is set to 1 (the default), |
@@ -339,7 +346,7 @@ sysfs notes: | |||
339 | wakeup_hotunplug_complete: | 346 | wakeup_hotunplug_complete: |
340 | Set to 1 if the system was waken up because of an | 347 | Set to 1 if the system was waken up because of an |
341 | undock or bay ejection request, and that request | 348 | undock or bay ejection request, and that request |
342 | was sucessfully completed. At this point, it might | 349 | was successfully completed. At this point, it might |
343 | be useful to send the system back to sleep, at the | 350 | be useful to send the system back to sleep, at the |
344 | user's choice. Refer to HKEY events 0x4003 and | 351 | user's choice. Refer to HKEY events 0x4003 and |
345 | 0x3003, below. | 352 | 0x3003, below. |
@@ -392,7 +399,7 @@ event code Key Notes | |||
392 | Lenovo: battery | 399 | Lenovo: battery |
393 | 400 | ||
394 | 0x1004 0x03 FN+F4 Sleep button (ACPI sleep button | 401 | 0x1004 0x03 FN+F4 Sleep button (ACPI sleep button |
395 | semanthics, i.e. sleep-to-RAM). | 402 | semantics, i.e. sleep-to-RAM). |
396 | It is always generate some kind | 403 | It is always generate some kind |
397 | of event, either the hot key | 404 | of event, either the hot key |
398 | event or a ACPI sleep button | 405 | event or a ACPI sleep button |
@@ -403,12 +410,12 @@ event code Key Notes | |||
403 | time passes. | 410 | time passes. |
404 | 411 | ||
405 | 0x1005 0x04 FN+F5 Radio. Enables/disables | 412 | 0x1005 0x04 FN+F5 Radio. Enables/disables |
406 | the internal BlueTooth hardware | 413 | the internal Bluetooth hardware |
407 | and W-WAN card if left in control | 414 | and W-WAN card if left in control |
408 | of the firmware. Does not affect | 415 | of the firmware. Does not affect |
409 | the WLAN card. | 416 | the WLAN card. |
410 | Should be used to turn on/off all | 417 | Should be used to turn on/off all |
411 | radios (bluetooth+W-WAN+WLAN), | 418 | radios (Bluetooth+W-WAN+WLAN), |
412 | really. | 419 | really. |
413 | 420 | ||
414 | 0x1006 0x05 FN+F6 - | 421 | 0x1006 0x05 FN+F6 - |
@@ -417,7 +424,7 @@ event code Key Notes | |||
417 | Do you feel lucky today? | 424 | Do you feel lucky today? |
418 | 425 | ||
419 | 0x1008 0x07 FN+F8 IBM: toggle screen expand | 426 | 0x1008 0x07 FN+F8 IBM: toggle screen expand |
420 | Lenovo: configure ultranav | 427 | Lenovo: configure UltraNav |
421 | 428 | ||
422 | 0x1009 0x08 FN+F9 - | 429 | 0x1009 0x08 FN+F9 - |
423 | .. .. .. | 430 | .. .. .. |
@@ -447,7 +454,7 @@ event code Key Notes | |||
447 | 0x1011 0x10 FN+END Brightness down. See brightness | 454 | 0x1011 0x10 FN+END Brightness down. See brightness |
448 | up for details. | 455 | up for details. |
449 | 456 | ||
450 | 0x1012 0x11 FN+PGUP Thinklight toggle. This key is | 457 | 0x1012 0x11 FN+PGUP ThinkLight toggle. This key is |
451 | always handled by the firmware, | 458 | always handled by the firmware, |
452 | even when unmasked. | 459 | even when unmasked. |
453 | 460 | ||
@@ -469,7 +476,7 @@ event code Key Notes | |||
469 | key is always handled by the | 476 | key is always handled by the |
470 | firmware, even when unmasked. | 477 | firmware, even when unmasked. |
471 | 478 | ||
472 | 0x1018 0x17 THINKPAD Thinkpad/Access IBM/Lenovo key | 479 | 0x1018 0x17 THINKPAD ThinkPad/Access IBM/Lenovo key |
473 | 480 | ||
474 | 0x1019 0x18 unknown | 481 | 0x1019 0x18 unknown |
475 | .. .. .. | 482 | .. .. .. |
@@ -488,9 +495,17 @@ If a key is mapped to KEY_UNKNOWN, it generates an input event that | |||
488 | includes an scan code. If a key is mapped to anything else, it will | 495 | includes an scan code. If a key is mapped to anything else, it will |
489 | generate input device EV_KEY events. | 496 | generate input device EV_KEY events. |
490 | 497 | ||
498 | In addition to the EV_KEY events, thinkpad-acpi may also issue EV_SW | ||
499 | events for switches: | ||
500 | |||
501 | SW_RADIO T60 and later hardare rfkill rocker switch | ||
502 | SW_TABLET_MODE Tablet ThinkPads HKEY events 0x5009 and 0x500A | ||
503 | |||
491 | Non hot-key ACPI HKEY event map: | 504 | Non hot-key ACPI HKEY event map: |
492 | 0x5001 Lid closed | 505 | 0x5001 Lid closed |
493 | 0x5002 Lid opened | 506 | 0x5002 Lid opened |
507 | 0x5009 Tablet swivel: switched to tablet mode | ||
508 | 0x500A Tablet swivel: switched to normal mode | ||
494 | 0x7000 Radio Switch may have changed state | 509 | 0x7000 Radio Switch may have changed state |
495 | 510 | ||
496 | The above events are not propagated by the driver, except for legacy | 511 | The above events are not propagated by the driver, except for legacy |
@@ -505,9 +520,7 @@ The above events are never propagated by the driver. | |||
505 | 520 | ||
506 | 0x3003 Bay ejection (see 0x2x05) complete, can sleep again | 521 | 0x3003 Bay ejection (see 0x2x05) complete, can sleep again |
507 | 0x4003 Undocked (see 0x2x04), can sleep again | 522 | 0x4003 Undocked (see 0x2x04), can sleep again |
508 | 0x5009 Tablet swivel: switched to tablet mode | 523 | 0x500B Tablet pen inserted into its storage bay |
509 | 0x500A Tablet swivel: switched to normal mode | ||
510 | 0x500B Tablet pen insterted into its storage bay | ||
511 | 0x500C Tablet pen removed from its storage bay | 524 | 0x500C Tablet pen removed from its storage bay |
512 | 0x5010 Brightness level changed (newer Lenovo BIOSes) | 525 | 0x5010 Brightness level changed (newer Lenovo BIOSes) |
513 | 526 | ||
@@ -539,7 +552,7 @@ sysfs (it is read-only). | |||
539 | If the hotkey_report_mode module parameter is set to 1 or 2, it cannot | 552 | If the hotkey_report_mode module parameter is set to 1 or 2, it cannot |
540 | be changed later through sysfs (any writes will return -EPERM to signal | 553 | be changed later through sysfs (any writes will return -EPERM to signal |
541 | that hotkey_report_mode was locked. On 2.6.23 and later, where | 554 | that hotkey_report_mode was locked. On 2.6.23 and later, where |
542 | hotkey_report_mode cannot be changed at all, writes will return -EACES). | 555 | hotkey_report_mode cannot be changed at all, writes will return -EACCES). |
543 | 556 | ||
544 | hotkey_report_mode set to 1 makes the driver export through the procfs | 557 | hotkey_report_mode set to 1 makes the driver export through the procfs |
545 | ACPI event interface all hot key presses (which are *also* sent to the | 558 | ACPI event interface all hot key presses (which are *also* sent to the |
@@ -584,7 +597,7 @@ Sysfs notes: | |||
584 | 0: disables Bluetooth / Bluetooth is disabled | 597 | 0: disables Bluetooth / Bluetooth is disabled |
585 | 1: enables Bluetooth / Bluetooth is enabled. | 598 | 1: enables Bluetooth / Bluetooth is enabled. |
586 | 599 | ||
587 | Note: this interface will be probably be superseeded by the | 600 | Note: this interface will be probably be superseded by the |
588 | generic rfkill class, so it is NOT to be considered stable yet. | 601 | generic rfkill class, so it is NOT to be considered stable yet. |
589 | 602 | ||
590 | Video output control -- /proc/acpi/ibm/video | 603 | Video output control -- /proc/acpi/ibm/video |
@@ -791,12 +804,12 @@ on the X40 (tpb is the ThinkPad Buttons utility): | |||
791 | 1 - Related to "Volume up" key press | 804 | 1 - Related to "Volume up" key press |
792 | 2 - Related to "Mute on" key press | 805 | 2 - Related to "Mute on" key press |
793 | 3 - Related to "Access IBM" key press | 806 | 3 - Related to "Access IBM" key press |
794 | 4 - Related to "LCD brightness up" key pess | 807 | 4 - Related to "LCD brightness up" key press |
795 | 5 - Related to "LCD brightness down" key press | 808 | 5 - Related to "LCD brightness down" key press |
796 | 11 - Related to "toggle screen expansion" key press/function | 809 | 11 - Related to "toggle screen expansion" key press/function |
797 | 12 - Related to "ThinkLight on" | 810 | 12 - Related to "ThinkLight on" |
798 | 13 - Related to "ThinkLight off" | 811 | 13 - Related to "ThinkLight off" |
799 | 14 - Related to "ThinkLight" key press (toggle thinklight) | 812 | 14 - Related to "ThinkLight" key press (toggle ThinkLight) |
800 | 813 | ||
801 | The cmos command interface is prone to firmware split-brain problems, as | 814 | The cmos command interface is prone to firmware split-brain problems, as |
802 | in newer ThinkPads it is just a compatibility layer. Do not use it, it is | 815 | in newer ThinkPads it is just a compatibility layer. Do not use it, it is |
@@ -1024,7 +1037,7 @@ There are two interfaces to the firmware for direct brightness control, | |||
1024 | EC and CMOS. To select which one should be used, use the | 1037 | EC and CMOS. To select which one should be used, use the |
1025 | brightness_mode module parameter: brightness_mode=1 selects EC mode, | 1038 | brightness_mode module parameter: brightness_mode=1 selects EC mode, |
1026 | brightness_mode=2 selects CMOS mode, brightness_mode=3 selects both EC | 1039 | brightness_mode=2 selects CMOS mode, brightness_mode=3 selects both EC |
1027 | and CMOS. The driver tries to autodetect which interface to use. | 1040 | and CMOS. The driver tries to auto-detect which interface to use. |
1028 | 1041 | ||
1029 | When display backlight brightness controls are available through the | 1042 | When display backlight brightness controls are available through the |
1030 | standard ACPI interface, it is best to use it instead of this direct | 1043 | standard ACPI interface, it is best to use it instead of this direct |
@@ -1266,8 +1279,8 @@ experimental=1 parameter when loading the module. | |||
1266 | This feature shows the presence and current state of a W-WAN (Sierra | 1279 | This feature shows the presence and current state of a W-WAN (Sierra |
1267 | Wireless EV-DO) device. | 1280 | Wireless EV-DO) device. |
1268 | 1281 | ||
1269 | It was tested on a Lenovo Thinkpad X60. It should probably work on other | 1282 | It was tested on a Lenovo ThinkPad X60. It should probably work on other |
1270 | Thinkpad models which come with this module installed. | 1283 | ThinkPad models which come with this module installed. |
1271 | 1284 | ||
1272 | Procfs notes: | 1285 | Procfs notes: |
1273 | 1286 | ||
@@ -1286,7 +1299,7 @@ Sysfs notes: | |||
1286 | 0: disables WWAN card / WWAN card is disabled | 1299 | 0: disables WWAN card / WWAN card is disabled |
1287 | 1: enables WWAN card / WWAN card is enabled. | 1300 | 1: enables WWAN card / WWAN card is enabled. |
1288 | 1301 | ||
1289 | Note: this interface will be probably be superseeded by the | 1302 | Note: this interface will be probably be superseded by the |
1290 | generic rfkill class, so it is NOT to be considered stable yet. | 1303 | generic rfkill class, so it is NOT to be considered stable yet. |
1291 | 1304 | ||
1292 | Multiple Commands, Module Parameters | 1305 | Multiple Commands, Module Parameters |
@@ -1309,7 +1322,7 @@ Enabling debugging output | |||
1309 | The module takes a debug parameter which can be used to selectively | 1322 | The module takes a debug parameter which can be used to selectively |
1310 | enable various classes of debugging output, for example: | 1323 | enable various classes of debugging output, for example: |
1311 | 1324 | ||
1312 | modprobe ibm_acpi debug=0xffff | 1325 | modprobe thinkpad_acpi debug=0xffff |
1313 | 1326 | ||
1314 | will enable all debugging output classes. It takes a bitmask, so | 1327 | will enable all debugging output classes. It takes a bitmask, so |
1315 | to enable more than one output class, just add their values. | 1328 | to enable more than one output class, just add their values. |
@@ -1356,7 +1369,7 @@ Sysfs interface changelog: | |||
1356 | NVRAM is compiled out by the user because it is | 1369 | NVRAM is compiled out by the user because it is |
1357 | unneeded/undesired in the first place). | 1370 | unneeded/undesired in the first place). |
1358 | 0x020101: Marker for thinkpad-acpi with hot key NVRAM polling | 1371 | 0x020101: Marker for thinkpad-acpi with hot key NVRAM polling |
1359 | and proper hotkey_mask semanthics (version 8 of the | 1372 | and proper hotkey_mask semantics (version 8 of the |
1360 | NVRAM polling patch). Some development snapshots of | 1373 | NVRAM polling patch). Some development snapshots of |
1361 | 0.18 had an earlier version that did strange things | 1374 | 0.18 had an earlier version that did strange things |
1362 | to hotkey_mask. | 1375 | to hotkey_mask. |