aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/laptops/thinkpad-acpi.txt
diff options
context:
space:
mode:
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>2009-04-04 00:25:48 -0400
committerLen Brown <len.brown@intel.com>2009-04-04 03:14:52 -0400
commit2586d5663d0a17d69383acf6110f16a979a07c4e (patch)
tree5bfe1ef88ee03084175bb94c4c1079402fefbe7b /Documentation/laptops/thinkpad-acpi.txt
parent73a94d86a8625371f76de0ee12dc5bacd3ed42c0 (diff)
thinkpad-acpi: remove HKEY disable functionality
The HKEY disable functionality basically cripples the entire event model of the ThinkPad firmware and of the thinkpad-acpi driver. Remove this functionality from the driver. HKEY must be enabled at all times while thinkpad-acpi is loaded, and disabled otherwise. For sysfs, according to the sysfs ABI and the thinkpad-acpi sysfs rules of engagement, we will just remove the attributes. This will be done in two stages: disable their function now, after two kernel releases, remove the attributes. For procfs, we call WARN(). If nothing triggers it, I will simply remove the enable/disable commands entirely in the future along with the sysfs attributes. I don't expect much, if any fallout from this. There really isn't any reason to mess with hotkey_enable or with the enable/disable commands to /proc/acpi/ibm/hotkey, and this has been true for years... Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'Documentation/laptops/thinkpad-acpi.txt')
-rw-r--r--Documentation/laptops/thinkpad-acpi.txt39
1 files changed, 19 insertions, 20 deletions
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt
index e8f52fbadfe0..de6f14c79070 100644
--- a/Documentation/laptops/thinkpad-acpi.txt
+++ b/Documentation/laptops/thinkpad-acpi.txt
@@ -179,17 +179,14 @@ system. Enabling the hotkey functionality of thinkpad-acpi signals the
179firmware that such a driver is present, and modifies how the ThinkPad 179firmware that such a driver is present, and modifies how the ThinkPad
180firmware will behave in many situations. 180firmware will behave in many situations.
181 181
182The driver enables the hot key feature automatically when loaded. The 182The driver enables the HKEY ("hot key") event reporting automatically
183feature can later be disabled and enabled back at runtime. The driver 183when loaded, and disables it when it is removed.
184will also restore the hot key feature to its previous state and mask
185when it is unloaded.
186 184
187When the hotkey feature is enabled and the hot key mask is set (see 185The driver will report HKEY events in the following format:
188below), the driver will report HKEY events in the following format:
189 186
190 ibm/hotkey HKEY 00000080 0000xxxx 187 ibm/hotkey HKEY 00000080 0000xxxx
191 188
192Some of these events refer to hot key presses, but not all. 189Some of these events refer to hot key presses, but not all of them.
193 190
194The driver will generate events over the input layer for hot keys and 191The driver will generate events over the input layer for hot keys and
195radio switches, and over the ACPI netlink layer for other events. The 192radio switches, and over the ACPI netlink layer for other events. The
@@ -221,13 +218,17 @@ procfs notes:
221 218
222The following commands can be written to the /proc/acpi/ibm/hotkey file: 219The following commands can be written to the /proc/acpi/ibm/hotkey file:
223 220
224 echo enable > /proc/acpi/ibm/hotkey -- enable the hot keys feature
225 echo disable > /proc/acpi/ibm/hotkey -- disable the hot keys feature
226 echo 0xffffffff > /proc/acpi/ibm/hotkey -- enable all hot keys 221 echo 0xffffffff > /proc/acpi/ibm/hotkey -- enable all hot keys
227 echo 0 > /proc/acpi/ibm/hotkey -- disable all possible hot keys 222 echo 0 > /proc/acpi/ibm/hotkey -- disable all possible hot keys
228 ... any other 8-hex-digit mask ... 223 ... any other 8-hex-digit mask ...
229 echo reset > /proc/acpi/ibm/hotkey -- restore the original mask 224 echo reset > /proc/acpi/ibm/hotkey -- restore the original mask
230 225
226The following commands have been deprecated and will cause the kernel
227to log a warning:
228
229 echo enable > /proc/acpi/ibm/hotkey -- does nothing
230 echo disable > /proc/acpi/ibm/hotkey -- returns an error
231
231The procfs interface does not support NVRAM polling control. So as to 232The procfs interface does not support NVRAM polling control. So as to
232maintain maximum bug-to-bug compatibility, it does not report any masks, 233maintain maximum bug-to-bug compatibility, it does not report any masks,
233nor does it allow one to manipulate the hot key mask when the firmware 234nor does it allow one to manipulate the hot key mask when the firmware
@@ -236,12 +237,9 @@ does not support masks at all, even if NVRAM polling is in use.
236sysfs notes: 237sysfs notes:
237 238
238 hotkey_bios_enabled: 239 hotkey_bios_enabled:
239 Returns the status of the hot keys feature when 240 DEPRECATED, WILL BE REMOVED SOON.
240 thinkpad-acpi was loaded. Upon module unload, the hot
241 key feature status will be restored to this value.
242 241
243 0: hot keys were disabled 242 Returns 0.
244 1: hot keys were enabled (unusual)
245 243
246 hotkey_bios_mask: 244 hotkey_bios_mask:
247 Returns the hot keys mask when thinkpad-acpi was loaded. 245 Returns the hot keys mask when thinkpad-acpi was loaded.
@@ -249,13 +247,10 @@ sysfs notes:
249 to this value. 247 to this value.
250 248
251 hotkey_enable: 249 hotkey_enable:
252 Enables/disables the hot keys feature in the ACPI 250 DEPRECATED, WILL BE REMOVED SOON.
253 firmware, and reports current status of the hot keys
254 feature. Has no effect on the NVRAM hot key polling
255 functionality.
256 251
257 0: disables the hot keys feature / feature disabled 252 0: returns -EPERM
258 1: enables the hot keys feature / feature enabled 253 1: does nothing
259 254
260 hotkey_mask: 255 hotkey_mask:
261 bit mask to enable driver-handling (and depending on 256 bit mask to enable driver-handling (and depending on
@@ -1535,3 +1530,7 @@ Sysfs interface changelog:
1535 1530
15360x020200: Add poll()/select() support to the following attributes: 15310x020200: Add poll()/select() support to the following attributes:
1537 hotkey_radio_sw, wakeup_hotunplug_complete, wakeup_reason 1532 hotkey_radio_sw, wakeup_hotunplug_complete, wakeup_reason
1533
15340x020300: hotkey enable/disable support removed, attributes
1535 hotkey_bios_enabled and hotkey_enable deprecated and
1536 marked for removal.