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