Commit 2d269992 authored by Stephen Boyd's avatar Stephen Boyd
Browse files

clk: Warn about critical clks that fail to enable



If we don't warn here users of the CLK_IS_CRITICAL flag may not know
that their clk isn't actually enabled because it silently fails to
enable. Let's print a warning in that case so developers find these
problems faster.

Suggested-by: default avatarJerome Brunet <jbrunet@baylibre.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
Link: https://lkml.kernel.org/r/20200102005503.71923-1-sboyd@kernel.org


Reviewed-by: default avatarJerome Brunet <jbrunet@baylibre.com>
Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 12ead774
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -3427,13 +3427,18 @@ static int __clk_core_init(struct clk_core *core)
		unsigned long flags;

		ret = clk_core_prepare(core);
		if (ret)
		if (ret) {
			pr_warn("%s: critical clk '%s' failed to prepare\n",
			       __func__, core->name);
			goto out;
		}

		flags = clk_enable_lock();
		ret = clk_core_enable(core);
		clk_enable_unlock(flags);
		if (ret) {
			pr_warn("%s: critical clk '%s' failed to enable\n",
			       __func__, core->name);
			clk_core_unprepare(core);
			goto out;
		}