diff mbox series

perf test: Update cs_etm testcase for Arm ETE

Message ID 20230911065541.91293-1-tianruidong@linux.alibaba.com (mailing list archive)
State New, archived
Headers show
Series perf test: Update cs_etm testcase for Arm ETE | expand

Commit Message

Ruidong Tian Sept. 11, 2023, 6:55 a.m. UTC
Add ETE as one of the supported device types in perf cs_etm testcase.

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

Comments

James Clark Sept. 11, 2023, 8:51 a.m. UTC | #1
On 11/09/2023 07:55, Ruidong Tian wrote:
> Add ETE as one of the supported device types in perf cs_etm testcase.
> 
> Signed-off-by: Ruidong Tian <tianruidong@linux.alibaba.com>
> ---
>  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`

Reviewed-by: James Clark <james.clark@arm.com>
Arnaldo Carvalho de Melo Sept. 12, 2023, 7:37 p.m. UTC | #2
Em Mon, Sep 11, 2023 at 09:51:09AM +0100, James Clark escreveu:
> On 11/09/2023 07:55, Ruidong Tian wrote:
> >  	# 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`
> 
> Reviewed-by: James Clark <james.clark@arm.com>

Thanks, applied.

- Arnaldo
diff mbox series

Patch

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`