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