thinkpad-acpi: restrict access to some firmware LEDs
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / platform / x86 / Kconfig
bloba5c17fcddf9bb651353ddcfd7a554b5c9a48dcf5
2 # X86 Platform Specific Drivers
5 menuconfig X86_PLATFORM_DEVICES
6         bool "X86 Platform Specific Device Drivers"
7         default y
8         ---help---
9           Say Y here to get to see options for device drivers for various
10           x86 platforms, including vendor-specific laptop extension drivers.
11           This option alone does not add any kernel code.
13           If you say N, all options in this submenu will be skipped and disabled.
15 if X86_PLATFORM_DEVICES
17 config THINKPAD_ACPI
18         tristate "ThinkPad ACPI Laptop Extras"
19         depends on ACPI
20         depends on INPUT
21         select BACKLIGHT_LCD_SUPPORT
22         select BACKLIGHT_CLASS_DEVICE
23         select HWMON
24         select NVRAM
25         select NEW_LEDS
26         select LEDS_CLASS
27         select NET
28         select RFKILL
29         ---help---
30           This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
31           support for Fn-Fx key combinations, Bluetooth control, video
32           output switching, ThinkLight control, UltraBay eject and more.
33           For more information about this driver see
34           <file:Documentation/laptops/thinkpad-acpi.txt> and
35           <http://ibm-acpi.sf.net/> .
37           This driver was formerly known as ibm-acpi.
39           If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
41 config THINKPAD_ACPI_DEBUGFACILITIES
42         bool "Maintainer debug facilities"
43         depends on THINKPAD_ACPI
44         default n
45         ---help---
46           Enables extra stuff in the thinkpad-acpi which is completely useless
47           for normal use.  Read the driver source to find out what it does.
49           Say N here, unless you were told by a kernel maintainer to do
50           otherwise.
52 config THINKPAD_ACPI_DEBUG
53         bool "Verbose debug mode"
54         depends on THINKPAD_ACPI
55         default n
56         ---help---
57           Enables extra debugging information, at the expense of a slightly
58           increase in driver size.
60           If you are not sure, say N here.
62 config THINKPAD_ACPI_UNSAFE_LEDS
63         bool "Allow control of important LEDs (unsafe)"
64         depends on THINKPAD_ACPI
65         default n
66         ---help---
67           Overriding LED state on ThinkPads can mask important
68           firmware alerts (like critical battery condition), or misled
69           the user into damaging the hardware (undocking or ejecting
70           the bay while buses are still active), etc.
72           LED control on the ThinkPad is write-only (with very few
73           exceptions on very ancient models), which makes it
74           impossible to know beforehand if important information will
75           be lost when one changes LED state.
77           Users that know what they are doing can enable this option
78           and the driver will allow control of every LED, including
79           the ones on the dock stations.
81           Never enable this option on a distribution kernel.
83           Say N here, unless you are building a kernel for your own
84           use, and need to control the important firmware LEDs.
86 config THINKPAD_ACPI_DOCK
87         bool "Legacy Docking Station Support"
88         depends on THINKPAD_ACPI
89         depends on ACPI_DOCK=n
90         depends on BROKEN
91         default n
92         ---help---
93           Allows the thinkpad_acpi driver to handle docking station events.
94           This support was made obsolete by the generic ACPI docking station
95           support (CONFIG_ACPI_DOCK).  It will allow locking and removing the
96           laptop from the docking station, but will not properly connect PCI
97           devices.
99           If you are not sure, say N here.
101 config THINKPAD_ACPI_BAY
102         bool "Legacy Removable Bay Support"
103         depends on THINKPAD_ACPI
104         depends on BROKEN
105         default n
106         ---help---
107           Allows the thinkpad_acpi driver to handle removable bays.  It will
108           electrically disable the device in the bay, and also generate
109           notifications when the bay lever is ejected or inserted.
111           If you are not sure, say Y here.
113 config THINKPAD_ACPI_VIDEO
114         bool "Video output control support"
115         depends on THINKPAD_ACPI
116         default y
117         ---help---
118           Allows the thinkpad_acpi driver to provide an interface to control
119           the various video output ports.
121           This feature often won't work well, depending on ThinkPad model,
122           display state, video output devices in use, whether there is a X
123           server running, phase of the moon, and the current mood of
124           Schroedinger's cat.  If you can use X.org's RandR to control
125           your ThinkPad's video output ports instead of this feature,
126           don't think twice: do it and say N here to save some memory.
128           If you are not sure, say Y here.
130 config THINKPAD_ACPI_HOTKEY_POLL
131         bool "Support NVRAM polling for hot keys"
132         depends on THINKPAD_ACPI
133         default y
134         ---help---
135           Some thinkpad models benefit from NVRAM polling to detect a few of
136           the hot key press events.  If you know your ThinkPad model does not
137           need to do NVRAM polling to support any of the hot keys you use,
138           unselecting this option will save about 1kB of memory.
140           ThinkPads T40 and newer, R52 and newer, and X31 and newer are
141           unlikely to need NVRAM polling in their latest BIOS versions.
143           NVRAM polling can detect at most the following keys: ThinkPad/Access
144           IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
145           Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
147           If you are not sure, say Y here.  The driver enables polling only if
148           it is strictly necessary to do so.
150 endif # X86_PLATFORM_DEVICES