summaryrefslogtreecommitdiff
path: root/lib/mpi/mpicoder.c
diff options
context:
space:
mode:
authorRaju P.L.S.S.S.N <rplsssn@codeaurora.org>2016-06-23 19:07:20 +0530
committerMahesh Sivasubramanian <msivasub@codeaurora.org>2016-10-03 10:00:32 -0600
commit7aef3b1f9b17b0e5bd23d37f9f7a0a16b1075e77 (patch)
treef98d5183e3f2ebd7dcd4cd4ea91e620f149889b8 /lib/mpi/mpicoder.c
parent0fb5a62a228abfec36b5d8602ac8ba12ea30a544 (diff)
lpm-levels: Fix low power mode selection
The low power mode selection logic has problems while selecting best mode both in cpu and cluster selection. When latency requirement is not met, the level selection loop breaks without selecting another possible shallow power mode that meets both latency and residency requirements. The residencies are initialized to ~0 (0xFFFFFFFF) when a particular mode is disabled in idle context. This results in wrong selection of shallower mode in suspend context instead of selecting best possible deepest low power mode (assuming the mode is enabled in suspend context but disabled in idle context). This can have impact on power. The change addresses this by selecting a possible shallower power mode that can meet the latency criteria. It also initializes the residencies to 0 when a mode is not allowed in idle context. This results in selection of deepest low power mode in suspend context and saves power. Change-Id: Iae8b6ad74ef0f28d9c542315745577b1a5924664 Signed-off-by: Raju P.L.S.S.S.N <rplsssn@codeaurora.org>
Diffstat (limited to 'lib/mpi/mpicoder.c')
0 files changed, 0 insertions, 0 deletions