xref: /aosp_15_r20/frameworks/rs/perf-test-scripts/get-thermal (revision e1eccf28f96817838ad6867f7f39d2351ec11f56)
1*e1eccf28SAndroid Build Coastguard Worker#!/bin/bash
2*e1eccf28SAndroid Build Coastguard Worker
3*e1eccf28SAndroid Build Coastguard Worker# defines
4*e1eccf28SAndroid Build Coastguard WorkerDIR="/sys/devices/virtual/thermal"
5*e1eccf28SAndroid Build Coastguard Worker
6*e1eccf28SAndroid Build Coastguard Worker# helper function
7*e1eccf28SAndroid Build Coastguard Workerdirexists() {
8*e1eccf28SAndroid Build Coastguard Worker  [ `adb shell "[ -d $1 ] && echo found"` ]
9*e1eccf28SAndroid Build Coastguard Worker}
10*e1eccf28SAndroid Build Coastguard Workerfileexists() {
11*e1eccf28SAndroid Build Coastguard Worker  [ `adb shell "[ -f $1 ] && echo found"` ]
12*e1eccf28SAndroid Build Coastguard Worker}
13*e1eccf28SAndroid Build Coastguard Workergetprop() {
14*e1eccf28SAndroid Build Coastguard Worker  if fileexists $1; then
15*e1eccf28SAndroid Build Coastguard Worker    echo "`adb shell cat $1 | tr -d '\r'`"
16*e1eccf28SAndroid Build Coastguard Worker  else
17*e1eccf28SAndroid Build Coastguard Worker    echo "FILE $1 NOT FOUND"
18*e1eccf28SAndroid Build Coastguard Worker  fi
19*e1eccf28SAndroid Build Coastguard Worker}
20*e1eccf28SAndroid Build Coastguard Workerprint_if_exists() {
21*e1eccf28SAndroid Build Coastguard Worker  if fileexists $1; then
22*e1eccf28SAndroid Build Coastguard Worker    local ERROR=`getprop $1 | grep "Invalid"`
23*e1eccf28SAndroid Build Coastguard Worker    if [ ${#ERROR} -eq 0 ]; then
24*e1eccf28SAndroid Build Coastguard Worker      eval "$2=`getprop $1`"
25*e1eccf28SAndroid Build Coastguard Worker    else
26*e1eccf28SAndroid Build Coastguard Worker      eval "$2=ERROR"
27*e1eccf28SAndroid Build Coastguard Worker    fi
28*e1eccf28SAndroid Build Coastguard Worker  else
29*e1eccf28SAndroid Build Coastguard Worker    eval "$2=DNE"
30*e1eccf28SAndroid Build Coastguard Worker  fi
31*e1eccf28SAndroid Build Coastguard Worker}
32*e1eccf28SAndroid Build Coastguard Worker
33*e1eccf28SAndroid Build Coastguard Worker# setup
34*e1eccf28SAndroid Build Coastguard Workerif [[ "`adb shell id | tr -d '\r' | awk -F'[()]' '{print $2}'`" != "root" ]]; then
35*e1eccf28SAndroid Build Coastguard Worker  adb root
36*e1eccf28SAndroid Build Coastguard Worker  adb wait-for-device
37*e1eccf28SAndroid Build Coastguard Workerfi
38*e1eccf28SAndroid Build Coastguard Worker
39*e1eccf28SAndroid Build Coastguard Worker# device name
40*e1eccf28SAndroid Build Coastguard Workerecho Device: `adb shell getprop ro.product.model`
41*e1eccf28SAndroid Build Coastguard Worker
42*e1eccf28SAndroid Build Coastguard Worker# get zones
43*e1eccf28SAndroid Build Coastguard WorkerZONES=`adb shell ls $DIR | tr -d '\r' | grep thermal_zone | tr -d thermal_zone | sort -n`
44*e1eccf28SAndroid Build Coastguard Worker
45*e1eccf28SAndroid Build Coastguard Worker# print temperature of each zone
46*e1eccf28SAndroid Build Coastguard Workerfor ZONE in $ZONES; do
47*e1eccf28SAndroid Build Coastguard Worker  print_if_exists $DIR"/thermal_zone"$ZONE"/mode" MODE
48*e1eccf28SAndroid Build Coastguard Worker  print_if_exists $DIR"/thermal_zone"$ZONE"/temp" TEMP
49*e1eccf28SAndroid Build Coastguard Worker  print_if_exists $DIR"/thermal_zone"$ZONE"/type" TYPE
50*e1eccf28SAndroid Build Coastguard Worker  printf "Zone %02d:   MODE=%-8s   TEMP=%-5s   TYPE=%s\n" $ZONE $MODE $TEMP $TYPE
51*e1eccf28SAndroid Build Coastguard Workerdone
52*e1eccf28SAndroid Build Coastguard Worker
53*e1eccf28SAndroid Build Coastguard Worker# error
54*e1eccf28SAndroid Build Coastguard Workerif ! direxists $DIR; then
55*e1eccf28SAndroid Build Coastguard Worker  echo "Thermal directory not found"
56*e1eccf28SAndroid Build Coastguard Workerfi
57*e1eccf28SAndroid Build Coastguard Worker
58