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