Thread (12 messages) read the whole thread 12 messages, 4 authors, 2021-12-14

Re: [PATCH 2/3] arm64: perf: Support Denver and Carmel PMUs

From: Will Deacon <will@kernel.org>
Date: 2021-12-14 12:34:05
Also in: linux-devicetree, linux-tegra

On Wed, Dec 08, 2021 at 03:36:02PM +0100, Thierry Reding wrote:
On Tue, Dec 07, 2021 at 04:03:25PM +0000, Mark Rutland wrote:
quoted
On Tue, Dec 07, 2021 at 04:07:45PM +0100, Thierry Reding wrote:
quoted
From: Thierry Reding <redacted>

Add support for the NVIDIA Denver and Carmel PMUs using the generic
PMUv3 event map for now.

Signed-off-by: Thierry Reding <redacted>
---
 arch/arm64/kernel/perf_event.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
diff --git a/arch/arm64/kernel/perf_event.c b/arch/arm64/kernel/perf_event.c
index b4044469527e..8c8cf369c450 100644
--- a/arch/arm64/kernel/perf_event.c
+++ b/arch/arm64/kernel/perf_event.c
@@ -1247,6 +1247,18 @@ static int armv8_vulcan_pmu_init(struct arm_pmu *cpu_pmu)
 				       armv8_vulcan_map_event);
 }
 
+static int armv8_denver_pmu_init(struct arm_pmu *cpu_pmu)
+{
+	return armv8_pmu_init_nogroups(cpu_pmu, "armv8_nvidia_denver",
+				       armv8_pmuv3_map_event);
+}
+
+static int armv8_carmel_pmu_init(struct arm_pmu *cpu_pmu)
+{
+	return armv8_pmu_init_nogroups(cpu_pmu, "armv8_nvidia_carmel",
+				       armv8_pmuv3_map_event);
+}
+
 static const struct of_device_id armv8_pmu_of_device_ids[] = {
 	{.compatible = "arm,armv8-pmuv3",	.data = armv8_pmuv3_init},
 	{.compatible = "arm,cortex-a34-pmu",	.data = armv8_a34_pmu_init},
@@ -1265,6 +1277,8 @@ static const struct of_device_id armv8_pmu_of_device_ids[] = {
 	{.compatible = "arm,neoverse-n1-pmu",	.data = armv8_n1_pmu_init},
 	{.compatible = "cavium,thunder-pmu",	.data = armv8_thunder_pmu_init},
 	{.compatible = "brcm,vulcan-pmu",	.data = armv8_vulcan_pmu_init},
+	{.compatible = "nvidia,denver-pmu",	.data = armv8_denver_pmu_init},
+	{.compatible = "nvidia,carmel-pmu",	.data = armv8_carmel_pmu_init},
Super trivial nit, but could we please organise this alphabetically (i.e. with carmel first?)

With that:

Acked-by: Mark Rutland <mark.rutland@arm.com>

I see now that we messed up the order of "cavium,thunder-pmu" and
"brcm,vulcan-pmu", but otherwise this is ordered, and it's be nice to keep it
that way. I can fix the order of those two in a separate patch.
I ordered this chronologically (Denver for Tegra186 and Carmel for
Tegra194), which seemed a bit more natural, but I can reorder this
alphabetically if you prefer.

Would Will be the right person to pick this up or should I take it
through the Tegra tree and then ARM SoC?
Sorry, I missed this somehow. I've got some perf patches pending already, so
it would be easiest for me to take this one directly (and then I can apply
Robin's stuff on top). Is that ok?

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help