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