mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-07 09:55:19 +02:00
perf/arm-cmn: Fix CCLA register offset
[ Upstream commit88b63a82c8
] Apparently pmu_event_sel is offset by 8 for all CCLA nodes, not just the CCLA_RNI combination type. Fixes:23760a0144
("perf/arm-cmn: Add CMN-700 support") Acked-by: Mark Rutland <mark.rutland@arm.com> Reviewed-by: Ilkka Koskinen <ilkka@os.amperecomputing.com> Signed-off-by: Robin Murphy <robin.murphy@arm.com> Link: https://lore.kernel.org/r/6e7bb06fef6046f83e7647aad0e5be544139763f.1725296395.git.robin.murphy@arm.com Signed-off-by: Will Deacon <will@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
a687d9d1fe
commit
5418a61e32
|
@ -70,7 +70,8 @@
|
|||
/* Technically this is 4 bits wide on DNs, but we only use 2 there anyway */
|
||||
#define CMN__PMU_OCCUP1_ID GENMASK_ULL(34, 32)
|
||||
|
||||
/* HN-Ps are weird... */
|
||||
/* Some types are designed to coexist with another device in the same node */
|
||||
#define CMN_CCLA_PMU_EVENT_SEL 0x008
|
||||
#define CMN_HNP_PMU_EVENT_SEL 0x008
|
||||
|
||||
/* DTMs live in the PMU space of XP registers */
|
||||
|
@ -2321,10 +2322,13 @@ static int arm_cmn_discover(struct arm_cmn *cmn, unsigned int rgn_offset)
|
|||
case CMN_TYPE_CXHA:
|
||||
case CMN_TYPE_CCRA:
|
||||
case CMN_TYPE_CCHA:
|
||||
case CMN_TYPE_CCLA:
|
||||
case CMN_TYPE_HNS:
|
||||
dn++;
|
||||
break;
|
||||
case CMN_TYPE_CCLA:
|
||||
dn->pmu_base += CMN_CCLA_PMU_EVENT_SEL;
|
||||
dn++;
|
||||
break;
|
||||
/* Nothing to see here */
|
||||
case CMN_TYPE_MPAM_S:
|
||||
case CMN_TYPE_MPAM_NS:
|
||||
|
@ -2342,7 +2346,7 @@ static int arm_cmn_discover(struct arm_cmn *cmn, unsigned int rgn_offset)
|
|||
case CMN_TYPE_HNP:
|
||||
case CMN_TYPE_CCLA_RNI:
|
||||
dn[1] = dn[0];
|
||||
dn[0].pmu_base += CMN_HNP_PMU_EVENT_SEL;
|
||||
dn[0].pmu_base += CMN_CCLA_PMU_EVENT_SEL;
|
||||
dn[1].type = arm_cmn_subtype(dn->type);
|
||||
dn += 2;
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue
Block a user