On Wed, Mar 10, 2021 at 05:08:28PM -0700, Rob Herring wrote: > From: Raphael Gault <raphael.ga...@arm.com> > > In order to be able to access the counter directly for userspace, > we need to provide the index of the counter using the userpage. > We thus need to override the event_idx function to retrieve and > convert the perf_event index to armv8 hardware index. > > Since the arm_pmu driver can be used by any implementation, even > if not armv8, two components play a role into making sure the > behaviour is correct and consistent with the PMU capabilities: > > * the ARMPMU_EL0_RD_CNTR flag which denotes the capability to access > counter from userspace. > * the event_idx call back, which is implemented and initialized by > the PMU implementation: if no callback is provided, the default > behaviour applies, returning 0 as index value. > > Signed-off-by: Raphael Gault <raphael.ga...@arm.com> > Signed-off-by: Rob Herring <r...@kernel.org> > --- > arch/arm64/kernel/perf_event.c | 18 ++++++++++++++++++ > include/linux/perf/arm_pmu.h | 2 ++ > 2 files changed, 20 insertions(+)
Acked-by: Will Deacon <w...@kernel.org> Will