On Fri, Feb 21, 2020 at 05:15:59PM +0000, Mark Rutland wrote: > On Fri, Feb 21, 2020 at 04:04:58PM +0000, Robin Murphy wrote: > > Add support for matching the new PMUs. For now, this just wires them up > > as generic PMUv3 such that people writing DTs for new SoCs can do the > > right thing, and at least have architectural and raw events be usable. > > We can come back and fill in event maps for sysfs and/or perf tools at > > a later date. > > > > Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx> > > Thanks for this, it looks fine to me: > > Acked-by: Mark Rutland <mark.rutland@xxxxxxx> Argh, this isn't quite right, sorry. :/ > > --- > > arch/arm64/kernel/perf_event.c | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/arch/arm64/kernel/perf_event.c b/arch/arm64/kernel/perf_event.c > > index e40b65645c86..28ce582e049e 100644 > > --- a/arch/arm64/kernel/perf_event.c > > +++ b/arch/arm64/kernel/perf_event.c > > @@ -1105,11 +1105,19 @@ static int armv8_vulcan_pmu_init(struct arm_pmu *cpu_pmu) > > > > 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_pmuv3_init}, Unfortunately, these need their own .data so that they can be given appropriate names under sysfs. We're stuck doing that forever for DT, though at least we learned for ACPI... Mark. > > {.compatible = "arm,cortex-a35-pmu", .data = armv8_a35_pmu_init}, > > {.compatible = "arm,cortex-a53-pmu", .data = armv8_a53_pmu_init}, > > + {.compatible = "arm,cortex-a55-pmu", .data = armv8_pmuv3_init}, > > {.compatible = "arm,cortex-a57-pmu", .data = armv8_a57_pmu_init}, > > + {.compatible = "arm,cortex-a65-pmu", .data = armv8_pmuv3_init}, > > {.compatible = "arm,cortex-a72-pmu", .data = armv8_a72_pmu_init}, > > {.compatible = "arm,cortex-a73-pmu", .data = armv8_a73_pmu_init}, > > + {.compatible = "arm,cortex-a75-pmu", .data = armv8_pmuv3_init}, > > + {.compatible = "arm,cortex-a76-pmu", .data = armv8_pmuv3_init}, > > + {.compatible = "arm,cortex-a77-pmu", .data = armv8_pmuv3_init}, > > + {.compatible = "arm,neoverse-e1-pmu", .data = armv8_pmuv3_init}, > > + {.compatible = "arm,neoverse-n1-pmu", .data = armv8_pmuv3_init}, > > {.compatible = "cavium,thunder-pmu", .data = armv8_thunder_pmu_init}, > > {.compatible = "brcm,vulcan-pmu", .data = armv8_vulcan_pmu_init}, > > {}, > > -- > > 2.23.0.dirty > >