#!/system/bin/sh # # Copyright (C) 2021 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Exit on errors, or whenever an unset variable is substituted set -eu stop thermal_manager setprop vendor.powerhal.init 0 stop power-hal-1-0 start power-hal-1-0 echo 'Locking CPU to 1125000 (56% relative to max freq)' echo 11 > /proc/ppm/policy/ut_fix_freq_idx expected_gpu_freq='390000' echo "Locking GPU to ${expected_gpu_freq} (min freq)" echo "${expected_gpu_freq}" > /proc/gpufreq/gpufreq_opp_freq expected_cpu_freqs='1125000, 1125000, 1125000, 1125000' cpu_freqs="$(cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq | sed -z 's/\n/, /g')" echo "Set CPU frequencies to ${cpu_freqs}" if [[ "${cpu_freqs}" -ne "${expected_cpu_freqs}" ]]; then echo "Failed to set CPUs to expected frequencies: ${expected_cpu_freqs}" exit 1 fi gpu_freq="$(cat /proc/gpufreq/gpufreq_opp_freq | tail -n 1 | cut -d '=, ' -f 5)" echo "Set GPU frequency to ${gpu_freq}" if [[ "${gpu_freq}" -ne "${expected_gpu_freq}" ]]; then echo "Failed to set GPU to expected frequency: ${expected_gpu_freq}" exit 1 fi