49 lines
1.6 KiB
Bash
Executable File
49 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
cpubase=/sys/devices/system/cpu
|
|
gov=cpufreq/scaling_governor
|
|
|
|
adb root
|
|
adb wait-for-device
|
|
thermal=$(adb shell "getprop persist.service.thermal")
|
|
echo "thermal status: $thermal"
|
|
if [ $thermal -eq 1 ]
|
|
then
|
|
echo "Trying to setprop persist.service.thermal 0 and reboot"
|
|
adb shell "setprop persist.service.thermal 0"
|
|
adb reboot
|
|
adb wait-for-device
|
|
thermal=$(adb shell "getprop persist.service.thermal")
|
|
if [ $thermal -eq 1 ]
|
|
then
|
|
echo "thermal property is still 1. Abort."
|
|
exit -1
|
|
fi
|
|
echo "Successfully setup persist.service.thermal to 0"
|
|
fi
|
|
|
|
adb shell stop perfprod
|
|
|
|
# cores
|
|
# 1833000 1750000 1666000 1583000 1500000 1416000 1333000 1250000
|
|
# 1166000 1083000 1000000 916000 833000 750000 666000 583000 500000
|
|
|
|
cpu=0
|
|
S=1166000
|
|
while [ $((cpu < 3)) -eq 1 ]; do
|
|
echo "Setting cpu ${cpu} & $(($cpu + 1)) cluster to $S hz"
|
|
# cpu0/online doesn't exist, because you can't turned it off, so ignore results of this command
|
|
adb shell "echo 1 > $cpubase/cpu${cpu}/online" &> /dev/null
|
|
adb shell "echo userspace > $cpubase/cpu${cpu}/$gov"
|
|
adb shell "echo $S > $cpubase/cpu${cpu}/cpufreq/scaling_max_freq"
|
|
adb shell "echo $S > $cpubase/cpu${cpu}/cpufreq/scaling_min_freq"
|
|
adb shell "echo $S > $cpubase/cpu${cpu}/cpufreq/scaling_setspeed"
|
|
cpu=$(($cpu + 2))
|
|
done
|
|
|
|
#/sys/class/devfreq/dfrgx/available_frequencies is empty, so set to min
|
|
echo "performance mode, 457 MHz"
|
|
adb shell "echo performance > /sys/class/devfreq/dfrgx/governor"
|
|
adb shell "echo 457000 > /sys/class/devfreq/dfrgx/min_freq"
|
|
adb shell "echo 457000 > /sys/class/devfreq/dfrgx/max_freq"
|