]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blob - drivers/platform/x86/Kconfig
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec
[mirror_ubuntu-hirsute-kernel.git] / drivers / platform / x86 / Kconfig
1 #
2 # X86 Platform Specific Drivers
3 #
4
5 menuconfig 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
16 if X86_PLATFORM_DEVICES
17
18 config 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 # Acer WMI depends on ACPI_VIDEO when ACPI is enabled
30 select ACPI_VIDEO if ACPI
31 ---help---
32 This is a driver for newer Acer (and Wistron) laptops. It adds
33 wireless radio and bluetooth control, and on some laptops,
34 exposes the mail LED and LCD backlight.
35
36 If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
37 here.
38
39 config ACER_WIRELESS
40 tristate "Acer Wireless Radio Control Driver"
41 depends on ACPI
42 depends on INPUT
43 ---help---
44 The Acer Wireless Radio Control handles the airplane mode hotkey
45 present on new Acer laptops.
46
47 Say Y or M here if you have an Acer notebook with an airplane mode
48 hotkey.
49
50 If you choose to compile this driver as a module the module will be
51 called acer-wireless.
52
53 config ACERHDF
54 tristate "Acer Aspire One temperature and fan driver"
55 depends on ACPI && THERMAL
56 select THERMAL_GOV_BANG_BANG
57 ---help---
58 This is a driver for Acer Aspire One netbooks. It allows to access
59 the temperature sensor and to control the fan.
60
61 After loading this driver the BIOS is still in control of the fan.
62 To let the kernel handle the fan, do:
63 echo -n enabled > /sys/class/thermal/thermal_zone0/mode
64
65 For more information about this driver see
66 <http://piie.net/files/acerhdf_README.txt>
67
68 If you have an Acer Aspire One netbook, say Y or M
69 here.
70
71 config ALIENWARE_WMI
72 tristate "Alienware Special feature control"
73 depends on ACPI
74 depends on LEDS_CLASS
75 depends on NEW_LEDS
76 depends on ACPI_WMI
77 ---help---
78 This is a driver for controlling Alienware BIOS driven
79 features. It exposes an interface for controlling the AlienFX
80 zones on Alienware machines that don't contain a dedicated AlienFX
81 USB MCU such as the X51 and X51-R2.
82
83 config ASUS_LAPTOP
84 tristate "Asus Laptop Extras"
85 depends on ACPI
86 select LEDS_CLASS
87 select NEW_LEDS
88 depends on BACKLIGHT_CLASS_DEVICE
89 depends on INPUT
90 depends on RFKILL || RFKILL = n
91 depends on ACPI_VIDEO || ACPI_VIDEO = n
92 select INPUT_SPARSEKMAP
93 select INPUT_POLLDEV
94 ---help---
95 This is a driver for Asus laptops, Lenovo SL and the Pegatron
96 Lucid tablet. It may also support some MEDION, JVC or VICTOR
97 laptops. It makes all the extra buttons generate standard
98 ACPI events and input events, and on the Lucid the built-in
99 accelerometer appears as an input device. It also adds
100 support for video output switching, LCD backlight control,
101 Bluetooth and Wlan control, and most importantly, allows you
102 to blink those fancy LEDs.
103
104 For more information see <http://acpi4asus.sf.net>.
105
106 If you have an ACPI-compatible ASUS laptop, say Y or M here.
107
108 config DELL_SMBIOS
109 tristate
110
111 config DELL_SMBIOS_WMI
112 tristate "Dell SMBIOS calling interface (WMI implementation)"
113 depends on ACPI_WMI
114 select DELL_WMI_DESCRIPTOR
115 select DELL_SMBIOS
116 ---help---
117 This provides an implementation for the Dell SMBIOS calling interface
118 communicated over ACPI-WMI.
119
120 If you have a Dell computer from >2007 you should say Y or M here.
121 If you aren't sure and this module doesn't work for your computer
122 it just won't load.
123
124 config DELL_SMBIOS_SMM
125 tristate "Dell SMBIOS calling interface (SMM implementation)"
126 depends on DCDBAS
127 select DELL_SMBIOS
128 ---help---
129 This provides an implementation for the Dell SMBIOS calling interface
130 communicated over SMI/SMM.
131
132 If you have a Dell computer from <=2017 you should say Y or M here.
133 If you aren't sure and this module doesn't work for your computer
134 it just won't load.
135
136 config DELL_LAPTOP
137 tristate "Dell Laptop Extras"
138 depends on DMI
139 depends on BACKLIGHT_CLASS_DEVICE
140 depends on ACPI_VIDEO || ACPI_VIDEO = n
141 depends on RFKILL || RFKILL = n
142 depends on SERIO_I8042
143 select DELL_SMBIOS
144 select POWER_SUPPLY
145 select LEDS_CLASS
146 select NEW_LEDS
147 ---help---
148 This driver adds support for rfkill and backlight control to Dell
149 laptops (except for some models covered by the Compal driver).
150
151 config DELL_WMI
152 tristate "Dell WMI notifications"
153 depends on ACPI_WMI
154 depends on DMI
155 depends on INPUT
156 depends on ACPI_VIDEO || ACPI_VIDEO = n
157 select DELL_WMI_DESCRIPTOR
158 select DELL_SMBIOS
159 select INPUT_SPARSEKMAP
160 ---help---
161 Say Y here if you want to support WMI-based hotkeys on Dell laptops.
162
163 To compile this driver as a module, choose M here: the module will
164 be called dell-wmi.
165
166 config DELL_WMI_DESCRIPTOR
167 tristate
168 depends on ACPI_WMI
169
170 config DELL_WMI_AIO
171 tristate "WMI Hotkeys for Dell All-In-One series"
172 depends on ACPI_WMI
173 depends on INPUT
174 select INPUT_SPARSEKMAP
175 ---help---
176 Say Y here if you want to support WMI-based hotkeys on Dell
177 All-In-One machines.
178
179 To compile this driver as a module, choose M here: the module will
180 be called dell-wmi-aio.
181
182 config DELL_WMI_LED
183 tristate "External LED on Dell Business Netbooks"
184 depends on LEDS_CLASS
185 depends on ACPI_WMI
186 help
187 This adds support for the Latitude 2100 and similar
188 notebooks that have an external LED.
189
190 config DELL_SMO8800
191 tristate "Dell Latitude freefall driver (ACPI SMO88XX)"
192 depends on ACPI
193 ---help---
194 Say Y here if you want to support SMO88XX freefall devices
195 on Dell Latitude laptops.
196
197 To compile this driver as a module, choose M here: the module will
198 be called dell-smo8800.
199
200 config DELL_RBTN
201 tristate "Dell Airplane Mode Switch driver"
202 depends on ACPI
203 depends on INPUT
204 depends on RFKILL
205 ---help---
206 Say Y here if you want to support Dell Airplane Mode Switch ACPI
207 device on Dell laptops. Sometimes it has names: DELLABCE or DELRBTN.
208 This driver register rfkill device or input hotkey device depending
209 on hardware type (hw switch slider or keyboard toggle button). For
210 rfkill devices it receive HW switch events and set correct hard
211 rfkill state.
212
213 To compile this driver as a module, choose M here: the module will
214 be called dell-rbtn.
215
216
217 config FUJITSU_LAPTOP
218 tristate "Fujitsu Laptop Extras"
219 depends on ACPI
220 depends on INPUT
221 depends on BACKLIGHT_CLASS_DEVICE
222 depends on ACPI_VIDEO || ACPI_VIDEO = n
223 select INPUT_SPARSEKMAP
224 select LEDS_CLASS
225 ---help---
226 This is a driver for laptops built by Fujitsu:
227
228 * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
229 * Possibly other Fujitsu laptop models
230 * Tested with S6410 and S7020
231
232 It adds support for LCD brightness control and some hotkeys.
233
234 If you have a Fujitsu laptop, say Y or M here.
235
236 config FUJITSU_TABLET
237 tristate "Fujitsu Tablet Extras"
238 depends on ACPI
239 depends on INPUT
240 ---help---
241 This is a driver for tablets built by Fujitsu:
242
243 * Lifebook P1510/P1610/P1620/Txxxx
244 * Stylistic ST5xxx
245 * Possibly other Fujitsu tablet models
246
247 It adds support for the panel buttons, docking station detection,
248 tablet/notebook mode detection for convertible and
249 orientation detection for docked slates.
250
251 If you have a Fujitsu convertible or slate, say Y or M here.
252
253 config AMILO_RFKILL
254 tristate "Fujitsu-Siemens Amilo rfkill support"
255 depends on RFKILL
256 depends on SERIO_I8042
257 ---help---
258 This is a driver for enabling wifi on some Fujitsu-Siemens Amilo
259 laptops.
260
261 config GPD_POCKET_FAN
262 tristate "GPD Pocket Fan Controller support"
263 depends on ACPI
264 depends on THERMAL
265 ---help---
266 Driver for the GPD Pocket vendor specific FAN02501 ACPI device
267 which controls the fan speed on the GPD Pocket.
268
269 Without this driver the fan on the Pocket will stay off independent
270 of the CPU temperature. Say Y or M if the kernel may be used on a
271 GPD pocket.
272
273 config TC1100_WMI
274 tristate "HP Compaq TC1100 Tablet WMI Extras"
275 depends on !X86_64
276 depends on ACPI
277 depends on ACPI_WMI
278 ---help---
279 This is a driver for the WMI extensions (wireless and bluetooth power
280 control) of the HP Compaq TC1100 tablet.
281
282 config HP_ACCEL
283 tristate "HP laptop accelerometer"
284 depends on INPUT && ACPI
285 depends on SERIO_I8042
286 select SENSORS_LIS3LV02D
287 select NEW_LEDS
288 select LEDS_CLASS
289 help
290 This driver provides support for the "Mobile Data Protection System 3D"
291 or "3D DriveGuard" feature of HP laptops. On such systems the driver
292 should load automatically (via ACPI alias).
293
294 Support for a led indicating disk protection will be provided as
295 hp::hddprotect. For more information on the feature, refer to
296 Documentation/misc-devices/lis3lv02d.
297
298 To compile this driver as a module, choose M here: the module will
299 be called hp_accel.
300
301 config HP_WIRELESS
302 tristate "HP wireless button"
303 depends on ACPI
304 depends on INPUT
305 help
306 This driver provides supports for new HP wireless button for Windows 8.
307 On such systems the driver should load automatically (via ACPI alias).
308
309 To compile this driver as a module, choose M here: the module will
310 be called hp-wireless.
311
312 config HP_WMI
313 tristate "HP WMI extras"
314 depends on ACPI_WMI
315 depends on INPUT
316 depends on RFKILL || RFKILL = n
317 select INPUT_SPARSEKMAP
318 help
319 Say Y here if you want to support WMI-based hotkeys on HP laptops and
320 to read data from WMI such as docking or ambient light sensor state.
321
322 To compile this driver as a module, choose M here: the module will
323 be called hp-wmi.
324
325 config MSI_LAPTOP
326 tristate "MSI Laptop Extras"
327 depends on ACPI
328 depends on BACKLIGHT_CLASS_DEVICE
329 depends on ACPI_VIDEO || ACPI_VIDEO = n
330 depends on RFKILL
331 depends on INPUT && SERIO_I8042
332 select INPUT_SPARSEKMAP
333 ---help---
334 This is a driver for laptops built by MSI (MICRO-STAR
335 INTERNATIONAL):
336
337 MSI MegaBook S270 (MS-1013)
338 Cytron/TCM/Medion/Tchibo MD96100/SAM2000
339
340 It adds support for Bluetooth, WLAN and LCD brightness control.
341
342 More information about this driver is available at
343 <http://0pointer.de/lennart/tchibo.html>.
344
345 If you have an MSI S270 laptop, say Y or M here.
346
347 config PANASONIC_LAPTOP
348 tristate "Panasonic Laptop Extras"
349 depends on INPUT && ACPI
350 depends on BACKLIGHT_CLASS_DEVICE
351 select INPUT_SPARSEKMAP
352 ---help---
353 This driver adds support for access to backlight control and hotkeys
354 on Panasonic Let's Note laptops.
355
356 If you have a Panasonic Let's note laptop (such as the R1(N variant),
357 R2, R3, R5, T2, W2 and Y2 series), say Y.
358
359 config COMPAL_LAPTOP
360 tristate "Compal (and others) Laptop Extras"
361 depends on ACPI
362 depends on BACKLIGHT_CLASS_DEVICE
363 depends on ACPI_VIDEO || ACPI_VIDEO = n
364 depends on RFKILL
365 depends on HWMON
366 depends on POWER_SUPPLY
367 ---help---
368 This is a driver for laptops built by Compal, and some models by
369 other brands (e.g. Dell, Toshiba).
370
371 It adds support for rfkill, Bluetooth, WLAN, LCD brightness, hwmon
372 and battery charging level control.
373
374 For a (possibly incomplete) list of supported laptops, please refer
375 to: Documentation/platform/x86-laptop-drivers.txt
376
377 config SONY_LAPTOP
378 tristate "Sony Laptop Extras"
379 depends on ACPI
380 depends on ACPI_VIDEO || ACPI_VIDEO = n
381 depends on BACKLIGHT_CLASS_DEVICE
382 depends on INPUT
383 depends on RFKILL
384 ---help---
385 This mini-driver drives the SNC and SPIC devices present in the ACPI
386 BIOS of the Sony Vaio laptops.
387
388 It gives access to some extra laptop functionalities like Bluetooth,
389 screen brightness control, Fn keys and allows powering on/off some
390 devices.
391
392 Read <file:Documentation/laptops/sony-laptop.txt> for more information.
393
394 config SONYPI_COMPAT
395 bool "Sonypi compatibility"
396 depends on SONY_LAPTOP
397 ---help---
398 Build the sonypi driver compatibility code into the sony-laptop driver.
399
400 config IDEAPAD_LAPTOP
401 tristate "Lenovo IdeaPad Laptop Extras"
402 depends on ACPI
403 depends on RFKILL && INPUT
404 depends on SERIO_I8042
405 depends on BACKLIGHT_CLASS_DEVICE
406 depends on ACPI_VIDEO || ACPI_VIDEO = n
407 depends on ACPI_WMI || ACPI_WMI = n
408 select INPUT_SPARSEKMAP
409 help
410 This is a driver for Lenovo IdeaPad netbooks contains drivers for
411 rfkill switch, hotkey, fan control and backlight control.
412
413 config SURFACE3_WMI
414 tristate "Surface 3 WMI Driver"
415 depends on ACPI_WMI
416 depends on DMI
417 depends on INPUT
418 depends on SPI
419 ---help---
420 Say Y here if you have a Surface 3.
421
422 To compile this driver as a module, choose M here: the module will
423 be called surface3-wmi.
424
425 config THINKPAD_ACPI
426 tristate "ThinkPad ACPI Laptop Extras"
427 depends on ACPI
428 depends on INPUT
429 depends on RFKILL || RFKILL = n
430 depends on ACPI_VIDEO || ACPI_VIDEO = n
431 depends on BACKLIGHT_CLASS_DEVICE
432 select HWMON
433 select NVRAM
434 select NEW_LEDS
435 select LEDS_CLASS
436 ---help---
437 This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
438 support for Fn-Fx key combinations, Bluetooth control, video
439 output switching, ThinkLight control, UltraBay eject and more.
440 For more information about this driver see
441 <file:Documentation/laptops/thinkpad-acpi.txt> and
442 <http://ibm-acpi.sf.net/> .
443
444 This driver was formerly known as ibm-acpi.
445
446 Extra functionality will be available if the rfkill (CONFIG_RFKILL)
447 and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
448 Note that if you want ThinkPad-ACPI to be built-in instead of
449 modular, ALSA and rfkill will also have to be built-in.
450
451 If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
452
453 config THINKPAD_ACPI_ALSA_SUPPORT
454 bool "Console audio control ALSA interface"
455 depends on THINKPAD_ACPI
456 depends on SND
457 depends on SND = y || THINKPAD_ACPI = SND
458 default y
459 ---help---
460 Enables monitoring of the built-in console audio output control
461 (headphone and speakers), which is operated by the mute and (in
462 some ThinkPad models) volume hotkeys.
463
464 If this option is enabled, ThinkPad-ACPI will export an ALSA card
465 with a single read-only mixer control, which should be used for
466 on-screen-display feedback purposes by the Desktop Environment.
467
468 Optionally, the driver will also allow software control (the
469 ALSA mixer will be made read-write). Please refer to the driver
470 documentation for details.
471
472 All IBM models have both volume and mute control. Newer Lenovo
473 models only have mute control (the volume hotkeys are just normal
474 keys and volume control is done through the main HDA mixer).
475
476 config THINKPAD_ACPI_DEBUGFACILITIES
477 bool "Maintainer debug facilities"
478 depends on THINKPAD_ACPI
479 ---help---
480 Enables extra stuff in the thinkpad-acpi which is completely useless
481 for normal use. Read the driver source to find out what it does.
482
483 Say N here, unless you were told by a kernel maintainer to do
484 otherwise.
485
486 config THINKPAD_ACPI_DEBUG
487 bool "Verbose debug mode"
488 depends on THINKPAD_ACPI
489 ---help---
490 Enables extra debugging information, at the expense of a slightly
491 increase in driver size.
492
493 If you are not sure, say N here.
494
495 config THINKPAD_ACPI_UNSAFE_LEDS
496 bool "Allow control of important LEDs (unsafe)"
497 depends on THINKPAD_ACPI
498 ---help---
499 Overriding LED state on ThinkPads can mask important
500 firmware alerts (like critical battery condition), or misled
501 the user into damaging the hardware (undocking or ejecting
502 the bay while buses are still active), etc.
503
504 LED control on the ThinkPad is write-only (with very few
505 exceptions on very ancient models), which makes it
506 impossible to know beforehand if important information will
507 be lost when one changes LED state.
508
509 Users that know what they are doing can enable this option
510 and the driver will allow control of every LED, including
511 the ones on the dock stations.
512
513 Never enable this option on a distribution kernel.
514
515 Say N here, unless you are building a kernel for your own
516 use, and need to control the important firmware LEDs.
517
518 config THINKPAD_ACPI_VIDEO
519 bool "Video output control support"
520 depends on THINKPAD_ACPI
521 default y
522 ---help---
523 Allows the thinkpad_acpi driver to provide an interface to control
524 the various video output ports.
525
526 This feature often won't work well, depending on ThinkPad model,
527 display state, video output devices in use, whether there is a X
528 server running, phase of the moon, and the current mood of
529 Schroedinger's cat. If you can use X.org's RandR to control
530 your ThinkPad's video output ports instead of this feature,
531 don't think twice: do it and say N here to save memory and avoid
532 bad interactions with X.org.
533
534 NOTE: access to this feature is limited to processes with the
535 CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
536 where it interacts badly with X.org.
537
538 If you are not sure, say Y here but do try to check if you could
539 be using X.org RandR instead.
540
541 config THINKPAD_ACPI_HOTKEY_POLL
542 bool "Support NVRAM polling for hot keys"
543 depends on THINKPAD_ACPI
544 default y
545 ---help---
546 Some thinkpad models benefit from NVRAM polling to detect a few of
547 the hot key press events. If you know your ThinkPad model does not
548 need to do NVRAM polling to support any of the hot keys you use,
549 unselecting this option will save about 1kB of memory.
550
551 ThinkPads T40 and newer, R52 and newer, and X31 and newer are
552 unlikely to need NVRAM polling in their latest BIOS versions.
553
554 NVRAM polling can detect at most the following keys: ThinkPad/Access
555 IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
556 Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
557
558 If you are not sure, say Y here. The driver enables polling only if
559 it is strictly necessary to do so.
560
561 config SENSORS_HDAPS
562 tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
563 depends on INPUT
564 select INPUT_POLLDEV
565 help
566 This driver provides support for the IBM Hard Drive Active Protection
567 System (hdaps), which provides an accelerometer and other misc. data.
568 ThinkPads starting with the R50, T41, and X40 are supported. The
569 accelerometer data is readable via sysfs.
570
571 This driver also provides an absolute input class device, allowing
572 the laptop to act as a pinball machine-esque joystick.
573
574 If your ThinkPad is not recognized by the driver, please update to latest
575 BIOS. This is especially the case for some R52 ThinkPads.
576
577 Say Y here if you have an applicable laptop and want to experience
578 the awesome power of hdaps.
579
580 config INTEL_MENLOW
581 tristate "Thermal Management driver for Intel menlow platform"
582 depends on ACPI_THERMAL
583 select THERMAL
584 ---help---
585 ACPI thermal management enhancement driver on
586 Intel Menlow platform.
587
588 If unsure, say N.
589
590 config EEEPC_LAPTOP
591 tristate "Eee PC Hotkey Driver"
592 depends on ACPI
593 depends on INPUT
594 depends on RFKILL || RFKILL = n
595 depends on ACPI_VIDEO || ACPI_VIDEO = n
596 depends on HOTPLUG_PCI
597 depends on BACKLIGHT_CLASS_DEVICE
598 select HWMON
599 select LEDS_CLASS
600 select NEW_LEDS
601 select INPUT_SPARSEKMAP
602 ---help---
603 This driver supports the Fn-Fx keys on Eee PC laptops.
604
605 It also gives access to some extra laptop functionalities like
606 Bluetooth, backlight and allows powering on/off some other
607 devices.
608
609 If you have an Eee PC laptop, say Y or M here. If this driver
610 doesn't work on your Eee PC, try eeepc-wmi instead.
611
612 config ASUS_WMI
613 tristate "ASUS WMI Driver"
614 depends on ACPI_WMI
615 depends on INPUT
616 depends on HWMON
617 depends on BACKLIGHT_CLASS_DEVICE
618 depends on RFKILL || RFKILL = n
619 depends on HOTPLUG_PCI
620 depends on ACPI_VIDEO || ACPI_VIDEO = n
621 select INPUT_SPARSEKMAP
622 select LEDS_CLASS
623 select NEW_LEDS
624 ---help---
625 Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
626 Asus Notebooks).
627
628 To compile this driver as a module, choose M here: the module will
629 be called asus-wmi.
630
631 config ASUS_NB_WMI
632 tristate "Asus Notebook WMI Driver"
633 depends on ASUS_WMI
634 depends on SERIO_I8042 || SERIO_I8042 = n
635 ---help---
636 This is a driver for newer Asus notebooks. It adds extra features
637 like wireless radio and bluetooth control, leds, hotkeys, backlight...
638
639 For more information, see
640 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
641
642 If you have an ACPI-WMI compatible Asus Notebook, say Y or M
643 here.
644
645 config EEEPC_WMI
646 tristate "Eee PC WMI Driver"
647 depends on ASUS_WMI
648 ---help---
649 This is a driver for newer Eee PC laptops. It adds extra features
650 like wireless radio and bluetooth control, leds, hotkeys, backlight...
651
652 For more information, see
653 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
654
655 If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
656 here.
657
658 config ASUS_WIRELESS
659 tristate "Asus Wireless Radio Control Driver"
660 depends on ACPI
661 depends on INPUT
662 select NEW_LEDS
663 select LEDS_CLASS
664 ---help---
665 The Asus Wireless Radio Control handles the airplane mode hotkey
666 present on some Asus laptops.
667
668 Say Y or M here if you have an ASUS notebook with an airplane mode
669 hotkey.
670
671 If you choose to compile this driver as a module the module will be
672 called asus-wireless.
673
674 config ACPI_WMI
675 tristate "WMI"
676 depends on ACPI
677 help
678 This driver adds support for the ACPI-WMI (Windows Management
679 Instrumentation) mapper device (PNP0C14) found on some systems.
680
681 ACPI-WMI is a proprietary extension to ACPI to expose parts of the
682 ACPI firmware to userspace - this is done through various vendor
683 defined methods and data blocks in a PNP0C14 device, which are then
684 made available for userspace to call.
685
686 The implementation of this in Linux currently only exposes this to
687 other kernel space drivers.
688
689 This driver is a required dependency to build the firmware specific
690 drivers needed on many machines, including Acer and HP laptops.
691
692 It is safe to enable this driver even if your DSDT doesn't define
693 any ACPI-WMI devices.
694
695 config WMI_BMOF
696 tristate "WMI embedded Binary MOF driver"
697 depends on ACPI_WMI
698 default ACPI_WMI
699 ---help---
700 Say Y here if you want to be able to read a firmware-embedded
701 WMI Binary MOF data. Using this requires userspace tools and may be
702 rather tedious.
703
704 To compile this driver as a module, choose M here: the module will
705 be called wmi-bmof.
706
707 config INTEL_WMI_THUNDERBOLT
708 tristate "Intel WMI thunderbolt force power driver"
709 depends on ACPI_WMI
710 ---help---
711 Say Y here if you want to be able to use the WMI interface on select
712 systems to force the power control of Intel Thunderbolt controllers.
713 This is useful for updating the firmware when devices are not plugged
714 into the controller.
715
716 To compile this driver as a module, choose M here: the module will
717 be called intel-wmi-thunderbolt.
718
719 config MSI_WMI
720 tristate "MSI WMI extras"
721 depends on ACPI_WMI
722 depends on INPUT
723 depends on BACKLIGHT_CLASS_DEVICE
724 depends on ACPI_VIDEO || ACPI_VIDEO = n
725 select INPUT_SPARSEKMAP
726 help
727 Say Y here if you want to support WMI-based hotkeys on MSI laptops.
728
729 To compile this driver as a module, choose M here: the module will
730 be called msi-wmi.
731
732 config PEAQ_WMI
733 tristate "PEAQ 2-in-1 WMI hotkey driver"
734 depends on ACPI_WMI
735 depends on INPUT
736 select INPUT_POLLDEV
737 help
738 Say Y here if you want to support WMI-based hotkeys on PEAQ 2-in-1s.
739
740 config TOPSTAR_LAPTOP
741 tristate "Topstar Laptop Extras"
742 depends on ACPI
743 depends on INPUT
744 select INPUT_SPARSEKMAP
745 ---help---
746 This driver adds support for hotkeys found on Topstar laptops.
747
748 If you have a Topstar laptop, say Y or M here.
749
750 config ACPI_TOSHIBA
751 tristate "Toshiba Laptop Extras"
752 depends on ACPI
753 depends on ACPI_WMI
754 select LEDS_CLASS
755 select NEW_LEDS
756 depends on BACKLIGHT_CLASS_DEVICE
757 depends on INPUT
758 depends on SERIO_I8042 || SERIO_I8042 = n
759 depends on ACPI_VIDEO || ACPI_VIDEO = n
760 depends on RFKILL || RFKILL = n
761 depends on IIO
762 select INPUT_POLLDEV
763 select INPUT_SPARSEKMAP
764 ---help---
765 This driver adds support for access to certain system settings
766 on "legacy free" Toshiba laptops. These laptops can be recognized by
767 their lack of a BIOS setup menu and APM support.
768
769 On these machines, all system configuration is handled through the
770 ACPI. This driver is required for access to controls not covered
771 by the general ACPI drivers, such as LCD brightness, video output,
772 etc.
773
774 This driver differs from the non-ACPI Toshiba laptop driver (located
775 under "Processor type and features") in several aspects.
776 Configuration is accessed by reading and writing text files in the
777 /proc tree instead of by program interface to /dev. Furthermore, no
778 power management functions are exposed, as those are handled by the
779 general ACPI drivers.
780
781 More information about this driver is available at
782 <http://memebeam.org/toys/ToshibaAcpiDriver>.
783
784 If you have a legacy free Toshiba laptop (such as the Libretto L1
785 series), say Y.
786
787 config TOSHIBA_BT_RFKILL
788 tristate "Toshiba Bluetooth RFKill switch support"
789 depends on ACPI
790 depends on RFKILL || RFKILL = n
791 ---help---
792 This driver adds support for Bluetooth events for the RFKill
793 switch on modern Toshiba laptops with full ACPI support and
794 an RFKill switch.
795
796 This driver handles RFKill events for the TOS6205 Bluetooth,
797 and re-enables it when the switch is set back to the 'on'
798 position.
799
800 If you have a modern Toshiba laptop with a Bluetooth and an
801 RFKill switch (such as the Portege R500), say Y.
802
803 config TOSHIBA_HAPS
804 tristate "Toshiba HDD Active Protection Sensor"
805 depends on ACPI
806 ---help---
807 This driver adds support for the built-in accelerometer
808 found on recent Toshiba laptops equipped with HID TOS620A
809 device.
810
811 This driver receives ACPI notify events 0x80 when the sensor
812 detects a sudden move or a harsh vibration, as well as an
813 ACPI notify event 0x81 whenever the movement or vibration has
814 been stabilized.
815
816 Also provides sysfs entries to get/set the desired protection
817 level and resetting the HDD protection interface.
818
819 If you have a recent Toshiba laptop with a built-in accelerometer
820 device, say Y.
821
822 config TOSHIBA_WMI
823 tristate "Toshiba WMI Hotkeys Driver (EXPERIMENTAL)"
824 depends on ACPI_WMI
825 depends on INPUT
826 select INPUT_SPARSEKMAP
827 ---help---
828 This driver adds hotkey monitoring support to some Toshiba models
829 that manage the hotkeys via WMI events.
830
831 WARNING: This driver is incomplete as it lacks a proper keymap and the
832 *notify function only prints the ACPI event type value. Be warned that
833 you will need to provide some information if you have a Toshiba model
834 with WMI event hotkeys and want to help with the development of this
835 driver.
836
837 If you have a WMI-based hotkeys Toshiba laptop, say Y or M here.
838
839 config ACPI_CMPC
840 tristate "CMPC Laptop Extras"
841 depends on ACPI && INPUT
842 depends on RFKILL || RFKILL=n
843 select BACKLIGHT_CLASS_DEVICE
844 help
845 Support for Intel Classmate PC ACPI devices, including some
846 keys as input device, backlight device, tablet and accelerometer
847 devices.
848
849 config INTEL_CHT_INT33FE
850 tristate "Intel Cherry Trail ACPI INT33FE Driver"
851 depends on X86 && ACPI && I2C && REGULATOR
852 ---help---
853 This driver add support for the INT33FE ACPI device found on
854 some Intel Cherry Trail devices.
855
856 The INT33FE ACPI device has a CRS table with I2cSerialBusV2
857 resources for 3 devices: Maxim MAX17047 Fuel Gauge Controller,
858 FUSB302 USB Type-C Controller and PI3USB30532 USB switch.
859 This driver instantiates i2c-clients for these, so that standard
860 i2c drivers for these chips can bind to the them.
861
862 If you enable this driver it is advised to also select
863 CONFIG_TYPEC_FUSB302=m, CONFIG_CHARGER_BQ24190=m and
864 CONFIG_BATTERY_MAX17042=m.
865
866 config INTEL_INT0002_VGPIO
867 tristate "Intel ACPI INT0002 Virtual GPIO driver"
868 depends on GPIOLIB && ACPI
869 select GPIOLIB_IRQCHIP
870 ---help---
871 Some peripherals on Bay Trail and Cherry Trail platforms signal a
872 Power Management Event (PME) to the Power Management Controller (PMC)
873 to wakeup the system. When this happens software needs to explicitly
874 clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
875 IRQ storm on IRQ 9.
876
877 This is modelled in ACPI through the INT0002 ACPI device, which is
878 called a "Virtual GPIO controller" in ACPI because it defines the
879 event handler to call when the PME triggers through _AEI and _L02
880 methods as would be done for a real GPIO interrupt in ACPI.
881
882 To compile this driver as a module, choose M here: the module will
883 be called intel_int0002_vgpio.
884
885 config INTEL_HID_EVENT
886 tristate "INTEL HID Event"
887 depends on ACPI
888 depends on INPUT
889 select INPUT_SPARSEKMAP
890 help
891 This driver provides support for the Intel HID Event hotkey interface.
892 Some laptops require this driver for hotkey support.
893
894 To compile this driver as a module, choose M here: the module will
895 be called intel_hid.
896
897 config INTEL_VBTN
898 tristate "INTEL VIRTUAL BUTTON"
899 depends on ACPI
900 depends on INPUT
901 select INPUT_SPARSEKMAP
902 help
903 This driver provides support for the Intel Virtual Button interface.
904 Some laptops require this driver for power button support.
905
906 To compile this driver as a module, choose M here: the module will
907 be called intel_vbtn.
908
909 config INTEL_SCU_IPC
910 bool "Intel SCU IPC Support"
911 depends on X86_INTEL_MID
912 default y
913 ---help---
914 IPC is used to bridge the communications between kernel and SCU on
915 some embedded Intel x86 platforms. This is not needed for PC-type
916 machines.
917
918 config INTEL_SCU_IPC_UTIL
919 tristate "Intel SCU IPC utility driver"
920 depends on INTEL_SCU_IPC
921 default y
922 ---help---
923 The IPC Util driver provides an interface with the SCU enabling
924 low level access for debug work and updating the firmware. Say
925 N unless you will be doing this on an Intel MID platform.
926
927 config INTEL_MID_POWER_BUTTON
928 tristate "power button driver for Intel MID platforms"
929 depends on INTEL_SCU_IPC && INPUT
930 help
931 This driver handles the power button on the Intel MID platforms.
932
933 If unsure, say N.
934
935 config INTEL_MFLD_THERMAL
936 tristate "Thermal driver for Intel Medfield platform"
937 depends on MFD_INTEL_MSIC && THERMAL
938 help
939 Say Y here to enable thermal driver support for the Intel Medfield
940 platform.
941
942 config INTEL_IPS
943 tristate "Intel Intelligent Power Sharing"
944 depends on ACPI
945 ---help---
946 Intel Calpella platforms support dynamic power sharing between the
947 CPU and GPU, maximizing performance in a given TDP. This driver,
948 along with the CPU frequency and i915 drivers, provides that
949 functionality. If in doubt, say Y here; it will only load on
950 supported platforms.
951
952 config INTEL_IMR
953 bool "Intel Isolated Memory Region support"
954 depends on X86_INTEL_QUARK && IOSF_MBI
955 ---help---
956 This option provides a means to manipulate Isolated Memory Regions.
957 IMRs are a set of registers that define read and write access masks
958 to prohibit certain system agents from accessing memory with 1 KiB
959 granularity.
960
961 IMRs make it possible to control read/write access to an address
962 by hardware agents inside the SoC. Read and write masks can be
963 defined for:
964 - eSRAM flush
965 - Dirty CPU snoop (write only)
966 - RMU access
967 - PCI Virtual Channel 0/Virtual Channel 1
968 - SMM mode
969 - Non SMM mode
970
971 Quark contains a set of eight IMR registers and makes use of those
972 registers during its bootup process.
973
974 If you are running on a Galileo/Quark say Y here.
975
976 config INTEL_PMC_CORE
977 tristate "Intel PMC Core driver"
978 depends on PCI
979 ---help---
980 The Intel Platform Controller Hub for Intel Core SoCs provides access
981 to Power Management Controller registers via a PCI interface. This
982 driver can utilize debugging capabilities and supported features as
983 exposed by the Power Management Controller.
984
985 Supported features:
986 - SLP_S0_RESIDENCY counter
987 - PCH IP Power Gating status
988 - LTR Ignore
989 - MPHY/PLL gating status (Sunrisepoint PCH only)
990
991 config IBM_RTL
992 tristate "Device driver to enable PRTL support"
993 depends on PCI
994 ---help---
995 Enable support for IBM Premium Real Time Mode (PRTM).
996 This module will allow you the enter and exit PRTM in the BIOS via
997 sysfs on platforms that support this feature. System in PRTM will
998 not receive CPU-generated SMIs for recoverable errors. Use of this
999 feature without proper support may void your hardware warranty.
1000
1001 If the proper BIOS support is found the driver will load and create
1002 /sys/devices/system/ibm_rtl/. The "state" variable will indicate
1003 whether or not the BIOS is in PRTM.
1004 state = 0 (BIOS SMIs on)
1005 state = 1 (BIOS SMIs off)
1006
1007 config XO1_RFKILL
1008 tristate "OLPC XO-1 software RF kill switch"
1009 depends on OLPC || COMPILE_TEST
1010 depends on RFKILL
1011 ---help---
1012 Support for enabling/disabling the WLAN interface on the OLPC XO-1
1013 laptop.
1014
1015 config XO15_EBOOK
1016 tristate "OLPC XO-1.5 ebook switch"
1017 depends on OLPC || COMPILE_TEST
1018 depends on ACPI && INPUT
1019 ---help---
1020 Support for the ebook switch on the OLPC XO-1.5 laptop.
1021
1022 This switch is triggered as the screen is rotated and folded down to
1023 convert the device into ebook form.
1024
1025 config SAMSUNG_LAPTOP
1026 tristate "Samsung Laptop driver"
1027 depends on RFKILL || RFKILL = n
1028 depends on ACPI_VIDEO || ACPI_VIDEO = n
1029 depends on BACKLIGHT_CLASS_DEVICE
1030 select LEDS_CLASS
1031 select NEW_LEDS
1032 ---help---
1033 This module implements a driver for a wide range of different
1034 Samsung laptops. It offers control over the different
1035 function keys, wireless LED, LCD backlight level.
1036
1037 It may also provide some sysfs files described in
1038 <file:Documentation/ABI/testing/sysfs-platform-samsung-laptop>
1039
1040 To compile this driver as a module, choose M here: the module
1041 will be called samsung-laptop.
1042
1043 config MXM_WMI
1044 tristate "WMI support for MXM Laptop Graphics"
1045 depends on ACPI_WMI
1046 ---help---
1047 MXM is a standard for laptop graphics cards, the WMI interface
1048 is required for switchable nvidia graphics machines
1049
1050 config INTEL_OAKTRAIL
1051 tristate "Intel Oaktrail Platform Extras"
1052 depends on ACPI
1053 depends on ACPI_VIDEO || ACPI_VIDEO = n
1054 depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
1055 ---help---
1056 Intel Oaktrail platform need this driver to provide interfaces to
1057 enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
1058 here; it will only load on supported platforms.
1059
1060 config SAMSUNG_Q10
1061 tristate "Samsung Q10 Extras"
1062 depends on ACPI
1063 select BACKLIGHT_CLASS_DEVICE
1064 ---help---
1065 This driver provides support for backlight control on Samsung Q10
1066 and related laptops, including Dell Latitude X200.
1067
1068 config APPLE_GMUX
1069 tristate "Apple Gmux Driver"
1070 depends on ACPI
1071 depends on PNP
1072 depends on BACKLIGHT_CLASS_DEVICE
1073 depends on BACKLIGHT_APPLE=n || BACKLIGHT_APPLE
1074 depends on ACPI_VIDEO=n || ACPI_VIDEO
1075 ---help---
1076 This driver provides support for the gmux device found on many
1077 Apple laptops, which controls the display mux for the hybrid
1078 graphics as well as the backlight. Currently only backlight
1079 control is supported by the driver.
1080
1081 config INTEL_RST
1082 tristate "Intel Rapid Start Technology Driver"
1083 depends on ACPI
1084 ---help---
1085 This driver provides support for modifying paramaters on systems
1086 equipped with Intel's Rapid Start Technology. When put in an ACPI
1087 sleep state, these devices will wake after either a configured
1088 timeout or when the system battery reaches a critical state,
1089 automatically copying memory contents to disk. On resume, the
1090 firmware will copy the memory contents back to RAM and resume the OS
1091 as usual.
1092
1093 config INTEL_SMARTCONNECT
1094 tristate "Intel Smart Connect disabling driver"
1095 depends on ACPI
1096 ---help---
1097 Intel Smart Connect is a technology intended to permit devices to
1098 update state by resuming for a short period of time at regular
1099 intervals. If a user enables this functionality under Windows and
1100 then reboots into Linux, the system may remain configured to resume
1101 on suspend. In the absence of any userspace to support it, the system
1102 will then remain awake until something triggers another suspend.
1103
1104 This driver checks to determine whether the device has Intel Smart
1105 Connect enabled, and if so disables it.
1106
1107 config PVPANIC
1108 tristate "pvpanic device support"
1109 depends on ACPI
1110 ---help---
1111 This driver provides support for the pvpanic device. pvpanic is
1112 a paravirtualized device provided by QEMU; it lets a virtual machine
1113 (guest) communicate panic events to the host.
1114
1115 config INTEL_PMC_IPC
1116 tristate "Intel PMC IPC Driver"
1117 depends on ACPI
1118 ---help---
1119 This driver provides support for PMC control on some Intel platforms.
1120 The PMC is an ARC processor which defines IPC commands for communication
1121 with other entities in the CPU.
1122
1123 config INTEL_BXTWC_PMIC_TMU
1124 tristate "Intel BXT Whiskey Cove TMU Driver"
1125 depends on REGMAP
1126 depends on INTEL_SOC_PMIC_BXTWC && INTEL_PMC_IPC
1127 ---help---
1128 Select this driver to use Intel BXT Whiskey Cove PMIC TMU feature.
1129 This driver enables the alarm wakeup functionality in the TMU unit
1130 of Whiskey Cove PMIC.
1131
1132 config SURFACE_PRO3_BUTTON
1133 tristate "Power/home/volume buttons driver for Microsoft Surface Pro 3/4 tablet"
1134 depends on ACPI && INPUT
1135 ---help---
1136 This driver handles the power/home/volume buttons on the Microsoft Surface Pro 3/4 tablet.
1137
1138 config SURFACE_3_BUTTON
1139 tristate "Power/home/volume buttons driver for Microsoft Surface 3 tablet"
1140 depends on ACPI && KEYBOARD_GPIO && I2C
1141 ---help---
1142 This driver handles the power/home/volume buttons on the Microsoft Surface 3 tablet.
1143
1144 config INTEL_PUNIT_IPC
1145 tristate "Intel P-Unit IPC Driver"
1146 ---help---
1147 This driver provides support for Intel P-Unit Mailbox IPC mechanism,
1148 which is used to bridge the communications between kernel and P-Unit.
1149
1150 config INTEL_TELEMETRY
1151 tristate "Intel SoC Telemetry Driver"
1152 depends on INTEL_PMC_IPC && INTEL_PUNIT_IPC && X86_64
1153 ---help---
1154 This driver provides interfaces to configure and use
1155 telemetry for INTEL SoC from APL onwards. It is also
1156 used to get various SoC events and parameters
1157 directly via debugfs files. Various tools may use
1158 this interface for SoC state monitoring.
1159
1160 config MLX_PLATFORM
1161 tristate "Mellanox Technologies platform support"
1162 ---help---
1163 This option enables system support for the Mellanox Technologies
1164 platform. The Mellanox systems provide data center networking
1165 solutions based on Virtual Protocol Interconnect (VPI) technology
1166 enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
1167 connection.
1168
1169 If you have a Mellanox system, say Y or M here.
1170
1171 config INTEL_TURBO_MAX_3
1172 bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
1173 depends on X86_64 && SCHED_MC_PRIO
1174 ---help---
1175 This driver reads maximum performance ratio of each CPU and set up
1176 the scheduler priority metrics. In this way scheduler can prefer
1177 CPU with higher performance to schedule tasks.
1178 This driver is only required when the system is not using Hardware
1179 P-States (HWP). In HWP mode, priority can be read from ACPI tables.
1180
1181 config SILEAD_DMI
1182 bool "Tablets with Silead touchscreens"
1183 depends on ACPI && DMI && I2C=y && TOUCHSCREEN_SILEAD
1184 ---help---
1185 Certain ACPI based tablets with Silead touchscreens do not have
1186 enough data in ACPI tables for the touchscreen driver to handle
1187 the touchscreen properly, as OEMs expected the data to be baked
1188 into the tablet model specific version of the driver shipped
1189 with the OS-image for the device. This option supplies the missing
1190 information. Enable this for x86 tablets with Silead touchscreens.
1191
1192 config INTEL_CHTDC_TI_PWRBTN
1193 tristate "Intel Cherry Trail Dollar Cove TI power button driver"
1194 depends on INTEL_SOC_PMIC_CHTDC_TI
1195 depends on INPUT
1196 ---help---
1197 This option adds a power button driver driver for Dollar Cove TI
1198 PMIC on Intel Cherry Trail devices.
1199
1200 To compile this driver as a module, choose M here: the module
1201 will be called intel_chtdc_ti_pwrbtn.
1202
1203 endif # X86_PLATFORM_DEVICES
1204
1205 config PMC_ATOM
1206 def_bool y
1207 depends on PCI
1208 select COMMON_CLK