Subject: [PATCH 5/7] clk: vt8500: Use common of_clk_init() function

From: [email-masked] (Mike Turquette)
Date: Thu, 24 Jan 2013 11:15:34 -0800

Quoting Tony Prisk (2013-01-18 13:08:00)
> On Fri, 2013-01-18 at 09:56 -0800, Mike Turquette wrote:
> > Quoting Prashant Gaikwad (2013-01-03 23:00:56)
> > > Use common of_clk_init() function for clock initialization.
> > > 
> > > Signed-off-by: Prashant Gaikwad <[email-masked]>
> > 
> > Tony,
> > 
> > Can I get a Tested-by from you before I take this in?
> > 
> Tested-by: Tony Prisk <[email-masked]>
> 
> FYI: This will need another patch to complete as we added another set of
> clocks to this clk-vt8500.c for 3.9.
> 

Tony, is the following patch correct?

>>From 5b6e0adb69674c684c33503f50010644b049029c Mon Sep 17 00:00:00 2001
From: Prashant Gaikwad <[email-masked]>
Date: Fri, 4 Jan 2013 12:30:56 +0530
Subject: [PATCH] clk: vt8500: Use common of_clk_init() function

Use common of_clk_init() function for clock initialization.

Signed-off-by: Prashant Gaikwad <[email-masked]>
Tested-by: Tony Prisk <[email-masked]>
Signed-off-by: Mike Turquette <[email-masked]>
[mturquette at linaro.org: added entry for wm8750-pll-clock]

Signed-off-by: Mike Turquette <[email-masked]>
---
 drivers/clk/clk-vt8500.c |   17 +++++------------
 1 file changed, 5 insertions(+), 12 deletions(-)

diff --git a/drivers/clk/clk-vt8500.c b/drivers/clk/clk-vt8500.c
index 2515d4f..b5538bb 100644
--- a/drivers/clk/clk-vt8500.c
+++ b/drivers/clk/clk-vt8500.c
@@ -291,7 +291,7 @@ static __init void vtwm_device_clk_init(struct device_node *node)
 	rc = of_clk_add_provider(node, of_clk_src_simple_get, clk);
 	clk_register_clkdev(clk, clk_name, NULL);
 }
-
+CLK_OF_DECLARE(vt8500_device, "via,vt8500-device-clock", vtwm_device_clk_init);
 
 /* PLL clock related functions */
 
@@ -612,26 +612,19 @@ static void __init vt8500_pll_init(struct device_node *node)
 {
 	vtwm_pll_clk_init(node, PLL_TYPE_VT8500);
 }
+CLK_OF_DECLARE(vt8500_pll, "via,vt8500-pll-clock", vt8500_pll_init);
 
 static void __init wm8650_pll_init(struct device_node *node)
 {
 	vtwm_pll_clk_init(node, PLL_TYPE_WM8650);
 }
+CLK_OF_DECLARE(wm8650_pll, "wm,wm8650-pll-clock", wm8650_pll_init);
 
 static void __init wm8750_pll_init(struct device_node *node)
 {
 	vtwm_pll_clk_init(node, PLL_TYPE_WM8750);
 }
-
-static const __initconst struct of_device_id clk_match[] = {
-	{ .compatible = "fixed-clock", .data = of_fixed_clk_setup, },
-	{ .compatible = "via,vt8500-pll-clock", .data = vt8500_pll_init, },
-	{ .compatible = "wm,wm8650-pll-clock", .data = wm8650_pll_init, },
-	{ .compatible = "wm,wm8750-pll-clock", .data = wm8750_pll_init, },
-	{ .compatible = "via,vt8500-device-clock",
-					.data = vtwm_device_clk_init, },
-	{ /* sentinel */ }
-};
+CLK_OF_DECLARE(wm8750_pll, "wm,wm8750-pll-clock", wm8750_pll_init);
 
 void __init vtwm_clk_init(void __iomem *base)
 {
@@ -640,5 +633,5 @@ void __init vtwm_clk_init(void __iomem *base)
 
 	pmc_base = base;
 
-	of_clk_init(clk_match);
+	of_clk_init(NULL);
 }
-- 
1.7.10.4