]> git.baikalelectronics.ru Git - kernel.git/commit
clk: Add clk_hw OF clk providers
authorStephen Boyd <sboyd@codeaurora.org>
Sat, 6 Feb 2016 01:38:26 +0000 (17:38 -0800)
committerStephen Boyd <sboyd@codeaurora.org>
Tue, 19 Apr 2016 23:52:22 +0000 (16:52 -0700)
commita97ff55d24aafcf05b9f54157665194c48f462e1
tree1000b3fc6f68948275a1a6f5117a884aa49a1c16
parent3d3c8ecd0b10b16f0f4eb030f8243b4fd7b10e8b
clk: Add clk_hw OF clk providers

Now that we have a clk registration API that doesn't return
struct clks, we need to have some way to hand out struct clks via
the clk_get() APIs that doesn't involve associating struct clk
pointers with an OF node. Currently we ask the OF provider to
give us a struct clk pointer for some clkspec, turn that struct
clk into a struct clk_hw and then allocate a new struct clk to
return to the caller.

Let's add a clk_hw based OF provider hook that returns a struct
clk_hw directly, so that we skip the intermediate step of
converting from struct clk to struct clk_hw. Eventually when
we've converted all OF clk providers to struct clk_hw based APIs
we can remove the struct clk based ones.

It should also be noted that we change the onecell provider to
have a flex array instead of a pointer for the array of clk_hw
pointers. This allows providers to allocate one structure of the
correct length in one step instead of two.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/clk.c
include/linux/clk-provider.h