arm64: perf: Add support for ARMv8.5-PMU 64-bit counters
At present ARMv8 event counters are limited to 32-bits, though by
using the CHAIN event it's possible to combine adjacent counters to
achieve 64-bits. The perf config1:0 bit can be set to use such a
With the introduction of ARMv8.5-PMU support, all event counters can
now be used as 64-bit counters.
Let's enable 64-bit event counters where support exists. Unless the
user sets config1:0 we will adjust the counter value such that it
overflows upon 32-bit overflow. This follows the same behaviour as
the cycle counter which has always been (and remains) 64-bits.
Signed-off-by: Andrew Murray <firstname.lastname@example.org>
Reviewed-by: Suzuki K Poulose <email@example.com>
[Mark: fix ID field names, compare with 8.5 value]
Signed-off-by: Mark Rutland <firstname.lastname@example.org>
Signed-off-by: Will Deacon <email@example.com>
4 files changed