From 6e9b0dbc6747b3daf3e01805058626214ffefef2 Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Thu, 5 Dec 2024 06:54:27 +0000 Subject: [PATCH 1/3] Add SCHED_QOS_POWER_EFFICIENCY profiles Currently support AutoUclampMax. Bug: 355612114 Flag: NONE vendor task_profiles.json Test: build pass Change-Id: I99c3862c471b212e2a8d0e5a7a5758daac461fbe --- task_profiles.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/task_profiles.json b/task_profiles.json index 8cec122..a731cb2 100644 --- a/task_profiles.json +++ b/task_profiles.json @@ -519,6 +519,14 @@ { "Name": "SCHED_QOS_SENSITIVE_STANDARD_CLEAR", "Profiles": [ "AdpfClear", "PreferIdleClear", "PreferFitClear" ] + }, + { + "Name": "SCHED_QOS_POWER_EFFICIENCY_SET", + "Profiles": [ "AutoUclampMaxSet" ] + }, + { + "Name": "SCHED_QOS_POWER_EFFICIENCY_CLEAR", + "Profiles": [ "AutoUclampMaxClear" ] } ] } From 1c268207da67e3d097ed1fcaa3fe16fcee208833 Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Thu, 5 Dec 2024 07:15:33 +0000 Subject: [PATCH 2/3] Use SCHED_QOS_SENSITIVE_EXTREME_SET for InputPolicy Let InputPolicy have all the feature of ADPF task. Bug: 355612114 Flag: NONE vendor task_profiles.json does not support flag Test: build pass Change-Id: I5c2964c0328d2d3a95c84d4c2908ace198202e06 --- task_profiles.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/task_profiles.json b/task_profiles.json index a731cb2..6b9b1ee 100644 --- a/task_profiles.json +++ b/task_profiles.json @@ -500,10 +500,6 @@ "Name": "OtaProfiles", "Profiles": [ "OtaPerformance", "ServiceCapacityLow", "LowIoPriority", "TimerSlackHigh" ] }, - { - "Name": "InputPolicy", - "Profiles": [ "MaxPerformance", "ResetUclampGrp", "PreferIdleSet" ] - }, { "Name": "SCHED_QOS_SENSITIVE_EXTREME_SET", "Profiles": [ "AdpfSet", "PreferIdleSet", "PreferFitSet", "BoostPrioSet", "PreemptWakeupSet" ] @@ -527,6 +523,10 @@ { "Name": "SCHED_QOS_POWER_EFFICIENCY_CLEAR", "Profiles": [ "AutoUclampMaxClear" ] + }, + { + "Name": "InputPolicy", + "Profiles": [ "MaxPerformance", "SCHED_QOS_SENSITIVE_EXTREME_SET" ] } ] } From 20ca1e9f983935f1e315a32605b9f099397c15ba Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Thu, 5 Dec 2024 08:44:43 +0000 Subject: [PATCH 3/3] Set permission for rampup_multiplier Bug: 355612114 Flag: NONE init rc file does not support flag Test: build pass Change-Id: I410866488af508cb02d7fa509f4458fbdf676078 --- conf/init.zumapro.soc.rc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/conf/init.zumapro.soc.rc b/conf/init.zumapro.soc.rc index f70d60e..f4cd377 100644 --- a/conf/init.zumapro.soc.rc +++ b/conf/init.zumapro.soc.rc @@ -146,6 +146,8 @@ on init chown system system /proc/vendor_sched/sched_qos/prefer_high_cap_clear chown system system /proc/vendor_sched/sched_qos/prefer_idle_set chown system system /proc/vendor_sched/sched_qos/prefer_idle_clear + chown system system /proc/vendor_sched/sched_qos/rampup_multiplier_set + chown system system /proc/vendor_sched/sched_qos/rampup_multiplier_clear chmod 0220 /proc/vendor_sched/sched_qos/adpf_set chmod 0220 /proc/vendor_sched/sched_qos/adpf_clear @@ -161,6 +163,8 @@ on init chmod 0220 /proc/vendor_sched/sched_qos/prefer_high_cap_clear chmod 0220 /proc/vendor_sched/sched_qos/prefer_idle_set chmod 0220 /proc/vendor_sched/sched_qos/prefer_idle_clear + chmod 0220 /proc/vendor_sched/sched_qos/rampup_multiplier_set + chmod 0220 /proc/vendor_sched/sched_qos/rampup_multiplier_clear # Enable sched_qos for some groups write /proc/vendor_sched/groups/ta/qos_adpf_enable 1 @@ -170,6 +174,7 @@ on init write /proc/vendor_sched/groups/ta/qos_prefer_fit_enable 1 write /proc/vendor_sched/groups/ta/qos_prefer_high_cap_enable 1 write /proc/vendor_sched/groups/ta/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/ta/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/fg/qos_adpf_enable 1 write /proc/vendor_sched/groups/fg/qos_auto_uclamp_max_enable 1 write /proc/vendor_sched/groups/fg/qos_boost_prio_enable 1 @@ -177,6 +182,7 @@ on init write /proc/vendor_sched/groups/fg/qos_prefer_fit_enable 1 write /proc/vendor_sched/groups/fg/qos_prefer_high_cap_enable 1 write /proc/vendor_sched/groups/fg/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/fg/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/fg_wi/qos_adpf_enable 1 write /proc/vendor_sched/groups/fg_wi/qos_auto_uclamp_max_enable 1 write /proc/vendor_sched/groups/fg_wi/qos_boost_prio_enable 1 @@ -184,18 +190,23 @@ on init write /proc/vendor_sched/groups/fg_wi/qos_prefer_fit_enable 1 write /proc/vendor_sched/groups/fg_wi/qos_prefer_high_cap_enable 1 write /proc/vendor_sched/groups/fg_wi/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/fg_wi/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/cam/qos_adpf_enable 1 write /proc/vendor_sched/groups/cam/qos_auto_uclamp_max_enable 1 write /proc/vendor_sched/groups/cam/qos_prefer_fit_enable 1 write /proc/vendor_sched/groups/cam/qos_prefer_high_cap_enable 1 write /proc/vendor_sched/groups/cam/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/cam/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/cam_power/qos_adpf_enable 1 write /proc/vendor_sched/groups/cam_power/qos_auto_uclamp_max_enable 1 write /proc/vendor_sched/groups/cam_power/qos_prefer_fit_enable 1 write /proc/vendor_sched/groups/cam_power/qos_prefer_high_cap_enable 1 write /proc/vendor_sched/groups/cam_power/qos_prefer_idle_enable 1 + write /proc/vendor_sched/groups/cam_power/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/rt/qos_adpf_enable 1 + write /proc/vendor_sched/groups/rt/qos_rampup_multiplier_enable 1 write /proc/vendor_sched/groups/sf/qos_adpf_enable 1 + write /proc/vendor_sched/groups/sf/qos_rampup_multiplier_enable 1 on zygote-start # For PixelLogger configuration file.