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