mirror of https://github.com/thesofproject/sof.git
clock: only update clock frequency if actually changing it
No need to set clock frequency if the new one is equal to the current one. Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
This commit is contained in:
parent
cada215ee5
commit
3db820d9d4
|
@ -62,13 +62,15 @@ void clock_set_freq(int clock, uint32_t hz)
|
||||||
idx = clock_get_nearest_freq_idx(clk_info->freqs, clk_info->freqs_num,
|
idx = clock_get_nearest_freq_idx(clk_info->freqs, clk_info->freqs_num,
|
||||||
hz);
|
hz);
|
||||||
|
|
||||||
tr_info(&clock_tr, "clock %d set freq %dHz freq_idx %d",
|
if (clk_info->current_freq_idx != idx &&
|
||||||
clock, hz, idx);
|
(!clk_info->set_freq ||
|
||||||
|
clk_info->set_freq(clock, idx) == 0)) {
|
||||||
|
tr_info(&clock_tr, "clock %d set freq %dHz freq_idx %d old %d",
|
||||||
|
clock, hz, idx, clk_info->current_freq_idx);
|
||||||
|
|
||||||
if (!clk_info->set_freq ||
|
|
||||||
clk_info->set_freq(clock, idx) == 0)
|
|
||||||
/* update clock frequency */
|
/* update clock frequency */
|
||||||
clk_info->current_freq_idx = idx;
|
clk_info->current_freq_idx = idx;
|
||||||
|
}
|
||||||
|
|
||||||
clock_unlock(key);
|
clock_unlock(key);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue