Commit 6a197747 authored by Brian Masney's avatar Brian Masney Committed by Raphael Gallais-Pou
Browse files

drm/imx/ipuv3/imx-tve: 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: default avatarBrian Masney <bmasney@redhat.com>
Reviewed-by: default avatarPeng Fan <peng.fan@nxp.com>
Link: https://lore.kernel.org/r/20250811-drm-clk-round-rate-v2-1-4a91ccf239cf@redhat.com


Signed-off-by: default avatarRaphael Gallais-Pou <raphael.gallais-pou@foss.st.com>
parent e5e0350d
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -368,17 +368,20 @@ static unsigned long clk_tve_di_recalc_rate(struct clk_hw *hw,
	return 0;
}

static long clk_tve_di_round_rate(struct clk_hw *hw, unsigned long rate,
				  unsigned long *prate)
static int clk_tve_di_determine_rate(struct clk_hw *hw,
				     struct clk_rate_request *req)
{
	unsigned long div;

	div = *prate / rate;
	div = req->best_parent_rate / req->rate;
	if (div >= 4)
		return *prate / 4;
		req->rate = req->best_parent_rate / 4;
	else if (div >= 2)
		return *prate / 2;
	return *prate;
		req->rate = req->best_parent_rate / 2;
	else
		req->rate = req->best_parent_rate;

	return 0;
}

static int clk_tve_di_set_rate(struct clk_hw *hw, unsigned long rate,
@@ -409,7 +412,7 @@ static int clk_tve_di_set_rate(struct clk_hw *hw, unsigned long rate,
}

static const struct clk_ops clk_tve_di_ops = {
	.round_rate = clk_tve_di_round_rate,
	.determine_rate = clk_tve_di_determine_rate,
	.set_rate = clk_tve_di_set_rate,
	.recalc_rate = clk_tve_di_recalc_rate,
};