perf/riscv-sbi: Add platform specific firmware event handling
authorMayuresh Chitale <mchitale@ventanamicro.com>
Mon, 12 Aug 2024 05:11:09 +0000 (05:11 +0000)
committerPalmer Dabbelt <palmer@rivosinc.com>
Fri, 20 Sep 2024 12:58:11 +0000 (05:58 -0700)
commitf0c9363db2ddfb07723c00cb153c84c8179e92d4
tree0c456020a60b909d5a275343ef8c821ea22dab1f
parent47b9533ccd1a5e9c2e7944686ccf491b27a892f3
perf/riscv-sbi: Add platform specific firmware event handling

The SBI v2.0 specification pointed to by the link below reserves the
event code 0xffff for platform specific firmware events. Update the driver
to be able to parse and program such events. The platform specific
firmware events must now be specified in the perf command as below:
perf stat -e rCxxx ...
where bits[63:62] = 0x3 of the event config indicate a platform specific
firmware event and xxx indicate the actual event code which is passed
as the event data.

Signed-off-by: Mayuresh Chitale <mchitale@ventanamicro.com>
Link: https://github.com/riscv-non-isa/riscv-sbi-doc/releases/download/v2.0/riscv-sbi.pdf
Link: https://lore.kernel.org/r/20240812051109.6496-1-mchitale@ventanamicro.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/include/asm/sbi.h
drivers/perf/riscv_pmu_sbi.c