[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a7862fa1-db3b-8a51-7df7-c7daf782c9ee@os.amperecomputing.com>
Date: Thu, 29 Jan 2026 14:34:56 -0800 (PST)
From: Ilkka Koskinen <ilkka@...amperecomputing.com>
To: Besar Wicaksono <bwicaksono@...dia.com>
cc: will@...nel.org, suzuki.poulose@....com, robin.murphy@....com,
ilkka@...amperecomputing.com, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, linux-tegra@...r.kernel.org,
mark.rutland@....com, treding@...dia.com, jonathanh@...dia.com,
vsethi@...dia.com, rwiley@...dia.com, sdonthineni@...dia.com,
skelley@...dia.com, ywan@...dia.com, mochs@...dia.com, nirmoyd@...dia.com
Subject: Re: [PATCH 4/8] perf/arm_cspmu: nvidia: Add Tegra410 PCIE PMU
Hi Besar,
On Mon, 26 Jan 2026, Besar Wicaksono wrote:
> Adds PCIE PMU support in Tegra410 SOC.
>
> Signed-off-by: Besar Wicaksono <bwicaksono@...dia.com>
> ---
> .../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@...amperecomputing.com>
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;
}
Powered by blists - more mailing lists