aboutsummaryrefslogtreecommitdiff
path: root/rootdir/etc/init.qcom.power.rc
diff options
context:
space:
mode:
Diffstat (limited to 'rootdir/etc/init.qcom.power.rc')
-rw-r--r--rootdir/etc/init.qcom.power.rc129
1 files changed, 129 insertions, 0 deletions
diff --git a/rootdir/etc/init.qcom.power.rc b/rootdir/etc/init.qcom.power.rc
new file mode 100644
index 0000000..293e7de
--- /dev/null
+++ b/rootdir/etc/init.qcom.power.rc
@@ -0,0 +1,129 @@
+on boot
+ # Update foreground and background cpusets
+ write /dev/cpuset/foreground/cpus 0-3
+ write /dev/cpuset/foreground/boost/cpus 2-3
+ write /dev/cpuset/background/cpus 0-1
+ write /dev/cpuset/system-background/cpus 0-3
+
+ # Enable sched boost
+ write /proc/sys/kernel/sched_boost 1
+
+on enable-low-power
+ # Disable thermal bcl hotplug to switch governor
+ write /sys/module/msm_thermal/core_control/enabled 0
+ write /sys/devices/soc/soc:qcom,bcl/mode "disable"
+ write /sys/devices/soc/soc:qcom,bcl/hotplug_mask 0
+ write /sys/devices/soc/soc:qcom,bcl/hotplug_soc_mask 0
+ write /sys/devices/soc/soc:qcom,bcl/mode "enable"
+
+ # Enable Adaptive LMK
+ write /sys/module/lowmemorykiller/parameters/enable_adaptive_lmk 1
+ write /sys/module/lowmemorykiller/parameters/vmpressure_file_min 81250
+
+ # Configure governor settings for little cluster
+ write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor "interactive"
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_sched_load 1
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/use_migration_notif 1
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/above_hispeed_delay 19000
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/go_hispeed_load 90
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/timer_rate 20000
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/hispeed_freq 960000
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/io_is_busy 1
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads 80
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/min_sample_time 19000
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/max_freq_hysteresis 79000
+ write /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 307200
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/ignore_hispeed_on_notif 1
+ write /sys/devices/system/cpu/cpu0/cpufreq/interactive/enable_prediction 1
+
+ # Online CPU2
+ write /sys/devices/system/cpu/cpu2/online 1
+
+ # Configure governor settings for big cluster
+ write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor "interactive"
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/use_sched_load 1
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/use_migration_notif 1
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/above_hispeed_delay "19000 1400000:39000 1700000:19000 2100000:79000"
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/go_hispeed_load 90
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/timer_rate 20000
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/hispeed_freq 1248000
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/io_is_busy 1
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads "85 1500000:90 1800000:70 2100000:95"
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/min_sample_time 19000
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/max_freq_hysteresis 79000
+ write /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq 307200
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/ignore_hispeed_on_notif 1
+ write /sys/devices/system/cpu/cpu2/cpufreq/interactive/enable_prediction 1
+
+ # Re-enable thermal and BCL hotplug
+ write /sys/module/msm_thermal/core_control/enabled 1
+ write /sys/devices/soc/soc:qcom,bcl/mode "disable"
+ write /sys/devices/soc/soc:qcom,bcl/hotplug_mask 12
+ write /sys/devices/soc/soc:qcom,bcl/hotplug_soc_mask 8
+ write /sys/devices/soc/soc:qcom,bcl/mode "enable"
+
+ # Input boost configuration
+ write /sys/module/cpu_boost/parameters/input_boost_freq "0:1324800 2:1324800"
+ write /sys/module/cpu_boost/parameters/input_boost_ms 40
+
+ # Setting b.L scheduler parameters
+ write /proc/sys/kernel/sched_boost 0
+ write /proc/sys/kernel/sched_downmigrate 45
+ write /proc/sys/kernel/sched_upmigrate 45
+ write /proc/sys/kernel/sched_freq_inc_notify 400000
+ write /proc/sys/kernel/sched_freq_dec_notify 400000
+ write /proc/sys/kernel/sched_spill_nr_run 3
+ write /proc/sys/kernel/sched_init_task_load 100
+ write /proc/sys/kernel/sched_upmigrate_min_nice 9
+
+ # Enable bus-dcvs
+ write /sys/class/devfreq/soc:qcom,cpubw/governor "bw_hwmon"
+ write /sys/class/devfreq/soc:qcom,cpubw/polling_interval 50
+ write /sys/class/devfreq/soc:qcom,cpubw/min_freq 1525
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/mbps_zones "1525 5195 11863 13763"
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/sample_ms 4
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/io_percent 34
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hist_memory 20
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/hyst_length 10
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/low_power_ceil_mbps 0
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/low_power_io_percent 34
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/low_power_delay 20
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/guard_band_mbps 0
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/up_scale 250
+ write /sys/class/devfreq/soc:qcom,cpubw/bw_hwmon/idle_mbps 1600
+
+ write /sys/class/devfreq/soc:qcom,memlat-cpu0/governor "mem_latency"
+ write /sys/class/devfreq/soc:qcom,memlat-cpu0/polling_interval 10
+ write /sys/class/devfreq/soc:qcom,memlat-cpu2/governor "mem_latency"
+ write /sys/class/devfreq/soc:qcom,memlat-cpu2/polling_interval 10
+ write /sys/class/devfreq/soc:qcom,mincpubw/governor "cpufreq"
+
+ write /sys/module/lpm_levels/parameters/sleep_disabled "N"
+
+ # Set perfd properties
+ rm /data/system/perfd/default_values
+ start perfd
+
+ # Starting io prefetcher service
+ start iop
+
+on charger
+ write /sys/devices/system/cpu/cpu1/online 0
+ write /sys/devices/system/cpu/cpu2/online 0
+ write /sys/devices/system/cpu/cpu3/online 0
+ write /sys/module/msm_thermal/core_control/cpus_offlined 14
+ write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor "powersave"
+ write /sys/module/lpm_levels/parameters/sleep_disabled 0
+
+on class_start:late_start
+ write /proc/sys/kernel/sched_boost 1
+
+
+ trigger enable-low-power
+
+on property:init.svc.recovery=running
+ trigger enable-low-power
+
+on property:dev.bootcomplete=1
+ write /proc/sys/kernel/sched_boost 0
+ setprop sys.io.scheduler "bfq"