1*dd0948b3SAndroid Build Coastguard Worker#!/system/bin/sh 2*dd0948b3SAndroid Build Coastguard Worker# 3*dd0948b3SAndroid Build Coastguard Worker# Copyright (C) 2024 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# Performance test setup for 2024 devices 18*dd0948b3SAndroid Build Coastguard Worker 19*dd0948b3SAndroid Build Coastguard Workerecho "Disabling Tskin thermal mitigation..." 20*dd0948b3SAndroid Build Coastguard Workersetprop persist.vendor.disable.thermal.control 1 21*dd0948b3SAndroid Build Coastguard Worker 22*dd0948b3SAndroid Build Coastguard Workerecho "Disabling TJ thermal mitigation..." 23*dd0948b3SAndroid Build Coastguard Workersetprop persist.vendor.disable.thermal.tj.control 1 24*dd0948b3SAndroid Build Coastguard Worker 25*dd0948b3SAndroid Build Coastguard Workerecho "Clearing cooling device states..." 26*dd0948b3SAndroid Build Coastguard Workerfor i in /sys/devices/virtual/thermal/cooling_device*/user_vote; do echo 0 > "$i" 2>/dev/null; done 27*dd0948b3SAndroid Build Coastguard Workerfor i in /sys/devices/virtual/thermal/cooling_device*/cur_state; do echo 0 > "$i" 2>/dev/null; done 28*dd0948b3SAndroid Build Coastguard Worker 29*dd0948b3SAndroid Build Coastguard Workerecho "Disabling powerhints..." 30*dd0948b3SAndroid Build Coastguard Workersetprop vendor.powerhal.init 0 31*dd0948b3SAndroid Build Coastguard Workersetprop ctl.restart vendor.power-hal-aidl 32*dd0948b3SAndroid Build Coastguard Worker 33*dd0948b3SAndroid Build Coastguard Worker# set max freq for all cores 34*dd0948b3SAndroid Build Coastguard Workerecho "Locking CPUs to the max freq..." 35*dd0948b3SAndroid Build Coastguard Workerfor cpu_path in /sys/devices/system/cpu/cpu*[0-9]; do 36*dd0948b3SAndroid Build Coastguard Worker local max_freq=`cat $cpu_path/cpufreq/cpuinfo_max_freq` 37*dd0948b3SAndroid Build Coastguard Worker echo $max_freq > $cpu_path/cpufreq/scaling_max_freq 38*dd0948b3SAndroid Build Coastguard Worker echo $max_freq > $cpu_path/cpufreq/scaling_min_freq 39*dd0948b3SAndroid Build Coastguard Worker 40*dd0948b3SAndroid Build Coastguard Worker local cur_freq=`cat $cpu_path/cpufreq/cpuinfo_cur_freq` 41*dd0948b3SAndroid Build Coastguard Worker echo "`basename $cpu_path` -> $cur_freq" 42*dd0948b3SAndroid Build Coastguard Workerdone 43*dd0948b3SAndroid Build Coastguard Worker 44*dd0948b3SAndroid Build Coastguard Workerecho "Locking GPU to the max freq..." 45*dd0948b3SAndroid Build Coastguard Workergpu_base_path="/sys/devices/platform/1f000000.mali" 46*dd0948b3SAndroid Build Coastguard Workergpu_max_freq=`cat $gpu_base_path/max_freq` 47*dd0948b3SAndroid Build Coastguard Workerecho $gpu_max_freq > $gpu_base_path/scaling_max_freq 48*dd0948b3SAndroid Build Coastguard Workerecho $gpu_max_freq > $gpu_base_path/scaling_min_freq 49*dd0948b3SAndroid Build Coastguard Workercat $gpu_base_path/cur_freq 50*dd0948b3SAndroid Build Coastguard Worker 51*dd0948b3SAndroid Build Coastguard Workerecho "Locking Buses to the max freq..." 52*dd0948b3SAndroid Build Coastguard Workerfor path in /sys/class/devfreq/*{bci,mif,dsu,int}; do 53*dd0948b3SAndroid Build Coastguard Worker local max_freq=`cat $path/max_freq` 54*dd0948b3SAndroid Build Coastguard Worker echo $max_freq > $path/exynos_data/debug_scaling_devfreq_max 55*dd0948b3SAndroid Build Coastguard Worker echo $max_freq > $path/exynos_data/debug_scaling_devfreq_min 56*dd0948b3SAndroid Build Coastguard Worker 57*dd0948b3SAndroid Build Coastguard Worker local cur_freq=`cat $path/cur_freq` 58*dd0948b3SAndroid Build Coastguard Worker echo "`basename $path` -> $cur_freq" 59*dd0948b3SAndroid Build Coastguard Workerdone 60*dd0948b3SAndroid Build Coastguard Worker 61