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

clk: divider: remove round_rate() in favor of determine_rate()

This driver implements both the determine_rate() and round_rate() clk
ops, and the round_rate() clk ops is deprecated. When both are defined,
clk_core_determine_round_nolock() from the clk core will only use the
determine_rate() clk ops. Also all clk drivers that directly calls
divider's round_rate() have been migrated over to determine_rate(). So
let's remove the round_rate() clk ops.

Reviewed-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Brian Masney <bmasney@redhat.com>

-23
-23
drivers/clk/clk-divider.c
··· 431 431 } 432 432 EXPORT_SYMBOL_GPL(divider_ro_round_rate_parent); 433 433 434 - static long clk_divider_round_rate(struct clk_hw *hw, unsigned long rate, 435 - unsigned long *prate) 436 - { 437 - struct clk_divider *divider = to_clk_divider(hw); 438 - 439 - /* if read only, just return current value */ 440 - if (divider->flags & CLK_DIVIDER_READ_ONLY) { 441 - u32 val; 442 - 443 - val = clk_div_readl(divider) >> divider->shift; 444 - val &= clk_div_mask(divider->width); 445 - 446 - return divider_ro_round_rate(hw, rate, prate, divider->table, 447 - divider->width, divider->flags, 448 - val); 449 - } 450 - 451 - return divider_round_rate(hw, rate, prate, divider->table, 452 - divider->width, divider->flags); 453 - } 454 - 455 434 static int clk_divider_determine_rate(struct clk_hw *hw, 456 435 struct clk_rate_request *req) 457 436 { ··· 506 527 507 528 const struct clk_ops clk_divider_ops = { 508 529 .recalc_rate = clk_divider_recalc_rate, 509 - .round_rate = clk_divider_round_rate, 510 530 .determine_rate = clk_divider_determine_rate, 511 531 .set_rate = clk_divider_set_rate, 512 532 }; ··· 513 535 514 536 const struct clk_ops clk_divider_ro_ops = { 515 537 .recalc_rate = clk_divider_recalc_rate, 516 - .round_rate = clk_divider_round_rate, 517 538 .determine_rate = clk_divider_determine_rate, 518 539 }; 519 540 EXPORT_SYMBOL_GPL(clk_divider_ro_ops);