drivers/perf: Add support for ARMv8.3-SPE
authorWei Li <liwei391@huawei.com>
Thu, 3 Dec 2020 14:16:09 +0000 (22:16 +0800)
committerWill Deacon <will@kernel.org>
Wed, 20 Jan 2021 17:47:44 +0000 (17:47 +0000)
commit4a669e2432fce9c01522a8453460e89f877dccd4
tree92b145dc86994d89b1a3aba76acd3cba2b8a05ba
parent19c329f6808995b142b3966301f217c831e7cf31
drivers/perf: Add support for ARMv8.3-SPE

Armv8.3 extends the SPE by adding:
- Alignment field in the Events packet, and filtering on this event
  using PMSEVFR_EL1.
- Support for the Scalable Vector Extension (SVE).

The main additions for SVE are:
- Recording the vector length for SVE operations in the Operation Type
  packet. It is not possible to filter on vector length.
- Incomplete predicate and empty predicate fields in the Events packet,
  and filtering on these events using PMSEVFR_EL1.

Update the check of pmsevfr for empty/partial predicated SVE and
alignment event in SPE driver.

Signed-off-by: Wei Li <liwei391@huawei.com>
Link: https://lore.kernel.org/r/20201203141609.14148-1-liwei391@huawei.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/sysreg.h
drivers/perf/arm_spe_pmu.c