[PATCH v2 3/9] drivers/perf: Remove redundant macro and functions in SMMU PMU driver

From: Qi Liu
Date: Wed May 19 2021 - 05:52:38 EST


Remove SMMU_EVENT_ATTR and smmu_event_sysfs_show(), as there is
a general function for this.

Cc: Will Deacon <will@xxxxxxxxxx>
Cc: Mark Rutland <mark.rutland@xxxxxxx>
Signed-off-by: Qi Liu <liuqi115@xxxxxxxxxx>
---
drivers/perf/arm_smmuv3_pmu.c | 33 ++++++++-------------------------
1 file changed, 8 insertions(+), 25 deletions(-)

diff --git a/drivers/perf/arm_smmuv3_pmu.c b/drivers/perf/arm_smmuv3_pmu.c
index ff6fab4..9d745a1 100644
--- a/drivers/perf/arm_smmuv3_pmu.c
+++ b/drivers/perf/arm_smmuv3_pmu.c
@@ -498,32 +498,15 @@ static const struct attribute_group smmu_pmu_cpumask_group = {
};

/* Events */
-
-static ssize_t smmu_pmu_event_show(struct device *dev,
- struct device_attribute *attr, char *page)
-{
- struct perf_pmu_events_attr *pmu_attr;
-
- pmu_attr = container_of(attr, struct perf_pmu_events_attr, attr);
-
- return sysfs_emit(page, "event=0x%02llx\n", pmu_attr->id);
-}
-
-#define SMMU_EVENT_ATTR(name, config) \
- (&((struct perf_pmu_events_attr) { \
- .attr = __ATTR(name, 0444, smmu_pmu_event_show, NULL), \
- .id = config, \
- }).attr.attr)
-
static struct attribute *smmu_pmu_events[] = {
- SMMU_EVENT_ATTR(cycles, 0),
- SMMU_EVENT_ATTR(transaction, 1),
- SMMU_EVENT_ATTR(tlb_miss, 2),
- SMMU_EVENT_ATTR(config_cache_miss, 3),
- SMMU_EVENT_ATTR(trans_table_walk_access, 4),
- SMMU_EVENT_ATTR(config_struct_access, 5),
- SMMU_EVENT_ATTR(pcie_ats_trans_rq, 6),
- SMMU_EVENT_ATTR(pcie_ats_trans_passed, 7),
+ PMU_EVENT_ATTR_ID(cycles, 0),
+ PMU_EVENT_ATTR_ID(transaction, 1),
+ PMU_EVENT_ATTR_ID(tlb_miss, 2),
+ PMU_EVENT_ATTR_ID(config_cache_miss, 3),
+ PMU_EVENT_ATTR_ID(trans_table_walk_access, 4),
+ PMU_EVENT_ATTR_ID(config_struct_access, 5),
+ PMU_EVENT_ATTR_ID(pcie_ats_trans_rq, 6),
+ PMU_EVENT_ATTR_ID(pcie_ats_trans_passed, 7),
NULL
};

--
2.7.4