# SPDX-License-Identifier: GPL-2.0
menu "Performance monitoring"

config PERF_EVENTS_INTEL_UNCORE
	tristate "Intel uncore performance events"
	depends on PERF_EVENTS && CPU_SUP_INTEL && PCI
	default y
	help
	Include support for Intel uncore performance events. These are
	available on NehalemEX and more modern processors.

config PERF_EVENTS_INTEL_RAPL
	tristate "Intel/AMD rapl performance events"
	depends on PERF_EVENTS && (CPU_SUP_INTEL || CPU_SUP_AMD) && PCI
	default y
	help
	Include support for Intel and AMD rapl performance events for power
	monitoring on modern processors.

config PERF_EVENTS_INTEL_CSTATE
	tristate "Intel cstate performance events"
	depends on PERF_EVENTS && CPU_SUP_INTEL && PCI
	default y
	help
	Include support for Intel cstate performance events for power
	monitoring on modern processors.

config PERF_EVENTS_AMD_POWER
	depends on PERF_EVENTS && CPU_SUP_AMD
	tristate "AMD Processor Power Reporting Mechanism"
	help
	  Provide power reporting mechanism support for AMD processors.
	  Currently, it leverages X86_FEATURE_ACC_POWER
	  (CPUID Fn8000_0007_EDX[12]) interface to calculate the
	  average power consumption on Family 15h processors.

config PERF_EVENTS_AMD_UNCORE
	tristate "AMD Uncore performance events"
	depends on PERF_EVENTS && CPU_SUP_AMD
	default y
	help
	  Include support for AMD uncore performance events for use with
	  e.g., perf stat -e amd_l3/.../,amd_df/.../.

	  To compile this driver as a module, choose M here: the
	  module will be called 'amd-uncore'.
endmenu
