msm: cvp: Fix dynamic clock voting
Prevent dcvs voting below the current aggregated clock. Change-Id: Ie3ea259521a7b241cdef40a049563f054b089687 Signed-off-by: Ronald Karyodisa <ronaldk@codeaurora.org>
This commit is contained in:
@@ -333,6 +333,14 @@ static int cvp_readjust_clock(struct msm_cvp_core *core,
|
||||
lo_freq = tbl[j-1].clock_rate;
|
||||
}
|
||||
|
||||
if (core->orig_core_sum > core->curr_freq) {
|
||||
dprintk(CVP_PWR,
|
||||
"%s - %d - Cancel readjust, core %u, freq %u\n",
|
||||
__func__, i, core->orig_core_sum, core->curr_freq);
|
||||
core->curr_freq = tmp;
|
||||
return rc;
|
||||
}
|
||||
|
||||
dprintk(CVP_PWR,
|
||||
"%s:%d - %d - Readjust to %u\n",
|
||||
__func__, __LINE__, i, core->curr_freq);
|
||||
@@ -957,6 +965,7 @@ static int adjust_bw_freqs(void)
|
||||
|
||||
tmp = core->curr_freq;
|
||||
core->curr_freq = core_sum;
|
||||
core->orig_core_sum = core_sum;
|
||||
rc = msm_cvp_set_clocks(core);
|
||||
if (rc) {
|
||||
dprintk(CVP_ERR,
|
||||
|
Reference in New Issue
Block a user