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:
Taniya Das 2017-03-01 23:28:24 +05:30
parent eee829e625
commit 9e172a39e1

View file

@ -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
* switched.
*/
rate = clk_get_rate(hw->clk);
rate = rcg->current_freq;
f = qcom_find_freq(rcg->freq_tbl, rate);
if (!f)
return -EINVAL;
@ -627,6 +627,9 @@ static int __clk_rcg2_set_rate(struct clk_hw *hw, unsigned long rate)
rcg->new_index, false);
}
/* Update current frequency with the frequency requested. */
rcg->current_freq = rate;
return ret;
}