Re: [PATCH 4/8] perf/arm_cspmu: nvidia: Add Tegra410 PCIE PMU

From: Ilkka Koskinen

Date: Thu Jan 29 2026 - 17:35:25 EST



Hi Besar,

On Mon, 26 Jan 2026, Besar Wicaksono wrote:
Adds PCIE PMU support in Tegra410 SOC.

Signed-off-by: Besar Wicaksono <bwicaksono@xxxxxxxxxx>
---
.../admin-guide/perf/nvidia-tegra410-pmu.rst | 162 ++++++++++++++
drivers/perf/arm_cspmu/nvidia_cspmu.c | 208 +++++++++++++++++-
2 files changed, 368 insertions(+), 2 deletions(-)


<snip>

diff --git a/drivers/perf/arm_cspmu/nvidia_cspmu.c b/drivers/perf/arm_cspmu/nvidia_cspmu.c
index c67667097a3c..3a5531d1f94c 100644
--- a/drivers/perf/arm_cspmu/nvidia_cspmu.c
+++ b/drivers/perf/arm_cspmu/nvidia_cspmu.c

@@ -453,7 +645,7 @@ static const struct nv_cspmu_match nv_cspmu_match[] = {
static char *nv_cspmu_format_name(const struct arm_cspmu *cspmu,
const struct nv_cspmu_match *match)
{
- char *name;
+ char *name = NULL;

You can remove the assignment in the default branch below now.

Otherwise, the patch looks good to me

Reviewed-by: Ilkka Koskinen <ilkka@xxxxxxxxxxxxxxxxxxxxxx>

Cheers, Ilkka


struct device *dev = cspmu->dev;

static atomic_t pmu_generic_idx = {0};
@@ -467,6 +659,16 @@ static char *nv_cspmu_format_name(const struct arm_cspmu *cspmu,
socket);
break;
}
+ case NAME_FMT_SOCKET_INST: {
+ const int cpu = cpumask_first(&cspmu->associated_cpus);
+ const int socket = cpu_to_node(cpu);
+ u32 inst_id;
+
+ if (!nv_cspmu_get_inst_id(cspmu, &inst_id))
+ name = devm_kasprintf(dev, GFP_KERNEL,
+ match->name_pattern, socket, inst_id);
+ break;
+ }
case NAME_FMT_GENERIC:
name = devm_kasprintf(dev, GFP_KERNEL, match->name_pattern,
atomic_fetch_inc(&pmu_generic_idx));
break;
default:
name = NULL;
^^^^^^^^^^^^

break;
}