Disable PMU at the start of camera launch

A recent change (ag/20028064) has caused regression in GCA launch
time due to activation of PMU at the camera launch time, and capping the
CPU frequency. This CL prevents PMU activation for as long as we are in
powerhints or power-boosts related to camera launch (LAUNCH, CAMERA_LAUNCH,
CAMERA_LAUNCH_EXTENDED).

Bug: 248718485
Test: Perfetto trace
Change-Id: I6d88e4ccaf6790578223202ee69c105360cfc559
This commit is contained in:
Ali K. Zadeh 2022-09-28 17:24:53 +00:00
parent 56b9136fdc
commit 810337a8f7
4 changed files with 140 additions and 48 deletions

View file

@ -653,6 +653,17 @@
"Duration": 5000, "Duration": 5000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "LAUNCH",
"Type": "DoHint",
"Value": "LAUNCH_PMU"
},
{
"PowerHint": "LAUNCH_PMU",
"Node": "PMU_POLL",
"Duration": 3000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH", "PowerHint": "CAMERA_LAUNCH",
"Node": "MemFreq", "Node": "MemFreq",
@ -713,6 +724,12 @@
"Duration": 1000, "Duration": 1000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "PMU_POLL",
"Duration": 1000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH_EXTENDED", "PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -737,6 +754,12 @@
"Duration": 2000, "Duration": 2000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "PMU_POLL",
"Duration": 2000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -1097,12 +1120,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1145,6 +1162,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "EM_Profile", "Node": "EM_Profile",
@ -1211,12 +1234,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1259,6 +1276,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "EM_Profile", "Node": "EM_Profile",

View file

@ -695,6 +695,17 @@
"Duration": 5000, "Duration": 5000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "LAUNCH",
"Type": "DoHint",
"Value": "LAUNCH_PMU"
},
{
"PowerHint": "LAUNCH_PMU",
"Node": "PMU_POLL",
"Duration": 3000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH", "PowerHint": "CAMERA_LAUNCH",
"Node": "MemFreq", "Node": "MemFreq",
@ -755,6 +766,12 @@
"Duration": 1000, "Duration": 1000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "PMU_POLL",
"Duration": 1000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH_EXTENDED", "PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -779,6 +796,12 @@
"Duration": 2000, "Duration": 2000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "PMU_POLL",
"Duration": 2000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -1139,12 +1162,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1187,6 +1204,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "EM_Profile", "Node": "EM_Profile",
@ -1253,12 +1276,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1301,6 +1318,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "EM_Profile", "Node": "EM_Profile",

View file

@ -642,6 +642,17 @@
"Duration": 5000, "Duration": 5000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "LAUNCH",
"Type": "DoHint",
"Value": "LAUNCH_PMU"
},
{
"PowerHint": "LAUNCH_PMU",
"Node": "PMU_POLL",
"Duration": 3000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH", "PowerHint": "CAMERA_LAUNCH",
"Node": "MemFreq", "Node": "MemFreq",
@ -702,6 +713,12 @@
"Duration": 1000, "Duration": 1000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "PMU_POLL",
"Duration": 1000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH_EXTENDED", "PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -726,6 +743,12 @@
"Duration": 2000, "Duration": 2000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "PMU_POLL",
"Duration": 2000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -984,12 +1007,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1032,6 +1049,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "EM_Profile", "Node": "EM_Profile",
@ -1098,12 +1121,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1146,6 +1163,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "EM_Profile", "Node": "EM_Profile",

View file

@ -664,6 +664,17 @@
"Duration": 5000, "Duration": 5000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "LAUNCH",
"Type": "DoHint",
"Value": "LAUNCH_PMU"
},
{
"PowerHint": "LAUNCH_PMU",
"Node": "PMU_POLL",
"Duration": 3000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH", "PowerHint": "CAMERA_LAUNCH",
"Node": "MemFreq", "Node": "MemFreq",
@ -724,6 +735,12 @@
"Duration": 1000, "Duration": 1000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH",
"Node": "PMU_POLL",
"Duration": 1000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_LAUNCH_EXTENDED", "PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -748,6 +765,12 @@
"Duration": 2000, "Duration": 2000,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_LAUNCH_EXTENDED",
"Node": "PMU_POLL",
"Duration": 2000,
"Value": "0"
},
{ {
"PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE",
"Node": "CPUBigClusterMaxFreq", "Node": "CPUBigClusterMaxFreq",
@ -1006,12 +1029,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1054,6 +1071,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_HIGH", "PowerHint": "CAMERA_STREAMING_HIGH",
"Node": "EM_Profile", "Node": "EM_Profile",
@ -1120,12 +1143,6 @@
"Duration": 0, "Duration": 0,
"Value": "0" "Value": "0"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_LIT_LCPI_THRESHOLD", "Node": "PMU_LIT_LCPI_THRESHOLD",
@ -1168,6 +1185,12 @@
"Duration": 0, "Duration": 0,
"Value": "50" "Value": "50"
}, },
{
"PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "PMU_POLL",
"Duration": 0,
"Value": "1"
},
{ {
"PowerHint": "CAMERA_STREAMING_STANDARD", "PowerHint": "CAMERA_STREAMING_STANDARD",
"Node": "EM_Profile", "Node": "EM_Profile",