Home | History | Annotate | Download | only in crosshatch
      1 #
      2 # Copyright (C) 2017 The Android Open-Source Project
      3 #
      4 # Licensed under the Apache License, Version 2.0 (the "License");
      5 # you may not use this file except in compliance with the License.
      6 # You may obtain a copy of the License at
      7 #
      8 #      http://www.apache.org/licenses/LICENSE-2.0
      9 #
     10 # Unless required by applicable law or agreed to in writing, software
     11 # distributed under the License is distributed on an "AS IS" BASIS,
     12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 # See the License for the specific language governing permissions and
     14 # limitations under the License.
     15 #
     16 
     17 on property:sys.boot_completed=1
     18     # Enable bus-dcvs
     19     write /sys/class/devfreq/soc:qcom,cpubw/governor "bw_hwmon"
     20     write /sys/class/devfreq/soc:qcom,cpubw/polling_interval 50
     21     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/mbps_zones "2288 4577 6500 8132 9155 10681"
     22     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/sample_ms 4
     23     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/io_percent 40
     24     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hist_memory 20
     25     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hyst_length 10
     26     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/guard_band_mbps 0
     27     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/up_scale 250
     28     write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/idle_mbps 1600
     29 
     30     write /sys/class/devfreq/soc:qcom,llccbw/governor "bw_hwmon"
     31     write /sys/class/devfreq/soc:qcom,llccbw/polling_interval 50
     32     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/mbps_zones "1720 2929 3879 5931 6881"
     33     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/sample_ms 4
     34     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/io_percent 80
     35     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/hist_memory 20
     36     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/hyst_length 10
     37     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/guard_band_mbps 0
     38     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/up_scale 250
     39     write /sys/class/devfreq/soc:qcom,llccbw/bw_hwmon/idle_mbps 1600
     40 
     41     write /sys/class/devfreq/soc:qcom,mincpubw/governor "cpufreq"
     42 
     43     # Enable memlat governor
     44     write /sys/class/devfreq/soc:qcom,memlat-cpu0/governor "mem_latency"
     45     write /sys/class/devfreq/soc:qcom,memlat-cpu0/polling_interval 10
     46     write /sys/class/devfreq/soc:qcom,memlat-cpu0/mem_latency/ratio_ceil 400
     47     write /sys/class/devfreq/soc:qcom,memlat-cpu4/governor "mem_latency"
     48     write /sys/class/devfreq/soc:qcom,memlat-cpu4/polling_interval 10
     49     write /sys/class/devfreq/soc:qcom,memlat-cpu4/mem_latency/ratio_ceil 400
     50 
     51     write /sys/class/devfreq/soc:qcom,l3-cpu0/governor "mem_latency"
     52     write /sys/class/devfreq/soc:qcom,l3-cpu0/polling_interval 10
     53     write /sys/class/devfreq/soc:qcom,l3-cpu0/mem_latency/ratio_ceil 400
     54     write /sys/class/devfreq/soc:qcom,l3-cpu4/governor "mem_latency"
     55     write /sys/class/devfreq/soc:qcom,l3-cpu4/polling_interval 10
     56     write /sys/class/devfreq/soc:qcom,l3-cpu4/mem_latency/ratio_ceil 4000
     57 
     58     # Turn on sleep modes.
     59     write /sys/module/lpm_levels/parameters/sleep_disabled 0
     60 
     61     # Enable idle state listener
     62     write /sys/class/drm/card0/device/idle_encoder_mask 1
     63     write /sys/class/drm/card0/device/idle_timeout_ms 100
     64 
     65     # Change l3-cdsp to userspace governor
     66     write /sys/class/devfreq/soc:qcom,l3-cdsp/governor userspace
     67     chown system system /sys/class/devfreq/soc:qcom,l3-cdsp/userspace/set_freq
     68 
     69 # Disable console_suspend to get better logging for kernel crashes
     70 on boot
     71     write /sys/module/printk/parameters/console_suspend N
     72 
     73     #Enable suspend to idle mode to reduce latency during suspend/resume
     74     write /sys/power/mem_sleep "s2idle"
     75 
     76 # If UART is on, enable console_suspend on boot_complete to save power
     77 on property:sys.boot_completed=1 && property:init.svc.console=running
     78     write /sys/module/printk/parameters/console_suspend Y
     79