perf: RISC-V: Introduce Andes PMU to support perf event sampling
authorYu Chien Peter Lin <peterlin@andestech.com>
Thu, 22 Feb 2024 08:39:43 +0000 (16:39 +0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Tue, 12 Mar 2024 14:13:16 +0000 (07:13 -0700)
commitbc969d6cc96a2d0539576ec639f7a2a7dcf757f8
treee73aee38b1377780d824a98532f22b3228957ae0
parentea0e0178e101c8d4662a0db7424df057b88e2712
perf: RISC-V: Introduce Andes PMU to support perf event sampling

Assign riscv_pmu_irq_num the value of (256 + 18) for the custome PMU
and add SSCOUNTOVF and SIP alternatives to ALT_SBI_PMU_OVERFLOW()
and ALT_SBI_PMU_OVF_CLEAR_PENDING() macros, respectively.

To make use of Andes PMU extension, "xandespmu" needs to be appended
to the riscv,isa-extensions for each cpu node in device-tree, and
make sure CONFIG_ANDES_CUSTOM_PMU is enabled.

Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
Reviewed-by: Charles Ci-Jyun Wu <dminus@andestech.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
Co-developed-by: Locus Wei-Han Chen <locus84@andestech.com>
Signed-off-by: Locus Wei-Han Chen <locus84@andestech.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Tested-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://lore.kernel.org/r/20240222083946.3977135-8-peterlin@andestech.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/include/asm/errata_list.h
arch/riscv/include/asm/hwcap.h
arch/riscv/kernel/cpufeature.c
drivers/perf/Kconfig
drivers/perf/riscv_pmu_sbi.c