• Maxime Ripard's avatar
    clk: versatile: sp810: Add a determine_rate hook · d5a5a6e4
    Maxime Ripard authored
    
    
    The Versatile sp810 "timerclken" clock implements a mux with a
    set_parent hook, but doesn't provide a determine_rate implementation.
    
    This is a bit odd, since set_parent() is there to, as its name implies,
    change the parent of a clock. However, the most likely candidates to
    trigger that parent change are either the assigned-clock-parents device
    tree property or a call to clk_set_rate(), with determine_rate()
    figuring out which parent is the best suited for a given rate.
    
    This mismatch is probably due to the fact that the driver introduction
    predates the determine_rate introduction, and it was never revised since
    then.
    
    The default, implicit, behaviour that has been in use so far has thus
    been to simply keep using the current parent in all cases. This is also
    the behaviour of the new clk_hw_determine_rate_no_reparent() helper, so
    we can simply use it to make our expectation explicit.
    
    Cc: Linus Walleij <linus.walleij@linaro.org>
    Cc: Pawel Moll <pawel.moll@arm.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
    Link: https://lore.kernel.org/r/20221018-clk-range-checks-fixes-v4-39-971d5077e7d2@cerno.tech
    
    Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Acked-by: default avatarPawel Moll <pawel.moll@arm.com>
    Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
    d5a5a6e4
clk-sp810.c 3.44 KB