mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-04 04:06:26 +00:00
55691f99d4
Add ddr performance monitor support for i.MX93. There are 11 counters for ddr performance events. - Counter 0 is a 64-bit counter that counts only clock cycles. - Counter 1-10 are 32-bit counters that can monitor counter-specific events in addition to counting reference events. For example: perf stat -a -e imx9_ddr0/ddrc_pm_1,counter=1/,imx9_ddr0/ddrc_pm_2,counter=2/ ls Besides, this ddr pmu support AXI filter capability. It's implemented as counter-specific events. It now supports read transaction, write transaction and read beat events which corresponding respecitively to counter 2, 3 and 4. axi_mask and axi_id need to be as event parameters. For example: perf stat -a -I 1000 -e imx9_ddr0/eddrtq_pm_rd_trans_filt,counter=2,axi_mask=ID_MASK,axi_id=ID/ perf stat -a -I 1000 -e imx9_ddr0/eddrtq_pm_wr_trans_filt,counter=3,axi_mask=ID_MASK,axi_id=ID/ perf stat -a -I 1000 -e imx9_ddr0/eddrtq_pm_rd_beat_filt,counter=4,axi_mask=ID_MASK,axi_id=ID/ Signed-off-by: Xu Yang <xu.yang_2@nxp.com> Acked-by: Mark Rutland <mark.rutland@arm.com> Link: https://lore.kernel.org/r/20230418102910.2065651-1-xu.yang_2@nxp.com [will: Remove redundant error message on platform_get_irq() failure] Signed-off-by: Will Deacon <will@kernel.org>
28 lines
1.2 KiB
Makefile
28 lines
1.2 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-$(CONFIG_ARM_CCI_PMU) += arm-cci.o
|
|
obj-$(CONFIG_ARM_CCN) += arm-ccn.o
|
|
obj-$(CONFIG_ARM_CMN) += arm-cmn.o
|
|
obj-$(CONFIG_ARM_DSU_PMU) += arm_dsu_pmu.o
|
|
obj-$(CONFIG_ARM_PMU) += arm_pmu.o arm_pmu_platform.o
|
|
obj-$(CONFIG_ARM_PMU_ACPI) += arm_pmu_acpi.o
|
|
obj-$(CONFIG_ARM_PMUV3) += arm_pmuv3.o
|
|
obj-$(CONFIG_ARM_SMMU_V3_PMU) += arm_smmuv3_pmu.o
|
|
obj-$(CONFIG_FSL_IMX8_DDR_PMU) += fsl_imx8_ddr_perf.o
|
|
obj-$(CONFIG_FSL_IMX9_DDR_PMU) += fsl_imx9_ddr_perf.o
|
|
obj-$(CONFIG_HISI_PMU) += hisilicon/
|
|
obj-$(CONFIG_QCOM_L2_PMU) += qcom_l2_pmu.o
|
|
obj-$(CONFIG_QCOM_L3_PMU) += qcom_l3_pmu.o
|
|
obj-$(CONFIG_RISCV_PMU) += riscv_pmu.o
|
|
obj-$(CONFIG_RISCV_PMU_LEGACY) += riscv_pmu_legacy.o
|
|
obj-$(CONFIG_RISCV_PMU_SBI) += riscv_pmu_sbi.o
|
|
obj-$(CONFIG_THUNDERX2_PMU) += thunderx2_pmu.o
|
|
obj-$(CONFIG_XGENE_PMU) += xgene_pmu.o
|
|
obj-$(CONFIG_ARM_SPE_PMU) += arm_spe_pmu.o
|
|
obj-$(CONFIG_ARM_DMC620_PMU) += arm_dmc620_pmu.o
|
|
obj-$(CONFIG_MARVELL_CN10K_TAD_PMU) += marvell_cn10k_tad_pmu.o
|
|
obj-$(CONFIG_MARVELL_CN10K_DDR_PMU) += marvell_cn10k_ddr_pmu.o
|
|
obj-$(CONFIG_APPLE_M1_CPU_PMU) += apple_m1_cpu_pmu.o
|
|
obj-$(CONFIG_ALIBABA_UNCORE_DRW_PMU) += alibaba_uncore_drw_pmu.o
|
|
obj-$(CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU) += arm_cspmu/
|
|
obj-$(CONFIG_MESON_DDR_PMU) += amlogic/
|