aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorStefan Agner <stefan@agner.ch>2014-11-02 15:36:44 -0500
committerShawn Guo <shawn.guo@linaro.org>2014-11-23 02:08:09 -0500
commit3f3ebfb84aad46e3b49a41fe2ed9037835b2860e (patch)
treec05f26f73bbf66a2b9105abcd89269243400290a /arch/arm
parent7e41a98dcc1b220c2c705f839ba76787c08858d3 (diff)
ARM: dts: vf610: assign oscillator to clock module
The clock controller module (CCM) has several clock inputs, which are connected to external crystal oscillators. To reflect this, assign these fixed clocks to the CCM node directly. This especially resolves initialization order dependencies we had with the earlier initialization code: When resolving of the fixed clocks failed in clk-vf610, the code created fixed clocks with a rate of 0. Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/boot/dts/vf610-cosmic.dts14
-rw-r--r--arch/arm/boot/dts/vf610-twr.dts25
-rw-r--r--arch/arm/boot/dts/vf610.dtsi25
3 files changed, 33 insertions, 31 deletions
diff --git a/arch/arm/boot/dts/vf610-cosmic.dts b/arch/arm/boot/dts/vf610-cosmic.dts
index 3fd1b74e1216..b0ce8b8b2e0e 100644
--- a/arch/arm/boot/dts/vf610-cosmic.dts
+++ b/arch/arm/boot/dts/vf610-cosmic.dts
@@ -23,14 +23,16 @@
23 reg = <0x80000000 0x10000000>; 23 reg = <0x80000000 0x10000000>;
24 }; 24 };
25 25
26 clocks { 26 enet_ext: enet_ext {
27 enet_ext { 27 compatible = "fixed-clock";
28 compatible = "fixed-clock"; 28 #clock-cells = <0>;
29 #clock-cells = <0>; 29 clock-frequency = <50000000>;
30 clock-frequency = <50000000>;
31 };
32 }; 30 };
31};
33 32
33&clks {
34 clocks = <&sxosc>, <&fxosc>, <&enet_ext>;
35 clock-names = "sxosc", "fxosc", "enet_ext";
34}; 36};
35 37
36&fec1 { 38&fec1 {
diff --git a/arch/arm/boot/dts/vf610-twr.dts b/arch/arm/boot/dts/vf610-twr.dts
index 189b6975fe7d..7d06d1a367a5 100644
--- a/arch/arm/boot/dts/vf610-twr.dts
+++ b/arch/arm/boot/dts/vf610-twr.dts
@@ -22,18 +22,16 @@
22 reg = <0x80000000 0x8000000>; 22 reg = <0x80000000 0x8000000>;
23 }; 23 };
24 24
25 clocks { 25 audio_ext: mclk_osc {
26 audio_ext { 26 compatible = "fixed-clock";
27 compatible = "fixed-clock"; 27 #clock-cells = <0>;
28 #clock-cells = <0>; 28 clock-frequency = <24576000>;
29 clock-frequency = <24576000>; 29 };
30 };
31 30
32 enet_ext { 31 enet_ext: eth_osc {
33 compatible = "fixed-clock"; 32 compatible = "fixed-clock";
34 #clock-cells = <0>; 33 #clock-cells = <0>;
35 clock-frequency = <50000000>; 34 clock-frequency = <50000000>;
36 };
37 }; 35 };
38 36
39 regulators { 37 regulators {
@@ -95,6 +93,11 @@
95 status = "okay"; 93 status = "okay";
96}; 94};
97 95
96&clks {
97 clocks = <&sxosc>, <&fxosc>, <&enet_ext>, <&audio_ext>;
98 clock-names = "sxosc", "fxosc", "enet_ext", "audio_ext";
99};
100
98&dspi0 { 101&dspi0 {
99 bus-num = <0>; 102 bus-num = <0>;
100 pinctrl-names = "default"; 103 pinctrl-names = "default";
diff --git a/arch/arm/boot/dts/vf610.dtsi b/arch/arm/boot/dts/vf610.dtsi
index 699da487222d..ed12d9a7be3e 100644
--- a/arch/arm/boot/dts/vf610.dtsi
+++ b/arch/arm/boot/dts/vf610.dtsi
@@ -44,21 +44,16 @@
44 }; 44 };
45 }; 45 };
46 46
47 clocks { 47 fxosc: fxosc {
48 #address-cells = <1>; 48 compatible = "fixed-clock";
49 #size-cells = <0>; 49 #clock-cells = <0>;
50 50 clock-frequency = <24000000>;
51 sxosc { 51 };
52 compatible = "fixed-clock";
53 #clock-cells = <0>;
54 clock-frequency = <32768>;
55 };
56 52
57 fxosc { 53 sxosc: sxosc {
58 compatible = "fixed-clock"; 54 compatible = "fixed-clock";
59 #clock-cells = <0>; 55 #clock-cells = <0>;
60 clock-frequency = <24000000>; 56 clock-frequency = <32768>;
61 };
62 }; 57 };
63 58
64 soc { 59 soc {
@@ -358,6 +353,8 @@
358 clks: ccm@4006b000 { 353 clks: ccm@4006b000 {
359 compatible = "fsl,vf610-ccm"; 354 compatible = "fsl,vf610-ccm";
360 reg = <0x4006b000 0x1000>; 355 reg = <0x4006b000 0x1000>;
356 clocks = <&sxosc>, <&fxosc>;
357 clock-names = "sxosc", "fxosc";
361 #clock-cells = <1>; 358 #clock-cells = <1>;
362 }; 359 };
363 360