Message ID | 20200205232802.29184-5-sboyd@kernel.org (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
Series | clk_phase error caching problems | expand |
Quoting Stephen Boyd (2020-02-05 15:28:02) > Bail out of clk registration if we fail to get the phase for a clk that > has a clk_ops::get_phase() callback. Print a warning too so that driver > authors can easily figure out that some clk is unable to read back phase > information at boot. > > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Heiko Stuebner <heiko@sntech.de> > Suggested-by: Jerome Brunet <jbrunet@baylibre.com> > Signed-off-by: Stephen Boyd <sboyd@kernel.org> > --- Applied to clk-next
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 87532e2d124a..e9e83f7ae9e0 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -3457,7 +3457,12 @@ static int __clk_core_init(struct clk_core *core) * Since a phase is by definition relative to its parent, just * query the current clock phase, or just assume it's in phase. */ - clk_core_get_phase(core); + ret = clk_core_get_phase(core); + if (ret < 0) { + pr_warn("%s: Failed to get phase for clk '%s'\n", __func__, + core->name); + goto out; + } /* * Set clk's duty cycle.
Bail out of clk registration if we fail to get the phase for a clk that has a clk_ops::get_phase() callback. Print a warning too so that driver authors can easily figure out that some clk is unable to read back phase information at boot. Cc: Douglas Anderson <dianders@chromium.org> Cc: Heiko Stuebner <heiko@sntech.de> Suggested-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Stephen Boyd <sboyd@kernel.org> --- drivers/clk/clk.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)