Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# X86 Platform Specific Drivers
4#
5
6menuconfig X86_PLATFORM_DEVICES
7 bool "X86 Platform Specific Device Drivers"
8 default y
9 depends on X86
10 help
11 Say Y here to get to see options for device drivers for various
12 x86 platforms, including vendor-specific laptop extension drivers.
13 This option alone does not add any kernel code.
14
15 If you say N, all options in this submenu will be skipped and disabled.
16
17if X86_PLATFORM_DEVICES
18
19config ACPI_WMI
20 tristate "WMI"
21 depends on ACPI
22 help
23 This driver adds support for the ACPI-WMI (Windows Management
24 Instrumentation) mapper device (PNP0C14) found on some systems.
25
26 ACPI-WMI is a proprietary extension to ACPI to expose parts of the
27 ACPI firmware to userspace - this is done through various vendor
28 defined methods and data blocks in a PNP0C14 device, which are then
29 made available for userspace to call.
30
31 The implementation of this in Linux currently only exposes this to
32 other kernel space drivers.
33
34 This driver is a required dependency to build the firmware specific
35 drivers needed on many machines, including Acer and HP laptops.
36
37 It is safe to enable this driver even if your DSDT doesn't define
38 any ACPI-WMI devices.
39
40config WMI_BMOF
41 tristate "WMI embedded Binary MOF driver"
42 depends on ACPI_WMI
43 default ACPI_WMI
44 help
45 Say Y here if you want to be able to read a firmware-embedded
46 WMI Binary MOF (Managed Object Format) data. Using this requires
47 userspace tools and may be rather tedious.
48
49 To compile this driver as a module, choose M here: the module will
50 be called wmi-bmof.
51
52config HUAWEI_WMI
53 tristate "Huawei WMI laptop extras driver"
54 depends on ACPI_BATTERY
55 depends on ACPI_WMI
56 depends on INPUT
57 select INPUT_SPARSEKMAP
58 select LEDS_CLASS
59 select NEW_LEDS
60 help
61 This driver provides support for Huawei WMI hotkeys, battery charge
62 control, fn-lock, mic-mute LED, and other extra features.
63
64 To compile this driver as a module, choose M here: the module
65 will be called huawei-wmi.
66
67config UV_SYSFS
68 tristate "Sysfs structure for UV systems"
69 depends on X86_UV
70 depends on SYSFS
71 help
72 This driver supports a sysfs tree describing information about
73 UV systems at /sys/firmware/sgi_uv/.
74
75 To compile this driver as a module, choose M here: the module will
76 be called uv_sysfs.
77
78config MXM_WMI
79 tristate "WMI support for MXM Laptop Graphics"
80 depends on ACPI_WMI
81 help
82 MXM is a standard for laptop graphics cards, the WMI interface
83 is required for switchable nvidia graphics machines
84
85config NVIDIA_WMI_EC_BACKLIGHT
86 tristate "EC Backlight Driver for Hybrid Graphics Notebook Systems"
87 depends on ACPI_VIDEO
88 depends on ACPI_WMI
89 depends on BACKLIGHT_CLASS_DEVICE
90 help
91 This driver provides a sysfs backlight interface for notebook systems
92 which are equipped with NVIDIA hybrid graphics and drive LCD backlight
93 levels through the Embedded Controller (EC).
94
95 Say Y or M here if you want to control the backlight on a notebook
96 system with an EC-driven backlight.
97
98 If you choose to compile this driver as a module the module will be
99 called nvidia-wmi-ec-backlight.
100
101config XIAOMI_WMI
102 tristate "Xiaomi WMI key driver"
103 depends on ACPI_WMI
104 depends on INPUT
105 help
106 Say Y here if you want to support WMI-based keys on Xiaomi notebooks.
107
108 To compile this driver as a module, choose M here: the module will
109 be called xiaomi-wmi.
110
111config GIGABYTE_WMI
112 tristate "Gigabyte WMI temperature driver"
113 depends on ACPI_WMI
114 depends on HWMON
115 help
116 Say Y here if you want to support WMI-based temperature reporting on
117 Gigabyte mainboards.
118
119 To compile this driver as a module, choose M here: the module will
120 be called gigabyte-wmi.
121
122config YOGABOOK
123 tristate "Lenovo Yoga Book tablet key driver"
124 depends on ACPI_WMI
125 depends on INPUT
126 depends on I2C
127 select LEDS_CLASS
128 select NEW_LEDS
129 help
130 Say Y here if you want to support the 'Pen' key and keyboard backlight
131 control on the Lenovo Yoga Book tablets.
132
133 To compile this driver as a module, choose M here: the module will
134 be called lenovo-yogabook.
135
136config YT2_1380
137 tristate "Lenovo Yoga Tablet 2 1380 fast charge driver"
138 depends on SERIAL_DEV_BUS
139 depends on EXTCON
140 depends on ACPI
141 help
142 Say Y here to enable support for the custom fast charging protocol
143 found on the Lenovo Yoga Tablet 2 1380F / 1380L models.
144
145 To compile this driver as a module, choose M here: the module will
146 be called lenovo-yogabook.
147
148config ACERHDF
149 tristate "Acer Aspire One temperature and fan driver"
150 depends on ACPI && THERMAL
151 select THERMAL_GOV_BANG_BANG
152 help
153 This is a driver for Acer Aspire One netbooks. It allows to access
154 the temperature sensor and to control the fan.
155
156 After loading this driver the BIOS is still in control of the fan.
157 To let the kernel handle the fan, do:
158 echo -n enabled > /sys/class/thermal/thermal_zoneN/mode
159 where N=0,1,2... depending on the number of thermal nodes and the
160 detection order of your particular system. The "type" parameter
161 in the same node directory will tell you if it is "acerhdf".
162
163 For more information about this driver see
164 <https://piie.net/files/acerhdf_README.txt>
165
166 If you have an Acer Aspire One netbook, say Y or M
167 here.
168
169config ACER_WIRELESS
170 tristate "Acer Wireless Radio Control Driver"
171 depends on ACPI
172 depends on INPUT
173 help
174 The Acer Wireless Radio Control handles the airplane mode hotkey
175 present on new Acer laptops.
176
177 Say Y or M here if you have an Acer notebook with an airplane mode
178 hotkey.
179
180 If you choose to compile this driver as a module the module will be
181 called acer-wireless.
182
183config ACER_WMI
184 tristate "Acer WMI Laptop Extras"
185 depends on BACKLIGHT_CLASS_DEVICE
186 depends on SERIO_I8042
187 depends on INPUT
188 depends on RFKILL || RFKILL = n
189 depends on ACPI_WMI
190 depends on ACPI_VIDEO || ACPI_VIDEO = n
191 depends on HWMON
192 select INPUT_SPARSEKMAP
193 select LEDS_CLASS
194 select NEW_LEDS
195 select ACPI_PLATFORM_PROFILE
196 help
197 This is a driver for newer Acer (and Wistron) laptops. It adds
198 wireless radio and bluetooth control, and on some laptops,
199 exposes the mail LED and LCD backlight.
200
201 If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M
202 here.
203
204source "drivers/platform/x86/amd/Kconfig"
205
206config ADV_SWBUTTON
207 tristate "Advantech ACPI Software Button Driver"
208 depends on ACPI && INPUT
209 help
210 Say Y here to enable support for Advantech software defined
211 button feature. More information can be found at
212 <http://www.advantech.com.tw/products/>
213
214 To compile this driver as a module, choose M here. The module will
215 be called adv_swbutton.
216
217config APPLE_GMUX
218 tristate "Apple Gmux Driver"
219 depends on ACPI && PCI
220 depends on PNP
221 depends on BACKLIGHT_CLASS_DEVICE
222 help
223 This driver provides support for the gmux device found on many
224 Apple laptops, which controls the display mux for the hybrid
225 graphics as well as the backlight. Currently only backlight
226 control is supported by the driver.
227
228config ASUS_LAPTOP
229 tristate "Asus Laptop Extras"
230 depends on ACPI
231 select LEDS_CLASS
232 select NEW_LEDS
233 depends on BACKLIGHT_CLASS_DEVICE
234 depends on INPUT
235 depends on RFKILL || RFKILL = n
236 depends on ACPI_VIDEO || ACPI_VIDEO = n
237 select INPUT_SPARSEKMAP
238 help
239 This is a driver for Asus laptops, Lenovo SL and the Pegatron
240 Lucid tablet. It may also support some MEDION, JVC or VICTOR
241 laptops. It makes all the extra buttons generate standard
242 ACPI events and input events, and on the Lucid the built-in
243 accelerometer appears as an input device. It also adds
244 support for video output switching, LCD backlight control,
245 Bluetooth and Wlan control, and most importantly, allows you
246 to blink those fancy LEDs.
247
248 For more information see <http://acpi4asus.sf.net>.
249
250 If you have an ACPI-compatible ASUS laptop, say Y or M here.
251
252config ASUS_WIRELESS
253 tristate "Asus Wireless Radio Control Driver"
254 depends on ACPI
255 depends on INPUT
256 select NEW_LEDS
257 select LEDS_CLASS
258 help
259 The Asus Wireless Radio Control handles the airplane mode hotkey
260 present on some Asus laptops.
261
262 Say Y or M here if you have an ASUS notebook with an airplane mode
263 hotkey.
264
265 If you choose to compile this driver as a module the module will be
266 called asus-wireless.
267
268config ASUS_WMI
269 tristate "ASUS WMI Driver"
270 depends on ACPI_WMI
271 depends on ACPI_BATTERY
272 depends on INPUT
273 depends on HWMON
274 depends on BACKLIGHT_CLASS_DEVICE
275 depends on RFKILL || RFKILL = n
276 depends on HOTPLUG_PCI
277 depends on ACPI_VIDEO || ACPI_VIDEO = n
278 depends on SERIO_I8042 || SERIO_I8042 = n
279 select INPUT_SPARSEKMAP
280 select LEDS_CLASS
281 select NEW_LEDS
282 select ACPI_PLATFORM_PROFILE
283 help
284 Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new
285 Asus Notebooks).
286
287 To compile this driver as a module, choose M here: the module will
288 be called asus-wmi.
289
290config ASUS_NB_WMI
291 tristate "Asus Notebook WMI Driver"
292 depends on ASUS_WMI
293 help
294 This is a driver for newer Asus notebooks. It adds extra features
295 like wireless radio and bluetooth control, leds, hotkeys, backlight...
296
297 For more information, see
298 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
299
300 If you have an ACPI-WMI compatible Asus Notebook, say Y or M
301 here.
302
303config ASUS_TF103C_DOCK
304 tristate "Asus TF103C 2-in-1 keyboard dock"
305 depends on ACPI
306 depends on I2C
307 depends on INPUT
308 depends on HID
309 depends on GPIOLIB
310 help
311 This is a driver for the keyboard, touchpad and USB port of the
312 keyboard dock for the Asus TF103C 2-in-1 tablet.
313
314 This keyboard dock has its own I2C attached embedded controller
315 and the keyboard and touchpad are also connected over I2C,
316 instead of using the usual USB connection. This means that the
317 keyboard dock requires this special driver to function.
318
319 If you have an Asus TF103C tablet say Y or M here, for a generic x86
320 distro config say M here.
321
322config MERAKI_MX100
323 tristate "Cisco Meraki MX100 Platform Driver"
324 depends on GPIOLIB
325 depends on GPIO_ICH
326 depends on LEDS_CLASS
327 select LEDS_GPIO
328 help
329 This driver provides support for the front button and LEDs on
330 the Cisco Meraki MX100 (Tinkerbell) 1U appliance.
331
332 To compile this driver as a module, choose M here: the module
333 will be called meraki-mx100.
334
335config EEEPC_LAPTOP
336 tristate "Eee PC Hotkey Driver"
337 depends on ACPI
338 depends on INPUT
339 depends on RFKILL || RFKILL = n
340 depends on ACPI_VIDEO || ACPI_VIDEO = n
341 depends on HOTPLUG_PCI
342 depends on BACKLIGHT_CLASS_DEVICE
343 select HWMON
344 select LEDS_CLASS
345 select NEW_LEDS
346 select INPUT_SPARSEKMAP
347 help
348 This driver supports the Fn-Fx keys on Eee PC laptops.
349
350 It also gives access to some extra laptop functionalities like
351 Bluetooth, backlight and allows powering on/off some other
352 devices.
353
354 If you have an Eee PC laptop, say Y or M here. If this driver
355 doesn't work on your Eee PC, try eeepc-wmi instead.
356
357config EEEPC_WMI
358 tristate "Eee PC WMI Driver"
359 depends on ASUS_WMI
360 help
361 This is a driver for newer Eee PC laptops. It adds extra features
362 like wireless radio and bluetooth control, leds, hotkeys, backlight...
363
364 For more information, see
365 <file:Documentation/ABI/testing/sysfs-platform-asus-wmi>
366
367 If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M
368 here.
369
370source "drivers/platform/x86/dell/Kconfig"
371
372config AMILO_RFKILL
373 tristate "Fujitsu-Siemens Amilo rfkill support"
374 depends on RFKILL
375 depends on SERIO_I8042
376 help
377 This is a driver for enabling wifi on some Fujitsu-Siemens Amilo
378 laptops.
379
380config FUJITSU_LAPTOP
381 tristate "Fujitsu Laptop Extras"
382 depends on ACPI
383 depends on INPUT
384 depends on BACKLIGHT_CLASS_DEVICE
385 depends on ACPI_BATTERY
386 depends on ACPI_VIDEO || ACPI_VIDEO = n
387 select INPUT_SPARSEKMAP
388 select NEW_LEDS
389 select LEDS_CLASS
390 help
391 This is a driver for laptops built by Fujitsu:
392
393 * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks
394 * Possibly other Fujitsu laptop models
395 * Tested with S6410 and S7020
396
397 It adds support for LCD brightness control and some hotkeys.
398
399 If you have a Fujitsu laptop, say Y or M here.
400
401config FUJITSU_TABLET
402 tristate "Fujitsu Tablet Extras"
403 depends on ACPI
404 depends on INPUT
405 help
406 This is a driver for tablets built by Fujitsu:
407
408 * Lifebook P1510/P1610/P1620/Txxxx
409 * Stylistic ST5xxx
410 * Possibly other Fujitsu tablet models
411
412 It adds support for the panel buttons, docking station detection,
413 tablet/notebook mode detection for convertible and
414 orientation detection for docked slates.
415
416 If you have a Fujitsu convertible or slate, say Y or M here.
417
418config GPD_POCKET_FAN
419 tristate "GPD Pocket Fan Controller support"
420 depends on ACPI
421 depends on THERMAL
422 help
423 Driver for the GPD Pocket vendor specific FAN02501 ACPI device
424 which controls the fan speed on the GPD Pocket.
425
426 Without this driver the fan on the Pocket will stay off independent
427 of the CPU temperature. Say Y or M if the kernel may be used on a
428 GPD pocket.
429
430source "drivers/platform/x86/hp/Kconfig"
431
432config WIRELESS_HOTKEY
433 tristate "Wireless hotkey button"
434 depends on ACPI
435 depends on INPUT
436 help
437 This driver provides supports for the wireless buttons found on some AMD,
438 HP, & Xioami laptops.
439 On such systems the driver should load automatically (via ACPI alias).
440
441 To compile this driver as a module, choose M here: the module will
442 be called wireless-hotkey.
443
444config IBM_RTL
445 tristate "Device driver to enable PRTL support"
446 depends on PCI
447 help
448 Enable support for IBM Premium Real Time Mode (PRTM).
449 This module will allow you the enter and exit PRTM in the BIOS via
450 sysfs on platforms that support this feature. System in PRTM will
451 not receive CPU-generated SMIs for recoverable errors. Use of this
452 feature without proper support may void your hardware warranty.
453
454 If the proper BIOS support is found the driver will load and create
455 /sys/devices/system/ibm_rtl/. The "state" variable will indicate
456 whether or not the BIOS is in PRTM.
457 state = 0 (BIOS SMIs on)
458 state = 1 (BIOS SMIs off)
459
460config IDEAPAD_LAPTOP
461 tristate "Lenovo IdeaPad Laptop Extras"
462 depends on ACPI
463 depends on RFKILL && INPUT
464 depends on SERIO_I8042
465 depends on BACKLIGHT_CLASS_DEVICE
466 depends on ACPI_VIDEO || ACPI_VIDEO = n
467 depends on ACPI_WMI || ACPI_WMI = n
468 select ACPI_PLATFORM_PROFILE
469 select INPUT_SPARSEKMAP
470 select NEW_LEDS
471 select LEDS_CLASS
472 help
473 This is a driver for Lenovo IdeaPad netbooks contains drivers for
474 rfkill switch, hotkey, fan control and backlight control.
475
476config LENOVO_YMC
477 tristate "Lenovo Yoga Tablet Mode Control"
478 depends on ACPI_WMI
479 depends on INPUT
480 select INPUT_SPARSEKMAP
481 help
482 This driver maps the Tablet Mode Control switch to SW_TABLET_MODE input
483 events for Lenovo Yoga notebooks.
484
485config SENSORS_HDAPS
486 tristate "Thinkpad Hard Drive Active Protection System (hdaps)"
487 depends on INPUT
488 help
489 This driver provides support for the IBM Hard Drive Active Protection
490 System (hdaps), which provides an accelerometer and other misc. data.
491 ThinkPads starting with the R50, T41, and X40 are supported. The
492 accelerometer data is readable via sysfs.
493
494 This driver also provides an absolute input class device, allowing
495 the laptop to act as a pinball machine-esque joystick.
496
497 If your ThinkPad is not recognized by the driver, please update to latest
498 BIOS. This is especially the case for some R52 ThinkPads.
499
500 Say Y here if you have an applicable laptop and want to experience
501 the awesome power of hdaps.
502
503config THINKPAD_ACPI
504 tristate "ThinkPad ACPI Laptop Extras"
505 depends on ACPI
506 depends on ACPI_BATTERY
507 depends on INPUT
508 depends on RFKILL || RFKILL = n
509 depends on ACPI_VIDEO || ACPI_VIDEO = n
510 depends on BACKLIGHT_CLASS_DEVICE
511 depends on I2C
512 depends on DRM
513 select ACPI_PLATFORM_PROFILE
514 select DRM_PRIVACY_SCREEN
515 select HWMON
516 select NVRAM
517 select NEW_LEDS
518 select LEDS_CLASS
519 select INPUT_SPARSEKMAP
520 help
521 This is a driver for the IBM and Lenovo ThinkPad laptops. It adds
522 support for Fn-Fx key combinations, Bluetooth control, video
523 output switching, ThinkLight control, UltraBay eject and more.
524 For more information about this driver see
525 <file:Documentation/admin-guide/laptops/thinkpad-acpi.rst> and
526 <http://ibm-acpi.sf.net/> .
527
528 This driver was formerly known as ibm-acpi.
529
530 Extra functionality will be available if the rfkill (CONFIG_RFKILL)
531 and/or ALSA (CONFIG_SND) subsystems are available in the kernel.
532 Note that if you want ThinkPad-ACPI to be built-in instead of
533 modular, ALSA and rfkill will also have to be built-in.
534
535 If you have an IBM or Lenovo ThinkPad laptop, say Y or M here.
536
537config THINKPAD_ACPI_ALSA_SUPPORT
538 bool "Console audio control ALSA interface"
539 depends on THINKPAD_ACPI
540 depends on SND
541 depends on SND = y || THINKPAD_ACPI = SND
542 default y
543 help
544 Enables monitoring of the built-in console audio output control
545 (headphone and speakers), which is operated by the mute and (in
546 some ThinkPad models) volume hotkeys.
547
548 If this option is enabled, ThinkPad-ACPI will export an ALSA card
549 with a single read-only mixer control, which should be used for
550 on-screen-display feedback purposes by the Desktop Environment.
551
552 Optionally, the driver will also allow software control (the
553 ALSA mixer will be made read-write). Please refer to the driver
554 documentation for details.
555
556 All IBM models have both volume and mute control. Newer Lenovo
557 models only have mute control (the volume hotkeys are just normal
558 keys and volume control is done through the main HDA mixer).
559
560config THINKPAD_ACPI_DEBUGFACILITIES
561 bool "Maintainer debug facilities"
562 depends on THINKPAD_ACPI
563 help
564 Enables extra stuff in the thinkpad-acpi which is completely useless
565 for normal use. Read the driver source to find out what it does.
566
567 Say N here, unless you were told by a kernel maintainer to do
568 otherwise.
569
570config THINKPAD_ACPI_DEBUG
571 bool "Verbose debug mode"
572 depends on THINKPAD_ACPI
573 help
574 Enables extra debugging information, at the expense of a slightly
575 increase in driver size.
576
577 If you are not sure, say N here.
578
579config THINKPAD_ACPI_UNSAFE_LEDS
580 bool "Allow control of important LEDs (unsafe)"
581 depends on THINKPAD_ACPI
582 help
583 Overriding LED state on ThinkPads can mask important
584 firmware alerts (like critical battery condition), or misled
585 the user into damaging the hardware (undocking or ejecting
586 the bay while buses are still active), etc.
587
588 LED control on the ThinkPad is write-only (with very few
589 exceptions on very ancient models), which makes it
590 impossible to know beforehand if important information will
591 be lost when one changes LED state.
592
593 Users that know what they are doing can enable this option
594 and the driver will allow control of every LED, including
595 the ones on the dock stations.
596
597 Never enable this option on a distribution kernel.
598
599 Say N here, unless you are building a kernel for your own
600 use, and need to control the important firmware LEDs.
601
602config THINKPAD_ACPI_VIDEO
603 bool "Video output control support"
604 depends on THINKPAD_ACPI
605 default y
606 help
607 Allows the thinkpad_acpi driver to provide an interface to control
608 the various video output ports.
609
610 This feature often won't work well, depending on ThinkPad model,
611 display state, video output devices in use, whether there is a X
612 server running, phase of the moon, and the current mood of
613 Schroedinger's cat. If you can use X.org's RandR to control
614 your ThinkPad's video output ports instead of this feature,
615 don't think twice: do it and say N here to save memory and avoid
616 bad interactions with X.org.
617
618 NOTE: access to this feature is limited to processes with the
619 CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms
620 where it interacts badly with X.org.
621
622 If you are not sure, say Y here but do try to check if you could
623 be using X.org RandR instead.
624
625config THINKPAD_ACPI_HOTKEY_POLL
626 bool "Support NVRAM polling for hot keys"
627 depends on THINKPAD_ACPI
628 default y
629 help
630 Some thinkpad models benefit from NVRAM polling to detect a few of
631 the hot key press events. If you know your ThinkPad model does not
632 need to do NVRAM polling to support any of the hot keys you use,
633 unselecting this option will save about 1kB of memory.
634
635 ThinkPads T40 and newer, R52 and newer, and X31 and newer are
636 unlikely to need NVRAM polling in their latest BIOS versions.
637
638 NVRAM polling can detect at most the following keys: ThinkPad/Access
639 IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute,
640 Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12).
641
642 If you are not sure, say Y here. The driver enables polling only if
643 it is strictly necessary to do so.
644
645config THINKPAD_LMI
646 tristate "Lenovo WMI-based systems management driver"
647 depends on ACPI_WMI
648 select FW_ATTR_CLASS
649 help
650 This driver allows changing BIOS settings on Lenovo machines whose
651 BIOS support the WMI interface.
652
653 To compile this driver as a module, choose M here: the module will
654 be called think-lmi.
655
656source "drivers/platform/x86/intel/Kconfig"
657
658config ACPI_QUICKSTART
659 tristate "ACPI Quickstart button driver"
660 depends on ACPI
661 depends on INPUT
662 select INPUT_SPARSEKMAP
663 help
664 This driver adds support for ACPI quickstart button (PNP0C32) devices.
665 The button emits a manufacturer-specific key value when pressed, so
666 userspace has to map this value to a standard key code.
667
668 To compile this driver as a module, choose M here: the module will be
669 called quickstart.
670
671config MEEGOPAD_ANX7428
672 tristate "MeeGoPad ANX7428 Type-C Switch"
673 depends on ACPI && GPIOLIB && I2C
674 help
675 Some MeeGoPad top-set boxes have an ANX7428 Type-C Switch for
676 USB3.1 Gen 1 and DisplayPort over Type-C alternate mode support.
677
678 This driver takes care of powering on the ANX7428 on supported
679 MeeGoPad top-set boxes. After this the ANX7428 takes care of Type-C
680 connector orientation and PD alternate mode switching autonomously.
681
682config MSI_EC
683 tristate "MSI EC Extras"
684 depends on ACPI
685 depends on ACPI_BATTERY
686 help
687 This driver allows various MSI laptops' functionalities to be
688 controlled from userspace, including battery charge threshold.
689
690config MSI_LAPTOP
691 tristate "MSI Laptop Extras"
692 depends on ACPI
693 depends on BACKLIGHT_CLASS_DEVICE
694 depends on ACPI_VIDEO || ACPI_VIDEO = n
695 depends on RFKILL
696 depends on INPUT && SERIO_I8042
697 select INPUT_SPARSEKMAP
698 help
699 This is a driver for laptops built by MSI (MICRO-STAR
700 INTERNATIONAL):
701
702 MSI MegaBook S270 (MS-1013)
703 Cytron/TCM/Medion/Tchibo MD96100/SAM2000
704
705 It adds support for Bluetooth, WLAN and LCD brightness control.
706
707 More information about this driver is available at
708 <http://0pointer.de/lennart/tchibo.html>.
709
710 If you have an MSI S270 laptop, say Y or M here.
711
712config MSI_WMI
713 tristate "MSI WMI extras"
714 depends on ACPI_WMI
715 depends on INPUT
716 depends on BACKLIGHT_CLASS_DEVICE
717 depends on ACPI_VIDEO || ACPI_VIDEO = n
718 select INPUT_SPARSEKMAP
719 help
720 Say Y here if you want to support WMI-based hotkeys on MSI laptops.
721
722 To compile this driver as a module, choose M here: the module will
723 be called msi-wmi.
724
725config MSI_WMI_PLATFORM
726 tristate "MSI WMI Platform features"
727 depends on ACPI_WMI
728 depends on HWMON
729 help
730 Say Y here if you want to have support for WMI-based platform features
731 like fan sensor access on MSI machines.
732
733 To compile this driver as a module, choose M here: the module will
734 be called msi-wmi-platform.
735
736config XO15_EBOOK
737 tristate "OLPC XO-1.5 ebook switch"
738 depends on OLPC || COMPILE_TEST
739 depends on ACPI && INPUT
740 help
741 Support for the ebook switch on the OLPC XO-1.5 laptop.
742
743 This switch is triggered as the screen is rotated and folded down to
744 convert the device into ebook form.
745
746config XO1_RFKILL
747 tristate "OLPC XO-1 software RF kill switch"
748 depends on OLPC || COMPILE_TEST
749 depends on RFKILL
750 help
751 Support for enabling/disabling the WLAN interface on the OLPC XO-1
752 laptop.
753
754config PCENGINES_APU2
755 tristate "PC Engines APUv2/3 front button and LEDs driver"
756 depends on INPUT && INPUT_KEYBOARD && GPIOLIB
757 depends on LEDS_CLASS
758 select GPIO_AMD_FCH
759 select KEYBOARD_GPIO_POLLED
760 select LEDS_GPIO
761 help
762 This driver provides support for the front button and LEDs on
763 PC Engines APUv2/APUv3 board.
764
765 To compile this driver as a module, choose M here: the module
766 will be called pcengines-apuv2.
767
768config BARCO_P50_GPIO
769 tristate "Barco P50 GPIO driver for identify LED/button"
770 depends on GPIOLIB
771 help
772 This driver provides access to the GPIOs for the identify button
773 and led present on Barco P50 board.
774
775 To compile this driver as a module, choose M here: the module
776 will be called barco-p50-gpio.
777
778config SAMSUNG_LAPTOP
779 tristate "Samsung Laptop driver"
780 depends on RFKILL || RFKILL = n
781 depends on ACPI_VIDEO || ACPI_VIDEO = n
782 depends on BACKLIGHT_CLASS_DEVICE
783 select LEDS_CLASS
784 select NEW_LEDS
785 help
786 This module implements a driver for a wide range of different
787 Samsung laptops. It offers control over the different
788 function keys, wireless LED, LCD backlight level.
789
790 It may also provide some sysfs files described in
791 <file:Documentation/ABI/testing/sysfs-driver-samsung-laptop>
792
793 To compile this driver as a module, choose M here: the module
794 will be called samsung-laptop.
795
796config SAMSUNG_Q10
797 tristate "Samsung Q10 Extras"
798 depends on ACPI
799 select BACKLIGHT_CLASS_DEVICE
800 help
801 This driver provides support for backlight control on Samsung Q10
802 and related laptops, including Dell Latitude X200.
803
804config ACPI_TOSHIBA
805 tristate "Toshiba Laptop Extras"
806 depends on ACPI
807 depends on ACPI_BATTERY
808 depends on ACPI_WMI
809 select LEDS_CLASS
810 select NEW_LEDS
811 depends on BACKLIGHT_CLASS_DEVICE
812 depends on INPUT
813 depends on SERIO_I8042 || SERIO_I8042 = n
814 depends on ACPI_VIDEO || ACPI_VIDEO = n
815 depends on HWMON || HWMON = n
816 depends on RFKILL || RFKILL = n
817 depends on IIO
818 select INPUT_SPARSEKMAP
819 help
820 This driver adds support for access to certain system settings
821 on "legacy free" Toshiba laptops. These laptops can be recognized by
822 their lack of a BIOS setup menu and APM support.
823
824 On these machines, all system configuration is handled through the
825 ACPI. This driver is required for access to controls not covered
826 by the general ACPI drivers, such as LCD brightness, video output,
827 etc.
828
829 This driver differs from the non-ACPI Toshiba laptop driver (located
830 under "Processor type and features") in several aspects.
831 Configuration is accessed by reading and writing text files in the
832 /proc tree instead of by program interface to /dev. Furthermore, no
833 power management functions are exposed, as those are handled by the
834 general ACPI drivers.
835
836 More information about this driver is available at
837 <http://memebeam.org/toys/ToshibaAcpiDriver>.
838
839 If you have a legacy free Toshiba laptop (such as the Libretto L1
840 series), say Y.
841
842config TOSHIBA_BT_RFKILL
843 tristate "Toshiba Bluetooth RFKill switch support"
844 depends on ACPI
845 depends on RFKILL || RFKILL = n
846 help
847 This driver adds support for Bluetooth events for the RFKill
848 switch on modern Toshiba laptops with full ACPI support and
849 an RFKill switch.
850
851 This driver handles RFKill events for the TOS6205 Bluetooth,
852 and re-enables it when the switch is set back to the 'on'
853 position.
854
855 If you have a modern Toshiba laptop with a Bluetooth and an
856 RFKill switch (such as the Portege R500), say Y.
857
858config TOSHIBA_HAPS
859 tristate "Toshiba HDD Active Protection Sensor"
860 depends on ACPI
861 help
862 This driver adds support for the built-in accelerometer
863 found on recent Toshiba laptops equipped with HID TOS620A
864 device.
865
866 This driver receives ACPI notify events 0x80 when the sensor
867 detects a sudden move or a harsh vibration, as well as an
868 ACPI notify event 0x81 whenever the movement or vibration has
869 been stabilized.
870
871 Also provides sysfs entries to get/set the desired protection
872 level and resetting the HDD protection interface.
873
874 If you have a recent Toshiba laptop with a built-in accelerometer
875 device, say Y.
876
877config TOSHIBA_WMI
878 tristate "Toshiba WMI Hotkeys Driver (EXPERIMENTAL)"
879 depends on ACPI_WMI
880 depends on INPUT
881 select INPUT_SPARSEKMAP
882 help
883 This driver adds hotkey monitoring support to some Toshiba models
884 that manage the hotkeys via WMI events.
885
886 WARNING: This driver is incomplete as it lacks a proper keymap and the
887 *notify function only prints the ACPI event type value. Be warned that
888 you will need to provide some information if you have a Toshiba model
889 with WMI event hotkeys and want to help with the development of this
890 driver.
891
892 If you have a WMI-based hotkeys Toshiba laptop, say Y or M here.
893
894config ACPI_CMPC
895 tristate "CMPC Laptop Extras"
896 depends on ACPI && INPUT
897 depends on RFKILL || RFKILL=n
898 select BACKLIGHT_CLASS_DEVICE
899 help
900 Support for Intel Classmate PC ACPI devices, including some
901 keys as input device, backlight device, tablet and accelerometer
902 devices.
903
904config COMPAL_LAPTOP
905 tristate "Compal (and others) Laptop Extras"
906 depends on ACPI
907 depends on BACKLIGHT_CLASS_DEVICE
908 depends on ACPI_VIDEO || ACPI_VIDEO = n
909 depends on RFKILL
910 depends on HWMON
911 depends on POWER_SUPPLY
912 help
913 This is a driver for laptops built by Compal, and some models by
914 other brands (e.g. Dell, Toshiba).
915
916 It adds support for rfkill, Bluetooth, WLAN, LCD brightness, hwmon
917 and battery charging level control.
918
919config LG_LAPTOP
920 tristate "LG Laptop Extras"
921 depends on ACPI
922 depends on ACPI_BATTERY
923 depends on ACPI_WMI
924 depends on INPUT
925 select INPUT_SPARSEKMAP
926 select NEW_LEDS
927 select LEDS_CLASS
928 help
929 This driver adds support for hotkeys as well as control of keyboard
930 backlight, battery maximum charge level and various other ACPI
931 features.
932
933 If you have an LG Gram laptop, say Y or M here.
934
935config PANASONIC_LAPTOP
936 tristate "Panasonic Laptop Extras"
937 depends on INPUT && ACPI
938 depends on BACKLIGHT_CLASS_DEVICE
939 depends on ACPI_VIDEO=n || ACPI_VIDEO
940 depends on SERIO_I8042 || SERIO_I8042 = n
941 select INPUT_SPARSEKMAP
942 help
943 This driver adds support for access to backlight control and hotkeys
944 on Panasonic Let's Note laptops.
945
946 If you have a Panasonic Let's note laptop (such as the R1(N variant),
947 R2, R3, R5, T2, W2 and Y2 series), say Y.
948
949config SONY_LAPTOP
950 tristate "Sony Laptop Extras"
951 depends on ACPI
952 depends on ACPI_VIDEO || ACPI_VIDEO = n
953 depends on BACKLIGHT_CLASS_DEVICE
954 depends on INPUT
955 depends on RFKILL
956 help
957 This mini-driver drives the SNC and SPIC devices present in the ACPI
958 BIOS of the Sony Vaio laptops.
959
960 It gives access to some extra laptop functionalities like Bluetooth,
961 screen brightness control, Fn keys and allows powering on/off some
962 devices.
963
964 Read <file:Documentation/admin-guide/laptops/sony-laptop.rst> for more information.
965
966config SONYPI_COMPAT
967 bool "Sonypi compatibility"
968 depends on SONY_LAPTOP
969 help
970 Build the sonypi driver compatibility code into the sony-laptop driver.
971
972config SYSTEM76_ACPI
973 tristate "System76 ACPI Driver"
974 depends on ACPI
975 depends on ACPI_BATTERY
976 depends on HWMON
977 depends on INPUT
978 select NEW_LEDS
979 select LEDS_CLASS
980 select LEDS_TRIGGERS
981 help
982 This is a driver for System76 laptops running open firmware. It adds
983 support for Fn-Fx key combinations, keyboard backlight, and airplane mode
984 LEDs.
985
986 If you have a System76 laptop running open firmware, say Y or M here.
987
988config TOPSTAR_LAPTOP
989 tristate "Topstar Laptop Extras"
990 depends on ACPI
991 depends on INPUT
992 select INPUT_SPARSEKMAP
993 select LEDS_CLASS
994 select NEW_LEDS
995 help
996 This driver adds support for hotkeys found on Topstar laptops.
997
998 If you have a Topstar laptop, say Y or M here.
999
1000config SERIAL_MULTI_INSTANTIATE
1001 tristate "Serial bus multi instantiate pseudo device driver"
1002 depends on I2C && SPI && ACPI
1003 help
1004 Some ACPI-based systems list multiple devices in a single ACPI
1005 firmware-node. This driver will instantiate separate clients
1006 for each device in the firmware-node.
1007
1008 To compile this driver as a module, choose M here: the module
1009 will be called serial-multi-instantiate.
1010
1011config MLX_PLATFORM
1012 tristate "Mellanox Technologies platform support"
1013 depends on ACPI && I2C && PCI
1014 select REGMAP
1015 help
1016 This option enables system support for the Mellanox Technologies
1017 platform. The Mellanox systems provide data center networking
1018 solutions based on Virtual Protocol Interconnect (VPI) technology
1019 enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
1020 connection.
1021
1022 If you have a Mellanox system, say Y or M here.
1023
1024config TOUCHSCREEN_DMI
1025 bool "DMI based touchscreen configuration info"
1026 depends on ACPI && DMI && I2C=y && TOUCHSCREEN_SILEAD
1027 select EFI_EMBEDDED_FIRMWARE if EFI
1028 help
1029 Certain ACPI based tablets with e.g. Silead or Chipone touchscreens
1030 do not have enough data in ACPI tables for the touchscreen driver to
1031 handle the touchscreen properly, as OEMs expect the data to be baked
1032 into the tablet model specific version of the driver shipped with the
1033 the OS-image for the device. This option supplies the missing info.
1034 Enable this for x86 tablets with Silead or Chipone touchscreens.
1035
1036config INSPUR_PLATFORM_PROFILE
1037 tristate "Inspur WMI platform profile driver"
1038 depends on ACPI_WMI
1039 select ACPI_PLATFORM_PROFILE
1040 help
1041 This will allow users to determine and control the platform modes
1042 between low-power, balanced and performance modes.
1043
1044 To compile this driver as a module, choose M here: the module
1045 will be called inspur-platform-profile.
1046
1047config LENOVO_WMI_CAMERA
1048 tristate "Lenovo WMI Camera Button driver"
1049 depends on ACPI_WMI
1050 depends on INPUT
1051 help
1052 This driver provides support for Lenovo camera button. The Camera
1053 button is a GPIO device. This driver receives ACPI notifications when
1054 the camera button is switched on/off.
1055
1056 To compile this driver as a module, choose M here: the module
1057 will be called lenovo-wmi-camera.
1058
1059source "drivers/platform/x86/x86-android-tablets/Kconfig"
1060
1061config FW_ATTR_CLASS
1062 tristate
1063
1064config INTEL_IMR
1065 bool "Intel Isolated Memory Region support"
1066 depends on X86_INTEL_QUARK && IOSF_MBI
1067 help
1068 This option provides a means to manipulate Isolated Memory Regions.
1069 IMRs are a set of registers that define read and write access masks
1070 to prohibit certain system agents from accessing memory with 1 KiB
1071 granularity.
1072
1073 IMRs make it possible to control read/write access to an address
1074 by hardware agents inside the SoC. Read and write masks can be
1075 defined for:
1076 - eSRAM flush
1077 - Dirty CPU snoop (write only)
1078 - RMU access
1079 - PCI Virtual Channel 0/Virtual Channel 1
1080 - SMM mode
1081 - Non SMM mode
1082
1083 Quark contains a set of eight IMR registers and makes use of those
1084 registers during its bootup process.
1085
1086 If you are running on a Galileo/Quark say Y here.
1087
1088config INTEL_IPS
1089 tristate "Intel Intelligent Power Sharing"
1090 depends on ACPI && PCI
1091 help
1092 Intel Calpella platforms support dynamic power sharing between the
1093 CPU and GPU, maximizing performance in a given TDP. This driver,
1094 along with the CPU frequency and i915 drivers, provides that
1095 functionality. If in doubt, say Y here; it will only load on
1096 supported platforms.
1097
1098config INTEL_SCU_IPC
1099 bool
1100
1101config INTEL_SCU
1102 bool
1103 select INTEL_SCU_IPC
1104
1105config INTEL_SCU_PCI
1106 bool "Intel SCU PCI driver"
1107 depends on PCI
1108 select INTEL_SCU
1109 help
1110 This driver is used to bridge the communications between kernel
1111 and SCU on some embedded Intel x86 platforms. It also creates
1112 devices that are connected to the SoC through the SCU.
1113 Platforms supported:
1114 Medfield
1115 Clovertrail
1116 Merrifield
1117 Broxton
1118 Apollo Lake
1119
1120config INTEL_SCU_PLATFORM
1121 tristate "Intel SCU platform driver"
1122 depends on ACPI
1123 select INTEL_SCU
1124 help
1125 This driver is used to bridge the communications between kernel
1126 and SCU (sometimes called PMC as well). The driver currently
1127 supports Intel Elkhart Lake and compatible platforms.
1128
1129config INTEL_SCU_WDT
1130 bool
1131 default INTEL_SCU_PCI
1132 depends on INTEL_MID_WATCHDOG
1133 help
1134 This is a specific platform code to instantiate watchdog device
1135 on ACPI-based Intel MID platforms.
1136
1137config INTEL_SCU_IPC_UTIL
1138 tristate "Intel SCU IPC utility driver"
1139 depends on INTEL_SCU
1140 help
1141 The IPC Util driver provides an interface with the SCU enabling
1142 low level access for debug work and updating the firmware. Say
1143 N unless you will be doing this on an Intel MID platform.
1144
1145source "drivers/platform/x86/siemens/Kconfig"
1146
1147config SILICOM_PLATFORM
1148 tristate "Silicom Edge Networking device support"
1149 depends on HWMON
1150 depends on GPIOLIB
1151 depends on LEDS_CLASS_MULTICOLOR
1152 help
1153 This option enables support for the LEDs/GPIO/etc downstream of the
1154 embedded controller on Silicom "Cordoba" hardware and derivatives.
1155
1156 This platform driver provides support for various functions via
1157 the Linux LED framework, GPIO framework, Hardware Monitoring (HWMON)
1158 and device attributes.
1159
1160 If you have a Silicom network appliance, say Y or M here.
1161
1162config WINMATE_FM07_KEYS
1163 tristate "Winmate FM07/FM07P front-panel keys driver"
1164 depends on INPUT
1165 help
1166 Winmate FM07 and FM07P in-vehicle computers have a row of five
1167 buttons below the display. This module adds an input device
1168 that delivers key events when these buttons are pressed.
1169
1170config SEL3350_PLATFORM
1171 tristate "SEL-3350 LEDs and power supplies"
1172 depends on ACPI
1173 depends on GPIOLIB
1174 depends on PINCTRL_BROXTON
1175 select POWER_SUPPLY
1176 select NEW_LEDS
1177 select LEDS_CLASS
1178 select LEDS_GPIO
1179 help
1180 Support for LEDs and power supplies on SEL-3350 computers.
1181
1182 To compile this driver as a module, choose M here: the module
1183 will be called sel3350-platform.
1184
1185endif # X86_PLATFORM_DEVICES
1186
1187config P2SB
1188 bool
1189 depends on PCI && X86
1190 help
1191 The Primary to Sideband (P2SB) bridge is an interface to some
1192 PCI devices connected through it. In particular, SPI NOR controller
1193 in Intel Apollo Lake SoC is one of such devices.
1194
1195 The main purpose of this library is to unhide P2SB device in case
1196 firmware kept it hidden on some platforms in order to access devices
1197 behind it.