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.

58 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