Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pmdomain: mediatek: convert from clk round_rate() to determine_rate()

The round_rate() clk ops is deprecated in the clk framework in favor
of the determine_rate() clk ops, so let's convert this driver so that
round_rate() can be removed from the clk core.

Signed-off-by: Brian Masney <bmasney@redhat.com>
Reviewed-by: Nicolas Frattaroli <nicolas.frattaroli@collabora.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>

authored by

Brian Masney and committed by
Ulf Hansson
80ed617a 3ee40825

+6 -6
+6 -6
drivers/pmdomain/mediatek/mtk-mfg-pmdomain.c
··· 309 309 return readl(mfg->shared_mem + GF_REG_FREQ_OUT_GPU) * HZ_PER_KHZ; 310 310 } 311 311 312 - static long mtk_mfg_round_rate(struct clk_hw *hw, unsigned long rate, 313 - unsigned long *parent_rate) 312 + static int mtk_mfg_determine_rate(struct clk_hw *hw, 313 + struct clk_rate_request *req) 314 314 { 315 315 /* 316 - * The round_rate callback needs to be implemented to avoid returning 316 + * The determine_rate callback needs to be implemented to avoid returning 317 317 * the current clock frequency, rather than something even remotely 318 318 * close to the frequency that was asked for. 319 319 * ··· 325 325 * high current frequency, breaking the powersave governor in the process. 326 326 */ 327 327 328 - return rate; 328 + return 0; 329 329 } 330 330 331 331 static unsigned long mtk_mfg_recalc_rate_stack(struct clk_hw *hw, ··· 338 338 339 339 static const struct clk_ops mtk_mfg_clk_gpu_ops = { 340 340 .recalc_rate = mtk_mfg_recalc_rate_gpu, 341 - .round_rate = mtk_mfg_round_rate, 341 + .determine_rate = mtk_mfg_determine_rate, 342 342 }; 343 343 344 344 static const struct clk_ops mtk_mfg_clk_stack_ops = { 345 345 .recalc_rate = mtk_mfg_recalc_rate_stack, 346 - .round_rate = mtk_mfg_round_rate, 346 + .determine_rate = mtk_mfg_determine_rate, 347 347 }; 348 348 349 349 static const struct clk_init_data mtk_mfg_clk_gpu_init = {