init.hardware.rc: improve camera performance Test: build and boot to home Bug: 143036213 Change-Id: I9918aeff69ae132d762f46ac8d26497ae86733b1
diff --git a/init.hardware.rc b/init.hardware.rc index bdddfbf..ccd5c37 100644 --- a/init.hardware.rc +++ b/init.hardware.rc
@@ -113,6 +113,14 @@ chown system system /dev/cpuset/camera-daemon/tasks chmod 0664 /dev/cpuset/camera-daemon/tasks + # create an stune group for camera-specific processes + mkdir /dev/stune/camera-daemon + write /dev/stune/camera-daemon/schedtune.prefer_idle 1 + write /dev/stune/camera-daemon/schedtune.boost 0 + chown system system /dev/stune/camera-daemon + chown system system /dev/stune/camera-daemon/tasks + chmod 0664 /dev/stune/camera-daemon/tasks + on late-init setprop vendor.thermal.config thermal_info_config.json chown system system /sys/devices/virtual/thermal/tz-by-name/skin-therm-monitor/trip_point_0_temp
diff --git a/powerhint.json b/powerhint.json index ba89826..c772d77 100644 --- a/powerhint.json +++ b/powerhint.json
@@ -116,6 +116,17 @@ "ResetOnInit": true }, { + "Name": "CDSchedtuneBoost", + "Path": "/dev/stune/camera-daemon/schedtune.boost", + "Values": [ + "10", + "1", + "0" + ], + "DefaultIndex": 2, + "ResetOnInit": true + }, + { "Name": "CPUBWHystTriggerCount", "Path": "/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/hyst_trigger_count", "Values": [ @@ -191,6 +202,24 @@ "ResetOnInit": true }, { + "Name": "LLCCBWHistMemory", + "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hist_memory", + "Values": [ + "0", + "20" + ], + "ResetOnInit": true + }, + { + "Name": "LLCCBWHystLength", + "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hyst_length", + "Values": [ + "0", + "10" + ], + "ResetOnInit": true + }, + { "Name": "L3LittleClusterMinFreq", "Path": "/sys/class/devfreq/soc:qcom,cpu0-cpu-l3-lat/min_freq", "Values": [ @@ -200,6 +229,15 @@ "ResetOnInit": true }, { + "Name": "LLCCBWHystTriggerCount", + "Path": "/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/hyst_trigger_count", + "Values": [ + "0", + "3" + ], + "ResetOnInit": true + }, + { "Name": "L3BigClusterMinFreq", "Path": "/sys/class/devfreq/soc:qcom,cpu6-cpu-l3-lat/min_freq", "Values": [ @@ -231,6 +269,9 @@ "Path": "vendor.powerhal.state", "Values": [ "CAMERA_STREAMING", + "CAMERA_STREAMING_4K", + "CAMERA_STREAMING_60FPS", + "CAMERA_STREAMING_SECURE", "SUSTAINED_PERFORMANCE", "" ], @@ -479,6 +520,174 @@ "Value": "10" }, { + "PowerHint": "CAMERA_STREAMING", + "Node": "CDSchedtuneBoost", + "Duration": 0, + "Value": "1" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "PowerHALMainState", + "Duration": 0, + "Value": "CAMERA_STREAMING_60FPS" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CPUBigClusterMaxFreq", + "Duration": 0, + "Value": "2016000" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CDSchedtuneBoost", + "Duration": 0, + "Value": "1" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CPUBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CPUBWIOPercent", + "Duration": 0, + "Value": "80" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "LLCCBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CPUBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "CPUBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "LLCCBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_60FPS", + "Node": "LLCCBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "PowerHALMainState", + "Duration": 0, + "Value": "CAMERA_STREAMING_4K" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "CPUBigClusterMaxFreq", + "Duration": 0, + "Value": "2016000" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "CPUBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "CPUBWIOPercent", + "Duration": 0, + "Value": "80" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "LLCCBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "CPUBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "CPUBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "LLCCBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_4K", + "Node": "LLCCBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "PowerHALMainState", + "Duration": 0, + "Value": "CAMERA_STREAMING_SECURE" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "CPUBigClusterMaxFreq", + "Duration": 0, + "Value": "2016000" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "CPUBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "CPUBWIOPercent", + "Duration": 0, + "Value": "80" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "LLCCBWSampleMs", + "Duration": 0, + "Value": "10" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "LLCCBWHistMemory", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "LLCCBWHystLength", + "Duration": 0, + "Value": "0" + }, + { + "PowerHint": "CAMERA_STREAMING_SECURE", + "Node": "LLCCBWHystTriggerCount", + "Duration": 0, + "Value": "0" + }, + { "PowerHint": "CAMERA_SHOT", "Node": "EnergyAware", "Duration": 1000,