Browse Source

ARM: OMAP2: clock: use DT clock boot if available

Otherwise legacy boot clock data is used. This patch also includes the
clock data files to the base dtsi files.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Tero Kristo 11 years ago
parent
commit
69a1e7a1fe
3 changed files with 19 additions and 2 deletions
  1. 3 0
      arch/arm/boot/dts/omap2420.dtsi
  2. 3 0
      arch/arm/boot/dts/omap2430.dtsi
  3. 13 2
      arch/arm/mach-omap2/io.c

+ 3 - 0
arch/arm/boot/dts/omap2420.dtsi

@@ -182,3 +182,6 @@
 &i2c2 {
 	compatible = "ti,omap2420-i2c";
 };
+
+/include/ "omap24xx-clocks.dtsi"
+/include/ "omap2420-clocks.dtsi"

+ 3 - 0
arch/arm/boot/dts/omap2430.dtsi

@@ -288,3 +288,6 @@
 &i2c2 {
 	compatible = "ti,omap2430-i2c";
 };
+
+/include/ "omap24xx-clocks.dtsi"
+/include/ "omap2430-clocks.dtsi"

+ 13 - 2
arch/arm/mach-omap2/io.c

@@ -53,6 +53,7 @@
 #include "prm2xxx.h"
 #include "prm3xxx.h"
 #include "prm44xx.h"
+#include "opp2xxx.h"
 
 /*
  * omap_clk_soc_init: points to a function that does the SoC-specific
@@ -410,7 +411,12 @@ void __init omap2420_init_early(void)
 	omap242x_clockdomains_init();
 	omap2420_hwmod_init();
 	omap_hwmod_init_postsetup();
-	omap_clk_soc_init = omap2420_clk_init;
+	if (of_have_populated_dt()) {
+		omap_clk_soc_init = omap2420_dt_clk_init;
+		rate_table = omap2420_rate_table;
+	} else {
+		omap_clk_soc_init = omap2420_clk_init;
+	}
 }
 
 void __init omap2420_init_late(void)
@@ -439,7 +445,12 @@ void __init omap2430_init_early(void)
 	omap243x_clockdomains_init();
 	omap2430_hwmod_init();
 	omap_hwmod_init_postsetup();
-	omap_clk_soc_init = omap2430_clk_init;
+	if (of_have_populated_dt()) {
+		omap_clk_soc_init = omap2430_dt_clk_init;
+		rate_table = omap2430_rate_table;
+	} else {
+		omap_clk_soc_init = omap2430_clk_init;
+	}
 }
 
 void __init omap2430_init_late(void)