summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/clock_common_data.c
diff options
context:
space:
mode:
authorTomeu Vizoso2015-01-23 12:03:30 +0100
committerMichael Turquette2015-02-02 23:22:19 +0100
commit035a61c314eb3dab5bcc5683afaf4d412689858a (patch)
tree3c325fc76191cf1319c4a3399dfdd9f777033d6d /arch/arm/mach-omap2/clock_common_data.c
parentclk: Remove __clk_register (diff)
downloadkernel-qcow2-linux-035a61c314eb3dab5bcc5683afaf4d412689858a.tar.gz
kernel-qcow2-linux-035a61c314eb3dab5bcc5683afaf4d412689858a.tar.xz
kernel-qcow2-linux-035a61c314eb3dab5bcc5683afaf4d412689858a.zip
clk: Make clk API return per-user struct clk instances
Moves clock state to struct clk_core, but takes care to change as little API as possible. struct clk_hw still has a pointer to a struct clk, which is the implementation's per-user clk instance, for backwards compatibility. The struct clk that clk_get_parent() returns isn't owned by the caller, but by the clock implementation, so the former shouldn't call clk_put() on it. Because some boards in mach-omap2 still register clocks statically, their clock registration had to be updated to take into account that the clock information is stored in struct clk_core now. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Stephen Boyd <sboyd@codeaurora.org> Tested-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Michael Turquette <mturquette@linaro.org> [mturquette@linaro.org: adapted clk_has_parent to struct clk_core applied OMAP3+ DPLL fix from Tero & Tony]
Diffstat (limited to 'arch/arm/mach-omap2/clock_common_data.c')
-rw-r--r--arch/arm/mach-omap2/clock_common_data.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/clock_common_data.c b/arch/arm/mach-omap2/clock_common_data.c
index ef4d21bfb964..febd0a279224 100644
--- a/arch/arm/mach-omap2/clock_common_data.c
+++ b/arch/arm/mach-omap2/clock_common_data.c
@@ -119,8 +119,11 @@ const struct clksel_rate div31_1to31_rates[] = {
static struct clk_ops dummy_ck_ops = {};
-struct clk dummy_ck = {
+struct clk_core dummy_ck_core = {
.name = "dummy_clk",
.ops = &dummy_ck_ops,
.flags = CLK_IS_BASIC,
};
+struct clk dummy_ck = {
+ .core = &dummy_ck_core,
+};