18bd836feSAndy Shevchenko# SPDX-License-Identifier: GPL-2.0-only 28bd836feSAndy Shevchenko# 38bd836feSAndy Shevchenko# Intel x86 Platform Specific Drivers 48bd836feSAndy Shevchenko# 58bd836feSAndy Shevchenko 676693f57SKate Hsuansource "drivers/platform/x86/intel/atomisp2/Kconfig" 7dcfbd31eSShravan Ssource "drivers/platform/x86/intel/int1092/Kconfig" 88bd836feSAndy Shevchenkosource "drivers/platform/x86/intel/int3472/Kconfig" 9fa082a7cSKate Hsuansource "drivers/platform/x86/intel/pmc/Kconfig" 10e184b1e5SDavid E. Boxsource "drivers/platform/x86/intel/pmt/Kconfig" 116b1e4828SKate Hsuansource "drivers/platform/x86/intel/speed_select_if/Kconfig" 122b6cb8f2SKate Hsuansource "drivers/platform/x86/intel/telemetry/Kconfig" 13bd5b4fb4SKate Hsuansource "drivers/platform/x86/intel/wmi/Kconfig" 148bd836feSAndy Shevchenko 15c3d3586dSKate Hsuanconfig INTEL_HID_EVENT 16c3d3586dSKate Hsuan tristate "Intel HID Event" 17c3d3586dSKate Hsuan depends on ACPI 18c3d3586dSKate Hsuan depends on INPUT 19c3d3586dSKate Hsuan depends on I2C 20c3d3586dSKate Hsuan select INPUT_SPARSEKMAP 21c3d3586dSKate Hsuan help 22c3d3586dSKate Hsuan This driver provides support for the Intel HID Event hotkey interface. 23c3d3586dSKate Hsuan Some laptops require this driver for hotkey support. 24c3d3586dSKate Hsuan 25c3d3586dSKate Hsuan To compile this driver as a module, choose M here: the module will 26c3d3586dSKate Hsuan be called intel_hid. 27c3d3586dSKate Hsuan 283afeacfdSKate Hsuanconfig INTEL_VBTN 293afeacfdSKate Hsuan tristate "Intel Virtual Button" 303afeacfdSKate Hsuan depends on ACPI 313afeacfdSKate Hsuan depends on INPUT 323afeacfdSKate Hsuan depends on I2C 333afeacfdSKate Hsuan select INPUT_SPARSEKMAP 343afeacfdSKate Hsuan help 353afeacfdSKate Hsuan This driver provides support for the Intel Virtual Button interface. 363afeacfdSKate Hsuan Some laptops require this driver for power button support. 373afeacfdSKate Hsuan 383afeacfdSKate Hsuan To compile this driver as a module, choose M here: the module will 393afeacfdSKate Hsuan be called intel_vbtn. 403afeacfdSKate Hsuan 41daef4c5aSKate Hsuanconfig INTEL_INT0002_VGPIO 42daef4c5aSKate Hsuan tristate "Intel ACPI INT0002 Virtual GPIO driver" 43daef4c5aSKate Hsuan depends on GPIOLIB && ACPI && PM_SLEEP 44daef4c5aSKate Hsuan select GPIOLIB_IRQCHIP 45daef4c5aSKate Hsuan help 46daef4c5aSKate Hsuan Some peripherals on Bay Trail and Cherry Trail platforms signal a 47daef4c5aSKate Hsuan Power Management Event (PME) to the Power Management Controller (PMC) 48daef4c5aSKate Hsuan to wakeup the system. When this happens software needs to explicitly 49daef4c5aSKate Hsuan clear the PME bus 0 status bit in the GPE0a_STS register to avoid an 50daef4c5aSKate Hsuan IRQ storm on IRQ 9. 51daef4c5aSKate Hsuan 52daef4c5aSKate Hsuan This is modelled in ACPI through the INT0002 ACPI device, which is 53daef4c5aSKate Hsuan called a "Virtual GPIO controller" in ACPI because it defines the 54daef4c5aSKate Hsuan event handler to call when the PME triggers through _AEI and _L02 55daef4c5aSKate Hsuan methods as would be done for a real GPIO interrupt in ACPI. 56daef4c5aSKate Hsuan 57daef4c5aSKate Hsuan To compile this driver as a module, choose M here: the module will 58daef4c5aSKate Hsuan be called intel_int0002_vgpio. 59daef4c5aSKate Hsuan 60cdbb8f5eSKate Hsuanconfig INTEL_OAKTRAIL 61cdbb8f5eSKate Hsuan tristate "Intel Oaktrail Platform Extras" 62cdbb8f5eSKate Hsuan depends on ACPI 63cdbb8f5eSKate Hsuan depends on ACPI_VIDEO || ACPI_VIDEO=n 64cdbb8f5eSKate Hsuan depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI 65cdbb8f5eSKate Hsuan help 66cdbb8f5eSKate Hsuan Intel Oaktrail platform need this driver to provide interfaces to 67cdbb8f5eSKate Hsuan enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y 68cdbb8f5eSKate Hsuan here; it will only load on supported platforms. 69cdbb8f5eSKate Hsuan 709ed10052SKate Hsuanconfig INTEL_BXTWC_PMIC_TMU 719ed10052SKate Hsuan tristate "Intel Broxton Whiskey Cove TMU Driver" 729ed10052SKate Hsuan depends on INTEL_SOC_PMIC_BXTWC 739ed10052SKate Hsuan depends on MFD_INTEL_PMC_BXT 749ed10052SKate Hsuan select REGMAP 759ed10052SKate Hsuan help 769ed10052SKate Hsuan Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature. 779ed10052SKate Hsuan This driver enables the alarm wakeup functionality in the TMU unit of 789ed10052SKate Hsuan Whiskey Cove PMIC. 799ed10052SKate Hsuan 802e4355e4SKate Hsuanconfig INTEL_CHTDC_TI_PWRBTN 812e4355e4SKate Hsuan tristate "Intel Cherry Trail Dollar Cove TI power button driver" 822e4355e4SKate Hsuan depends on INTEL_SOC_PMIC_CHTDC_TI 832e4355e4SKate Hsuan depends on INPUT 842e4355e4SKate Hsuan help 852e4355e4SKate Hsuan This option adds a power button driver for Dollar Cove TI 862e4355e4SKate Hsuan PMIC on Intel Cherry Trail devices. 872e4355e4SKate Hsuan 882e4355e4SKate Hsuan To compile this driver as a module, choose M here: the module 892e4355e4SKate Hsuan will be called intel_chtdc_ti_pwrbtn. 902e4355e4SKate Hsuan 91*ae707d0eSHans de Goedeconfig INTEL_CHTWC_INT33FE 92*ae707d0eSHans de Goede tristate "Intel Cherry Trail Whiskey Cove ACPI INT33FE Driver" 93*ae707d0eSHans de Goede depends on X86 && ACPI && I2C && REGULATOR 94*ae707d0eSHans de Goede depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m) 95*ae707d0eSHans de Goede depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m) 96*ae707d0eSHans de Goede depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m) 97*ae707d0eSHans de Goede help 98*ae707d0eSHans de Goede This driver add support for the Intel Cherry Trail Whiskey Cove 99*ae707d0eSHans de Goede INT33FE ACPI device found on the GPD win and the GPD pocket. 100*ae707d0eSHans de Goede 101*ae707d0eSHans de Goede The INT33FE ACPI device on these mini laptops contains I2cSerialBusV2 102*ae707d0eSHans de Goede resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller 103*ae707d0eSHans de Goede and PI3USB30532 USB switch. 104*ae707d0eSHans de Goede This driver instantiates i2c-clients for these, so that standard 105*ae707d0eSHans de Goede i2c drivers for these chips can bind to the them. 106*ae707d0eSHans de Goede 107*ae707d0eSHans de Goede If you enable this driver it is advised to also select 108*ae707d0eSHans de Goede CONFIG_TYPEC_FUSB302=m, CONFIG_TYPEC_MUX_PI3USB30532=m and 109*ae707d0eSHans de Goede CONFIG_BATTERY_MAX17042=m. 110*ae707d0eSHans de Goede 1117b6bf51dSK Naduvalath, Sumeshconfig INTEL_ISHTP_ECLITE 1127b6bf51dSK Naduvalath, Sumesh tristate "Intel ISHTP eclite controller Driver" 1137b6bf51dSK Naduvalath, Sumesh depends on INTEL_ISH_HID 1147b6bf51dSK Naduvalath, Sumesh depends on ACPI 1157b6bf51dSK Naduvalath, Sumesh help 1167b6bf51dSK Naduvalath, Sumesh This driver is for accessing the PSE (Programmable Service Engine) - 1177b6bf51dSK Naduvalath, Sumesh an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub 1187b6bf51dSK Naduvalath, Sumesh Transport Protocol) to get battery, thermal and UCSI (USB Type-C 1197b6bf51dSK Naduvalath, Sumesh Connector System Software Interface) related data from the platform. 1207b6bf51dSK Naduvalath, Sumesh Users who don't want to use discrete Embedded Controller on Intel's 1217b6bf51dSK Naduvalath, Sumesh Elkhartlake platform can leverage this integrated solution of 1227b6bf51dSK Naduvalath, Sumesh ECLite which is part of PSE subsystem. 1237b6bf51dSK Naduvalath, Sumesh 1247b6bf51dSK Naduvalath, Sumesh To compile this driver as a module, choose M here: the module 1257b6bf51dSK Naduvalath, Sumesh will be called intel_ishtp_eclite. 1267b6bf51dSK Naduvalath, Sumesh 127f51c108dSKate Hsuanconfig INTEL_MRFLD_PWRBTN 128f51c108dSKate Hsuan tristate "Intel Merrifield Basin Cove power button driver" 129f51c108dSKate Hsuan depends on INTEL_SOC_PMIC_MRFLD 130f51c108dSKate Hsuan depends on INPUT 131f51c108dSKate Hsuan help 132f51c108dSKate Hsuan This option adds a power button driver for Basin Cove PMIC 133f51c108dSKate Hsuan on Intel Merrifield devices. 134f51c108dSKate Hsuan 135f51c108dSKate Hsuan To compile this driver as a module, choose M here: the module 136f51c108dSKate Hsuan will be called intel_mrfld_pwrbtn. 137f51c108dSKate Hsuan 138386d17b2SKate Hsuanconfig INTEL_PUNIT_IPC 139386d17b2SKate Hsuan tristate "Intel P-Unit IPC Driver" 140386d17b2SKate Hsuan help 141386d17b2SKate Hsuan This driver provides support for Intel P-Unit Mailbox IPC mechanism, 142386d17b2SKate Hsuan which is used to bridge the communications between kernel and P-Unit. 143386d17b2SKate Hsuan 144e6596c22SKate Hsuanconfig INTEL_RST 145e6596c22SKate Hsuan tristate "Intel Rapid Start Technology Driver" 146e6596c22SKate Hsuan depends on ACPI 147e6596c22SKate Hsuan help 148e6596c22SKate Hsuan This driver provides support for modifying parameters on systems 149e6596c22SKate Hsuan equipped with Intel's Rapid Start Technology. When put in an ACPI 150e6596c22SKate Hsuan sleep state, these devices will wake after either a configured 151e6596c22SKate Hsuan timeout or when the system battery reaches a critical state, 152e6596c22SKate Hsuan automatically copying memory contents to disk. On resume, the 153e6596c22SKate Hsuan firmware will copy the memory contents back to RAM and resume the OS 154e6596c22SKate Hsuan as usual. 155e6596c22SKate Hsuan 15647bbe03eSKate Hsuanconfig INTEL_SMARTCONNECT 15747bbe03eSKate Hsuan tristate "Intel Smart Connect disabling driver" 15847bbe03eSKate Hsuan depends on ACPI 15947bbe03eSKate Hsuan help 16047bbe03eSKate Hsuan Intel Smart Connect is a technology intended to permit devices to 16147bbe03eSKate Hsuan update state by resuming for a short period of time at regular 16247bbe03eSKate Hsuan intervals. If a user enables this functionality under Windows and 16347bbe03eSKate Hsuan then reboots into Linux, the system may remain configured to resume 16447bbe03eSKate Hsuan on suspend. In the absence of any userspace to support it, the system 16547bbe03eSKate Hsuan will then remain awake until something triggers another suspend. 16647bbe03eSKate Hsuan 16747bbe03eSKate Hsuan This driver checks to determine whether the device has Intel Smart 16847bbe03eSKate Hsuan Connect enabled, and if so disables it. 16947bbe03eSKate Hsuan 1701fef1c04SKate Hsuanconfig INTEL_TURBO_MAX_3 1711fef1c04SKate Hsuan bool "Intel Turbo Boost Max Technology 3.0 enumeration driver" 1721fef1c04SKate Hsuan depends on X86_64 && SCHED_MC_PRIO 1731fef1c04SKate Hsuan help 1741fef1c04SKate Hsuan This driver reads maximum performance ratio of each CPU and set up 1751fef1c04SKate Hsuan the scheduler priority metrics. In this way scheduler can prefer 1761fef1c04SKate Hsuan CPU with higher performance to schedule tasks. 1771fef1c04SKate Hsuan 1781fef1c04SKate Hsuan This driver is only required when the system is not using Hardware 1791fef1c04SKate Hsuan P-States (HWP). In HWP mode, priority can be read from ACPI tables. 1801fef1c04SKate Hsuan 181075b5598SKate Hsuanconfig INTEL_UNCORE_FREQ_CONTROL 182075b5598SKate Hsuan tristate "Intel Uncore frequency control driver" 183075b5598SKate Hsuan depends on X86_64 184075b5598SKate Hsuan help 185075b5598SKate Hsuan This driver allows control of Uncore frequency limits on 186075b5598SKate Hsuan supported server platforms. 187075b5598SKate Hsuan 188075b5598SKate Hsuan Uncore frequency controls RING/LLC (last-level cache) clocks. 189075b5598SKate Hsuan 190075b5598SKate Hsuan To compile this driver as a module, choose M here: the module 191075b5598SKate Hsuan will be called intel-uncore-frequency. 192075b5598SKate Hsuan 193a3c8f906SDavid E. Boxconfig INTEL_VSEC 194a3c8f906SDavid E. Box tristate "Intel Vendor Specific Extended Capabilities Driver" 195a3c8f906SDavid E. Box depends on PCI 196a3c8f906SDavid E. Box select AUXILIARY_BUS 197a3c8f906SDavid E. Box help 198a3c8f906SDavid E. Box Adds support for feature drivers exposed using Intel PCIe VSEC and 199a3c8f906SDavid E. Box DVSEC. 200a3c8f906SDavid E. Box 201a3c8f906SDavid E. Box To compile this driver as a module, choose M here: the module will 202a3c8f906SDavid E. Box be called intel_vsec. 203