# SPDX-License-Identifier: GPL-2.0
#
# Intel x86 Platform-Specific Drivers
#

config INTEL_PMC_CORE
	tristate "Intel PMC Core driver"
	depends on PCI
	depends on ACPI
	depends on INTEL_PMT_TELEMETRY
	select INTEL_PMC_SSRAM_TELEMETRY
	select INTEL_PMC_PWRM_TELEMETRY
	help
	  The Intel Platform Controller Hub for Intel Core SoCs provides access
	  to Power Management Controller registers via various interfaces. This
	  driver can utilize debugging capabilities and supported features as
	  exposed by the Power Management Controller. It also may perform some
	  tasks in the PMC in order to enable transition into the SLPS0 state.
	  It should be selected on all Intel platforms supported by the driver.

	  Supported features:
		- SLP_S0_RESIDENCY counter
		- PCH IP Power Gating status
		- LTR Ignore / LTR Show
		- MPHY/PLL gating status (Sunrisepoint PCH only)
		- SLPS0 Debug registers (Cannonlake/Icelake PCH)
		- Low Power Mode registers (Tigerlake and beyond)
		- PMC quirks as needed to enable SLPS0/S0ix

config INTEL_PMC_SSRAM_TELEMETRY
	tristate
	help
	  This PCI driver discovers PMC SSRAM telemetry regions through the
	  PMC's MMIO interface and registers them with the Intel VSEC framework
	  as Intel PMT telemetry devices.

	  It probes the PMC SSRAM device, extracts DVSEC information from MMIO,
	  reads device IDs and base addresses for multiple PMCs (main, IOE, PCH),
	  and exposes the discovered telemetry through Intel PMT interfaces
	  (including sysfs).

	  This option is selected by INTEL_PMC_CORE.

config INTEL_PMC_PWRM_TELEMETRY
	tristate
	help
	  This driver discovers PMC PWRM telemetry regions described in ACPI
	  _DSD and registers them with the Intel VSEC framework as Intel PMT
	  telemetry devices.

	  It validates the ACPI discovery data and publishes the discovered
	  regions so they can be accessed through the Intel PMT telemetry
	  interfaces (including sysfs).

	  This option is selected by INTEL_PMC_CORE.
