| #! /vendor/bin/sh |
| |
| ################################################################################ |
| # helper functions to allow Android init like script |
| |
| function write() { |
| echo -n $2 > $1 |
| } |
| |
| function copy() { |
| cat $1 > $2 |
| } |
| |
| ################################################################################ |
| |
| # Enable bus-dcvs |
| for cpubw in /sys/class/devfreq/*qcom,cpubw* |
| do |
| write $cpubw/governor "bw_hwmon" |
| write $cpubw/polling_interval 50 |
| write $cpubw/bw_hwmon/mbps_zones "3143 5859 11863 13763" |
| write $cpubw/bw_hwmon/sample_ms 4 |
| write $cpubw/bw_hwmon/io_percent 34 |
| write $cpubw/bw_hwmon/hist_memory 20 |
| write $cpubw/bw_hwmon/hyst_length 10 |
| write $cpubw/bw_hwmon/low_power_ceil_mbps 0 |
| write $cpubw/bw_hwmon/low_power_io_percent 34 |
| write $cpubw/bw_hwmon/low_power_delay 20 |
| write $cpubw/bw_hwmon/guard_band_mbps 0 |
| write $cpubw/bw_hwmon/up_scale 250 |
| write $cpubw/bw_hwmon/idle_mbps 1600 |
| done |
| |
| write /sys/class/devfreq/soc:qcom,mincpubw/governor "cpufreq" |
| |
| # Enable memlat governor |
| #for memlat in /sys/class/devfreq/*qcom,memlat-cpu* |
| #do |
| # write $memlat/governor "mem_latency" |
| # write $memlat/polling_interval 10 |
| # write $memlat/mem_latency/ratio_ceil 400 |
| #done |
| |
| # Signal perfd that boot has completed |
| setprop sys.post_boot.parsed 1 |
| |
| # On debuggable builds, enable console_suspend if uart is enabled to save power |
| # Otherwise, disable console_suspend to get better logging for kernel crashes |
| if [[ $(getprop ro.debuggable) == "1" && ! -e /sys/class/tty/ttyMSM0 ]] |
| then |
| write /sys/module/printk/parameters/console_suspend N |
| fi |