xref: /openbmc/linux/drivers/platform/x86/intel/Kconfig (revision 2546c600)
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Intel x86 Platform Specific Drivers
4#
5
6source "drivers/platform/x86/intel/atomisp2/Kconfig"
7source "drivers/platform/x86/intel/int1092/Kconfig"
8source "drivers/platform/x86/intel/int3472/Kconfig"
9source "drivers/platform/x86/intel/pmc/Kconfig"
10source "drivers/platform/x86/intel/pmt/Kconfig"
11source "drivers/platform/x86/intel/speed_select_if/Kconfig"
12source "drivers/platform/x86/intel/telemetry/Kconfig"
13source "drivers/platform/x86/intel/wmi/Kconfig"
14
15config INTEL_HID_EVENT
16	tristate "Intel HID Event"
17	depends on ACPI
18	depends on INPUT
19	depends on I2C
20	select INPUT_SPARSEKMAP
21	help
22	  This driver provides support for the Intel HID Event hotkey interface.
23	  Some laptops require this driver for hotkey support.
24
25	  To compile this driver as a module, choose M here: the module will
26	  be called intel_hid.
27
28config INTEL_VBTN
29	tristate "Intel Virtual Button"
30	depends on ACPI
31	depends on INPUT
32	depends on I2C
33	select INPUT_SPARSEKMAP
34	help
35	  This driver provides support for the Intel Virtual Button interface.
36	  Some laptops require this driver for power button support.
37
38	  To compile this driver as a module, choose M here: the module will
39	  be called intel_vbtn.
40
41config INTEL_INT0002_VGPIO
42	tristate "Intel ACPI INT0002 Virtual GPIO driver"
43	depends on GPIOLIB && ACPI && PM_SLEEP
44	select GPIOLIB_IRQCHIP
45	help
46	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
47	  Power Management Event (PME) to the Power Management Controller (PMC)
48	  to wakeup the system. When this happens software needs to explicitly
49	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
50	  IRQ storm on IRQ 9.
51
52	  This is modelled in ACPI through the INT0002 ACPI device, which is
53	  called a "Virtual GPIO controller" in ACPI because it defines the
54	  event handler to call when the PME triggers through _AEI and _L02
55	  methods as would be done for a real GPIO interrupt in ACPI.
56
57	  To compile this driver as a module, choose M here: the module will
58	  be called intel_int0002_vgpio.
59
60config INTEL_OAKTRAIL
61	tristate "Intel Oaktrail Platform Extras"
62	depends on ACPI
63	depends on ACPI_VIDEO || ACPI_VIDEO=n
64	depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
65	help
66	  Intel Oaktrail platform need this driver to provide interfaces to
67	  enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
68	  here; it will only load on supported platforms.
69
70config INTEL_BXTWC_PMIC_TMU
71	tristate "Intel Broxton Whiskey Cove TMU Driver"
72	depends on INTEL_SOC_PMIC_BXTWC
73	depends on MFD_INTEL_PMC_BXT
74	select REGMAP
75	help
76	  Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature.
77	  This driver enables the alarm wakeup functionality in the TMU unit of
78	  Whiskey Cove PMIC.
79
80config INTEL_CHTDC_TI_PWRBTN
81	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
82	depends on INTEL_SOC_PMIC_CHTDC_TI
83	depends on INPUT
84	help
85	  This option adds a power button driver for Dollar Cove TI
86	  PMIC on Intel Cherry Trail devices.
87
88	  To compile this driver as a module, choose M here: the module
89	  will be called intel_chtdc_ti_pwrbtn.
90
91config INTEL_CHTWC_INT33FE
92	tristate "Intel Cherry Trail Whiskey Cove ACPI INT33FE Driver"
93	depends on X86 && ACPI && I2C && REGULATOR
94	depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m)
95	depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m)
96	depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m)
97	help
98	  This driver add support for the Intel Cherry Trail Whiskey Cove
99	  INT33FE ACPI device found on the GPD win and the GPD pocket.
100
101	  The INT33FE ACPI device on these mini laptops contains I2cSerialBusV2
102	  resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller
103	  and PI3USB30532 USB switch.
104	  This driver instantiates i2c-clients for these, so that standard
105	  i2c drivers for these chips can bind to the them.
106
107	  If you enable this driver it is advised to also select
108	  CONFIG_TYPEC_FUSB302=m, CONFIG_TYPEC_MUX_PI3USB30532=m and
109	  CONFIG_BATTERY_MAX17042=m.
110
111config INTEL_ISHTP_ECLITE
112	tristate "Intel ISHTP eclite controller Driver"
113	depends on INTEL_ISH_HID
114	depends on ACPI
115	help
116	  This driver is for accessing the PSE (Programmable Service Engine) -
117	  an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
118	  Transport Protocol) to get battery, thermal and UCSI (USB Type-C
119	  Connector System Software Interface) related data from the platform.
120	  Users who don't want to use discrete Embedded Controller on Intel's
121	  Elkhartlake platform can leverage this integrated solution of
122	  ECLite which is part of PSE subsystem.
123
124	  To compile this driver as a module, choose M here: the module
125	  will be called intel_ishtp_eclite.
126
127config INTEL_MRFLD_PWRBTN
128	tristate "Intel Merrifield Basin Cove power button driver"
129	depends on INTEL_SOC_PMIC_MRFLD
130	depends on INPUT
131	help
132	  This option adds a power button driver for Basin Cove PMIC
133	  on Intel Merrifield devices.
134
135	  To compile this driver as a module, choose M here: the module
136	  will be called intel_mrfld_pwrbtn.
137
138config INTEL_PUNIT_IPC
139	tristate "Intel P-Unit IPC Driver"
140	help
141	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
142	  which is used to bridge the communications between kernel and P-Unit.
143
144config INTEL_RST
145	tristate "Intel Rapid Start Technology Driver"
146	depends on ACPI
147	help
148	  This driver provides support for modifying parameters on systems
149	  equipped with Intel's Rapid Start Technology. When put in an ACPI
150	  sleep state, these devices will wake after either a configured
151	  timeout or when the system battery reaches a critical state,
152	  automatically copying memory contents to disk. On resume, the
153	  firmware will copy the memory contents back to RAM and resume the OS
154	  as usual.
155
156config INTEL_SDSI
157	tristate "Intel Software Defined Silicon Driver"
158	depends on INTEL_VSEC
159	depends on X86_64
160	help
161	  This driver enables access to the Intel Software Defined Silicon
162	  interface used to provision silicon features with an authentication
163	  certificate and capability license.
164
165	  To compile this driver as a module, choose M here: the module will
166	  be called intel_sdsi.
167
168config INTEL_SMARTCONNECT
169	tristate "Intel Smart Connect disabling driver"
170	depends on ACPI
171	help
172	  Intel Smart Connect is a technology intended to permit devices to
173	  update state by resuming for a short period of time at regular
174	  intervals. If a user enables this functionality under Windows and
175	  then reboots into Linux, the system may remain configured to resume
176	  on suspend. In the absence of any userspace to support it, the system
177	  will then remain awake until something triggers another suspend.
178
179	  This driver checks to determine whether the device has Intel Smart
180	  Connect enabled, and if so disables it.
181
182config INTEL_TURBO_MAX_3
183	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
184	depends on X86_64 && SCHED_MC_PRIO
185	help
186	  This driver reads maximum performance ratio of each CPU and set up
187	  the scheduler priority metrics. In this way scheduler can prefer
188	  CPU with higher performance to schedule tasks.
189
190	  This driver is only required when the system is not using Hardware
191	  P-States (HWP). In HWP mode, priority can be read from ACPI tables.
192
193config INTEL_UNCORE_FREQ_CONTROL
194	tristate "Intel Uncore frequency control driver"
195	depends on X86_64
196	help
197	  This driver allows control of Uncore frequency limits on
198	  supported server platforms.
199
200	  Uncore frequency controls RING/LLC (last-level cache) clocks.
201
202	  To compile this driver as a module, choose M here: the module
203	  will be called intel-uncore-frequency.
204
205config INTEL_VSEC
206	tristate "Intel Vendor Specific Extended Capabilities Driver"
207	depends on PCI
208	select AUXILIARY_BUS
209	help
210	  Adds support for feature drivers exposed using Intel PCIe VSEC and
211	  DVSEC.
212
213	  To compile this driver as a module, choose M here: the module will
214	  be called intel_vsec.
215