mirror-linux/drivers/perf
Xu Yang 048d1a8b9d perf/imx_ddr: don't enable counter0 if none of 4 counters are used
[ Upstream commit f4e2bd91dd ]

In current driver, counter0 will be enabled after ddr_perf_pmu_enable()
is called even though none of the 4 counters are used. This will cause
counter0 continue to count until ddr_perf_pmu_disabled() is called. If
pmu is not disabled all the time, the pmu interrupt will be asserted
from time to time due to counter0 will overflow and irq handler will
clear it. It's not an expected behavior. This patch will not enable
counter0 if none of 4 counters are used.

Fixes: 9a66d36cc7 ("drivers/perf: imx_ddr: Add DDR performance counter support to perf")
Signed-off-by: Xu Yang <xu.yang_2@nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://lore.kernel.org/r/20230811015438.1999307-2-xu.yang_2@nxp.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-13 09:42:29 +02:00
..
hisilicon drivers/perf: hisi: Don't migrate perf to the CPU going to teardown 2023-07-19 16:21:00 +02:00
Kconfig drivers/perf: ALIBABA_UNCORE_DRW_PMU should depend on ACPI 2022-10-07 14:47:44 +01:00
Makefile drivers/perf: add DDR Sub-System Driveway PMU driver for Yitian 710 SoC 2022-09-22 14:09:10 +01:00
alibaba_uncore_drw_pmu.c drivers/perf: fix return value check in ali_drw_pmu_probe() 2022-10-07 14:47:38 +01:00
apple_m1_cpu_pmu.c drivers/perf: Add Apple icestorm/firestorm CPU PMU driver 2022-03-08 13:32:48 +00:00
arm-cci.c perf/arm-cci: Use the bitmap API to allocate bitmaps 2022-07-06 11:02:58 +01:00
arm-ccn.c drivers/perf:Directly use ida_alloc()/free() 2022-06-23 15:44:45 +01:00
arm-cmn.c perf/arm-cmn: Fix DTC reset 2023-07-19 16:21:00 +02:00
arm_dmc620_pmu.c perf/arm_dmc620: Fix hotplug callback leak in dmc620_pmu_init() 2022-12-31 13:31:51 +01:00
arm_dsu_pmu.c perf: arm_dsu: Fix hotplug callback leak in dsu_pmu_init() 2022-12-31 13:31:51 +01:00
arm_pmu.c perf: arm64: Add SVE vector granule register to user regs 2022-09-22 15:06:02 +01:00
arm_pmu_acpi.c perf: check return value of armpmu_request_irq() 2022-05-06 15:04:48 +01:00
arm_pmu_platform.c perf/arm_pmu_platform: fix tests for platform_get_irq() failure 2022-09-01 12:01:40 +01:00
arm_smmuv3_pmu.c perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init() 2022-12-31 13:31:51 +01:00
arm_spe_pmu.c Perf events updates for v6.1: 2022-10-10 09:27:46 -07:00
fsl_imx8_ddr_perf.c perf/imx_ddr: don't enable counter0 if none of 4 counters are used 2023-09-13 09:42:29 +02:00
marvell_cn10k_ddr_pmu.c perf/marvell: Fix !CONFIG_OF build for CN10K DDR PMU driver 2022-03-09 12:31:00 +00:00
marvell_cn10k_tad_pmu.c drivers: perf: marvell_cn10k: Fix hotplug callback leak in tad_pmu_init() 2022-12-31 13:31:51 +01:00
qcom_l2_pmu.c perf: qcom_l2_pmu: Refactor _UID handling to use acpi_dev_uid_to_integer() 2022-09-19 18:34:42 +02:00
qcom_l3_pmu.c ACPI: Drop parent field from struct acpi_device 2022-08-24 20:55:24 +02:00
riscv_pmu.c perf: RISC-V: Remove PERF_HES_STOPPED flag checking in riscv_pmu_start() 2023-07-23 13:49:44 +02:00
riscv_pmu_legacy.c RISC-V Patches for the 6.1 Merge Window, Part 1 2022-10-09 13:24:01 -07:00
riscv_pmu_sbi.c RISC-V: Align SBI probe implementation with spec 2023-05-11 23:03:04 +09:00
thunderx2_pmu.c perf: Replace acpi_bus_get_device() 2022-02-08 15:14:53 +00:00
xgene_pmu.c perf: replace bitmap_weight with bitmap_empty where appropriate 2022-02-15 14:38:57 +00:00