You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.2 KiB
57 lines
1.2 KiB
#!/bin/bash |
|
|
|
# defines |
|
DIR="/sys/devices/virtual/thermal" |
|
|
|
# helper function |
|
direxists() { |
|
[ `adb shell "[ -d $1 ] && echo found"` ] |
|
} |
|
fileexists() { |
|
[ `adb shell "[ -f $1 ] && echo found"` ] |
|
} |
|
getprop() { |
|
if fileexists $1; then |
|
echo "`adb shell cat $1 | tr -d '\r'`" |
|
else |
|
echo "FILE $1 NOT FOUND" |
|
fi |
|
} |
|
print_if_exists() { |
|
if fileexists $1; then |
|
local ERROR=`getprop $1 | grep "Invalid"` |
|
if [ ${#ERROR} -eq 0 ]; then |
|
eval "$2=`getprop $1`" |
|
else |
|
eval "$2=ERROR" |
|
fi |
|
else |
|
eval "$2=DNE" |
|
fi |
|
} |
|
|
|
# setup |
|
if [[ "`adb shell id | tr -d '\r' | awk -F'[()]' '{print $2}'`" != "root" ]]; then |
|
adb root |
|
adb wait-for-device |
|
fi |
|
|
|
# device name |
|
echo Device: `adb shell getprop ro.product.model` |
|
|
|
# get zones |
|
ZONES=`adb shell ls $DIR | tr -d '\r' | grep thermal_zone | tr -d thermal_zone | sort -n` |
|
|
|
# print temperature of each zone |
|
for ZONE in $ZONES; do |
|
print_if_exists $DIR"/thermal_zone"$ZONE"/mode" MODE |
|
print_if_exists $DIR"/thermal_zone"$ZONE"/temp" TEMP |
|
print_if_exists $DIR"/thermal_zone"$ZONE"/type" TYPE |
|
printf "Zone %02d: MODE=%-8s TEMP=%-5s TYPE=%s\n" $ZONE $MODE $TEMP $TYPE |
|
done |
|
|
|
# error |
|
if ! direxists $DIR; then |
|
echo "Thermal directory not found" |
|
fi |
|
|
|
|