clk: Mention that .recalc_rate can return 0 on error
authorMaxime Ripard <maxime@cerno.tech>
Tue, 16 Aug 2022 11:25:09 +0000 (13:25 +0200)
committerStephen Boyd <sboyd@kernel.org>
Thu, 15 Sep 2022 16:30:28 +0000 (09:30 -0700)
Multiple platforms (amlogic, imx8) return 0 when the clock rate cannot
be determined properly by the recalc_rate hook. Mention in the
documentation that the framework is ok with that.

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20220816112530.1837489-5-maxime@cerno.tech
Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
Tested-by: Naresh Kamboju <naresh.kamboju@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
include/linux/clk-provider.h

index 1615010..9a14cfa 100644 (file)
@@ -118,8 +118,9 @@ struct clk_duty {
  *
  * @recalc_rate        Recalculate the rate of this clock, by querying hardware. The
  *             parent rate is an input parameter.  It is up to the caller to
- *             ensure that the prepare_mutex is held across this call.
- *             Returns the calculated rate.  Optional, but recommended - if
+ *             ensure that the prepare_mutex is held across this call. If the
+ *             driver cannot figure out a rate for this clock, it must return
+ *             0. Returns the calculated rate. Optional, but recommended - if
  *             this op is not set then clock rate will be initialized to 0.
  *
  * @round_rate:        Given a target rate as input, returns the closest rate actually