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