1#!/system/bin/sh
2#
3# Copyright (C) 2018 The Android Open Source Project
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9#      http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
17# performance test setup for 2018 devices
18
19stop vendor.thermal-engine
20setprop vendor.powerhal.init 0
21setprop ctl.interface_restart android.hardware.power@1.0::IPower/default
22
23cpubase=/sys/devices/system/cpu
24gov=cpufreq/scaling_governor
25
26cpu=4
27top=8
28
29cpufreq=2092800
30# Set the golden cores at 2092800.
31# 825600 902400 979200 1056000 1209600 1286400 1363200 1459200 1536000
32# 1612800 1689600 1766400 1843200 1920000 1996800 2092800 2169600
33# 2246400 2323200 2400000 2476800 2553600 2649600
34while [ $((cpu < $top)) -eq 1 ]; do
35  echo 1 > $cpubase/cpu${cpu}/online
36  echo performance > $cpubase/cpu${cpu}/$gov
37  echo $cpufreq > /sys/devices/system/cpu/cpu$cpu/cpufreq/scaling_max_freq
38  S=`cat $cpubase/cpu${cpu}/cpufreq/scaling_cur_freq`
39  echo "set cpu $cpu to $S kHz"
40  cpu=$(($cpu + 1))
41done
42
43cpu=0
44top=4
45
46# Disable the silver cores.
47while [ $((cpu < $top)) -eq 1 ]; do
48  echo "disable cpu $cpu"
49  echo 0 > $cpubase/cpu${cpu}/online
50  cpu=$(($cpu + 1))
51done
52
53echo "disable GPU bus split"
54echo 0 > /sys/class/kgsl/kgsl-3d0/bus_split
55echo "enable GPU force clock on"
56echo 1 > /sys/class/kgsl/kgsl-3d0/force_clk_on
57echo "set GPU idle timer to 10000"
58echo 10000 > /sys/class/kgsl/kgsl-3d0/idle_timer
59
60# 0 381 572 762 1144 1571 2086 2597 2929 3879 4943 5931 6881
61echo performance > /sys/class/devfreq/soc:qcom,gpubw/governor
62echo -n "set GPU bus frequency to max at "
63cat /sys/class/devfreq/soc:qcom,gpubw/cur_freq
64
65# 257000000 342000000 414000000 520000000 596000000 675000000 710000000
66G=596000000
67echo performance > /sys/class/kgsl/kgsl-3d0/devfreq/governor
68echo $G > /sys/class/kgsl/kgsl-3d0/devfreq/min_freq
69echo $G > /sys/class/kgsl/kgsl-3d0/devfreq/max_freq
70echo -n "set GPU frequency to "
71cat /sys/class/kgsl/kgsl-3d0/devfreq/cur_freq
72