xref: /openbmc/linux/drivers/platform/x86/Kconfig (revision 4800cd83)
1#
2# X86 Platform Specific Drivers
3#
4
5menuconfig X86_PLATFORM_DEVICES
6	bool "X86 Platform Specific Device Drivers"
7	default y
8	depends on X86
9	---help---
10	  Say Y here to get to see options for device drivers for various
11	  x86 platforms, including vendor-specific laptop extension drivers.
12	  This option alone does not add any kernel code.
13
14	  If you say N, all options in this submenu will be skipped and disabled.
15
16if X86_PLATFORM_DEVICES
17
18config ACER_WMI
19	tristate "Acer WMI Laptop Extras"
20	depends on ACPI
21	select LEDS_CLASS
22	select NEW_LEDS
23	depends on BACKLIGHT_CLASS_DEVICE
24	depends on SERIO_I8042
25	depends on INPUT
26	depends on RFKILL || RFKILL = n
27	depends on ACPI_WMI
28	select INPUT_SPARSEKMAP
29	---help---
30	  This is a driver for newer Acer (and Wistron) laptops. It adds
31	  wireless radio and bluetooth control, and on some laptops,
32	  exposes the mail LED and LCD backlight.
33
34	  For more information about this driver see
35	  <file:Documentation/laptops/acer-wmi.txt>
36
37	  If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
38	  here.
39
40config ACERHDF
41	tristate "Acer Aspire One temperature and fan driver"
42	depends on THERMAL && THERMAL_HWMON && ACPI
43	---help---
44	  This is a driver for Acer Aspire One netbooks. It allows to access
45	  the temperature sensor and to control the fan.
46
47	  After loading this driver the BIOS is still in control of the fan.
48	  To let the kernel handle the fan, do:
49	  echo -n enabled > /sys/class/thermal/thermal_zone0/mode
50
51	  For more information about this driver see
52	  <http://piie.net/files/acerhdf_README.txt>
53
54	  If you have an Acer Aspire One netbook, say Y or M
55	  here.
56
57config ASUS_LAPTOP
58	tristate "Asus Laptop Extras"
59	depends on ACPI
60	depends on !ACPI_ASUS
61	select LEDS_CLASS
62	select NEW_LEDS
63	select BACKLIGHT_CLASS_DEVICE
64	depends on INPUT
65	depends on RFKILL || RFKILL = n
66	select INPUT_SPARSEKMAP
67	---help---
68	  This is the new Linux driver for Asus laptops. It may also support some
69	  MEDION, JVC or VICTOR laptops. It makes all the extra buttons generate
70	  standard ACPI events and input events. It also adds
71	  support for video output switching, LCD backlight control, Bluetooth and
72	  Wlan control, and most importantly, allows you to blink those fancy LEDs.
73
74	  For more information and a userspace daemon for handling the extra
75	  buttons see <http://acpi4asus.sf.net>.
76
77	  If you have an ACPI-compatible ASUS laptop, say Y or M here.
78
79config DELL_LAPTOP
80	tristate "Dell Laptop Extras (EXPERIMENTAL)"
81	depends on X86
82	depends on DCDBAS
83	depends on EXPERIMENTAL
84	depends on BACKLIGHT_CLASS_DEVICE
85	depends on RFKILL || RFKILL = n
86	depends on POWER_SUPPLY
87	depends on SERIO_I8042
88	default n
89	---help---
90	This driver adds support for rfkill and backlight control to Dell
91	laptops.
92
93config DELL_WMI
94	tristate "Dell WMI extras"
95	depends on ACPI_WMI
96	depends on INPUT
97	select INPUT_SPARSEKMAP
98	---help---
99	  Say Y here if you want to support WMI-based hotkeys on Dell laptops.
100
101	  To compile this driver as a module, choose M here: the module will
102	  be called dell-wmi.
103
104config FUJITSU_LAPTOP
105	tristate "Fujitsu Laptop Extras"
106	depends on ACPI
107	depends on INPUT
108	depends on BACKLIGHT_CLASS_DEVICE
109	depends on LEDS_CLASS || LEDS_CLASS=n
110	---help---
111	  This is a driver for laptops built by Fujitsu:
112
113	    * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
114	    * Possibly other Fujitsu laptop models
115	    * Tested with S6410 and S7020
116
117	  It adds support for LCD brightness control and some hotkeys.
118
119	  If you have a Fujitsu laptop, say Y or M here.
120
121config FUJITSU_LAPTOP_DEBUG
122	bool "Verbose debug mode for Fujitsu Laptop Extras"
123	depends on FUJITSU_LAPTOP
124	default n
125	---help---
126	  Enables extra debug output from the fujitsu extras driver, at the
127	  expense of a slight increase in driver size.
128
129	  If you are not sure, say N here.
130
131config TC1100_WMI
132	tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)"
133	depends on !X86_64
134	depends on EXPERIMENTAL
135	depends on ACPI
136	depends on ACPI_WMI
137	---help---
138	  This is a driver for the WMI extensions (wireless and bluetooth power
139	  control) of the HP Compaq TC1100 tablet.
140
141config HP_WMI
142	tristate "HP WMI extras"
143	depends on ACPI_WMI
144	depends on INPUT
145	depends on RFKILL || RFKILL = n
146	select INPUT_SPARSEKMAP
147	help
148	 Say Y here if you want to support WMI-based hotkeys on HP laptops and
149	 to read data from WMI such as docking or ambient light sensor state.
150
151	 To compile this driver as a module, choose M here: the module will
152	 be called hp-wmi.
153
154config MSI_LAPTOP
155	tristate "MSI Laptop Extras"
156	depends on ACPI
157	depends on BACKLIGHT_CLASS_DEVICE
158	depends on RFKILL
159	depends on SERIO_I8042
160	---help---
161	  This is a driver for laptops built by MSI (MICRO-STAR
162	  INTERNATIONAL):
163
164	  MSI MegaBook S270 (MS-1013)
165	  Cytron/TCM/Medion/Tchibo MD96100/SAM2000
166
167	  It adds support for Bluetooth, WLAN and LCD brightness control.
168
169	  More information about this driver is available at
170	  <http://0pointer.de/lennart/tchibo.html>.
171
172	  If you have an MSI S270 laptop, say Y or M here.
173
174config PANASONIC_LAPTOP
175	tristate "Panasonic Laptop Extras"
176	depends on INPUT && ACPI
177	depends on BACKLIGHT_CLASS_DEVICE
178	select INPUT_SPARSEKMAP
179	---help---
180	  This driver adds support for access to backlight control and hotkeys
181	  on Panasonic Let's Note laptops.
182
183	  If you have a Panasonic Let's note laptop (such as the R1(N variant),
184	  R2, R3, R5, T2, W2 and Y2 series), say Y.
185
186config COMPAL_LAPTOP
187	tristate "Compal Laptop Extras"
188	depends on ACPI
189	depends on BACKLIGHT_CLASS_DEVICE
190	depends on RFKILL
191	depends on HWMON
192	depends on POWER_SUPPLY
193	---help---
194	  This is a driver for laptops built by Compal:
195
196	  Compal FL90/IFL90
197	  Compal FL91/IFL91
198	  Compal FL92/JFL92
199	  Compal FT00/IFT00
200
201	  It adds support for Bluetooth, WLAN and LCD brightness control.
202
203	  If you have an Compal FL9x/IFL9x/FT00 laptop, say Y or M here.
204
205config SONY_LAPTOP
206	tristate "Sony Laptop Extras"
207	depends on ACPI
208	select BACKLIGHT_CLASS_DEVICE
209	depends on INPUT
210	depends on RFKILL
211	  ---help---
212	  This mini-driver drives the SNC and SPIC devices present in the ACPI
213	  BIOS of the Sony Vaio laptops.
214
215	  It gives access to some extra laptop functionalities like Bluetooth,
216	  screen brightness control, Fn keys and allows powering on/off some
217	  devices.
218
219	  Read <file:Documentation/laptops/sony-laptop.txt> for more information.
220
221config SONYPI_COMPAT
222	bool "Sonypi compatibility"
223	depends on SONY_LAPTOP
224	  ---help---
225	  Build the sonypi driver compatibility code into the sony-laptop driver.
226
227config IDEAPAD_LAPTOP
228	tristate "Lenovo IdeaPad Laptop Extras"
229	depends on ACPI
230	depends on RFKILL && INPUT
231	select INPUT_SPARSEKMAP
232	help
233	  This is a driver for the rfkill switches on Lenovo IdeaPad netbooks.
234
235config THINKPAD_ACPI
236	tristate "ThinkPad ACPI Laptop Extras"
237	depends on ACPI
238	depends on INPUT
239	depends on RFKILL || RFKILL = n
240	select BACKLIGHT_LCD_SUPPORT
241	select BACKLIGHT_CLASS_DEVICE
242	select HWMON
243	select NVRAM
244	select NEW_LEDS
245	select LEDS_CLASS
246	---help---
247	  This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
248	  support for Fn-Fx key combinations, Bluetooth control, video
249	  output switching, ThinkLight control, UltraBay eject and more.
250	  For more information about this driver see
251	  <file:Documentation/laptops/thinkpad-acpi.txt> and
252	  <http://ibm-acpi.sf.net/> .
253
254	  This driver was formerly known as ibm-acpi.
255
256	  Extra functionality will be available if the rfkill (CONFIG_RFKILL)
257	  and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
258	  Note that if you want ThinkPad-ACPI to be built-in instead of
259	  modular, ALSA and rfkill will also have to be built-in.
260
261	  If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
262
263config THINKPAD_ACPI_ALSA_SUPPORT
264	bool "Console audio control ALSA interface"
265	depends on THINKPAD_ACPI
266	depends on SND
267	depends on SND = y || THINKPAD_ACPI = SND
268	default y
269	---help---
270	  Enables monitoring of the built-in console audio output control
271	  (headphone and speakers), which is operated by the mute and (in
272	  some ThinkPad models) volume hotkeys.
273
274	  If this option is enabled, ThinkPad-ACPI will export an ALSA card
275	  with a single read-only mixer control, which should be used for
276	  on-screen-display feedback purposes by the Desktop Environment.
277
278	  Optionally, the driver will also allow software control (the
279	  ALSA mixer will be made read-write).  Please refer to the driver
280	  documentation for details.
281
282	  All IBM models have both volume and mute control.  Newer Lenovo
283	  models only have mute control (the volume hotkeys are just normal
284	  keys and volume control is done through the main HDA mixer).
285
286config THINKPAD_ACPI_DEBUGFACILITIES
287	bool "Maintainer debug facilities"
288	depends on THINKPAD_ACPI
289	default n
290	---help---
291	  Enables extra stuff in the thinkpad-acpi which is completely useless
292	  for normal use.  Read the driver source to find out what it does.
293
294	  Say N here, unless you were told by a kernel maintainer to do
295	  otherwise.
296
297config THINKPAD_ACPI_DEBUG
298	bool "Verbose debug mode"
299	depends on THINKPAD_ACPI
300	default n
301	---help---
302	  Enables extra debugging information, at the expense of a slightly
303	  increase in driver size.
304
305	  If you are not sure, say N here.
306
307config THINKPAD_ACPI_UNSAFE_LEDS
308	bool "Allow control of important LEDs (unsafe)"
309	depends on THINKPAD_ACPI
310	default n
311	---help---
312	  Overriding LED state on ThinkPads can mask important
313	  firmware alerts (like critical battery condition), or misled
314	  the user into damaging the hardware (undocking or ejecting
315	  the bay while buses are still active), etc.
316
317	  LED control on the ThinkPad is write-only (with very few
318	  exceptions on very ancient models), which makes it
319	  impossible to know beforehand if important information will
320	  be lost when one changes LED state.
321
322	  Users that know what they are doing can enable this option
323	  and the driver will allow control of every LED, including
324	  the ones on the dock stations.
325
326	  Never enable this option on a distribution kernel.
327
328	  Say N here, unless you are building a kernel for your own
329	  use, and need to control the important firmware LEDs.
330
331config THINKPAD_ACPI_VIDEO
332	bool "Video output control support"
333	depends on THINKPAD_ACPI
334	default y
335	---help---
336	  Allows the thinkpad_acpi driver to provide an interface to control
337	  the various video output ports.
338
339	  This feature often won't work well, depending on ThinkPad model,
340	  display state, video output devices in use, whether there is a X
341	  server running, phase of the moon, and the current mood of
342	  Schroedinger's cat.  If you can use X.org's RandR to control
343	  your ThinkPad's video output ports instead of this feature,
344	  don't think twice: do it and say N here to save memory and avoid
345	  bad interactions with X.org.
346
347	  NOTE: access to this feature is limited to processes with the
348	  CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
349	  where it interacts badly with X.org.
350
351	  If you are not sure, say Y here but do try to check if you could
352	  be using X.org RandR instead.
353
354config THINKPAD_ACPI_HOTKEY_POLL
355	bool "Support NVRAM polling for hot keys"
356	depends on THINKPAD_ACPI
357	default y
358	---help---
359	  Some thinkpad models benefit from NVRAM polling to detect a few of
360	  the hot key press events.  If you know your ThinkPad model does not
361	  need to do NVRAM polling to support any of the hot keys you use,
362	  unselecting this option will save about 1kB of memory.
363
364	  ThinkPads T40 and newer, R52 and newer, and X31 and newer are
365	  unlikely to need NVRAM polling in their latest BIOS versions.
366
367	  NVRAM polling can detect at most the following keys: ThinkPad/Access
368	  IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
369	  Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
370
371	  If you are not sure, say Y here.  The driver enables polling only if
372	  it is strictly necessary to do so.
373
374config SENSORS_HDAPS
375	tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
376	depends on INPUT && X86
377	select INPUT_POLLDEV
378	default n
379	help
380	  This driver provides support for the IBM Hard Drive Active Protection
381	  System (hdaps), which provides an accelerometer and other misc. data.
382	  ThinkPads starting with the R50, T41, and X40 are supported.  The
383	  accelerometer data is readable via sysfs.
384
385	  This driver also provides an absolute input class device, allowing
386	  the laptop to act as a pinball machine-esque joystick.
387
388	  If your ThinkPad is not recognized by the driver, please update to latest
389	  BIOS. This is especially the case for some R52 ThinkPads.
390
391	  Say Y here if you have an applicable laptop and want to experience
392	  the awesome power of hdaps.
393
394config INTEL_MENLOW
395	tristate "Thermal Management driver for Intel menlow platform"
396	depends on ACPI_THERMAL
397	select THERMAL
398	---help---
399	  ACPI thermal management enhancement driver on
400	  Intel Menlow platform.
401
402	  If unsure, say N.
403
404config EEEPC_LAPTOP
405	tristate "Eee PC Hotkey Driver (EXPERIMENTAL)"
406	depends on ACPI
407	depends on INPUT
408	depends on EXPERIMENTAL
409	depends on RFKILL || RFKILL = n
410	depends on HOTPLUG_PCI
411	select BACKLIGHT_CLASS_DEVICE
412	select HWMON
413	select LEDS_CLASS
414	select NEW_LEDS
415	select INPUT_SPARSEKMAP
416	---help---
417	  This driver supports the Fn-Fx keys on Eee PC laptops.
418
419	  It  also gives access to some extra laptop functionalities like
420	  Bluetooth, backlight and allows powering on/off some other
421	  devices.
422
423	  If you have an Eee PC laptop, say Y or M here.
424
425config EEEPC_WMI
426	tristate "Eee PC WMI Hotkey Driver (EXPERIMENTAL)"
427	depends on ACPI_WMI
428	depends on INPUT
429	depends on EXPERIMENTAL
430	depends on BACKLIGHT_CLASS_DEVICE
431	depends on RFKILL || RFKILL = n
432	select INPUT_SPARSEKMAP
433	select LEDS_CLASS
434	select NEW_LEDS
435	---help---
436	  Say Y here if you want to support WMI-based hotkeys on Eee PC laptops.
437
438	  To compile this driver as a module, choose M here: the module will
439	  be called eeepc-wmi.
440
441config ACPI_WMI
442	tristate "WMI"
443	depends on ACPI
444	help
445	  This driver adds support for the ACPI-WMI (Windows Management
446	  Instrumentation) mapper device (PNP0C14) found on some systems.
447
448	  ACPI-WMI is a proprietary extension to ACPI to expose parts of the
449	  ACPI firmware to userspace - this is done through various vendor
450	  defined methods and data blocks in a PNP0C14 device, which are then
451	  made available for userspace to call.
452
453	  The implementation of this in Linux currently only exposes this to
454	  other kernel space drivers.
455
456	  This driver is a required dependency to build the firmware specific
457	  drivers needed on many machines, including Acer and HP laptops.
458
459	  It is safe to enable this driver even if your DSDT doesn't define
460	  any ACPI-WMI devices.
461
462config MSI_WMI
463	tristate "MSI WMI extras"
464	depends on ACPI_WMI
465	depends on INPUT
466	depends on BACKLIGHT_CLASS_DEVICE
467	select INPUT_SPARSEKMAP
468	help
469	 Say Y here if you want to support WMI-based hotkeys on MSI laptops.
470
471	 To compile this driver as a module, choose M here: the module will
472	 be called msi-wmi.
473
474config ACPI_ASUS
475	tristate "ASUS/Medion Laptop Extras (DEPRECATED)"
476	depends on ACPI
477	select BACKLIGHT_CLASS_DEVICE
478	---help---
479	  This driver provides support for extra features of ACPI-compatible
480	  ASUS laptops. As some of Medion laptops are made by ASUS, it may also
481	  support some Medion laptops (such as 9675 for example).  It makes all
482	  the extra buttons generate standard ACPI events that go through
483	  /proc/acpi/events, and (on some models) adds support for changing the
484	  display brightness and output, switching the LCD backlight on and off,
485	  and most importantly, allows you to blink those fancy LEDs intended
486	  for reporting mail and wireless status.
487
488	  Note: display switching code is currently considered EXPERIMENTAL,
489	  toying with these values may even lock your machine.
490
491	  All settings are changed via /proc/acpi/asus directory entries. Owner
492	  and group for these entries can be set with asus_uid and asus_gid
493	  parameters.
494
495	  More information and a userspace daemon for handling the extra buttons
496	  at <http://acpi4asus.sf.net>.
497
498	  If you have an ACPI-compatible ASUS laptop, say Y or M here. This
499	  driver is still under development, so if your laptop is unsupported or
500	  something works not quite as expected, please use the mailing list
501	  available on the above page (acpi4asus-user@lists.sourceforge.net).
502
503	  NOTE: This driver is deprecated and will probably be removed soon,
504	  use asus-laptop instead.
505
506config TOPSTAR_LAPTOP
507	tristate "Topstar Laptop Extras"
508	depends on ACPI
509	depends on INPUT
510	select INPUT_SPARSEKMAP
511	---help---
512	  This driver adds support for hotkeys found on Topstar laptops.
513
514	  If you have a Topstar laptop, say Y or M here.
515
516config ACPI_TOSHIBA
517	tristate "Toshiba Laptop Extras"
518	depends on ACPI
519	select LEDS_CLASS
520	select NEW_LEDS
521	depends on BACKLIGHT_CLASS_DEVICE
522	depends on INPUT
523	depends on RFKILL || RFKILL = n
524	select INPUT_POLLDEV
525	select INPUT_SPARSEKMAP
526	---help---
527	  This driver adds support for access to certain system settings
528	  on "legacy free" Toshiba laptops.  These laptops can be recognized by
529	  their lack of a BIOS setup menu and APM support.
530
531	  On these machines, all system configuration is handled through the
532	  ACPI.  This driver is required for access to controls not covered
533	  by the general ACPI drivers, such as LCD brightness, video output,
534	  etc.
535
536	  This driver differs from the non-ACPI Toshiba laptop driver (located
537	  under "Processor type and features") in several aspects.
538	  Configuration is accessed by reading and writing text files in the
539	  /proc tree instead of by program interface to /dev.  Furthermore, no
540	  power management functions are exposed, as those are handled by the
541	  general ACPI drivers.
542
543	  More information about this driver is available at
544	  <http://memebeam.org/toys/ToshibaAcpiDriver>.
545
546	  If you have a legacy free Toshiba laptop (such as the Libretto L1
547	  series), say Y.
548
549config TOSHIBA_BT_RFKILL
550	tristate "Toshiba Bluetooth RFKill switch support"
551	depends on ACPI
552	---help---
553	  This driver adds support for Bluetooth events for the RFKill
554	  switch on modern Toshiba laptops with full ACPI support and
555	  an RFKill switch.
556
557	  This driver handles RFKill events for the TOS6205 Bluetooth,
558	  and re-enables it when the switch is set back to the 'on'
559	  position.
560
561	  If you have a modern Toshiba laptop with a Bluetooth and an
562	  RFKill switch (such as the Portege R500), say Y.
563
564config ACPI_CMPC
565	tristate "CMPC Laptop Extras"
566	depends on X86 && ACPI
567	depends on RFKILL || RFKILL=n
568	select INPUT
569	select BACKLIGHT_CLASS_DEVICE
570	default n
571	help
572	  Support for Intel Classmate PC ACPI devices, including some
573	  keys as input device, backlight device, tablet and accelerometer
574	  devices.
575
576config INTEL_SCU_IPC
577	bool "Intel SCU IPC Support"
578	depends on X86_MRST
579	default y
580	---help---
581	  IPC is used to bridge the communications between kernel and SCU on
582	  some embedded Intel x86 platforms. This is not needed for PC-type
583	  machines.
584
585config INTEL_SCU_IPC_UTIL
586	tristate "Intel SCU IPC utility driver"
587	depends on INTEL_SCU_IPC
588	default y
589	---help---
590	  The IPC Util driver provides an interface with the SCU enabling
591	  low level access for debug work and updating the firmware. Say
592	  N unless you will be doing this on an Intel MID platform.
593
594config GPIO_INTEL_PMIC
595	bool "Intel PMIC GPIO support"
596	depends on INTEL_SCU_IPC && GPIOLIB
597	---help---
598	  Say Y here to support GPIO via the SCU IPC interface
599	  on Intel MID platforms.
600
601config RAR_REGISTER
602	bool "Restricted Access Region Register Driver"
603	depends on PCI && X86_MRST
604	default n
605	---help---
606	  This driver allows other kernel drivers access to the
607	  contents of the restricted access region control registers.
608
609	  The restricted access region control registers
610	  (rar_registers) are used to pass address and
611	  locking information on restricted access regions
612	  to other drivers that use restricted access regions.
613
614	  The restricted access regions are regions of memory
615	  on the Intel MID Platform that are not accessible to
616	  the x86 processor, but are accessible to dedicated
617	  processors on board peripheral devices.
618
619	  The purpose of the restricted access regions is to
620	  protect sensitive data from compromise by unauthorized
621	  programs running on the x86 processor.
622
623config INTEL_IPS
624	tristate "Intel Intelligent Power Sharing"
625	depends on ACPI
626	---help---
627	  Intel Calpella platforms support dynamic power sharing between the
628	  CPU and GPU, maximizing performance in a given TDP.  This driver,
629	  along with the CPU frequency and i915 drivers, provides that
630	  functionality.  If in doubt, say Y here; it will only load on
631	  supported platforms.
632
633config IBM_RTL
634	tristate "Device driver to enable PRTL support"
635	depends on X86 && PCI
636	---help---
637	 Enable support for IBM Premium Real Time Mode (PRTM).
638	 This module will allow you the enter and exit PRTM in the BIOS via
639	 sysfs on platforms that support this feature.  System in PRTM will
640	 not receive CPU-generated SMIs for recoverable errors.  Use of this
641	 feature without proper support may void your hardware warranty.
642
643	 If the proper BIOS support is found the driver will load and create
644	 /sys/devices/system/ibm_rtl/.  The "state" variable will indicate
645	 whether or not the BIOS is in PRTM.
646	 state = 0 (BIOS SMIs on)
647	 state = 1 (BIOS SMIs off)
648
649config XO1_RFKILL
650	tristate "OLPC XO-1 software RF kill switch"
651	depends on OLPC
652	depends on RFKILL
653	---help---
654	  Support for enabling/disabling the WLAN interface on the OLPC XO-1
655	  laptop.
656
657endif # X86_PLATFORM_DEVICES
658