xref: /aosp_15_r20/platform_testing/scripts/perf-setup/mt6761-setup.sh (revision dd0948b35e70be4c0246aabd6c72554a5eb8b22a)
1*dd0948b3SAndroid Build Coastguard Worker#!/system/bin/sh
2*dd0948b3SAndroid Build Coastguard Worker#
3*dd0948b3SAndroid Build Coastguard Worker# Copyright (C) 2021 The Android Open Source Project
4*dd0948b3SAndroid Build Coastguard Worker#
5*dd0948b3SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
6*dd0948b3SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
7*dd0948b3SAndroid Build Coastguard Worker# You may obtain a copy of the License at
8*dd0948b3SAndroid Build Coastguard Worker#
9*dd0948b3SAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
10*dd0948b3SAndroid Build Coastguard Worker#
11*dd0948b3SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
12*dd0948b3SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
13*dd0948b3SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*dd0948b3SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
15*dd0948b3SAndroid Build Coastguard Worker# limitations under the License.
16*dd0948b3SAndroid Build Coastguard Worker
17*dd0948b3SAndroid Build Coastguard Worker# Exit on errors, or whenever an unset variable is substituted
18*dd0948b3SAndroid Build Coastguard Workerset -eu
19*dd0948b3SAndroid Build Coastguard Worker
20*dd0948b3SAndroid Build Coastguard Workerstop thermal_manager
21*dd0948b3SAndroid Build Coastguard Workersetprop vendor.powerhal.init 0
22*dd0948b3SAndroid Build Coastguard Workerstop power-hal-1-0
23*dd0948b3SAndroid Build Coastguard Workerstart power-hal-1-0
24*dd0948b3SAndroid Build Coastguard Worker
25*dd0948b3SAndroid Build Coastguard Workerecho 'Locking CPU to 1125000 (56% relative to max freq)'
26*dd0948b3SAndroid Build Coastguard Workerecho 11 > /proc/ppm/policy/ut_fix_freq_idx
27*dd0948b3SAndroid Build Coastguard Worker
28*dd0948b3SAndroid Build Coastguard Workerexpected_gpu_freq='390000'
29*dd0948b3SAndroid Build Coastguard Workerecho "Locking GPU to ${expected_gpu_freq} (min freq)"
30*dd0948b3SAndroid Build Coastguard Workerecho "${expected_gpu_freq}" > /proc/gpufreq/gpufreq_opp_freq
31*dd0948b3SAndroid Build Coastguard Worker
32*dd0948b3SAndroid Build Coastguard Workerexpected_cpu_freqs='1125000, 1125000, 1125000, 1125000'
33*dd0948b3SAndroid Build Coastguard Workercpu_freqs="$(cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq | sed -z 's/\n/, /g')"
34*dd0948b3SAndroid Build Coastguard Workerecho "Set CPU frequencies to ${cpu_freqs}"
35*dd0948b3SAndroid Build Coastguard Workerif [[ "${cpu_freqs}" -ne "${expected_cpu_freqs}" ]]; then
36*dd0948b3SAndroid Build Coastguard Worker  echo "Failed to set CPUs to expected frequencies: ${expected_cpu_freqs}"
37*dd0948b3SAndroid Build Coastguard Worker  exit 1
38*dd0948b3SAndroid Build Coastguard Workerfi
39*dd0948b3SAndroid Build Coastguard Worker
40*dd0948b3SAndroid Build Coastguard Workergpu_freq="$(cat /proc/gpufreq/gpufreq_opp_freq | tail -n 1 | cut -d '=, ' -f 5)"
41*dd0948b3SAndroid Build Coastguard Workerecho "Set GPU frequency to ${gpu_freq}"
42*dd0948b3SAndroid Build Coastguard Workerif [[ "${gpu_freq}" -ne "${expected_gpu_freq}" ]]; then
43*dd0948b3SAndroid Build Coastguard Worker  echo "Failed to set GPU to expected frequency: ${expected_gpu_freq}"
44*dd0948b3SAndroid Build Coastguard Worker  exit 1
45*dd0948b3SAndroid Build Coastguard Workerfi
46*dd0948b3SAndroid Build Coastguard Worker
47*dd0948b3SAndroid Build Coastguard Worker
48