clk: qcom: Use the saved current frequency for enable_safe_config
A clk_get_rate in the clk_enable path would result in a BUG from sleeping context, as clk_get_rate would hold a mutex when we have already acquired a spinlock in the clk_enable. Change-Id: I7b32292710bbea3565cdc51c79916fddc60f8bba Signed-off-by: Taniya Das <tdas@codeaurora.org>
This commit is contained in:
parent
eee829e625
commit
9e172a39e1
1 changed files with 4 additions and 1 deletions
|
@ -513,7 +513,7 @@ static int clk_rcg2_enable(struct clk_hw *hw)
|
||||||
* is always on while APPS is online. Therefore, the RCG can safely be
|
* is always on while APPS is online. Therefore, the RCG can safely be
|
||||||
* switched.
|
* switched.
|
||||||
*/
|
*/
|
||||||
rate = clk_get_rate(hw->clk);
|
rate = rcg->current_freq;
|
||||||
f = qcom_find_freq(rcg->freq_tbl, rate);
|
f = qcom_find_freq(rcg->freq_tbl, rate);
|
||||||
if (!f)
|
if (!f)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -627,6 +627,9 @@ static int __clk_rcg2_set_rate(struct clk_hw *hw, unsigned long rate)
|
||||||
rcg->new_index, false);
|
rcg->new_index, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Update current frequency with the frequency requested. */
|
||||||
|
rcg->current_freq = rate;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue