xref: /openbmc/linux/drivers/platform/x86/intel/Kconfig (revision a3c8f906)
18bd836feSAndy Shevchenko# SPDX-License-Identifier: GPL-2.0-only
28bd836feSAndy Shevchenko#
38bd836feSAndy Shevchenko# Intel x86 Platform Specific Drivers
48bd836feSAndy Shevchenko#
58bd836feSAndy Shevchenko
68bd836feSAndy Shevchenkomenuconfig X86_PLATFORM_DRIVERS_INTEL
78bd836feSAndy Shevchenko	bool "Intel x86 Platform Specific Device Drivers"
88bd836feSAndy Shevchenko	default y
98bd836feSAndy Shevchenko	help
108bd836feSAndy Shevchenko	  Say Y here to get to see options for device drivers for
118bd836feSAndy Shevchenko	  various Intel x86 platforms, including vendor-specific
128bd836feSAndy Shevchenko	  drivers. This option alone does not add any kernel code.
138bd836feSAndy Shevchenko
148bd836feSAndy Shevchenko	  If you say N, all options in this submenu will be skipped
158bd836feSAndy Shevchenko	  and disabled.
168bd836feSAndy Shevchenko
178bd836feSAndy Shevchenkoif X86_PLATFORM_DRIVERS_INTEL
188bd836feSAndy Shevchenko
1976693f57SKate Hsuansource "drivers/platform/x86/intel/atomisp2/Kconfig"
20dcfbd31eSShravan Ssource "drivers/platform/x86/intel/int1092/Kconfig"
2172fbcac2SAndy Shevchenkosource "drivers/platform/x86/intel/int33fe/Kconfig"
228bd836feSAndy Shevchenkosource "drivers/platform/x86/intel/int3472/Kconfig"
23fa082a7cSKate Hsuansource "drivers/platform/x86/intel/pmc/Kconfig"
24e184b1e5SDavid E. Boxsource "drivers/platform/x86/intel/pmt/Kconfig"
256b1e4828SKate Hsuansource "drivers/platform/x86/intel/speed_select_if/Kconfig"
262b6cb8f2SKate Hsuansource "drivers/platform/x86/intel/telemetry/Kconfig"
27bd5b4fb4SKate Hsuansource "drivers/platform/x86/intel/wmi/Kconfig"
288bd836feSAndy Shevchenko
29c3d3586dSKate Hsuanconfig INTEL_HID_EVENT
30c3d3586dSKate Hsuan	tristate "Intel HID Event"
31c3d3586dSKate Hsuan	depends on ACPI
32c3d3586dSKate Hsuan	depends on INPUT
33c3d3586dSKate Hsuan	depends on I2C
34c3d3586dSKate Hsuan	select INPUT_SPARSEKMAP
35c3d3586dSKate Hsuan	help
36c3d3586dSKate Hsuan	  This driver provides support for the Intel HID Event hotkey interface.
37c3d3586dSKate Hsuan	  Some laptops require this driver for hotkey support.
38c3d3586dSKate Hsuan
39c3d3586dSKate Hsuan	  To compile this driver as a module, choose M here: the module will
40c3d3586dSKate Hsuan	  be called intel_hid.
41c3d3586dSKate Hsuan
423afeacfdSKate Hsuanconfig INTEL_VBTN
433afeacfdSKate Hsuan	tristate "Intel Virtual Button"
443afeacfdSKate Hsuan	depends on ACPI
453afeacfdSKate Hsuan	depends on INPUT
463afeacfdSKate Hsuan	depends on I2C
473afeacfdSKate Hsuan	select INPUT_SPARSEKMAP
483afeacfdSKate Hsuan	help
493afeacfdSKate Hsuan	  This driver provides support for the Intel Virtual Button interface.
503afeacfdSKate Hsuan	  Some laptops require this driver for power button support.
513afeacfdSKate Hsuan
523afeacfdSKate Hsuan	  To compile this driver as a module, choose M here: the module will
533afeacfdSKate Hsuan	  be called intel_vbtn.
543afeacfdSKate Hsuan
55daef4c5aSKate Hsuanconfig INTEL_INT0002_VGPIO
56daef4c5aSKate Hsuan	tristate "Intel ACPI INT0002 Virtual GPIO driver"
57daef4c5aSKate Hsuan	depends on GPIOLIB && ACPI && PM_SLEEP
58daef4c5aSKate Hsuan	select GPIOLIB_IRQCHIP
59daef4c5aSKate Hsuan	help
60daef4c5aSKate Hsuan	  Some peripherals on Bay Trail and Cherry Trail platforms signal a
61daef4c5aSKate Hsuan	  Power Management Event (PME) to the Power Management Controller (PMC)
62daef4c5aSKate Hsuan	  to wakeup the system. When this happens software needs to explicitly
63daef4c5aSKate Hsuan	  clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
64daef4c5aSKate Hsuan	  IRQ storm on IRQ 9.
65daef4c5aSKate Hsuan
66daef4c5aSKate Hsuan	  This is modelled in ACPI through the INT0002 ACPI device, which is
67daef4c5aSKate Hsuan	  called a "Virtual GPIO controller" in ACPI because it defines the
68daef4c5aSKate Hsuan	  event handler to call when the PME triggers through _AEI and _L02
69daef4c5aSKate Hsuan	  methods as would be done for a real GPIO interrupt in ACPI.
70daef4c5aSKate Hsuan
71daef4c5aSKate Hsuan	  To compile this driver as a module, choose M here: the module will
72daef4c5aSKate Hsuan	  be called intel_int0002_vgpio.
73daef4c5aSKate Hsuan
74cdbb8f5eSKate Hsuanconfig INTEL_OAKTRAIL
75cdbb8f5eSKate Hsuan	tristate "Intel Oaktrail Platform Extras"
76cdbb8f5eSKate Hsuan	depends on ACPI
77cdbb8f5eSKate Hsuan	depends on ACPI_VIDEO || ACPI_VIDEO=n
78cdbb8f5eSKate Hsuan	depends on RFKILL && BACKLIGHT_CLASS_DEVICE && ACPI
79cdbb8f5eSKate Hsuan	help
80cdbb8f5eSKate Hsuan	  Intel Oaktrail platform need this driver to provide interfaces to
81cdbb8f5eSKate Hsuan	  enable/disable the Camera, WiFi, BT etc. devices. If in doubt, say Y
82cdbb8f5eSKate Hsuan	  here; it will only load on supported platforms.
83cdbb8f5eSKate Hsuan
849ed10052SKate Hsuanconfig INTEL_BXTWC_PMIC_TMU
859ed10052SKate Hsuan	tristate "Intel Broxton Whiskey Cove TMU Driver"
869ed10052SKate Hsuan	depends on INTEL_SOC_PMIC_BXTWC
879ed10052SKate Hsuan	depends on MFD_INTEL_PMC_BXT
889ed10052SKate Hsuan	select REGMAP
899ed10052SKate Hsuan	help
909ed10052SKate Hsuan	  Select this driver to use Intel Broxton Whiskey Cove PMIC TMU feature.
919ed10052SKate Hsuan	  This driver enables the alarm wakeup functionality in the TMU unit of
929ed10052SKate Hsuan	  Whiskey Cove PMIC.
939ed10052SKate Hsuan
942e4355e4SKate Hsuanconfig INTEL_CHTDC_TI_PWRBTN
952e4355e4SKate Hsuan	tristate "Intel Cherry Trail Dollar Cove TI power button driver"
962e4355e4SKate Hsuan	depends on INTEL_SOC_PMIC_CHTDC_TI
972e4355e4SKate Hsuan	depends on INPUT
982e4355e4SKate Hsuan	help
992e4355e4SKate Hsuan	  This option adds a power button driver for Dollar Cove TI
1002e4355e4SKate Hsuan	  PMIC on Intel Cherry Trail devices.
1012e4355e4SKate Hsuan
1022e4355e4SKate Hsuan	  To compile this driver as a module, choose M here: the module
1032e4355e4SKate Hsuan	  will be called intel_chtdc_ti_pwrbtn.
1042e4355e4SKate Hsuan
1057b6bf51dSK Naduvalath, Sumeshconfig INTEL_ISHTP_ECLITE
1067b6bf51dSK Naduvalath, Sumesh	tristate "Intel ISHTP eclite controller Driver"
1077b6bf51dSK Naduvalath, Sumesh	depends on INTEL_ISH_HID
1087b6bf51dSK Naduvalath, Sumesh	depends on ACPI
1097b6bf51dSK Naduvalath, Sumesh	help
1107b6bf51dSK Naduvalath, Sumesh	  This driver is for accessing the PSE (Programmable Service Engine) -
1117b6bf51dSK Naduvalath, Sumesh	  an Embedded Controller like IP - using ISHTP (Integrated Sensor Hub
1127b6bf51dSK Naduvalath, Sumesh	  Transport Protocol) to get battery, thermal and UCSI (USB Type-C
1137b6bf51dSK Naduvalath, Sumesh	  Connector System Software Interface) related data from the platform.
1147b6bf51dSK Naduvalath, Sumesh	  Users who don't want to use discrete Embedded Controller on Intel's
1157b6bf51dSK Naduvalath, Sumesh	  Elkhartlake platform can leverage this integrated solution of
1167b6bf51dSK Naduvalath, Sumesh	  ECLite which is part of PSE subsystem.
1177b6bf51dSK Naduvalath, Sumesh
1187b6bf51dSK Naduvalath, Sumesh	  To compile this driver as a module, choose M here: the module
1197b6bf51dSK Naduvalath, Sumesh	  will be called intel_ishtp_eclite.
1207b6bf51dSK Naduvalath, Sumesh
121f51c108dSKate Hsuanconfig INTEL_MRFLD_PWRBTN
122f51c108dSKate Hsuan	tristate "Intel Merrifield Basin Cove power button driver"
123f51c108dSKate Hsuan	depends on INTEL_SOC_PMIC_MRFLD
124f51c108dSKate Hsuan	depends on INPUT
125f51c108dSKate Hsuan	help
126f51c108dSKate Hsuan	  This option adds a power button driver for Basin Cove PMIC
127f51c108dSKate Hsuan	  on Intel Merrifield devices.
128f51c108dSKate Hsuan
129f51c108dSKate Hsuan	  To compile this driver as a module, choose M here: the module
130f51c108dSKate Hsuan	  will be called intel_mrfld_pwrbtn.
131f51c108dSKate Hsuan
132386d17b2SKate Hsuanconfig INTEL_PUNIT_IPC
133386d17b2SKate Hsuan	tristate "Intel P-Unit IPC Driver"
134386d17b2SKate Hsuan	help
135386d17b2SKate Hsuan	  This driver provides support for Intel P-Unit Mailbox IPC mechanism,
136386d17b2SKate Hsuan	  which is used to bridge the communications between kernel and P-Unit.
137386d17b2SKate Hsuan
138e6596c22SKate Hsuanconfig INTEL_RST
139e6596c22SKate Hsuan	tristate "Intel Rapid Start Technology Driver"
140e6596c22SKate Hsuan	depends on ACPI
141e6596c22SKate Hsuan	help
142e6596c22SKate Hsuan	  This driver provides support for modifying parameters on systems
143e6596c22SKate Hsuan	  equipped with Intel's Rapid Start Technology. When put in an ACPI
144e6596c22SKate Hsuan	  sleep state, these devices will wake after either a configured
145e6596c22SKate Hsuan	  timeout or when the system battery reaches a critical state,
146e6596c22SKate Hsuan	  automatically copying memory contents to disk. On resume, the
147e6596c22SKate Hsuan	  firmware will copy the memory contents back to RAM and resume the OS
148e6596c22SKate Hsuan	  as usual.
149e6596c22SKate Hsuan
15047bbe03eSKate Hsuanconfig INTEL_SMARTCONNECT
15147bbe03eSKate Hsuan	tristate "Intel Smart Connect disabling driver"
15247bbe03eSKate Hsuan	depends on ACPI
15347bbe03eSKate Hsuan	help
15447bbe03eSKate Hsuan	  Intel Smart Connect is a technology intended to permit devices to
15547bbe03eSKate Hsuan	  update state by resuming for a short period of time at regular
15647bbe03eSKate Hsuan	  intervals. If a user enables this functionality under Windows and
15747bbe03eSKate Hsuan	  then reboots into Linux, the system may remain configured to resume
15847bbe03eSKate Hsuan	  on suspend. In the absence of any userspace to support it, the system
15947bbe03eSKate Hsuan	  will then remain awake until something triggers another suspend.
16047bbe03eSKate Hsuan
16147bbe03eSKate Hsuan	  This driver checks to determine whether the device has Intel Smart
16247bbe03eSKate Hsuan	  Connect enabled, and if so disables it.
16347bbe03eSKate Hsuan
1641fef1c04SKate Hsuanconfig INTEL_TURBO_MAX_3
1651fef1c04SKate Hsuan	bool "Intel Turbo Boost Max Technology 3.0 enumeration driver"
1661fef1c04SKate Hsuan	depends on X86_64 && SCHED_MC_PRIO
1671fef1c04SKate Hsuan	help
1681fef1c04SKate Hsuan	  This driver reads maximum performance ratio of each CPU and set up
1691fef1c04SKate Hsuan	  the scheduler priority metrics. In this way scheduler can prefer
1701fef1c04SKate Hsuan	  CPU with higher performance to schedule tasks.
1711fef1c04SKate Hsuan
1721fef1c04SKate Hsuan	  This driver is only required when the system is not using Hardware
1731fef1c04SKate Hsuan	  P-States (HWP). In HWP mode, priority can be read from ACPI tables.
1741fef1c04SKate Hsuan
175075b5598SKate Hsuanconfig INTEL_UNCORE_FREQ_CONTROL
176075b5598SKate Hsuan	tristate "Intel Uncore frequency control driver"
177075b5598SKate Hsuan	depends on X86_64
178075b5598SKate Hsuan	help
179075b5598SKate Hsuan	  This driver allows control of Uncore frequency limits on
180075b5598SKate Hsuan	  supported server platforms.
181075b5598SKate Hsuan
182075b5598SKate Hsuan	  Uncore frequency controls RING/LLC (last-level cache) clocks.
183075b5598SKate Hsuan
184075b5598SKate Hsuan	  To compile this driver as a module, choose M here: the module
185075b5598SKate Hsuan	  will be called intel-uncore-frequency.
186075b5598SKate Hsuan
187*a3c8f906SDavid E. Boxconfig INTEL_VSEC
188*a3c8f906SDavid E. Box	tristate "Intel Vendor Specific Extended Capabilities Driver"
189*a3c8f906SDavid E. Box	depends on PCI
190*a3c8f906SDavid E. Box	select AUXILIARY_BUS
191*a3c8f906SDavid E. Box	help
192*a3c8f906SDavid E. Box	  Adds support for feature drivers exposed using Intel PCIe VSEC and
193*a3c8f906SDavid E. Box	  DVSEC.
194*a3c8f906SDavid E. Box
195*a3c8f906SDavid E. Box	  To compile this driver as a module, choose M here: the module will
196*a3c8f906SDavid E. Box	  be called intel_vsec.
197*a3c8f906SDavid E. Box
1988bd836feSAndy Shevchenkoendif # X86_PLATFORM_DRIVERS_INTEL
199