]> git.karo-electronics.de Git - karo-tx-linux.git/commit
clk: respect the clock dependencies in of_clk_init
authorGregory CLEMENT <gregory.clement@free-electrons.com>
Mon, 24 Feb 2014 18:10:13 +0000 (19:10 +0100)
committerMike Turquette <mturquette@linaro.org>
Thu, 20 Mar 2014 00:15:29 +0000 (17:15 -0700)
commit1771b10d605d26ccee771a7fb4b08718c124097a
treed809a7fdba093e327160f745b5cd36c0d1664830
parent00fa6e5d138a87f1b1bc8ae634c5f6fe513338c6
clk: respect the clock dependencies in of_clk_init

Until now the clock providers were initialized in the order found in
the device tree. This led to have the dependencies between the clocks
not respected: children clocks could be initialized before their
parent clocks.

Instead of forcing each platform to manage its own initialization order,
this patch adds this work inside the framework itself.

Using the data of the device tree the of_clk_init function now delayed
the initialization of a clock provider if its parent provider was not
ready yet.

The strict dependency check (all parents of a given clk must be
initialized) was added by Boris BREZILLON

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
drivers/clk/clk.c