xref: /linux/drivers/perf/Kconfig (revision 6d0efeb14bbe2350a94ba07b403a686d731c5179)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2fa8ad788SMark Rutland#
3fa8ad788SMark Rutland# Performance Monitor Drivers
4fa8ad788SMark Rutland#
5fa8ad788SMark Rutland
6fa8ad788SMark Rutlandmenu "Performance monitor support"
7bddb9b68SMark Rutland	depends on PERF_EVENTS
8fa8ad788SMark Rutland
93de6be7aSRobin Murphyconfig ARM_CCI_PMU
108b0c93c2SRobin Murphy	tristate "ARM CCI PMU driver"
118b0c93c2SRobin Murphy	depends on (ARM && CPU_V7) || ARM64
123de6be7aSRobin Murphy	select ARM_CCI
138b0c93c2SRobin Murphy	help
148b0c93c2SRobin Murphy	  Support for PMU events monitoring on the ARM CCI (Cache Coherent
158b0c93c2SRobin Murphy	  Interconnect) family of products.
168b0c93c2SRobin Murphy
178b0c93c2SRobin Murphy	  If compiled as a module, it will be called arm-cci.
183de6be7aSRobin Murphy
193de6be7aSRobin Murphyconfig ARM_CCI400_PMU
208b0c93c2SRobin Murphy	bool "support CCI-400"
218b0c93c2SRobin Murphy	default y
228b0c93c2SRobin Murphy	depends on ARM_CCI_PMU
233de6be7aSRobin Murphy	select ARM_CCI400_COMMON
243de6be7aSRobin Murphy	help
258b0c93c2SRobin Murphy	  CCI-400 provides 4 independent event counters counting events related
268b0c93c2SRobin Murphy	  to the connected slave/master interfaces, plus a cycle counter.
273de6be7aSRobin Murphy
283de6be7aSRobin Murphyconfig ARM_CCI5xx_PMU
298b0c93c2SRobin Murphy	bool "support CCI-500/CCI-550"
308b0c93c2SRobin Murphy	default y
318b0c93c2SRobin Murphy	depends on ARM_CCI_PMU
323de6be7aSRobin Murphy	help
338b0c93c2SRobin Murphy	  CCI-500/CCI-550 both provide 8 independent event counters, which can
348b0c93c2SRobin Murphy	  count events pertaining to the slave/master interfaces as well as the
358b0c93c2SRobin Murphy	  internal events to the CCI.
363de6be7aSRobin Murphy
371888d3ddSRobin Murphyconfig ARM_CCN
381888d3ddSRobin Murphy	tristate "ARM CCN driver support"
391888d3ddSRobin Murphy	depends on ARM || ARM64
401888d3ddSRobin Murphy	help
411888d3ddSRobin Murphy	  PMU (perf) driver supporting the ARM CCN (Cache Coherent Network)
421888d3ddSRobin Murphy	  interconnect.
431888d3ddSRobin Murphy
44fa8ad788SMark Rutlandconfig ARM_PMU
45bddb9b68SMark Rutland	depends on ARM || ARM64
46fa8ad788SMark Rutland	bool "ARM PMU framework"
47fa8ad788SMark Rutland	default y
48fa8ad788SMark Rutland	help
49fa8ad788SMark Rutland	  Say y if you want to use CPU performance monitors on ARM-based
50fa8ad788SMark Rutland	  systems.
51fa8ad788SMark Rutland
5245736a72SMark Rutlandconfig ARM_PMU_ACPI
5345736a72SMark Rutland	depends on ARM_PMU && ACPI
5445736a72SMark Rutland	def_bool y
5545736a72SMark Rutland
567d839b4bSNeil Leederconfig ARM_SMMU_V3_PMU
577d839b4bSNeil Leeder	 tristate "ARM SMMUv3 Performance Monitors Extension"
587d839b4bSNeil Leeder	 depends on ARM64 && ACPI && ARM_SMMU_V3
597d839b4bSNeil Leeder	   help
607d839b4bSNeil Leeder	   Provides support for the ARM SMMUv3 Performance Monitor Counter
617d839b4bSNeil Leeder	   Groups (PMCG), which provide monitoring of transactions passing
627d839b4bSNeil Leeder	   through the SMMU and allow the resulting information to be filtered
637d839b4bSNeil Leeder	   based on the Stream ID of the corresponding master.
647d839b4bSNeil Leeder
657520fa99SSuzuki K Pouloseconfig ARM_DSU_PMU
667520fa99SSuzuki K Poulose	tristate "ARM DynamIQ Shared Unit (DSU) PMU"
677520fa99SSuzuki K Poulose	depends on ARM64
687520fa99SSuzuki K Poulose	  help
697520fa99SSuzuki K Poulose	  Provides support for performance monitor unit in ARM DynamIQ Shared
707520fa99SSuzuki K Poulose	  Unit (DSU). The DSU integrates one or more cores with an L3 memory
717520fa99SSuzuki K Poulose	  system, control logic. The PMU allows counting various events related
727520fa99SSuzuki K Poulose	  to DSU.
737520fa99SSuzuki K Poulose
749a66d36cSFrank Liconfig FSL_IMX8_DDR_PMU
759a66d36cSFrank Li	tristate "Freescale i.MX8 DDR perf monitor"
769a66d36cSFrank Li	depends on ARCH_MXC
779a66d36cSFrank Li	  help
789a66d36cSFrank Li	  Provides support for the DDR performance monitor in i.MX8, which
799a66d36cSFrank Li	  can give information about memory throughput and other related
809a66d36cSFrank Li	  events.
819a66d36cSFrank Li
8221bdbb71SNeil Leederconfig QCOM_L2_PMU
8321bdbb71SNeil Leeder	bool "Qualcomm Technologies L2-cache PMU"
84bddb9b68SMark Rutland	depends on ARCH_QCOM && ARM64 && ACPI
85*6d0efeb1SIlia Lin	select QCOM_KRYO_L2_ACCESSORS
8621bdbb71SNeil Leeder	  help
8721bdbb71SNeil Leeder	  Provides support for the L2 cache performance monitor unit (PMU)
8821bdbb71SNeil Leeder	  in Qualcomm Technologies processors.
8921bdbb71SNeil Leeder	  Adds the L2 cache PMU into the perf events subsystem for
9021bdbb71SNeil Leeder	  monitoring L2 cache events.
9121bdbb71SNeil Leeder
923071f13dSAgustin Vega-Friasconfig QCOM_L3_PMU
933071f13dSAgustin Vega-Frias	bool "Qualcomm Technologies L3-cache PMU"
94bddb9b68SMark Rutland	depends on ARCH_QCOM && ARM64 && ACPI
953071f13dSAgustin Vega-Frias	select QCOM_IRQ_COMBINER
963071f13dSAgustin Vega-Frias	help
973071f13dSAgustin Vega-Frias	   Provides support for the L3 cache performance monitor unit (PMU)
983071f13dSAgustin Vega-Frias	   in Qualcomm Technologies processors.
993071f13dSAgustin Vega-Frias	   Adds the L3 cache PMU into the perf events subsystem for
1003071f13dSAgustin Vega-Frias	   monitoring L3 cache events.
1013071f13dSAgustin Vega-Frias
10269c32972SKulkarni, Ganapatraoconfig THUNDERX2_PMU
10369c32972SKulkarni, Ganapatrao	tristate "Cavium ThunderX2 SoC PMU UNCORE"
10469c32972SKulkarni, Ganapatrao	depends on ARCH_THUNDER2 && ARM64 && ACPI && NUMA
10569c32972SKulkarni, Ganapatrao	default m
10669c32972SKulkarni, Ganapatrao	help
10769c32972SKulkarni, Ganapatrao	   Provides support for ThunderX2 UNCORE events.
10869c32972SKulkarni, Ganapatrao	   The SoC has PMU support in its L3 cache controller (L3C) and
10969c32972SKulkarni, Ganapatrao	   in the DDR4 Memory Controller (DMC).
11069c32972SKulkarni, Ganapatrao
111832c927dSTai Nguyenconfig XGENE_PMU
112bddb9b68SMark Rutland        depends on ARCH_XGENE
113832c927dSTai Nguyen        bool "APM X-Gene SoC PMU"
114832c927dSTai Nguyen        default n
115832c927dSTai Nguyen        help
116832c927dSTai Nguyen          Say y if you want to use APM X-Gene SoC performance monitors.
117832c927dSTai Nguyen
118d5d9696bSWill Deaconconfig ARM_SPE_PMU
119d5d9696bSWill Deacon	tristate "Enable support for the ARMv8.2 Statistical Profiling Extension"
120b89205bdSJohn Garry	depends on ARM64
121d5d9696bSWill Deacon	help
122d5d9696bSWill Deacon	  Enable perf support for the ARMv8.2 Statistical Profiling
123d5d9696bSWill Deacon	  Extension, which provides periodic sampling of operations in
124d5d9696bSWill Deacon	  the CPU pipeline and reports this via the perf AUX interface.
125d5d9696bSWill Deacon
12697807325SZhou Wangsource "drivers/perf/hisilicon/Kconfig"
12797807325SZhou Wang
128fa8ad788SMark Rutlandendmenu
129