mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-21 17:15:24 -04:00
clk: samsung: pll: convert from round_rate() to determine_rate()
The round_rate() clk ops is deprecated, so migrate this driver from round_rate() to determine_rate() using the Coccinelle semantic patch on the cover letter of this series. Signed-off-by: Brian Masney <bmasney@redhat.com> Link: https://lore.kernel.org/r/20250811-clk-for-stephen-round-rate-v1-99-b3bf97b038dc@redhat.com Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
This commit is contained in:
committed by
Krzysztof Kozlowski
parent
05c58c9415
commit
e278e39b01
@@ -49,8 +49,8 @@ static const struct samsung_pll_rate_table *samsung_get_pll_settings(
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static long samsung_pll_round_rate(struct clk_hw *hw,
|
||||
unsigned long drate, unsigned long *prate)
|
||||
static int samsung_pll_determine_rate(struct clk_hw *hw,
|
||||
struct clk_rate_request *req)
|
||||
{
|
||||
struct samsung_clk_pll *pll = to_clk_pll(hw);
|
||||
const struct samsung_pll_rate_table *rate_table = pll->rate_table;
|
||||
@@ -58,12 +58,17 @@ static long samsung_pll_round_rate(struct clk_hw *hw,
|
||||
|
||||
/* Assuming rate_table is in descending order */
|
||||
for (i = 0; i < pll->rate_count; i++) {
|
||||
if (drate >= rate_table[i].rate)
|
||||
return rate_table[i].rate;
|
||||
if (req->rate >= rate_table[i].rate) {
|
||||
req->rate = rate_table[i].rate;
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* return minimum supported value */
|
||||
return rate_table[i - 1].rate;
|
||||
req->rate = rate_table[i - 1].rate;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static bool pll_early_timeout = true;
|
||||
@@ -298,7 +303,7 @@ static int samsung_pll35xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll35xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll35xx_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll35xx_set_rate,
|
||||
.enable = samsung_pll3xxx_enable,
|
||||
.disable = samsung_pll3xxx_disable,
|
||||
@@ -411,7 +416,7 @@ static int samsung_pll36xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
static const struct clk_ops samsung_pll36xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll36xx_recalc_rate,
|
||||
.set_rate = samsung_pll36xx_set_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.enable = samsung_pll3xxx_enable,
|
||||
.disable = samsung_pll3xxx_disable,
|
||||
};
|
||||
@@ -514,7 +519,7 @@ static int samsung_pll0822x_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll0822x_clk_ops = {
|
||||
.recalc_rate = samsung_pll0822x_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll0822x_set_rate,
|
||||
.enable = samsung_pll3xxx_enable,
|
||||
.disable = samsung_pll3xxx_disable,
|
||||
@@ -612,7 +617,7 @@ static int samsung_pll0831x_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
static const struct clk_ops samsung_pll0831x_clk_ops = {
|
||||
.recalc_rate = samsung_pll0831x_recalc_rate,
|
||||
.set_rate = samsung_pll0831x_set_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.enable = samsung_pll3xxx_enable,
|
||||
.disable = samsung_pll3xxx_disable,
|
||||
};
|
||||
@@ -735,7 +740,7 @@ static int samsung_pll45xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll45xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll45xx_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll45xx_set_rate,
|
||||
};
|
||||
|
||||
@@ -880,7 +885,7 @@ static int samsung_pll46xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll46xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll46xx_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll46xx_set_rate,
|
||||
};
|
||||
|
||||
@@ -1093,7 +1098,7 @@ static int samsung_pll2550xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll2550xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll2550xx_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll2550xx_set_rate,
|
||||
};
|
||||
|
||||
@@ -1185,7 +1190,7 @@ static int samsung_pll2650x_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
|
||||
static const struct clk_ops samsung_pll2650x_clk_ops = {
|
||||
.recalc_rate = samsung_pll2650x_recalc_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
.set_rate = samsung_pll2650x_set_rate,
|
||||
};
|
||||
|
||||
@@ -1277,7 +1282,7 @@ static int samsung_pll2650xx_set_rate(struct clk_hw *hw, unsigned long drate,
|
||||
static const struct clk_ops samsung_pll2650xx_clk_ops = {
|
||||
.recalc_rate = samsung_pll2650xx_recalc_rate,
|
||||
.set_rate = samsung_pll2650xx_set_rate,
|
||||
.round_rate = samsung_pll_round_rate,
|
||||
.determine_rate = samsung_pll_determine_rate,
|
||||
};
|
||||
|
||||
static const struct clk_ops samsung_pll2650xx_clk_min_ops = {
|
||||
|
||||
Reference in New Issue
Block a user