drivers/perf: apple_m1: Add Apple M2 support
authorJanne Grunau <j@jannau.net>
Tue, 14 Feb 2023 10:38:02 +0000 (11:38 +0100)
committerWill Deacon <will@kernel.org>
Mon, 27 Mar 2023 14:15:14 +0000 (15:15 +0100)
The PMU itself is compatible with the one found on M1. We still know
next to nothing about the counters so keep using CPU uarch specific
compatibles/PMU names.

Signed-off-by: Janne Grunau <j@jannau.net>
Acked-by: Mark Rutland <mark.rutland@arm.com.
Reviewed-by: Hector Martin <marcan@marcan.st>
Link: https://lore.kernel.org/r/20230214-apple_m2_pmu-v1-2-9c9213ab9b63@jannau.net
Signed-off-by: Will Deacon <will@kernel.org>
drivers/perf/apple_m1_cpu_pmu.c

index 7123beeb992f51c7611cfbdc0f4611b38b8335b8..8574c6e58c83a66f64a8440a35978cc3a1091115 100644 (file)
@@ -559,7 +559,21 @@ static int m1_pmu_fire_init(struct arm_pmu *cpu_pmu)
        return m1_pmu_init(cpu_pmu);
 }
 
+static int m2_pmu_avalanche_init(struct arm_pmu *cpu_pmu)
+{
+       cpu_pmu->name = "apple_avalanche_pmu";
+       return m1_pmu_init(cpu_pmu);
+}
+
+static int m2_pmu_blizzard_init(struct arm_pmu *cpu_pmu)
+{
+       cpu_pmu->name = "apple_blizzard_pmu";
+       return m1_pmu_init(cpu_pmu);
+}
+
 static const struct of_device_id m1_pmu_of_device_ids[] = {
+       { .compatible = "apple,avalanche-pmu",  .data = m2_pmu_avalanche_init, },
+       { .compatible = "apple,blizzard-pmu",   .data = m2_pmu_blizzard_init, },
        { .compatible = "apple,icestorm-pmu",   .data = m1_pmu_ice_init, },
        { .compatible = "apple,firestorm-pmu",  .data = m1_pmu_fire_init, },
        { },