[PATCH] perf test: Update cs_etm testcase for Arm ETE

From: Ruidong Tian
Date: Mon Sep 11 2023 - 02:55:53 EST


Add ETE as one of the supported device types in perf cs_etm testcase.

Signed-off-by: Ruidong Tian <tianruidong@xxxxxxxxxxxxxxxxx>
---
tools/perf/tests/shell/test_arm_coresight.sh | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/tools/perf/tests/shell/test_arm_coresight.sh b/tools/perf/tests/shell/test_arm_coresight.sh
index f1bf5621160f..fe78c4626e45 100755
--- a/tools/perf/tests/shell/test_arm_coresight.sh
+++ b/tools/perf/tests/shell/test_arm_coresight.sh
@@ -11,6 +11,19 @@

glb_err=0

+cs_etm_dev_name() {
+ cs_etm_path=$(find /sys/bus/event_source/devices/cs_etm/ -name cpu* -print -quit)
+ trcdevarch=$(cat ${cs_etm_path}/mgmt/trcdevarch)
+ archhver=$((($trcdevarch >> 12) & 0xf))
+ archpart=$(($trcdevarch & 0xfff))
+
+ if [ $archhver -eq 5 -a "$(printf "0x%X\n" $archpart)" = "0xA13" ] ; then
+ echo "ete"
+ else
+ echo "etm"
+ fi
+}
+
skip_if_no_cs_etm_event() {
perf list | grep -q 'cs_etm//' && return 0

@@ -136,7 +149,7 @@ arm_cs_iterate_devices() {

arm_cs_etm_traverse_path_test() {
# Iterate for every ETM device
- for dev in /sys/bus/coresight/devices/etm*; do
+ for dev in /sys/bus/coresight/devices/$(cs_etm_dev_name)*; do

# Find the ETM device belonging to which CPU
cpu=`cat $dev/cpu`
--
2.33.1