thinkpad-acpi: lock down video output control to root only
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / platform / x86 / Kconfig
blob1319937e14cf92adc15a5bf0579796ff66983ade
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 ACER_WMI
18         tristate "Acer WMI Laptop Extras"
19         depends on ACPI
20         depends on LEDS_CLASS
21         depends on NEW_LEDS
22         depends on BACKLIGHT_CLASS_DEVICE
23         depends on SERIO_I8042
24         depends on RFKILL
25         select ACPI_WMI
26         ---help---
27           This is a driver for newer Acer (and Wistron) laptops. It adds
28           wireless radio and bluetooth control, and on some laptops,
29           exposes the mail LED and LCD backlight.
31           For more information about this driver see
32           <file:Documentation/laptops/acer-wmi.txt>
34           If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
35           here.
37 config ASUS_LAPTOP
38         tristate "Asus Laptop Extras (EXPERIMENTAL)"
39         depends on ACPI
40         depends on EXPERIMENTAL && !ACPI_ASUS
41         select LEDS_CLASS
42         select NEW_LEDS
43         select BACKLIGHT_CLASS_DEVICE
44         depends on INPUT
45         ---help---
46           This is the new Linux driver for Asus laptops. It may also support some
47           MEDION, JVC or VICTOR laptops. It makes all the extra buttons generate
48           standard ACPI events that go through /proc/acpi/events. It also adds
49           support for video output switching, LCD backlight control, Bluetooth and
50           Wlan control, and most importantly, allows you to blink those fancy LEDs.
52           For more information and a userspace daemon for handling the extra
53           buttons see <http://acpi4asus.sf.net/>.
55           If you have an ACPI-compatible ASUS laptop, say Y or M here.
57 config DELL_LAPTOP
58         tristate "Dell Laptop Extras (EXPERIMENTAL)"
59         depends on X86
60         depends on DCDBAS
61         depends on EXPERIMENTAL
62         depends on BACKLIGHT_CLASS_DEVICE
63         depends on RFKILL
64         depends on POWER_SUPPLY
65         default n
66         ---help---
67         This driver adds support for rfkill and backlight control to Dell
68         laptops.
70 config DELL_WMI
71         tristate "Dell WMI extras"
72         depends on ACPI_WMI
73         depends on INPUT
74         ---help---
75           Say Y here if you want to support WMI-based hotkeys on Dell laptops.
77           To compile this driver as a module, choose M here: the module will
78           be called dell-wmi.
80 config FUJITSU_LAPTOP
81         tristate "Fujitsu Laptop Extras"
82         depends on ACPI
83         depends on INPUT
84         depends on BACKLIGHT_CLASS_DEVICE
85         ---help---
86           This is a driver for laptops built by Fujitsu:
88             * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
89             * Possibly other Fujitsu laptop models
90             * Tested with S6410 and S7020
92           It adds support for LCD brightness control and some hotkeys.
94           If you have a Fujitsu laptop, say Y or M here.
96 config FUJITSU_LAPTOP_DEBUG
97         bool "Verbose debug mode for Fujitsu Laptop Extras"
98         depends on FUJITSU_LAPTOP
99         default n
100         ---help---
101           Enables extra debug output from the fujitsu extras driver, at the
102           expense of a slight increase in driver size.
104           If you are not sure, say N here.
106 config TC1100_WMI
107         tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)"
108         depends on !X86_64
109         depends on EXPERIMENTAL
110         depends on ACPI
111         select ACPI_WMI
112         ---help---
113           This is a driver for the WMI extensions (wireless and bluetooth power
114           control) of the HP Compaq TC1100 tablet.
116 config HP_WMI
117         tristate "HP WMI extras"
118         depends on ACPI_WMI
119         depends on INPUT
120         depends on RFKILL
121         help
122          Say Y here if you want to support WMI-based hotkeys on HP laptops and
123          to read data from WMI such as docking or ambient light sensor state.
125          To compile this driver as a module, choose M here: the module will
126          be called hp-wmi.
128 config MSI_LAPTOP
129         tristate "MSI Laptop Extras"
130         depends on ACPI
131         depends on BACKLIGHT_CLASS_DEVICE
132         ---help---
133           This is a driver for laptops built by MSI (MICRO-STAR
134           INTERNATIONAL):
136           MSI MegaBook S270 (MS-1013)
137           Cytron/TCM/Medion/Tchibo MD96100/SAM2000
139           It adds support for Bluetooth, WLAN and LCD brightness control.
141           More information about this driver is available at
142           <http://0pointer.de/lennart/tchibo.html>.
144           If you have an MSI S270 laptop, say Y or M here.
146 config PANASONIC_LAPTOP
147         tristate "Panasonic Laptop Extras"
148         depends on INPUT && ACPI
149         depends on BACKLIGHT_CLASS_DEVICE
150         ---help---
151           This driver adds support for access to backlight control and hotkeys
152           on Panasonic Let's Note laptops.
154           If you have a Panasonic Let's note laptop (such as the R1(N variant),
155           R2, R3, R5, T2, W2 and Y2 series), say Y.
157 config COMPAL_LAPTOP
158         tristate "Compal Laptop Extras"
159         depends on ACPI
160         depends on BACKLIGHT_CLASS_DEVICE
161         ---help---
162           This is a driver for laptops built by Compal:
164           Compal FL90/IFL90
165           Compal FL91/IFL91
166           Compal FL92/JFL92
167           Compal FT00/IFT00
169           It adds support for Bluetooth, WLAN and LCD brightness control.
171           If you have an Compal FL9x/IFL9x/FT00 laptop, say Y or M here.
173 config SONY_LAPTOP
174         tristate "Sony Laptop Extras"
175         depends on ACPI
176         select BACKLIGHT_CLASS_DEVICE
177         depends on INPUT
178         depends on RFKILL
179           ---help---
180           This mini-driver drives the SNC and SPIC devices present in the ACPI
181           BIOS of the Sony Vaio laptops.
183           It gives access to some extra laptop functionalities like Bluetooth,
184           screen brightness control, Fn keys and allows powering on/off some
185           devices.
187           Read <file:Documentation/laptops/sony-laptop.txt> for more information.
189 config SONYPI_COMPAT
190         bool "Sonypi compatibility"
191         depends on SONY_LAPTOP
192           ---help---
193           Build the sonypi driver compatibility code into the sony-laptop driver.
195 config THINKPAD_ACPI
196         tristate "ThinkPad ACPI Laptop Extras"
197         depends on ACPI
198         depends on INPUT
199         select BACKLIGHT_LCD_SUPPORT
200         select BACKLIGHT_CLASS_DEVICE
201         select HWMON
202         select NVRAM
203         select NEW_LEDS
204         select LEDS_CLASS
205         select NET
206         select RFKILL
207         ---help---
208           This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
209           support for Fn-Fx key combinations, Bluetooth control, video
210           output switching, ThinkLight control, UltraBay eject and more.
211           For more information about this driver see
212           <file:Documentation/laptops/thinkpad-acpi.txt> and
213           <http://ibm-acpi.sf.net/> .
215           This driver was formerly known as ibm-acpi.
217           Extra functionality will be available if the rfkill (CONFIG_RFKILL)
218           and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
219           Note that if you want ThinkPad-ACPI to be built-in instead of
220           modular, ALSA and rfkill will also have to be built-in.
222           If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
224 config THINKPAD_ACPI_ALSA_SUPPORT
225         bool "Console audio control ALSA interface"
226         depends on THINKPAD_ACPI
227         depends on SND
228         depends on SND = y || THINKPAD_ACPI = SND
229         default y
230         ---help---
231           Enables monitoring of the built-in console audio output control
232           (headphone and speakers), which is operated by the mute and (in
233           some ThinkPad models) volume hotkeys.
235           If this option is enabled, ThinkPad-ACPI will export an ALSA card
236           with a single read-only mixer control, which should be used for
237           on-screen-display feedback purposes by the Desktop Environment.
239           Optionally, the driver will also allow software control (the
240           ALSA mixer will be made read-write).  Please refer to the driver
241           documentation for details.
243           All IBM models have both volume and mute control.  Newer Lenovo
244           models only have mute control (the volume hotkeys are just normal
245           keys and volume control is done through the main HDA mixer).
247 config THINKPAD_ACPI_DEBUGFACILITIES
248         bool "Maintainer debug facilities"
249         depends on THINKPAD_ACPI
250         default n
251         ---help---
252           Enables extra stuff in the thinkpad-acpi which is completely useless
253           for normal use.  Read the driver source to find out what it does.
255           Say N here, unless you were told by a kernel maintainer to do
256           otherwise.
258 config THINKPAD_ACPI_DEBUG
259         bool "Verbose debug mode"
260         depends on THINKPAD_ACPI
261         default n
262         ---help---
263           Enables extra debugging information, at the expense of a slightly
264           increase in driver size.
266           If you are not sure, say N here.
268 config THINKPAD_ACPI_UNSAFE_LEDS
269         bool "Allow control of important LEDs (unsafe)"
270         depends on THINKPAD_ACPI
271         default n
272         ---help---
273           Overriding LED state on ThinkPads can mask important
274           firmware alerts (like critical battery condition), or misled
275           the user into damaging the hardware (undocking or ejecting
276           the bay while buses are still active), etc.
278           LED control on the ThinkPad is write-only (with very few
279           exceptions on very ancient models), which makes it
280           impossible to know beforehand if important information will
281           be lost when one changes LED state.
283           Users that know what they are doing can enable this option
284           and the driver will allow control of every LED, including
285           the ones on the dock stations.
287           Never enable this option on a distribution kernel.
289           Say N here, unless you are building a kernel for your own
290           use, and need to control the important firmware LEDs.
292 config THINKPAD_ACPI_VIDEO
293         bool "Video output control support"
294         depends on THINKPAD_ACPI
295         default y
296         ---help---
297           Allows the thinkpad_acpi driver to provide an interface to control
298           the various video output ports.
300           This feature often won't work well, depending on ThinkPad model,
301           display state, video output devices in use, whether there is a X
302           server running, phase of the moon, and the current mood of
303           Schroedinger's cat.  If you can use X.org's RandR to control
304           your ThinkPad's video output ports instead of this feature,
305           don't think twice: do it and say N here to save memory and avoid
306           bad interactions with X.org.
308           NOTE: access to this feature is limited to processes with the
309           CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
310           where it interacts badly with X.org.
312           If you are not sure, say Y here but do try to check if you could
313           be using X.org RandR instead.
315 config THINKPAD_ACPI_HOTKEY_POLL
316         bool "Support NVRAM polling for hot keys"
317         depends on THINKPAD_ACPI
318         default y
319         ---help---
320           Some thinkpad models benefit from NVRAM polling to detect a few of
321           the hot key press events.  If you know your ThinkPad model does not
322           need to do NVRAM polling to support any of the hot keys you use,
323           unselecting this option will save about 1kB of memory.
325           ThinkPads T40 and newer, R52 and newer, and X31 and newer are
326           unlikely to need NVRAM polling in their latest BIOS versions.
328           NVRAM polling can detect at most the following keys: ThinkPad/Access
329           IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
330           Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
332           If you are not sure, say Y here.  The driver enables polling only if
333           it is strictly necessary to do so.
335 config INTEL_MENLOW
336         tristate "Thermal Management driver for Intel menlow platform"
337         depends on ACPI_THERMAL
338         select THERMAL
339         ---help---
340           ACPI thermal management enhancement driver on
341           Intel Menlow platform.
343           If unsure, say N.
345 config EEEPC_LAPTOP
346         tristate "Eee PC Hotkey Driver (EXPERIMENTAL)"
347         depends on ACPI
348         depends on INPUT
349         depends on EXPERIMENTAL
350         select BACKLIGHT_CLASS_DEVICE
351         select HWMON
352         select RFKILL
353         ---help---
354           This driver supports the Fn-Fx keys on Eee PC laptops.
355           It also adds the ability to switch camera/wlan on/off.
357           If you have an Eee PC laptop, say Y or M here.
360 config ACPI_WMI
361         tristate "WMI"
362         depends on ACPI
363         help
364           This driver adds support for the ACPI-WMI (Windows Management
365           Instrumentation) mapper device (PNP0C14) found on some systems.
367           ACPI-WMI is a proprietary extension to ACPI to expose parts of the
368           ACPI firmware to userspace - this is done through various vendor
369           defined methods and data blocks in a PNP0C14 device, which are then
370           made available for userspace to call.
372           The implementation of this in Linux currently only exposes this to
373           other kernel space drivers.
375           This driver is a required dependency to build the firmware specific
376           drivers needed on many machines, including Acer and HP laptops.
378           It is safe to enable this driver even if your DSDT doesn't define
379           any ACPI-WMI devices.
381 config ACPI_ASUS
382         tristate "ASUS/Medion Laptop Extras"
383         depends on ACPI
384         select BACKLIGHT_CLASS_DEVICE
385         ---help---
386           This driver provides support for extra features of ACPI-compatible
387           ASUS laptops. As some of Medion laptops are made by ASUS, it may also
388           support some Medion laptops (such as 9675 for example).  It makes all
389           the extra buttons generate standard ACPI events that go through
390           /proc/acpi/events, and (on some models) adds support for changing the
391           display brightness and output, switching the LCD backlight on and off,
392           and most importantly, allows you to blink those fancy LEDs intended
393           for reporting mail and wireless status.
395           Note: display switching code is currently considered EXPERIMENTAL,
396           toying with these values may even lock your machine.
398           All settings are changed via /proc/acpi/asus directory entries. Owner
399           and group for these entries can be set with asus_uid and asus_gid
400           parameters.
402           More information and a userspace daemon for handling the extra buttons
403           at <http://sourceforge.net/projects/acpi4asus/>.
405           If you have an ACPI-compatible ASUS laptop, say Y or M here. This
406           driver is still under development, so if your laptop is unsupported or
407           something works not quite as expected, please use the mailing list
408           available on the above page (acpi4asus-user@lists.sourceforge.net).
410           NOTE: This driver is deprecated and will probably be removed soon,
411           use asus-laptop instead.
413 config ACPI_TOSHIBA
414         tristate "Toshiba Laptop Extras"
415         depends on ACPI
416         depends on INPUT
417         select INPUT_POLLDEV
418         select NET
419         select RFKILL
420         select BACKLIGHT_CLASS_DEVICE
421         ---help---
422           This driver adds support for access to certain system settings
423           on "legacy free" Toshiba laptops.  These laptops can be recognized by
424           their lack of a BIOS setup menu and APM support.
426           On these machines, all system configuration is handled through the
427           ACPI.  This driver is required for access to controls not covered
428           by the general ACPI drivers, such as LCD brightness, video output,
429           etc.
431           This driver differs from the non-ACPI Toshiba laptop driver (located
432           under "Processor type and features") in several aspects.
433           Configuration is accessed by reading and writing text files in the
434           /proc tree instead of by program interface to /dev.  Furthermore, no
435           power management functions are exposed, as those are handled by the
436           general ACPI drivers.
438           More information about this driver is available at
439           <http://memebeam.org/toys/ToshibaAcpiDriver>.
441           If you have a legacy free Toshiba laptop (such as the Libretto L1
442           series), say Y.
443 endif # X86_PLATFORM_DEVICES