selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field
authorAthira Rajeev <atrajeev@linux.vnet.ibm.com>
Thu, 27 Jan 2022 07:20:02 +0000 (12:50 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 1 Mar 2022 12:39:09 +0000 (23:39 +1100)
commita7c0ab2e61484c0844eae2f208a06cc940338d83
tree87e84b5149c0cf9a2a4368f80d0b0aa318ec669e
parenteb7aa044df18c6f7a88bc17fc4c9f4524652a290
selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field

The testcase uses event code 0x500fa ("instructions") to check the
CC56RUN bit setting in Monitor Mode Control Register 0(MMCR0). In ISA
v3.1 platform, this bit is expected to be set in MMCR0 when using
Performance Monitor Counter 5 and 6 (PMC5 and PMC6). Verify this is done
correctly by perf interface.

CC56RUN bit makes PMC5 and PMC6 count regardless of the run latch state.
This bit is set in power10 since PMC5 and PMC6 is used in power10 for
counting instructions and cycles. Hence added a check to skip this test
in other platforms

Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
[mpe: Add error checking, drop GET_MMCR_FIELD, add to .gitignore]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220127072012.662451-11-kjain@linux.ibm.com
tools/testing/selftests/powerpc/pmu/sampling_tests/.gitignore
tools/testing/selftests/powerpc/pmu/sampling_tests/Makefile
tools/testing/selftests/powerpc/pmu/sampling_tests/mmcr0_cc56run_test.c [new file with mode: 0644]