1 # SPDX-License-Identifier: GPL-2.0-only
3 # Intel x86 Platform Specific Drivers
6 source "drivers/platform/x86/intel/atomisp2/Kconfig"
7 source "drivers/platform/x86/intel/ifs/Kconfig"
8 source "drivers/platform/x86/intel/int1092/Kconfig"
9 source "drivers/platform/x86/intel/int3472/Kconfig"
10 source "drivers/platform/x86/intel/pmc/Kconfig"
11 source "drivers/platform/x86/intel/pmt/Kconfig"
12 source "drivers/platform/x86/intel/speed_select_if/Kconfig"
13 source "drivers/platform/x86/intel/telemetry/Kconfig"
14 source "drivers/platform/x86/intel/wmi/Kconfig"
15 source "drivers/platform/x86/intel/uncore-frequency/Kconfig"
18 config INTEL_HID_EVENT
19 tristate "Intel HID Event"
23 select INPUT_SPARSEKMAP
25 This driver provides support for the Intel HID Event hotkey interface.
26 Some laptops require this driver for hotkey support.
28 To compile this driver as a module, choose M here: the module will
32 tristate "Intel Virtual Button"
36 select INPUT_SPARSEKMAP
38 This driver provides support for the Intel Virtual Button interface.
39 Some laptops require this driver for power button support.
41 To compile this driver as a module, choose M here: the module will
44 config INTEL_INT0002_VGPIO
45 tristate "Intel ACPI INT0002 Virtual GPIO driver"
46 depends on GPIOLIB && ACPI && PM_SLEEP
47 select GPIOLIB_IRQCHIP
49 Some peripherals on Bay Trail and Cherry Trail platforms signal a
50 Power Management Event (PME) to the Power Management Controller (PMC)
51 to wakeup the system. When this happens software needs to explicitly
52 clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
55 This is modelled in ACPI through the INT0002 ACPI device, which is
56 called a "Virtual GPIO controller" in ACPI because it defines the
57 event handler to call when the PME triggers through _AEI and _L02
58 methods as would be done for a real GPIO interrupt in ACPI.
60 To compile this driver as a module, choose M here: the module will
61 be called intel_int0002_vgpio.
64 tristate "Intel Oaktrail Platform Extras"
66 depends on ACPI_VIDEO || ACPI_VIDEO=n
67 depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
69 Intel Oaktrail platform need this driver to provide interfaces to
70 enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
71 here; it will only load on supported platforms.
73 config INTEL_BXTWC_PMIC_TMU
74 tristate "Intel Broxton Whiskey Cove TMU Driver"
75 depends on INTEL_SOC_PMIC_BXTWC
76 depends on MFD_INTEL_PMC_BXT
79 Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature.
80 This driver enables the alarm wakeup functionality in the TMU unit of
83 config INTEL_BYTCRC_PWRSRC
84 tristate "Intel Bay Trail Crystal Cove power source driver"
85 depends on INTEL_SOC_PMIC
87 This option adds a power source driver for Crystal Cove PMICs
88 on Intel Bay Trail devices.
90 To compile this driver as a module, choose M here: the module
91 will be called intel_bytcrc_pwrsrc.
93 config INTEL_CHTDC_TI_PWRBTN
94 tristate "Intel Cherry Trail Dollar Cove TI power button driver"
95 depends on INTEL_SOC_PMIC_CHTDC_TI
98 This option adds a power button driver for Dollar Cove TI
99 PMIC on Intel Cherry Trail devices.
101 To compile this driver as a module, choose M here: the module
102 will be called intel_chtdc_ti_pwrbtn.
104 config INTEL_CHTWC_INT33FE
105 tristate "Intel Cherry Trail Whiskey Cove ACPI INT33FE Driver"
106 depends on X86 && ACPI && I2C && REGULATOR
107 depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m)
108 depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m)
109 depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m)
111 This driver add support for the Intel Cherry Trail Whiskey Cove
112 INT33FE ACPI device found on the GPD win and the GPD pocket.
114 The INT33FE ACPI device on these mini laptops contains I2cSerialBusV2
115 resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller
116 and PI3USB30532 USB switch.
117 This driver instantiates i2c-clients for these, so that standard
118 i2c drivers for these chips can bind to the them.
120 If you enable this driver it is advised to also select
121 CONFIG_TYPEC_FUSB302=m, CONFIG_TYPEC_MUX_PI3USB30532=m and
122 CONFIG_BATTERY_MAX17042=m.
124 config INTEL_ISHTP_ECLITE
125 tristate "Intel ISHTP eclite controller Driver"
126 depends on INTEL_ISH_HID
129 This driver is for accessing the PSE (Programmable Service Engine) -
130 an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
131 Transport Protocol) to get battery, thermal and UCSI (USB Type-C
132 Connector System Software Interface) related data from the platform.
133 Users who don't want to use discrete Embedded Controller on Intel's
134 Elkhartlake platform can leverage this integrated solution of
135 ECLite which is part of PSE subsystem.
137 To compile this driver as a module, choose M here: the module
138 will be called intel_ishtp_eclite.
140 config INTEL_MRFLD_PWRBTN
141 tristate "Intel Merrifield Basin Cove power button driver"
142 depends on INTEL_SOC_PMIC_MRFLD
145 This option adds a power button driver for Basin Cove PMIC
146 on Intel Merrifield devices.
148 To compile this driver as a module, choose M here: the module
149 will be called intel_mrfld_pwrbtn.
151 config INTEL_PUNIT_IPC
152 tristate "Intel P-Unit IPC Driver"
154 This driver provides support for Intel P-Unit Mailbox IPC mechanism,
155 which is used to bridge the communications between kernel and P-Unit.
158 tristate "Intel Rapid Start Technology Driver"
161 This driver provides support for modifying parameters on systems
162 equipped with Intel's Rapid Start Technology. When put in an ACPI
163 sleep state, these devices will wake after either a configured
164 timeout or when the system battery reaches a critical state,
165 automatically copying memory contents to disk. On resume, the
166 firmware will copy the memory contents back to RAM and resume the OS
170 tristate "Intel On Demand (Software Defined Silicon) Driver"
171 depends on INTEL_VSEC
174 This driver enables access to the Intel On Demand (formerly Software
175 Defined Silicon) interface used to provision silicon features with an
176 authentication certificate and capability license.
178 To compile this driver as a module, choose M here: the module will
179 be called intel_sdsi.
181 config INTEL_SMARTCONNECT
182 tristate "Intel Smart Connect disabling driver"
185 Intel Smart Connect is a technology intended to permit devices to
186 update state by resuming for a short period of time at regular
187 intervals. If a user enables this functionality under Windows and
188 then reboots into Linux, the system may remain configured to resume
189 on suspend. In the absence of any userspace to support it, the system
190 will then remain awake until something triggers another suspend.
192 This driver checks to determine whether the device has Intel Smart
193 Connect enabled, and if so disables it.
195 config INTEL_TPMI_POWER_DOMAINS
199 tristate "Intel Topology Aware Register and PM Capsule Interface (TPMI)"
200 depends on INTEL_VSEC
202 select INTEL_TPMI_POWER_DOMAINS
204 The Intel Topology Aware Register and PM Capsule Interface (TPMI),
205 provides enumerable MMIO interface for power management features.
206 This driver creates devices, so that other PM feature driver can
207 be loaded for PM specific feature operation.
209 To compile this driver as a module, choose M here: the module will
210 be called intel_vsec_tpmi.
212 config INTEL_PLR_TPMI
213 tristate "Intel SoC TPMI Power Limit Reasons driver"
214 depends on INTEL_TPMI
216 This driver provides the TPMI power limit reasons status information
219 config INTEL_TURBO_MAX_3
220 bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
221 depends on X86_64 && SCHED_MC_PRIO
223 This driver reads maximum performance ratio of each CPU and set up
224 the scheduler priority metrics. In this way scheduler can prefer
225 CPU with higher performance to schedule tasks.
227 This driver is only required when the system is not using Hardware
228 P-States (HWP). In HWP mode, priority can be read from ACPI tables.
231 tristate "Intel Vendor Specific Extended Capabilities Driver"
235 Adds support for feature drivers exposed using Intel PCIe VSEC and
238 To compile this driver as a module, choose M here: the module will
239 be called intel_vsec.