aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEthan Chen <intervigil@gmail.com>2016-10-02 01:04:35 -0700
committerMichael Bestas <mkbestas@lineageos.org>2017-06-27 23:48:29 +0300
commit5b68c044320780e3a1bf13c779947ecb743fb123 (patch)
tree33fd03e70055484f506eb25250f0c167fa718720
parenta1145cc684c449d7c75f7ffade22843221ce3b2d (diff)
msm8916: Use cpusets for all services
* Move more services to system-background * Move camera to camera-daemon Change-Id: Icdb634c9b69083b6a58dbef8d9045e332cd3d2a3
-rw-r--r--rootdir/etc/init.qcom.power_msm8916.rc8
-rw-r--r--rootdir/etc/init.qcom.power_msm8939.rc8
-rw-r--r--rootdir/etc/init.qcom.rc8
3 files changed, 23 insertions, 1 deletions
diff --git a/rootdir/etc/init.qcom.power_msm8916.rc b/rootdir/etc/init.qcom.power_msm8916.rc
index 39631de..895369c 100644
--- a/rootdir/etc/init.qcom.power_msm8916.rc
+++ b/rootdir/etc/init.qcom.power_msm8916.rc
@@ -49,6 +49,13 @@ on enable-low-power
write /sys/devices/system/cpu/cpu0/core_ctl/is_big_cluster 0
write /sys/devices/system/cpu/cpu0/core_ctl/task_thres 4
+ # add a cpuset for the camera daemon
+ # we want all the cores for camera
+ mkdir /dev/cpuset/camera-daemon
+ chown system system /dev/cpuset/camera-daemon
+ chown system system /dev/cpuset/camera-daemon/tasks
+ chmod 0664 /dev/cpuset/camera-daemon/tasks
+
# Update foreground and background cpusets
# Reserve CPU 3 for the top app
write /dev/cpuset/foreground/cpus 0-2
@@ -56,6 +63,7 @@ on enable-low-power
write /dev/cpuset/background/cpus 0
write /dev/cpuset/system-background/cpus 0-1
write /dev/cpuset/top-app/cpus 0-3
+ write /dev/cpuset/camera-daemon/cpus 0-3
rm /data/system/perfd/default_values
start perfd
diff --git a/rootdir/etc/init.qcom.power_msm8939.rc b/rootdir/etc/init.qcom.power_msm8939.rc
index 25186a4..f912253 100644
--- a/rootdir/etc/init.qcom.power_msm8939.rc
+++ b/rootdir/etc/init.qcom.power_msm8939.rc
@@ -83,6 +83,13 @@ on enable-low-power
# Enable low power modes
write /sys/module/lpm_levels/parameters/sleep_disabled 0
+ # add a cpuset for the camera daemon
+ # we want all the little cores for camera
+ mkdir /dev/cpuset/camera-daemon
+ chown system system /dev/cpuset/camera-daemon
+ chown system system /dev/cpuset/camera-daemon/tasks
+ chmod 0664 /dev/cpuset/camera-daemon/tasks
+
# Update foreground and background cpusets
# Reserve CPU 7 for the top app
write /dev/cpuset/foreground/cpus 0-6
@@ -90,6 +97,7 @@ on enable-low-power
write /dev/cpuset/background/cpus 4
write /dev/cpuset/system-background/cpus 4-6
write /dev/cpuset/top-app/cpus 0-7
+ write /dev/cpuset/camera-daemon/cpus 4-7
rm /data/system/perfd/default_values
start perfd
diff --git a/rootdir/etc/init.qcom.rc b/rootdir/etc/init.qcom.rc
index 800ca37..3937d50 100644
--- a/rootdir/etc/init.qcom.rc
+++ b/rootdir/etc/init.qcom.rc
@@ -286,6 +286,7 @@ service rmt_storage /system/bin/rmt_storage
class core
user root
group wakelock
+ writepid /dev/cpuset/system-background/tasks
service config_bt_addr /system/bin/btnvtool -O
class core
@@ -324,6 +325,7 @@ service qmuxd /system/bin/qmuxd
class main
user root
group radio audio bluetooth gps qcom_diag wakelock
+ writepid /dev/cpuset/system-background/tasks
service msm_irqbalance /system/bin/msm_irqbalance -f /system/vendor/etc/msm_irqbalance.conf
class core
@@ -334,6 +336,7 @@ service msm_irqbalance /system/bin/msm_irqbalance -f /system/vendor/etc/msm_irqb
service netmgrd /system/bin/netmgrd
class main
group system wakelock
+ writepid /dev/cpuset/system-background/tasks
on property:ro.use_data_netmgrd=false
# netmgr not supported on specific target
@@ -423,7 +426,7 @@ service qcamerasvr /system/bin/mm-qcamera-daemon
class late_start
user camera
group camera system inet input graphics
- writepid /dev/cpuset/system-background/tasks
+ writepid /dev/cpuset/camera-daemon/tasks
# Allow usb charging to be disabled peristently
on property:persist.usb.chgdisabled=1
@@ -436,6 +439,7 @@ service qseecomd /system/bin/qseecomd
class core
user root
group root
+ writepid /dev/cpuset/system-background/tasks
service perfd /vendor/bin/perfd
class main
@@ -448,11 +452,13 @@ service thermal-engine /vendor/bin/thermal-engine
class main
user root
group root
+ writepid /dev/cpuset/system-background/tasks
service time_daemon /system/bin/time_daemon
class late_start
user root
group root
+ writepid /dev/cpuset/system-background/tasks
service audiod /system/bin/audiod
class late_start