xref: /openbmc/linux/drivers/platform/x86/intel/Kconfig (revision ce2645c4)
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"
14*ce2645c4SSrinivas Pandruvadasource "drivers/platform/x86/intel/uncore-frequency/Kconfig"
15*ce2645c4SSrinivas Pandruvada
168bd836feSAndy Shevchenko
17c3d3586dSKate Hsuanconfig INTEL_HID_EVENT
18c3d3586dSKate Hsuan	tristate "Intel HID Event"
19c3d3586dSKate Hsuan	depends on ACPI
20c3d3586dSKate Hsuan	depends on INPUT
21c3d3586dSKate Hsuan	depends on I2C
22c3d3586dSKate Hsuan	select INPUT_SPARSEKMAP
23c3d3586dSKate Hsuan	help
24c3d3586dSKate Hsuan	  This driver provides support for the Intel HID Event hotkey interface.
25c3d3586dSKate Hsuan	  Some laptops require this driver for hotkey support.
26c3d3586dSKate Hsuan
27c3d3586dSKate Hsuan	  To compile this driver as a module, choose M here: the module will
28c3d3586dSKate Hsuan	  be called intel_hid.
29c3d3586dSKate Hsuan
303afeacfdSKate Hsuanconfig INTEL_VBTN
313afeacfdSKate Hsuan	tristate "Intel Virtual Button"
323afeacfdSKate Hsuan	depends on ACPI
333afeacfdSKate Hsuan	depends on INPUT
343afeacfdSKate Hsuan	depends on I2C
353afeacfdSKate Hsuan	select INPUT_SPARSEKMAP
363afeacfdSKate Hsuan	help
373afeacfdSKate Hsuan	  This driver provides support for the Intel Virtual Button interface.
383afeacfdSKate Hsuan	  Some laptops require this driver for power button support.
393afeacfdSKate Hsuan
403afeacfdSKate Hsuan	  To compile this driver as a module, choose M here: the module will
413afeacfdSKate Hsuan	  be called intel_vbtn.
423afeacfdSKate Hsuan
43daef4c5aSKate Hsuanconfig INTEL_INT0002_VGPIO
44daef4c5aSKate Hsuan	tristate "Intel ACPI INT0002 Virtual GPIO driver"
45daef4c5aSKate Hsuan	depends on GPIOLIB && ACPI && PM_SLEEP
46daef4c5aSKate Hsuan	select GPIOLIB_IRQCHIP
47daef4c5aSKate Hsuan	help
48daef4c5aSKate Hsuan	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
49daef4c5aSKate Hsuan	  Power Management Event (PME) to the Power Management Controller (PMC)
50daef4c5aSKate Hsuan	  to wakeup the system. When this happens software needs to explicitly
51daef4c5aSKate Hsuan	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
52daef4c5aSKate Hsuan	  IRQ storm on IRQ 9.
53daef4c5aSKate Hsuan
54daef4c5aSKate Hsuan	  This is modelled in ACPI through the INT0002 ACPI device, which is
55daef4c5aSKate Hsuan	  called a "Virtual GPIO controller" in ACPI because it defines the
56daef4c5aSKate Hsuan	  event handler to call when the PME triggers through _AEI and _L02
57daef4c5aSKate Hsuan	  methods as would be done for a real GPIO interrupt in ACPI.
58daef4c5aSKate Hsuan
59daef4c5aSKate Hsuan	  To compile this driver as a module, choose M here: the module will
60daef4c5aSKate Hsuan	  be called intel_int0002_vgpio.
61daef4c5aSKate Hsuan
62cdbb8f5eSKate Hsuanconfig INTEL_OAKTRAIL
63cdbb8f5eSKate Hsuan	tristate "Intel Oaktrail Platform Extras"
64cdbb8f5eSKate Hsuan	depends on ACPI
65cdbb8f5eSKate Hsuan	depends on ACPI_VIDEO || ACPI_VIDEO=n
66cdbb8f5eSKate Hsuan	depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
67cdbb8f5eSKate Hsuan	help
68cdbb8f5eSKate Hsuan	  Intel Oaktrail platform need this driver to provide interfaces to
69cdbb8f5eSKate Hsuan	  enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
70cdbb8f5eSKate Hsuan	  here; it will only load on supported platforms.
71cdbb8f5eSKate Hsuan
729ed10052SKate Hsuanconfig INTEL_BXTWC_PMIC_TMU
739ed10052SKate Hsuan	tristate "Intel Broxton Whiskey Cove TMU Driver"
749ed10052SKate Hsuan	depends on INTEL_SOC_PMIC_BXTWC
759ed10052SKate Hsuan	depends on MFD_INTEL_PMC_BXT
769ed10052SKate Hsuan	select REGMAP
779ed10052SKate Hsuan	help
789ed10052SKate Hsuan	  Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature.
799ed10052SKate Hsuan	  This driver enables the alarm wakeup functionality in the TMU unit of
809ed10052SKate Hsuan	  Whiskey Cove PMIC.
819ed10052SKate Hsuan
822e4355e4SKate Hsuanconfig INTEL_CHTDC_TI_PWRBTN
832e4355e4SKate Hsuan	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
842e4355e4SKate Hsuan	depends on INTEL_SOC_PMIC_CHTDC_TI
852e4355e4SKate Hsuan	depends on INPUT
862e4355e4SKate Hsuan	help
872e4355e4SKate Hsuan	  This option adds a power button driver for Dollar Cove TI
882e4355e4SKate Hsuan	  PMIC on Intel Cherry Trail devices.
892e4355e4SKate Hsuan
902e4355e4SKate Hsuan	  To compile this driver as a module, choose M here: the module
912e4355e4SKate Hsuan	  will be called intel_chtdc_ti_pwrbtn.
922e4355e4SKate Hsuan
93ae707d0eSHans de Goedeconfig INTEL_CHTWC_INT33FE
94ae707d0eSHans de Goede	tristate "Intel Cherry Trail Whiskey Cove ACPI INT33FE Driver"
95ae707d0eSHans de Goede	depends on X86 && ACPI && I2C && REGULATOR
96ae707d0eSHans de Goede	depends on CHARGER_BQ24190=y || (CHARGER_BQ24190=m && m)
97ae707d0eSHans de Goede	depends on USB_ROLES_INTEL_XHCI=y || (USB_ROLES_INTEL_XHCI=m && m)
98ae707d0eSHans de Goede	depends on TYPEC_MUX_PI3USB30532=y || (TYPEC_MUX_PI3USB30532=m && m)
99ae707d0eSHans de Goede	help
100ae707d0eSHans de Goede	  This driver add support for the Intel Cherry Trail Whiskey Cove
101ae707d0eSHans de Goede	  INT33FE ACPI device found on the GPD win and the GPD pocket.
102ae707d0eSHans de Goede
103ae707d0eSHans de Goede	  The INT33FE ACPI device on these mini laptops contains I2cSerialBusV2
104ae707d0eSHans de Goede	  resources for a MAX17042 Fuel Gauge, FUSB302 USB Type-C Controller
105ae707d0eSHans de Goede	  and PI3USB30532 USB switch.
106ae707d0eSHans de Goede	  This driver instantiates i2c-clients for these, so that standard
107ae707d0eSHans de Goede	  i2c drivers for these chips can bind to the them.
108ae707d0eSHans de Goede
109ae707d0eSHans de Goede	  If you enable this driver it is advised to also select
110ae707d0eSHans de Goede	  CONFIG_TYPEC_FUSB302=m, CONFIG_TYPEC_MUX_PI3USB30532=m and
111ae707d0eSHans de Goede	  CONFIG_BATTERY_MAX17042=m.
112ae707d0eSHans de Goede
1137b6bf51dSK Naduvalath, Sumeshconfig INTEL_ISHTP_ECLITE
1147b6bf51dSK Naduvalath, Sumesh	tristate "Intel ISHTP eclite controller Driver"
1157b6bf51dSK Naduvalath, Sumesh	depends on INTEL_ISH_HID
1167b6bf51dSK Naduvalath, Sumesh	depends on ACPI
1177b6bf51dSK Naduvalath, Sumesh	help
1187b6bf51dSK Naduvalath, Sumesh	  This driver is for accessing the PSE (Programmable Service Engine) -
1197b6bf51dSK Naduvalath, Sumesh	  an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
1207b6bf51dSK Naduvalath, Sumesh	  Transport Protocol) to get battery, thermal and UCSI (USB Type-C
1217b6bf51dSK Naduvalath, Sumesh	  Connector System Software Interface) related data from the platform.
1227b6bf51dSK Naduvalath, Sumesh	  Users who don't want to use discrete Embedded Controller on Intel's
1237b6bf51dSK Naduvalath, Sumesh	  Elkhartlake platform can leverage this integrated solution of
1247b6bf51dSK Naduvalath, Sumesh	  ECLite which is part of PSE subsystem.
1257b6bf51dSK Naduvalath, Sumesh
1267b6bf51dSK Naduvalath, Sumesh	  To compile this driver as a module, choose M here: the module
1277b6bf51dSK Naduvalath, Sumesh	  will be called intel_ishtp_eclite.
1287b6bf51dSK Naduvalath, Sumesh
129f51c108dSKate Hsuanconfig INTEL_MRFLD_PWRBTN
130f51c108dSKate Hsuan	tristate "Intel Merrifield Basin Cove power button driver"
131f51c108dSKate Hsuan	depends on INTEL_SOC_PMIC_MRFLD
132f51c108dSKate Hsuan	depends on INPUT
133f51c108dSKate Hsuan	help
134f51c108dSKate Hsuan	  This option adds a power button driver for Basin Cove PMIC
135f51c108dSKate Hsuan	  on Intel Merrifield devices.
136f51c108dSKate Hsuan
137f51c108dSKate Hsuan	  To compile this driver as a module, choose M here: the module
138f51c108dSKate Hsuan	  will be called intel_mrfld_pwrbtn.
139f51c108dSKate Hsuan
140386d17b2SKate Hsuanconfig INTEL_PUNIT_IPC
141386d17b2SKate Hsuan	tristate "Intel P-Unit IPC Driver"
142386d17b2SKate Hsuan	help
143386d17b2SKate Hsuan	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
144386d17b2SKate Hsuan	  which is used to bridge the communications between kernel and P-Unit.
145386d17b2SKate Hsuan
146e6596c22SKate Hsuanconfig INTEL_RST
147e6596c22SKate Hsuan	tristate "Intel Rapid Start Technology Driver"
148e6596c22SKate Hsuan	depends on ACPI
149e6596c22SKate Hsuan	help
150e6596c22SKate Hsuan	  This driver provides support for modifying parameters on systems
151e6596c22SKate Hsuan	  equipped with Intel's Rapid Start Technology. When put in an ACPI
152e6596c22SKate Hsuan	  sleep state, these devices will wake after either a configured
153e6596c22SKate Hsuan	  timeout or when the system battery reaches a critical state,
154e6596c22SKate Hsuan	  automatically copying memory contents to disk. On resume, the
155e6596c22SKate Hsuan	  firmware will copy the memory contents back to RAM and resume the OS
156e6596c22SKate Hsuan	  as usual.
157e6596c22SKate Hsuan
1582546c600SDavid E. Boxconfig INTEL_SDSI
1592546c600SDavid E. Box	tristate "Intel Software Defined Silicon Driver"
1602546c600SDavid E. Box	depends on INTEL_VSEC
1612546c600SDavid E. Box	depends on X86_64
1622546c600SDavid E. Box	help
1632546c600SDavid E. Box	  This driver enables access to the Intel Software Defined Silicon
1642546c600SDavid E. Box	  interface used to provision silicon features with an authentication
1652546c600SDavid E. Box	  certificate and capability license.
1662546c600SDavid E. Box
1672546c600SDavid E. Box	  To compile this driver as a module, choose M here: the module will
1682546c600SDavid E. Box	  be called intel_sdsi.
1692546c600SDavid E. Box
17047bbe03eSKate Hsuanconfig INTEL_SMARTCONNECT
17147bbe03eSKate Hsuan	tristate "Intel Smart Connect disabling driver"
17247bbe03eSKate Hsuan	depends on ACPI
17347bbe03eSKate Hsuan	help
17447bbe03eSKate Hsuan	  Intel Smart Connect is a technology intended to permit devices to
17547bbe03eSKate Hsuan	  update state by resuming for a short period of time at regular
17647bbe03eSKate Hsuan	  intervals. If a user enables this functionality under Windows and
17747bbe03eSKate Hsuan	  then reboots into Linux, the system may remain configured to resume
17847bbe03eSKate Hsuan	  on suspend. In the absence of any userspace to support it, the system
17947bbe03eSKate Hsuan	  will then remain awake until something triggers another suspend.
18047bbe03eSKate Hsuan
18147bbe03eSKate Hsuan	  This driver checks to determine whether the device has Intel Smart
18247bbe03eSKate Hsuan	  Connect enabled, and if so disables it.
18347bbe03eSKate Hsuan
1841fef1c04SKate Hsuanconfig INTEL_TURBO_MAX_3
1851fef1c04SKate Hsuan	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
1861fef1c04SKate Hsuan	depends on X86_64 && SCHED_MC_PRIO
1871fef1c04SKate Hsuan	help
1881fef1c04SKate Hsuan	  This driver reads maximum performance ratio of each CPU and set up
1891fef1c04SKate Hsuan	  the scheduler priority metrics. In this way scheduler can prefer
1901fef1c04SKate Hsuan	  CPU with higher performance to schedule tasks.
1911fef1c04SKate Hsuan
1921fef1c04SKate Hsuan	  This driver is only required when the system is not using Hardware
1931fef1c04SKate Hsuan	  P-States (HWP). In HWP mode, priority can be read from ACPI tables.
1941fef1c04SKate Hsuan
195a3c8f906SDavid E. Boxconfig INTEL_VSEC
196a3c8f906SDavid E. Box	tristate "Intel Vendor Specific Extended Capabilities Driver"
197a3c8f906SDavid E. Box	depends on PCI
198a3c8f906SDavid E. Box	select AUXILIARY_BUS
199a3c8f906SDavid E. Box	help
200a3c8f906SDavid E. Box	  Adds support for feature drivers exposed using Intel PCIe VSEC and
201a3c8f906SDavid E. Box	  DVSEC.
202a3c8f906SDavid E. Box
203a3c8f906SDavid E. Box	  To compile this driver as a module, choose M here: the module will
204a3c8f906SDavid E. Box	  be called intel_vsec.
205