[PATCH v2 7/9] drm/stm/lvds: convert from round_rate() to determine_rate()
Yannick FERTRE
yannick.fertre at foss.st.com
Thu Aug 21 09:36:13 UTC 2025
Hi Brian,
thanks for the patch.
Acked-by: Yannick Fertre <yannick.fertre at foss.st.com>
Le 11/08/2025 à 12:56, Brian Masney a écrit :
> 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.
>
> Acked-by: Raphael Gallais-Pou <raphael.gallais-pou at foss.st.com>
> Signed-off-by: Brian Masney <bmasney at redhat.com>
> ---
> drivers/gpu/drm/stm/lvds.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/stm/lvds.c b/drivers/gpu/drm/stm/lvds.c
> index 07788e8d3d8302a3951e97d64736b721033998d3..fe38c0984b2b552e1ccaef4d1e589b9d86a40ee3 100644
> --- a/drivers/gpu/drm/stm/lvds.c
> +++ b/drivers/gpu/drm/stm/lvds.c
> @@ -682,8 +682,8 @@ static unsigned long lvds_pixel_clk_recalc_rate(struct clk_hw *hw,
> return (unsigned long)lvds->pixel_clock_rate;
> }
>
> -static long lvds_pixel_clk_round_rate(struct clk_hw *hw, unsigned long rate,
> - unsigned long *parent_rate)
> +static int lvds_pixel_clk_determine_rate(struct clk_hw *hw,
> + struct clk_rate_request *req)
> {
> struct stm_lvds *lvds = container_of(hw, struct stm_lvds, lvds_ck_px);
> unsigned int pll_in_khz, bdiv = 0, mdiv = 0, ndiv = 0;
> @@ -703,7 +703,7 @@ static long lvds_pixel_clk_round_rate(struct clk_hw *hw, unsigned long rate,
> mode = list_first_entry(&connector->modes,
> struct drm_display_mode, head);
>
> - pll_in_khz = (unsigned int)(*parent_rate / 1000);
> + pll_in_khz = (unsigned int)(req->best_parent_rate / 1000);
>
> if (lvds_is_dual_link(lvds->link_type))
> multiplier = 2;
> @@ -719,14 +719,16 @@ static long lvds_pixel_clk_round_rate(struct clk_hw *hw, unsigned long rate,
> lvds->pixel_clock_rate = (unsigned long)pll_get_clkout_khz(pll_in_khz, bdiv, mdiv, ndiv)
> * 1000 * multiplier / 7;
>
> - return lvds->pixel_clock_rate;
> + req->rate = lvds->pixel_clock_rate;
> +
> + return 0;
> }
>
> static const struct clk_ops lvds_pixel_clk_ops = {
> .enable = lvds_pixel_clk_enable,
> .disable = lvds_pixel_clk_disable,
> .recalc_rate = lvds_pixel_clk_recalc_rate,
> - .round_rate = lvds_pixel_clk_round_rate,
> + .determine_rate = lvds_pixel_clk_determine_rate,
> };
>
> static const struct clk_init_data clk_data = {
>
More information about the Freedreno
mailing list