ASoC: codecs: da7219: 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://patch.msgid.link/20250710-sound-clk-round-rate-v1-1-4a9c3bb6ff3a@redhat.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Brian Masney 2025-07-10 11:51:07 -04:00 committed by Mark Brown
parent 347e9f5043
commit 8a4d73121d
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -1982,8 +1982,8 @@ static unsigned long da7219_wclk_recalc_rate(struct clk_hw *hw,
}
}
static long da7219_wclk_round_rate(struct clk_hw *hw, unsigned long rate,
unsigned long *parent_rate)
static int da7219_wclk_determine_rate(struct clk_hw *hw,
struct clk_rate_request *req)
{
struct da7219_priv *da7219 =
container_of(hw, struct da7219_priv,
@ -1992,28 +1992,30 @@ static long da7219_wclk_round_rate(struct clk_hw *hw, unsigned long rate,
if (!da7219->master)
return -EINVAL;
if (rate < 11025)
return 8000;
else if (rate < 12000)
return 11025;
else if (rate < 16000)
return 12000;
else if (rate < 22050)
return 16000;
else if (rate < 24000)
return 22050;
else if (rate < 32000)
return 24000;
else if (rate < 44100)
return 32000;
else if (rate < 48000)
return 44100;
else if (rate < 88200)
return 48000;
else if (rate < 96000)
return 88200;
if (req->rate < 11025)
req->rate = 8000;
else if (req->rate < 12000)
req->rate = 11025;
else if (req->rate < 16000)
req->rate = 12000;
else if (req->rate < 22050)
req->rate = 16000;
else if (req->rate < 24000)
req->rate = 22050;
else if (req->rate < 32000)
req->rate = 24000;
else if (req->rate < 44100)
req->rate = 32000;
else if (req->rate < 48000)
req->rate = 44100;
else if (req->rate < 88200)
req->rate = 48000;
else if (req->rate < 96000)
req->rate = 88200;
else
return 96000;
req->rate = 96000;
return 0;
}
static int da7219_wclk_set_rate(struct clk_hw *hw, unsigned long rate,
@ -2070,15 +2072,15 @@ static unsigned long da7219_bclk_get_factor(unsigned long rate,
return 256;
}
static long da7219_bclk_round_rate(struct clk_hw *hw, unsigned long rate,
unsigned long *parent_rate)
static int da7219_bclk_determine_rate(struct clk_hw *hw,
struct clk_rate_request *req)
{
struct da7219_priv *da7219 =
container_of(hw, struct da7219_priv,
dai_clks_hw[DA7219_DAI_BCLK_IDX]);
unsigned long factor;
if (!*parent_rate || !da7219->master)
if (!req->best_parent_rate || !da7219->master)
return -EINVAL;
/*
@ -2088,9 +2090,11 @@ static long da7219_bclk_round_rate(struct clk_hw *hw, unsigned long rate,
* parent WCLK rate set and find the appropriate multiplier of BCLK to
* get the rounded down BCLK value.
*/
factor = da7219_bclk_get_factor(rate, *parent_rate);
factor = da7219_bclk_get_factor(req->rate, req->best_parent_rate);
return *parent_rate * factor;
req->rate = req->best_parent_rate * factor;
return 0;
}
static int da7219_bclk_set_rate(struct clk_hw *hw, unsigned long rate,
@ -2116,12 +2120,12 @@ static const struct clk_ops da7219_dai_clk_ops[DA7219_DAI_NUM_CLKS] = {
.unprepare = da7219_wclk_unprepare,
.is_prepared = da7219_wclk_is_prepared,
.recalc_rate = da7219_wclk_recalc_rate,
.round_rate = da7219_wclk_round_rate,
.determine_rate = da7219_wclk_determine_rate,
.set_rate = da7219_wclk_set_rate,
},
[DA7219_DAI_BCLK_IDX] = {
.recalc_rate = da7219_bclk_recalc_rate,
.round_rate = da7219_bclk_round_rate,
.determine_rate = da7219_bclk_determine_rate,
.set_rate = da7219_bclk_set_rate,
},
};