xref: /openbmc/linux/drivers/platform/x86/intel/Kconfig (revision 94227b9c)
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"
767896ef1STony Lucksource "drivers/platform/x86/intel/ifs/Kconfig"
8dcfbd31eSShravan Ssource "drivers/platform/x86/intel/int1092/Kconfig"
98bd836feSAndy Shevchenkosource "drivers/platform/x86/intel/int3472/Kconfig"
10fa082a7cSKate Hsuansource "drivers/platform/x86/intel/pmc/Kconfig"
11e184b1e5SDavid E. Boxsource "drivers/platform/x86/intel/pmt/Kconfig"
126b1e4828SKate Hsuansource "drivers/platform/x86/intel/speed_select_if/Kconfig"
132b6cb8f2SKate Hsuansource "drivers/platform/x86/intel/telemetry/Kconfig"
14bd5b4fb4SKate Hsuansource "drivers/platform/x86/intel/wmi/Kconfig"
15ce2645c4SSrinivas Pandruvadasource "drivers/platform/x86/intel/uncore-frequency/Kconfig"
16ce2645c4SSrinivas Pandruvada
178bd836feSAndy Shevchenko
18c3d3586dSKate Hsuanconfig INTEL_HID_EVENT
19c3d3586dSKate Hsuan	tristate "Intel HID Event"
20c3d3586dSKate Hsuan	depends on ACPI
21c3d3586dSKate Hsuan	depends on INPUT
22c3d3586dSKate Hsuan	depends on I2C
23c3d3586dSKate Hsuan	select INPUT_SPARSEKMAP
24c3d3586dSKate Hsuan	help
25c3d3586dSKate Hsuan	  This driver provides support for the Intel HID Event hotkey interface.
26c3d3586dSKate Hsuan	  Some laptops require this driver for hotkey support.
27c3d3586dSKate Hsuan
28c3d3586dSKate Hsuan	  To compile this driver as a module, choose M here: the module will
29c3d3586dSKate Hsuan	  be called intel_hid.
30c3d3586dSKate Hsuan
313afeacfdSKate Hsuanconfig INTEL_VBTN
323afeacfdSKate Hsuan	tristate "Intel Virtual Button"
333afeacfdSKate Hsuan	depends on ACPI
343afeacfdSKate Hsuan	depends on INPUT
353afeacfdSKate Hsuan	depends on I2C
363afeacfdSKate Hsuan	select INPUT_SPARSEKMAP
373afeacfdSKate Hsuan	help
383afeacfdSKate Hsuan	  This driver provides support for the Intel Virtual Button interface.
393afeacfdSKate Hsuan	  Some laptops require this driver for power button support.
403afeacfdSKate Hsuan
413afeacfdSKate Hsuan	  To compile this driver as a module, choose M here: the module will
423afeacfdSKate Hsuan	  be called intel_vbtn.
433afeacfdSKate Hsuan
44daef4c5aSKate Hsuanconfig INTEL_INT0002_VGPIO
45daef4c5aSKate Hsuan	tristate "Intel ACPI INT0002 Virtual GPIO driver"
46daef4c5aSKate Hsuan	depends on GPIOLIB && ACPI && PM_SLEEP
47daef4c5aSKate Hsuan	select GPIOLIB_IRQCHIP
48daef4c5aSKate Hsuan	help
49daef4c5aSKate Hsuan	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
50daef4c5aSKate Hsuan	  Power Management Event (PME) to the Power Management Controller (PMC)
51daef4c5aSKate Hsuan	  to wakeup the system. When this happens software needs to explicitly
52daef4c5aSKate Hsuan	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
53daef4c5aSKate Hsuan	  IRQ storm on IRQ 9.
54daef4c5aSKate Hsuan
55daef4c5aSKate Hsuan	  This is modelled in ACPI through the INT0002 ACPI device, which is
56daef4c5aSKate Hsuan	  called a "Virtual GPIO controller" in ACPI because it defines the
57daef4c5aSKate Hsuan	  event handler to call when the PME triggers through _AEI and _L02
58daef4c5aSKate Hsuan	  methods as would be done for a real GPIO interrupt in ACPI.
59daef4c5aSKate Hsuan
60daef4c5aSKate Hsuan	  To compile this driver as a module, choose M here: the module will
61daef4c5aSKate Hsuan	  be called intel_int0002_vgpio.
62daef4c5aSKate Hsuan
63cdbb8f5eSKate Hsuanconfig INTEL_OAKTRAIL
64cdbb8f5eSKate Hsuan	tristate "Intel Oaktrail Platform Extras"
65cdbb8f5eSKate Hsuan	depends on ACPI
66cdbb8f5eSKate Hsuan	depends on ACPI_VIDEO || ACPI_VIDEO=n
67cdbb8f5eSKate Hsuan	depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
68cdbb8f5eSKate Hsuan	help
69cdbb8f5eSKate Hsuan	  Intel Oaktrail platform need this driver to provide interfaces to
70cdbb8f5eSKate Hsuan	  enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
71cdbb8f5eSKate Hsuan	  here; it will only load on supported platforms.
72cdbb8f5eSKate Hsuan
739ed10052SKate Hsuanconfig INTEL_BXTWC_PMIC_TMU
749ed10052SKate Hsuan	tristate "Intel Broxton Whiskey Cove TMU Driver"
759ed10052SKate Hsuan	depends on INTEL_SOC_PMIC_BXTWC
769ed10052SKate Hsuan	depends on MFD_INTEL_PMC_BXT
779ed10052SKate Hsuan	select REGMAP
789ed10052SKate Hsuan	help
799ed10052SKate Hsuan	  Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature.
809ed10052SKate Hsuan	  This driver enables the alarm wakeup functionality in the TMU unit of
819ed10052SKate Hsuan	  Whiskey Cove PMIC.
829ed10052SKate Hsuan
83*94227b9cSHans de Goedeconfig INTEL_BYTCRC_PWRSRC
84*94227b9cSHans de Goede	tristate "Intel Bay Trail Crystal Cove power source driver"
85*94227b9cSHans de Goede	depends on INTEL_SOC_PMIC
86*94227b9cSHans de Goede	help
87*94227b9cSHans de Goede	  This option adds a power source driver for Crystal Cove PMICs
88*94227b9cSHans de Goede	  on Intel Bay Trail devices.
89*94227b9cSHans de Goede
90*94227b9cSHans de Goede	  To compile this driver as a module, choose M here: the module
91*94227b9cSHans de Goede	  will be called intel_bytcrc_pwrsrc.
92*94227b9cSHans de Goede
932e4355e4SKate Hsuanconfig INTEL_CHTDC_TI_PWRBTN
942e4355e4SKate Hsuan	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
952e4355e4SKate Hsuan	depends on INTEL_SOC_PMIC_CHTDC_TI
962e4355e4SKate Hsuan	depends on INPUT
972e4355e4SKate Hsuan	help
982e4355e4SKate Hsuan	  This option adds a power button driver for Dollar Cove TI
992e4355e4SKate Hsuan	  PMIC on Intel Cherry Trail devices.
1002e4355e4SKate Hsuan
1012e4355e4SKate Hsuan	  To compile this driver as a module, choose M here: the module
1022e4355e4SKate Hsuan	  will be called intel_chtdc_ti_pwrbtn.
1032e4355e4SKate Hsuan
104ae707d0eSHans de Goedeconfig INTEL_CHTWC_INT33FE
105ae707d0eSHans de Goede	tristate "Intel Cherry Trail Whiskey Cove ACPI INT33FE Driver"
106ae707d0eSHans de Goede	depends on X86 && ACPI && I2C && REGULATOR
107ae707d0eSHans de Goede	depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m)
108ae707d0eSHans de Goede	depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m)
109ae707d0eSHans de Goede	depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m)
110ae707d0eSHans de Goede	help
111ae707d0eSHans de Goede	  This driver add support for the Intel Cherry Trail Whiskey Cove
112ae707d0eSHans de Goede	  INT33FE ACPI device found on the GPD win and the GPD pocket.
113ae707d0eSHans de Goede
114ae707d0eSHans de Goede	  The INT33FE ACPI device on these mini laptops contains I2cSerialBusV2
115ae707d0eSHans de Goede	  resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller
116ae707d0eSHans de Goede	  and PI3USB30532 USB switch.
117ae707d0eSHans de Goede	  This driver instantiates i2c-clients for these, so that standard
118ae707d0eSHans de Goede	  i2c drivers for these chips can bind to the them.
119ae707d0eSHans de Goede
120ae707d0eSHans de Goede	  If you enable this driver it is advised to also select
121ae707d0eSHans de Goede	  CONFIG_TYPEC_FUSB302=m, CONFIG_TYPEC_MUX_PI3USB30532=m and
122ae707d0eSHans de Goede	  CONFIG_BATTERY_MAX17042=m.
123ae707d0eSHans de Goede
1247b6bf51dSK Naduvalath, Sumeshconfig INTEL_ISHTP_ECLITE
1257b6bf51dSK Naduvalath, Sumesh	tristate "Intel ISHTP eclite controller Driver"
1267b6bf51dSK Naduvalath, Sumesh	depends on INTEL_ISH_HID
1277b6bf51dSK Naduvalath, Sumesh	depends on ACPI
1287b6bf51dSK Naduvalath, Sumesh	help
1297b6bf51dSK Naduvalath, Sumesh	  This driver is for accessing the PSE (Programmable Service Engine) -
1307b6bf51dSK Naduvalath, Sumesh	  an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
1317b6bf51dSK Naduvalath, Sumesh	  Transport Protocol) to get battery, thermal and UCSI (USB Type-C
1327b6bf51dSK Naduvalath, Sumesh	  Connector System Software Interface) related data from the platform.
1337b6bf51dSK Naduvalath, Sumesh	  Users who don't want to use discrete Embedded Controller on Intel's
1347b6bf51dSK Naduvalath, Sumesh	  Elkhartlake platform can leverage this integrated solution of
1357b6bf51dSK Naduvalath, Sumesh	  ECLite which is part of PSE subsystem.
1367b6bf51dSK Naduvalath, Sumesh
1377b6bf51dSK Naduvalath, Sumesh	  To compile this driver as a module, choose M here: the module
1387b6bf51dSK Naduvalath, Sumesh	  will be called intel_ishtp_eclite.
1397b6bf51dSK Naduvalath, Sumesh
140f51c108dSKate Hsuanconfig INTEL_MRFLD_PWRBTN
141f51c108dSKate Hsuan	tristate "Intel Merrifield Basin Cove power button driver"
142f51c108dSKate Hsuan	depends on INTEL_SOC_PMIC_MRFLD
143f51c108dSKate Hsuan	depends on INPUT
144f51c108dSKate Hsuan	help
145f51c108dSKate Hsuan	  This option adds a power button driver for Basin Cove PMIC
146f51c108dSKate Hsuan	  on Intel Merrifield devices.
147f51c108dSKate Hsuan
148f51c108dSKate Hsuan	  To compile this driver as a module, choose M here: the module
149f51c108dSKate Hsuan	  will be called intel_mrfld_pwrbtn.
150f51c108dSKate Hsuan
151386d17b2SKate Hsuanconfig INTEL_PUNIT_IPC
152386d17b2SKate Hsuan	tristate "Intel P-Unit IPC Driver"
153386d17b2SKate Hsuan	help
154386d17b2SKate Hsuan	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
155386d17b2SKate Hsuan	  which is used to bridge the communications between kernel and P-Unit.
156386d17b2SKate Hsuan
157e6596c22SKate Hsuanconfig INTEL_RST
158e6596c22SKate Hsuan	tristate "Intel Rapid Start Technology Driver"
159e6596c22SKate Hsuan	depends on ACPI
160e6596c22SKate Hsuan	help
161e6596c22SKate Hsuan	  This driver provides support for modifying parameters on systems
162e6596c22SKate Hsuan	  equipped with Intel's Rapid Start Technology. When put in an ACPI
163e6596c22SKate Hsuan	  sleep state, these devices will wake after either a configured
164e6596c22SKate Hsuan	  timeout or when the system battery reaches a critical state,
165e6596c22SKate Hsuan	  automatically copying memory contents to disk. On resume, the
166e6596c22SKate Hsuan	  firmware will copy the memory contents back to RAM and resume the OS
167e6596c22SKate Hsuan	  as usual.
168e6596c22SKate Hsuan
1692546c600SDavid E. Boxconfig INTEL_SDSI
1704ea62915SDavid E. Box	tristate "Intel On Demand (Software Defined Silicon) Driver"
1712546c600SDavid E. Box	depends on INTEL_VSEC
1722546c600SDavid E. Box	depends on X86_64
1732546c600SDavid E. Box	help
1744ea62915SDavid E. Box	  This driver enables access to the Intel On Demand (formerly Software
1754ea62915SDavid E. Box	  Defined Silicon) interface used to provision silicon features with an
1764ea62915SDavid E. Box	  authentication certificate and capability license.
1772546c600SDavid E. Box
1782546c600SDavid E. Box	  To compile this driver as a module, choose M here: the module will
1792546c600SDavid E. Box	  be called intel_sdsi.
1802546c600SDavid E. Box
18147bbe03eSKate Hsuanconfig INTEL_SMARTCONNECT
18247bbe03eSKate Hsuan	tristate "Intel Smart Connect disabling driver"
18347bbe03eSKate Hsuan	depends on ACPI
18447bbe03eSKate Hsuan	help
18547bbe03eSKate Hsuan	  Intel Smart Connect is a technology intended to permit devices to
18647bbe03eSKate Hsuan	  update state by resuming for a short period of time at regular
18747bbe03eSKate Hsuan	  intervals. If a user enables this functionality under Windows and
18847bbe03eSKate Hsuan	  then reboots into Linux, the system may remain configured to resume
18947bbe03eSKate Hsuan	  on suspend. In the absence of any userspace to support it, the system
19047bbe03eSKate Hsuan	  will then remain awake until something triggers another suspend.
19147bbe03eSKate Hsuan
19247bbe03eSKate Hsuan	  This driver checks to determine whether the device has Intel Smart
19347bbe03eSKate Hsuan	  Connect enabled, and if so disables it.
19447bbe03eSKate Hsuan
19547731fd2SSrinivas Pandruvadaconfig INTEL_TPMI
19647731fd2SSrinivas Pandruvada	tristate "Intel Topology Aware Register and PM Capsule Interface (TPMI)"
19747731fd2SSrinivas Pandruvada	depends on INTEL_VSEC
19847731fd2SSrinivas Pandruvada	depends on X86_64
19947731fd2SSrinivas Pandruvada	help
20047731fd2SSrinivas Pandruvada	  The Intel Topology Aware Register and PM Capsule Interface (TPMI),
20147731fd2SSrinivas Pandruvada	  provides enumerable MMIO interface for power management features.
20247731fd2SSrinivas Pandruvada	  This driver creates devices, so that other PM feature driver can
20347731fd2SSrinivas Pandruvada	  be loaded for PM specific feature operation.
20447731fd2SSrinivas Pandruvada
20547731fd2SSrinivas Pandruvada	  To compile this driver as a module, choose M here: the module will
20647731fd2SSrinivas Pandruvada	  be called intel_vsec_tpmi.
20747731fd2SSrinivas Pandruvada
2081fef1c04SKate Hsuanconfig INTEL_TURBO_MAX_3
2091fef1c04SKate Hsuan	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
2101fef1c04SKate Hsuan	depends on X86_64 && SCHED_MC_PRIO
2111fef1c04SKate Hsuan	help
2121fef1c04SKate Hsuan	  This driver reads maximum performance ratio of each CPU and set up
2131fef1c04SKate Hsuan	  the scheduler priority metrics. In this way scheduler can prefer
2141fef1c04SKate Hsuan	  CPU with higher performance to schedule tasks.
2151fef1c04SKate Hsuan
2161fef1c04SKate Hsuan	  This driver is only required when the system is not using Hardware
2171fef1c04SKate Hsuan	  P-States (HWP). In HWP mode, priority can be read from ACPI tables.
2181fef1c04SKate Hsuan
219a3c8f906SDavid E. Boxconfig INTEL_VSEC
220a3c8f906SDavid E. Box	tristate "Intel Vendor Specific Extended Capabilities Driver"
221a3c8f906SDavid E. Box	depends on PCI
222a3c8f906SDavid E. Box	select AUXILIARY_BUS
223a3c8f906SDavid E. Box	help
224a3c8f906SDavid E. Box	  Adds support for feature drivers exposed using Intel PCIe VSEC and
225a3c8f906SDavid E. Box	  DVSEC.
226a3c8f906SDavid E. Box
227a3c8f906SDavid E. Box	  To compile this driver as a module, choose M here: the module will
228a3c8f906SDavid E. Box	  be called intel_vsec.
229