linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
@ 2013-09-11  6:57 Yuantian.Tang
  2013-09-12  1:10 ` Scott Wood
  0 siblings, 1 reply; 7+ messages in thread
From: Yuantian.Tang @ 2013-09-11  6:57 UTC (permalink / raw)
  To: galak; +Cc: scottwood, devicetree, linuxppc-dev, Tang Yuantian

From: Tang Yuantian <yuantian.tang@freescale.com>

The following SoCs will be affected: p2041, p3041, p4080,
p5020, p5040, b4420, b4860, t4240

Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
---
v4:
	- add binding document
	- update compatible string
	- update the reg property
v3:
	- fix typo
v2:
	- add t4240, b4420, b4860 support
	- remove pll/4 clock from p2041, p3041 and p5020 board

 .../devicetree/bindings/clock/corenet-clock.txt    |  80 +++++++++++++++
 arch/powerpc/boot/dts/fsl/b4420si-post.dtsi        |  34 ++++++-
 arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi         |   2 +
 arch/powerpc/boot/dts/fsl/b4860si-post.dtsi        |  34 ++++++-
 arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi         |   4 +
 arch/powerpc/boot/dts/fsl/p2041si-post.dtsi        |  59 ++++++++++-
 arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi         |   4 +
 arch/powerpc/boot/dts/fsl/p3041si-post.dtsi        |  59 ++++++++++-
 arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi         |   4 +
 arch/powerpc/boot/dts/fsl/p4080si-post.dtsi        | 111 ++++++++++++++++++++-
 arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi         |   8 ++
 arch/powerpc/boot/dts/fsl/p5020si-post.dtsi        |  41 +++++++-
 arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi         |   2 +
 arch/powerpc/boot/dts/fsl/p5040si-post.dtsi        |  59 ++++++++++-
 arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi         |   4 +
 arch/powerpc/boot/dts/fsl/t4240si-post.dtsi        |  84 +++++++++++++++-
 arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi         |  12 +++
 17 files changed, 593 insertions(+), 8 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/corenet-clock.txt

diff --git a/Documentation/devicetree/bindings/clock/corenet-clock.txt b/Documentation/devicetree/bindings/clock/corenet-clock.txt
new file mode 100644
index 0000000..51eab75
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/corenet-clock.txt
@@ -0,0 +1,80 @@
+Device Tree Clock bindings for Freescale PowerPC corenet platform
+
+This binding uses the common clock binding[1].
+
+[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
+
+Required properties:
+- compatible : shall be one or more of the following:
+	- "fsl,<chip>-clockgen": for chip specific clock block
+	- "fsl,qoriq-clockgen-[1,2].0": for chassis 1.0 and 2.0 clock
+		block respectively.
+	- "fsl,qoriq-chassis[1,2]-core-pll" - for a core PLL clock
+	- "fsl,qoriq-chassis[1,2]-core-mux" - for a core multiplexer clock.
+		Divided from the core PLL clock
+	- "fixed-clock" - from common clock binding; should be output clock
+		of oscillator
+- reg : shall be the control register offset from clock block base address.
+- clocks : shall be the input parent clock phandle for the clock.
+- #clock-cells : from common clock binding; shall be set to 0 or 1.
+- clock-names : from common clock binding
+- clock-output-names : from common clock binding
+
+Example for clock provider:
+
+/ {
+	clockgen: global-utilities@e1000 {
+		compatible = "fsl,p5020-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
+		reg = <0xe1000 0x1000>;
+		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
+	};
+  }
+
+Example for clock consumer:
+
+/ {
+	cpu0: PowerPC,e5500@0 {
+		...
+		clocks = <&mux0>;
+		...
+	};
+  }
diff --git a/arch/powerpc/boot/dts/fsl/b4420si-post.dtsi b/arch/powerpc/boot/dts/fsl/b4420si-post.dtsi
index 5a6615d..69e651e 100644
--- a/arch/powerpc/boot/dts/fsl/b4420si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/b4420si-post.dtsi
@@ -85,7 +85,39 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,b4420-clockgen", "fsl,qoriq-clockgen-2.0";
+		compatible = "fsl,b4420-clockgen", "fsl,qoriq-clockgen-2.0",
+				   "fixed-clock";
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2", "pll0-div4";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2", "pll1-div4";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
+				 <&pll1 0>, <&pll1 1>, <&pll1 2>;
+			clock-names = "pll0_0", "pll0_1", "pll0_2",
+				"pll1_0", "pll1_1", "pll1_2";
+			clock-output-names = "cmux0";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi b/arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi
index 7b4426e..a11126b 100644
--- a/arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi
@@ -62,11 +62,13 @@
 		cpu0: PowerPC,e6500@0 {
 			device_type = "cpu";
 			reg = <0 1>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 		cpu1: PowerPC,e6500@2 {
 			device_type = "cpu";
 			reg = <2 3>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 	};
diff --git a/arch/powerpc/boot/dts/fsl/b4860si-post.dtsi b/arch/powerpc/boot/dts/fsl/b4860si-post.dtsi
index e5cf6c8..6fa242f 100644
--- a/arch/powerpc/boot/dts/fsl/b4860si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/b4860si-post.dtsi
@@ -129,7 +129,39 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,b4860-clockgen", "fsl,qoriq-clockgen-2.0";
+		compatible = "fsl,b4860-clockgen", "fsl,qoriq-clockgen-2.0",
+				   "fixed-clock";
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2", "pll0-div4";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2", "pll1-div4";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
+				 <&pll1 0>, <&pll1 1>, <&pll1 2>;
+			clock-names = "pll0_0", "pll0_1", "pll0_2",
+				"pll1_0", "pll1_1", "pll1_2";
+			clock-output-names = "cmux0";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi b/arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi
index 5263fa4..185a231 100644
--- a/arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi
@@ -62,21 +62,25 @@
 		cpu0: PowerPC,e6500@0 {
 			device_type = "cpu";
 			reg = <0 1>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 		cpu1: PowerPC,e6500@2 {
 			device_type = "cpu";
 			reg = <2 3>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 		cpu2: PowerPC,e6500@4 {
 			device_type = "cpu";
 			reg = <4 5>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 		cpu3: PowerPC,e6500@6 {
 			device_type = "cpu";
 			reg = <6 7>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2>;
 		};
 	};
diff --git a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
index dc6cc5a..358c36d 100644
--- a/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p2041si-post.dtsi
@@ -305,9 +305,66 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,p2041-clockgen", "fsl,qoriq-clockgen-1.0";
+		compatible = "fsl,p2041-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
 		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
+
+		mux2: mux2@40 {
+			#clock-cells = <0>;
+			reg = <0x40 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux2";
+		};
+
+		mux3: mux3@60 {
+			#clock-cells = <0>;
+			reg = <0x60 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux3";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi b/arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi
index 7a2697d..22f3b14 100644
--- a/arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi
@@ -81,6 +81,7 @@
 		cpu0: PowerPC,e500mc@0 {
 			device_type = "cpu";
 			reg = <0>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_0>;
 			L2_0: l2-cache {
 				next-level-cache = <&cpc>;
@@ -89,6 +90,7 @@
 		cpu1: PowerPC,e500mc@1 {
 			device_type = "cpu";
 			reg = <1>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_1>;
 			L2_1: l2-cache {
 				next-level-cache = <&cpc>;
@@ -97,6 +99,7 @@
 		cpu2: PowerPC,e500mc@2 {
 			device_type = "cpu";
 			reg = <2>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_2>;
 			L2_2: l2-cache {
 				next-level-cache = <&cpc>;
@@ -105,6 +108,7 @@
 		cpu3: PowerPC,e500mc@3 {
 			device_type = "cpu";
 			reg = <3>;
+			clocks = <&mux3>;
 			next-level-cache = <&L2_3>;
 			L2_3: l2-cache {
 				next-level-cache = <&cpc>;
diff --git a/arch/powerpc/boot/dts/fsl/p3041si-post.dtsi b/arch/powerpc/boot/dts/fsl/p3041si-post.dtsi
index 3fa1e22..87030ce 100644
--- a/arch/powerpc/boot/dts/fsl/p3041si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p3041si-post.dtsi
@@ -332,9 +332,66 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,p3041-clockgen", "fsl,qoriq-clockgen-1.0";
+		compatible = "fsl,p3041-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
 		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
+
+		mux2: mux2@40 {
+			#clock-cells = <0>;
+			reg = <0x40 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux2";
+		};
+
+		mux3: mux3@60 {
+			#clock-cells = <0>;
+			reg = <0x60 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux3";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi b/arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi
index c9ca2c3..468e8be 100644
--- a/arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi
@@ -82,6 +82,7 @@
 		cpu0: PowerPC,e500mc@0 {
 			device_type = "cpu";
 			reg = <0>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_0>;
 			L2_0: l2-cache {
 				next-level-cache = <&cpc>;
@@ -90,6 +91,7 @@
 		cpu1: PowerPC,e500mc@1 {
 			device_type = "cpu";
 			reg = <1>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_1>;
 			L2_1: l2-cache {
 				next-level-cache = <&cpc>;
@@ -98,6 +100,7 @@
 		cpu2: PowerPC,e500mc@2 {
 			device_type = "cpu";
 			reg = <2>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_2>;
 			L2_2: l2-cache {
 				next-level-cache = <&cpc>;
@@ -106,6 +109,7 @@
 		cpu3: PowerPC,e500mc@3 {
 			device_type = "cpu";
 			reg = <3>;
+			clocks = <&mux3>;
 			next-level-cache = <&L2_3>;
 			L2_3: l2-cache {
 				next-level-cache = <&cpc>;
diff --git a/arch/powerpc/boot/dts/fsl/p4080si-post.dtsi b/arch/powerpc/boot/dts/fsl/p4080si-post.dtsi
index 34769a7..7ecefb3 100644
--- a/arch/powerpc/boot/dts/fsl/p4080si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p4080si-post.dtsi
@@ -352,9 +352,118 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,p4080-clockgen", "fsl,qoriq-clockgen-1.0";
+		compatible = "fsl,p4080-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
 		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		pll2: pll2@840 {
+			#clock-cells = <1>;
+			reg = <0x840 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll2", "pll2-div2";
+		};
+
+		pll3: pll3@860 {
+			#clock-cells = <1>;
+			reg = <0x860 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll3", "pll3-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
+
+		mux2: mux2@40 {
+			#clock-cells = <0>;
+			reg = <0x40 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux2";
+		};
+
+		mux3: mux3@60 {
+			#clock-cells = <0>;
+			reg = <0x60 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux3";
+		};
+
+		mux4: mux4@80 {
+			#clock-cells = <0>;
+			reg = <0x80 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll2 0>, <&pll2 1>, <&pll3 0>, <&pll3 1>;
+			clock-names = "pll2_0", "pll2_1", "pll3_0", "pll3_1";
+			clock-output-names = "cmux4";
+		};
+
+		mux5: mux5@a0 {
+			#clock-cells = <0>;
+			reg = <0xa0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll2 0>, <&pll2 1>, <&pll3 0>, <&pll3 1>;
+			clock-names = "pll2_0", "pll2_1", "pll3_0", "pll3_1";
+			clock-output-names = "cmux5";
+		};
+
+		mux6: mux6@c0 {
+			#clock-cells = <0>;
+			reg = <0xc0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll2 0>, <&pll2 1>, <&pll3 0>, <&pll3 1>;
+			clock-names = "pll2_0", "pll2_1", "pll3_0", "pll3_1";
+			clock-output-names = "cmux6";
+		};
+
+		mux7: mux7@e0 {
+			#clock-cells = <0>;
+			reg = <0xe0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll2 0>, <&pll2 1>, <&pll3 0>, <&pll3 1>;
+			clock-names = "pll2_0", "pll2_1", "pll3_0", "pll3_1";
+			clock-output-names = "cmux7";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi b/arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi
index 493d9a0..0040b5a 100644
--- a/arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi
@@ -81,6 +81,7 @@
 		cpu0: PowerPC,e500mc@0 {
 			device_type = "cpu";
 			reg = <0>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_0>;
 			L2_0: l2-cache {
 				next-level-cache = <&cpc>;
@@ -89,6 +90,7 @@
 		cpu1: PowerPC,e500mc@1 {
 			device_type = "cpu";
 			reg = <1>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_1>;
 			L2_1: l2-cache {
 				next-level-cache = <&cpc>;
@@ -97,6 +99,7 @@
 		cpu2: PowerPC,e500mc@2 {
 			device_type = "cpu";
 			reg = <2>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_2>;
 			L2_2: l2-cache {
 				next-level-cache = <&cpc>;
@@ -105,6 +108,7 @@
 		cpu3: PowerPC,e500mc@3 {
 			device_type = "cpu";
 			reg = <3>;
+			clocks = <&mux3>;
 			next-level-cache = <&L2_3>;
 			L2_3: l2-cache {
 				next-level-cache = <&cpc>;
@@ -113,6 +117,7 @@
 		cpu4: PowerPC,e500mc@4 {
 			device_type = "cpu";
 			reg = <4>;
+			clocks = <&mux4>;
 			next-level-cache = <&L2_4>;
 			L2_4: l2-cache {
 				next-level-cache = <&cpc>;
@@ -121,6 +126,7 @@
 		cpu5: PowerPC,e500mc@5 {
 			device_type = "cpu";
 			reg = <5>;
+			clocks = <&mux5>;
 			next-level-cache = <&L2_5>;
 			L2_5: l2-cache {
 				next-level-cache = <&cpc>;
@@ -129,6 +135,7 @@
 		cpu6: PowerPC,e500mc@6 {
 			device_type = "cpu";
 			reg = <6>;
+			clocks = <&mux6>;
 			next-level-cache = <&L2_6>;
 			L2_6: l2-cache {
 				next-level-cache = <&cpc>;
@@ -137,6 +144,7 @@
 		cpu7: PowerPC,e500mc@7 {
 			device_type = "cpu";
 			reg = <7>;
+			clocks = <&mux7>;
 			next-level-cache = <&L2_7>;
 			L2_7: l2-cache {
 				next-level-cache = <&cpc>;
diff --git a/arch/powerpc/boot/dts/fsl/p5020si-post.dtsi b/arch/powerpc/boot/dts/fsl/p5020si-post.dtsi
index bc3ae5a..3044089 100644
--- a/arch/powerpc/boot/dts/fsl/p5020si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p5020si-post.dtsi
@@ -337,9 +337,48 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,p5020-clockgen", "fsl,qoriq-clockgen-1.0";
+		compatible = "fsl,p5020-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
 		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi b/arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi
index 8df47fc..fe1a2e6 100644
--- a/arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi
@@ -88,6 +88,7 @@
 		cpu0: PowerPC,e5500@0 {
 			device_type = "cpu";
 			reg = <0>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_0>;
 			L2_0: l2-cache {
 				next-level-cache = <&cpc>;
@@ -96,6 +97,7 @@
 		cpu1: PowerPC,e5500@1 {
 			device_type = "cpu";
 			reg = <1>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_1>;
 			L2_1: l2-cache {
 				next-level-cache = <&cpc>;
diff --git a/arch/powerpc/boot/dts/fsl/p5040si-post.dtsi b/arch/powerpc/boot/dts/fsl/p5040si-post.dtsi
index a91897f..682787b 100644
--- a/arch/powerpc/boot/dts/fsl/p5040si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p5040si-post.dtsi
@@ -297,9 +297,66 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,p5040-clockgen", "fsl,qoriq-clockgen-1.0";
+		compatible = "fsl,p5040-clockgen", "fsl,qoriq-clockgen-1.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
 		clock-frequency = <0>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux1";
+		};
+
+		mux2: mux2@40 {
+			#clock-cells = <0>;
+			reg = <0x40 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux2";
+		};
+
+		mux3: mux3@60 {
+			#clock-cells = <0>;
+			reg = <0x60 0x4>;
+			compatible = "fsl,qoriq-chassis1-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll1 0>, <&pll1 1>;
+			clock-names = "pll0_0", "pll0_1", "pll1_0", "pll1_1";
+			clock-output-names = "cmux3";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi b/arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi
index 40ca943..3674686 100644
--- a/arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi
@@ -81,6 +81,7 @@
 		cpu0: PowerPC,e5500@0 {
 			device_type = "cpu";
 			reg = <0>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_0>;
 			L2_0: l2-cache {
 				next-level-cache = <&cpc>;
@@ -89,6 +90,7 @@
 		cpu1: PowerPC,e5500@1 {
 			device_type = "cpu";
 			reg = <1>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_1>;
 			L2_1: l2-cache {
 				next-level-cache = <&cpc>;
@@ -97,6 +99,7 @@
 		cpu2: PowerPC,e5500@2 {
 			device_type = "cpu";
 			reg = <2>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_2>;
 			L2_2: l2-cache {
 				next-level-cache = <&cpc>;
@@ -105,6 +108,7 @@
 		cpu3: PowerPC,e5500@3 {
 			device_type = "cpu";
 			reg = <3>;
+			clocks = <&mux3>;
 			next-level-cache = <&L2_3>;
 			L2_3: l2-cache {
 				next-level-cache = <&cpc>;
diff --git a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
index bd611a9..b90a8c6 100644
--- a/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
+++ b/arch/powerpc/boot/dts/fsl/t4240si-post.dtsi
@@ -368,8 +368,90 @@
 	};
 
 	clockgen: global-utilities@e1000 {
-		compatible = "fsl,t4240-clockgen", "fsl,qoriq-clockgen-2.0";
+		compatible = "fsl,t4240-clockgen", "fsl,qoriq-clockgen-2.0",
+				   "fixed-clock";
 		reg = <0xe1000 0x1000>;
+		clock-output-names = "sysclk";
+		#clock-cells = <0>;
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		pll0: pll0@800 {
+			#clock-cells = <1>;
+			reg = <0x800 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll0", "pll0-div2", "pll0-div4";
+		};
+
+		pll1: pll1@820 {
+			#clock-cells = <1>;
+			reg = <0x820 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll1", "pll1-div2", "pll1-div4";
+		};
+
+		pll2: pll2@840 {
+			#clock-cells = <1>;
+			reg = <0x840 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll2", "pll2-div2", "pll2-div4";
+		};
+
+		pll3: pll3@860 {
+			#clock-cells = <1>;
+			reg = <0x860 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll3", "pll3-div2", "pll3-div4";
+		};
+
+		pll4: pll4@880 {
+			#clock-cells = <1>;
+			reg = <0x880 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-pll";
+			clocks = <&clockgen>;
+			clock-output-names = "pll4", "pll4-div2", "pll4-div4";
+		};
+
+		mux0: mux0@0 {
+			#clock-cells = <0>;
+			reg = <0x0 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
+				 <&pll1 0>, <&pll1 1>, <&pll1 2>,
+				 <&pll2 0>, <&pll2 1>, <&pll2 2>;
+			clock-names = "pll0_0", "pll0_1", "pll0_2",
+				"pll1_0", "pll1_1", "pll1_2",
+				"pll2_0", "pll2_1", "pll2_2";
+			clock-output-names = "cmux0";
+		};
+
+		mux1: mux1@20 {
+			#clock-cells = <0>;
+			reg = <0x20 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-mux";
+			clocks = <&pll0 0>, <&pll0 1>, <&pll0 2>,
+				 <&pll1 0>, <&pll1 1>, <&pll1 2>,
+				 <&pll2 0>, <&pll2 1>, <&pll2 2>;
+			clock-names = "pll0_0", "pll0_1", "pll0_2",
+				"pll1_0", "pll1_1", "pll1_2",
+				"pll2_0", "pll2_1", "pll2_2";
+			clock-output-names = "cmux1";
+		};
+
+		mux2: mux2@40 {
+			#clock-cells = <0>;
+			reg = <0x40 0x4>;
+			compatible = "fsl,qoriq-chassis2-core-mux";
+			clocks = <&pll3 0>, <&pll3 1>, <&pll3 2>,
+				 <&pll4 0>, <&pll4 1>, <&pll4 2>;
+			clock-names = "pll3_0", "pll3_1", "pll3_2",
+				"pll4_0", "pll4_1", "pll4_2";
+			clock-output-names = "cmux2";
+		};
 	};
 
 	rcpm: global-utilities@e2000 {
diff --git a/arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi b/arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi
index a93c55a..0b8ccc5 100644
--- a/arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi
+++ b/arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi
@@ -67,61 +67,73 @@
 		cpu0: PowerPC,e6500@0 {
 			device_type = "cpu";
 			reg = <0 1>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_1>;
 		};
 		cpu1: PowerPC,e6500@2 {
 			device_type = "cpu";
 			reg = <2 3>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_1>;
 		};
 		cpu2: PowerPC,e6500@4 {
 			device_type = "cpu";
 			reg = <4 5>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_1>;
 		};
 		cpu3: PowerPC,e6500@6 {
 			device_type = "cpu";
 			reg = <6 7>;
+			clocks = <&mux0>;
 			next-level-cache = <&L2_1>;
 		};
 		cpu4: PowerPC,e6500@8 {
 			device_type = "cpu";
 			reg = <8 9>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_2>;
 		};
 		cpu5: PowerPC,e6500@10 {
 			device_type = "cpu";
 			reg = <10 11>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_2>;
 		};
 		cpu6: PowerPC,e6500@12 {
 			device_type = "cpu";
 			reg = <12 13>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_2>;
 		};
 		cpu7: PowerPC,e6500@14 {
 			device_type = "cpu";
 			reg = <14 15>;
+			clocks = <&mux1>;
 			next-level-cache = <&L2_2>;
 		};
 		cpu8: PowerPC,e6500@16 {
 			device_type = "cpu";
 			reg = <16 17>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_3>;
 		};
 		cpu9: PowerPC,e6500@18 {
 			device_type = "cpu";
 			reg = <18 19>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_3>;
 		};
 		cpu10: PowerPC,e6500@20 {
 			device_type = "cpu";
 			reg = <20 21>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_3>;
 		};
 		cpu11: PowerPC,e6500@22 {
 			device_type = "cpu";
 			reg = <22 23>;
+			clocks = <&mux2>;
 			next-level-cache = <&L2_3>;
 		};
 	};
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-11  6:57 [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes Yuantian.Tang
@ 2013-09-12  1:10 ` Scott Wood
  2013-09-12  1:31   ` Tang Yuantian-B29983
  0 siblings, 1 reply; 7+ messages in thread
From: Scott Wood @ 2013-09-12  1:10 UTC (permalink / raw)
  To: Yuantian.Tang; +Cc: devicetree, linuxppc-dev

On Wed, 2013-09-11 at 14:57 +0800, Yuantian.Tang@freescale.com wrote:
> From: Tang Yuantian <yuantian.tang@freescale.com>
> 
> The following SoCs will be affected: p2041, p3041, p4080,
> p5020, p5040, b4420, b4860, t4240
> 
> Signed-off-by: Tang Yuantian <Yuantian.Tang@freescale.com>
> Signed-off-by: Li Yang <leoli@freescale.com>
> ---
> v4:
> 	- add binding document
> 	- update compatible string
> 	- update the reg property
> v3:
> 	- fix typo
> v2:
> 	- add t4240, b4420, b4860 support
> 	- remove pll/4 clock from p2041, p3041 and p5020 board
> 
>  .../devicetree/bindings/clock/corenet-clock.txt    |  80 +++++++++++++++
>  arch/powerpc/boot/dts/fsl/b4420si-post.dtsi        |  34 ++++++-
>  arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi         |   2 +
>  arch/powerpc/boot/dts/fsl/b4860si-post.dtsi        |  34 ++++++-
>  arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi         |   4 +
>  arch/powerpc/boot/dts/fsl/p2041si-post.dtsi        |  59 ++++++++++-
>  arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi         |   4 +
>  arch/powerpc/boot/dts/fsl/p3041si-post.dtsi        |  59 ++++++++++-
>  arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi         |   4 +
>  arch/powerpc/boot/dts/fsl/p4080si-post.dtsi        | 111 ++++++++++++++++++++-
>  arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi         |   8 ++
>  arch/powerpc/boot/dts/fsl/p5020si-post.dtsi        |  41 +++++++-
>  arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi         |   2 +
>  arch/powerpc/boot/dts/fsl/p5040si-post.dtsi        |  59 ++++++++++-
>  arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi         |   4 +
>  arch/powerpc/boot/dts/fsl/t4240si-post.dtsi        |  84 +++++++++++++++-
>  arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi         |  12 +++
>  17 files changed, 593 insertions(+), 8 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/clock/corenet-clock.txt
> 
> diff --git a/Documentation/devicetree/bindings/clock/corenet-clock.txt b/Documentation/devicetree/bindings/clock/corenet-clock.txt
> new file mode 100644
> index 0000000..51eab75
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/corenet-clock.txt
> @@ -0,0 +1,80 @@
> +Device Tree Clock bindings for Freescale PowerPC corenet platform
> +
> +This binding uses the common clock binding[1].
> +
> +[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
> +
> +Required properties:
> +- compatible : shall be one or more of the following:

Shall include...

> +	- "fsl,<chip>-clockgen": for chip specific clock block
> +	- "fsl,qoriq-clockgen-[1,2].0": for chassis 1.0 and 2.0 clock
> +		block respectively.
> +	- "fsl,qoriq-chassis[1,2]-core-pll" - for a core PLL clock
> +	- "fsl,qoriq-chassis[1,2]-core-mux" - for a core multiplexer clock.
> +		Divided from the core PLL clock

Hmm, there's a bit of a mismatch here between "chassis2" and the "2.0"
on the clockgen node... perhaps it should be "fsl,qoriq-core-pll-2.0",
etc.

> +	- "fixed-clock" - from common clock binding; should be output clock
> +		of oscillator
> +- reg : shall be the control register offset from clock block base address.

This description of "reg" is overly specific (assumes how the parent
node's ranges are set up), incomplete (there's a size as well as the
offset), and does not apply to the clockgen node itself (you probably
shouldn't lump them together like this).

> +- clocks : shall be the input parent clock phandle for the clock.

Not required on the clockgen node

-Scott

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-12  1:10 ` Scott Wood
@ 2013-09-12  1:31   ` Tang Yuantian-B29983
  2013-09-12 14:44     ` Scott Wood
  0 siblings, 1 reply; 7+ messages in thread
From: Tang Yuantian-B29983 @ 2013-09-12  1:31 UTC (permalink / raw)
  To: Wood Scott-B07421; +Cc: devicetree, linuxppc-dev, Li Yang-Leo-R58472

DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFdvb2QgU2NvdHQtQjA3NDIx
DQo+IFNlbnQ6IDIwMTPlubQ55pyIMTLml6Ug5pif5pyf5ZubIDk6MTANCj4gVG86IFRhbmcgWXVh
bnRpYW4tQjI5OTgzDQo+IENjOiBnYWxha0BrZXJuZWwuY3Jhc2hpbmcub3JnOyBsaW51eHBwYy1k
ZXZAbGlzdHMub3psYWJzLm9yZzsNCj4gZGV2aWNldHJlZUB2Z2VyLmtlcm5lbC5vcmc7IExpIFlh
bmctTGVvLVI1ODQ3Mg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHY0XSBwb3dlcnBjL21wYzg1eHg6
IFVwZGF0ZSB0aGUgY2xvY2sgZGV2aWNlIHRyZWUNCj4gbm9kZXMNCj4gDQo+IE9uIFdlZCwgMjAx
My0wOS0xMSBhdCAxNDo1NyArMDgwMCwgWXVhbnRpYW4uVGFuZ0BmcmVlc2NhbGUuY29tIHdyb3Rl
Og0KPiA+IEZyb206IFRhbmcgWXVhbnRpYW4gPHl1YW50aWFuLnRhbmdAZnJlZXNjYWxlLmNvbT4N
Cj4gPg0KPiA+IFRoZSBmb2xsb3dpbmcgU29DcyB3aWxsIGJlIGFmZmVjdGVkOiBwMjA0MSwgcDMw
NDEsIHA0MDgwLCBwNTAyMCwNCj4gPiBwNTA0MCwgYjQ0MjAsIGI0ODYwLCB0NDI0MA0KPiA+DQo+
ID4gU2lnbmVkLW9mZi1ieTogVGFuZyBZdWFudGlhbiA8WXVhbnRpYW4uVGFuZ0BmcmVlc2NhbGUu
Y29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IExpIFlhbmcgPGxlb2xpQGZyZWVzY2FsZS5jb20+DQo+
ID4gLS0tDQo+ID4gdjQ6DQo+ID4gCS0gYWRkIGJpbmRpbmcgZG9jdW1lbnQNCj4gPiAJLSB1cGRh
dGUgY29tcGF0aWJsZSBzdHJpbmcNCj4gPiAJLSB1cGRhdGUgdGhlIHJlZyBwcm9wZXJ0eQ0KPiA+
IHYzOg0KPiA+IAktIGZpeCB0eXBvDQo+ID4gdjI6DQo+ID4gCS0gYWRkIHQ0MjQwLCBiNDQyMCwg
YjQ4NjAgc3VwcG9ydA0KPiA+IAktIHJlbW92ZSBwbGwvNCBjbG9jayBmcm9tIHAyMDQxLCBwMzA0
MSBhbmQgcDUwMjAgYm9hcmQNCj4gPg0KPiA+ICAuLi4vZGV2aWNldHJlZS9iaW5kaW5ncy9jbG9j
ay9jb3JlbmV0LWNsb2NrLnR4dCAgICB8ICA4MA0KPiArKysrKysrKysrKysrKysNCj4gPiAgYXJj
aC9wb3dlcnBjL2Jvb3QvZHRzL2ZzbC9iNDQyMHNpLXBvc3QuZHRzaSAgICAgICAgfCAgMzQgKysr
KysrLQ0KPiA+ICBhcmNoL3Bvd2VycGMvYm9vdC9kdHMvZnNsL2I0NDIwc2ktcHJlLmR0c2kgICAg
ICAgICB8ICAgMiArDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9mc2wvYjQ4NjBzaS1wb3N0
LmR0c2kgICAgICAgIHwgIDM0ICsrKysrKy0NCj4gPiAgYXJjaC9wb3dlcnBjL2Jvb3QvZHRzL2Zz
bC9iNDg2MHNpLXByZS5kdHNpICAgICAgICAgfCAgIDQgKw0KPiA+ICBhcmNoL3Bvd2VycGMvYm9v
dC9kdHMvZnNsL3AyMDQxc2ktcG9zdC5kdHNpICAgICAgICB8ICA1OSArKysrKysrKysrLQ0KPiA+
ICBhcmNoL3Bvd2VycGMvYm9vdC9kdHMvZnNsL3AyMDQxc2ktcHJlLmR0c2kgICAgICAgICB8ICAg
NCArDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9mc2wvcDMwNDFzaS1wb3N0LmR0c2kgICAg
ICAgIHwgIDU5ICsrKysrKysrKystDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9mc2wvcDMw
NDFzaS1wcmUuZHRzaSAgICAgICAgIHwgICA0ICsNCj4gPiAgYXJjaC9wb3dlcnBjL2Jvb3QvZHRz
L2ZzbC9wNDA4MHNpLXBvc3QuZHRzaSAgICAgICAgfCAxMTENCj4gKysrKysrKysrKysrKysrKysr
KystDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9mc2wvcDQwODBzaS1wcmUuZHRzaSAgICAg
ICAgIHwgICA4ICsrDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9mc2wvcDUwMjBzaS1wb3N0
LmR0c2kgICAgICAgIHwgIDQxICsrKysrKystDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0cy9m
c2wvcDUwMjBzaS1wcmUuZHRzaSAgICAgICAgIHwgICAyICsNCj4gPiAgYXJjaC9wb3dlcnBjL2Jv
b3QvZHRzL2ZzbC9wNTA0MHNpLXBvc3QuZHRzaSAgICAgICAgfCAgNTkgKysrKysrKysrKy0NCj4g
PiAgYXJjaC9wb3dlcnBjL2Jvb3QvZHRzL2ZzbC9wNTA0MHNpLXByZS5kdHNpICAgICAgICAgfCAg
IDQgKw0KPiA+ICBhcmNoL3Bvd2VycGMvYm9vdC9kdHMvZnNsL3Q0MjQwc2ktcG9zdC5kdHNpICAg
ICAgICB8ICA4NA0KPiArKysrKysrKysrKysrKystDQo+ID4gIGFyY2gvcG93ZXJwYy9ib290L2R0
cy9mc2wvdDQyNDBzaS1wcmUuZHRzaSAgICAgICAgIHwgIDEyICsrKw0KPiA+ICAxNyBmaWxlcyBj
aGFuZ2VkLCA1OTMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkgIGNyZWF0ZSBtb2RlDQo+
ID4gMTAwNjQ0IERvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9jbG9jay9jb3JlbmV0
LWNsb2NrLnR4dA0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJl
ZS9iaW5kaW5ncy9jbG9jay9jb3JlbmV0LWNsb2NrLnR4dA0KPiA+IGIvRG9jdW1lbnRhdGlvbi9k
ZXZpY2V0cmVlL2JpbmRpbmdzL2Nsb2NrL2NvcmVuZXQtY2xvY2sudHh0DQo+ID4gbmV3IGZpbGUg
bW9kZSAxMDA2NDQNCj4gPiBpbmRleCAwMDAwMDAwLi41MWVhYjc1DQo+ID4gLS0tIC9kZXYvbnVs
bA0KPiA+ICsrKyBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9jbG9jay9jb3Jl
bmV0LWNsb2NrLnR4dA0KPiA+IEBAIC0wLDAgKzEsODAgQEANCj4gPiArRGV2aWNlIFRyZWUgQ2xv
Y2sgYmluZGluZ3MgZm9yIEZyZWVzY2FsZSBQb3dlclBDIGNvcmVuZXQgcGxhdGZvcm0NCj4gPiAr
DQo+ID4gK1RoaXMgYmluZGluZyB1c2VzIHRoZSBjb21tb24gY2xvY2sgYmluZGluZ1sxXS4NCj4g
PiArDQo+ID4gK1sxXSBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvY2xvY2svY2xv
Y2stYmluZGluZ3MudHh0DQo+ID4gKw0KPiA+ICtSZXF1aXJlZCBwcm9wZXJ0aWVzOg0KPiA+ICst
IGNvbXBhdGlibGUgOiBzaGFsbCBiZSBvbmUgb3IgbW9yZSBvZiB0aGUgZm9sbG93aW5nOg0KPiAN
Cj4gU2hhbGwgaW5jbHVkZS4uLg0KPiANCj4gPiArCS0gImZzbCw8Y2hpcD4tY2xvY2tnZW4iOiBm
b3IgY2hpcCBzcGVjaWZpYyBjbG9jayBibG9jaw0KPiA+ICsJLSAiZnNsLHFvcmlxLWNsb2NrZ2Vu
LVsxLDJdLjAiOiBmb3IgY2hhc3NpcyAxLjAgYW5kIDIuMCBjbG9jaw0KPiA+ICsJCWJsb2NrIHJl
c3BlY3RpdmVseS4NCj4gPiArCS0gImZzbCxxb3JpcS1jaGFzc2lzWzEsMl0tY29yZS1wbGwiIC0g
Zm9yIGEgY29yZSBQTEwgY2xvY2sNCj4gPiArCS0gImZzbCxxb3JpcS1jaGFzc2lzWzEsMl0tY29y
ZS1tdXgiIC0gZm9yIGEgY29yZSBtdWx0aXBsZXhlciBjbG9jay4NCj4gPiArCQlEaXZpZGVkIGZy
b20gdGhlIGNvcmUgUExMIGNsb2NrDQo+IA0KPiBIbW0sIHRoZXJlJ3MgYSBiaXQgb2YgYSBtaXNt
YXRjaCBoZXJlIGJldHdlZW4gImNoYXNzaXMyIiBhbmQgdGhlICIyLjAiDQo+IG9uIHRoZSBjbG9j
a2dlbiBub2RlLi4uIHBlcmhhcHMgaXQgc2hvdWxkIGJlICJmc2wscW9yaXEtY29yZS1wbGwtMi4w
IiwNCj4gZXRjLg0KPiANCj4gPiArCS0gImZpeGVkLWNsb2NrIiAtIGZyb20gY29tbW9uIGNsb2Nr
IGJpbmRpbmc7IHNob3VsZCBiZSBvdXRwdXQgY2xvY2sNCj4gPiArCQlvZiBvc2NpbGxhdG9yDQo+
ID4gKy0gcmVnIDogc2hhbGwgYmUgdGhlIGNvbnRyb2wgcmVnaXN0ZXIgb2Zmc2V0IGZyb20gY2xv
Y2sgYmxvY2sgYmFzZQ0KPiBhZGRyZXNzLg0KPiANCj4gVGhpcyBkZXNjcmlwdGlvbiBvZiAicmVn
IiBpcyBvdmVybHkgc3BlY2lmaWMgKGFzc3VtZXMgaG93IHRoZSBwYXJlbnQNCj4gbm9kZSdzIHJh
bmdlcyBhcmUgc2V0IHVwKSwgaW5jb21wbGV0ZSAodGhlcmUncyBhIHNpemUgYXMgd2VsbCBhcyB0
aGUNCj4gb2Zmc2V0KSwgYW5kIGRvZXMgbm90IGFwcGx5IHRvIHRoZSBjbG9ja2dlbiBub2RlIGl0
c2VsZiAoeW91IHByb2JhYmx5DQo+IHNob3VsZG4ndCBsdW1wIHRoZW0gdG9nZXRoZXIgbGlrZSB0
aGlzKS4NCj4gDQpEbyB5b3UgbWVhbiBJIHNob3VsZCBleHBsYWluIHRoZSBSRUcgb2YgY2xvY2tn
ZW4gYW5kIGl0cyBjaGlsZCBub2RlIHJlc3BlY3RpdmVseT8NCg0KPiA+ICstIGNsb2NrcyA6IHNo
YWxsIGJlIHRoZSBpbnB1dCBwYXJlbnQgY2xvY2sgcGhhbmRsZSBmb3IgdGhlIGNsb2NrLg0KPiAN
Cj4gTm90IHJlcXVpcmVkIG9uIHRoZSBjbG9ja2dlbiBub2RlDQo+IA0KUmVxdWlyZWQgYnkgY2hp
bGQgbm9kZSBvZiBjbG9ja2dlbi4NCg0KUmVnYXJkcywNCll1YW50aWFuDQo+IC1TY290dA0KPiAN
Cg0K

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-12  1:31   ` Tang Yuantian-B29983
@ 2013-09-12 14:44     ` Scott Wood
  2013-09-13  2:50       ` Tang Yuantian-B29983
  0 siblings, 1 reply; 7+ messages in thread
From: Scott Wood @ 2013-09-12 14:44 UTC (permalink / raw)
  To: Tang Yuantian-B29983
  Cc: Wood Scott-B07421, Li Yang-Leo-R58472, linuxppc-dev, devicetree

On Wed, 2013-09-11 at 20:31 -0500, Tang Yuantian-B29983 wrote:
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: 2013=E5=B9=B49=E6=9C=8812=E6=97=A5 =E6=98=9F=E6=9C=9F=E5=9B=9B =
9:10
> > To: Tang Yuantian-B29983
> > Cc: galak@kernel.crashing.org; linuxppc-dev@lists.ozlabs.org;
> > devicetree@vger.kernel.org; Li Yang-Leo-R58472
> > Subject: Re: [PATCH v4] powerpc/mpc85xx: Update the clock device tree
> > nodes
> >=20
> > This description of "reg" is overly specific (assumes how the parent
> > node's ranges are set up), incomplete (there's a size as well as the
> > offset), and does not apply to the clockgen node itself (you probably
> > shouldn't lump them together like this).
> >=20
> Do you mean I should explain the REG of clockgen and its child node res=
pectively?
>=20
> > > +- clocks : shall be the input parent clock phandle for the clock.
> >=20
> > Not required on the clockgen node
> >=20
> Required by child node of clockgen.

My point is that you're lumping several different types of nodes
together with one binding, when some parts of the binding are not
applicable to the clockgen node.

-Scott

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-12 14:44     ` Scott Wood
@ 2013-09-13  2:50       ` Tang Yuantian-B29983
  2013-09-16 20:39         ` Scott Wood
  0 siblings, 1 reply; 7+ messages in thread
From: Tang Yuantian-B29983 @ 2013-09-13  2:50 UTC (permalink / raw)
  To: Wood Scott-B07421; +Cc: devicetree, linuxppc-dev, Li Yang-Leo-R58472

DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFdvb2QgU2NvdHQtQjA3NDIx
DQo+IFNlbnQ6IDIwMTPlubQ55pyIMTLml6Ug5pif5pyf5ZubIDIyOjQ0DQo+IFRvOiBUYW5nIFl1
YW50aWFuLUIyOTk4Mw0KPiBDYzogV29vZCBTY290dC1CMDc0MjE7IGdhbGFrQGtlcm5lbC5jcmFz
aGluZy5vcmc7IGxpbnV4cHBjLQ0KPiBkZXZAbGlzdHMub3psYWJzLm9yZzsgZGV2aWNldHJlZUB2
Z2VyLmtlcm5lbC5vcmc7IExpIFlhbmctTGVvLVI1ODQ3Mg0KPiBTdWJqZWN0OiBSZTogW1BBVENI
IHY0XSBwb3dlcnBjL21wYzg1eHg6IFVwZGF0ZSB0aGUgY2xvY2sgZGV2aWNlIHRyZWUNCj4gbm9k
ZXMNCj4gDQo+IE9uIFdlZCwgMjAxMy0wOS0xMSBhdCAyMDozMSAtMDUwMCwgVGFuZyBZdWFudGlh
bi1CMjk5ODMgd3JvdGU6DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4g
RnJvbTogV29vZCBTY290dC1CMDc0MjENCj4gPiA+IFNlbnQ6IDIwMTPlubQ55pyIMTLml6Ug5pif
5pyf5ZubIDk6MTANCj4gPiA+IFRvOiBUYW5nIFl1YW50aWFuLUIyOTk4Mw0KPiA+ID4gQ2M6IGdh
bGFrQGtlcm5lbC5jcmFzaGluZy5vcmc7IGxpbnV4cHBjLWRldkBsaXN0cy5vemxhYnMub3JnOw0K
PiA+ID4gZGV2aWNldHJlZUB2Z2VyLmtlcm5lbC5vcmc7IExpIFlhbmctTGVvLVI1ODQ3Mg0KPiA+
ID4gU3ViamVjdDogUmU6IFtQQVRDSCB2NF0gcG93ZXJwYy9tcGM4NXh4OiBVcGRhdGUgdGhlIGNs
b2NrIGRldmljZQ0KPiA+ID4gdHJlZSBub2Rlcw0KPiA+ID4NCj4gPiA+IFRoaXMgZGVzY3JpcHRp
b24gb2YgInJlZyIgaXMgb3Zlcmx5IHNwZWNpZmljIChhc3N1bWVzIGhvdyB0aGUgcGFyZW50DQo+
ID4gPiBub2RlJ3MgcmFuZ2VzIGFyZSBzZXQgdXApLCBpbmNvbXBsZXRlICh0aGVyZSdzIGEgc2l6
ZSBhcyB3ZWxsIGFzIHRoZQ0KPiA+ID4gb2Zmc2V0KSwgYW5kIGRvZXMgbm90IGFwcGx5IHRvIHRo
ZSBjbG9ja2dlbiBub2RlIGl0c2VsZiAoeW91DQo+ID4gPiBwcm9iYWJseSBzaG91bGRuJ3QgbHVt
cCB0aGVtIHRvZ2V0aGVyIGxpa2UgdGhpcykuDQo+ID4gPg0KPiA+IERvIHlvdSBtZWFuIEkgc2hv
dWxkIGV4cGxhaW4gdGhlIFJFRyBvZiBjbG9ja2dlbiBhbmQgaXRzIGNoaWxkIG5vZGUNCj4gcmVz
cGVjdGl2ZWx5Pw0KPiA+DQo+ID4gPiA+ICstIGNsb2NrcyA6IHNoYWxsIGJlIHRoZSBpbnB1dCBw
YXJlbnQgY2xvY2sgcGhhbmRsZSBmb3IgdGhlIGNsb2NrLg0KPiA+ID4NCj4gPiA+IE5vdCByZXF1
aXJlZCBvbiB0aGUgY2xvY2tnZW4gbm9kZQ0KPiA+ID4NCj4gPiBSZXF1aXJlZCBieSBjaGlsZCBu
b2RlIG9mIGNsb2NrZ2VuLg0KPiANCj4gTXkgcG9pbnQgaXMgdGhhdCB5b3UncmUgbHVtcGluZyBz
ZXZlcmFsIGRpZmZlcmVudCB0eXBlcyBvZiBub2RlcyB0b2dldGhlcg0KPiB3aXRoIG9uZSBiaW5k
aW5nLCB3aGVuIHNvbWUgcGFydHMgb2YgdGhlIGJpbmRpbmcgYXJlIG5vdCBhcHBsaWNhYmxlIHRv
DQo+IHRoZSBjbG9ja2dlbiBub2RlLg0KPiANCk5vdCBzZXZlcmFsLCBqdXN0IHR3byB0eXBlcyBv
ZiBub2Rlcy4NCk9uZSBpcyBjbG9ja2dlbiBub2RlLCB0aGUgb3RoZXIgaXMgUExMIGFuZCBtdXgg
bm9kZXMuDQoNClRoZSByZWFzb24gdGhleSBsdW1wZWQgdG9nZXRoZXIgaXMgdGhhdCB0aGUgY2xv
Y2tnZW4gbm9kZSBpcyBub3Qgb25seSBJUCBibG9jaw0KTm9kZSBidXQgYWxzbyBhIGNsb2NrIHBy
b3ZpZGVyIG5vZGUuDQoNCkF0IGZpcnN0LCBJIHdhbnQgdG8gYWRkIGEgZXh0cmEgZml4ZWQtY2xv
Y2sgbm9kZSBhbmQgbW92ZSB0aGUgY2xvY2stZnJlcXVlbmN5IG9mIGNsb2NrZ2VuIA0KTm9kZSB0
byBpdCwgYnV0IGl0IGlzIGFnYWluc3QgdGhlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2hpY2gg
SSB0aGluayBpdCBpcyBub3QgYSBiaWcgZGVhbCwNCkJlY2F1c2Ugbm9ib2R5IGhhc24ndCB1c2Vk
IGl0IHlldC4NCklmIEkgYWRkIGEgZXh0cmEgbm9kZSB3aXRoIHRoZSBjbG9jay1mcmVxdWVuY3kg
cHJvcGVydHkgYW5kIGRvbid0IG1vdmUgdGhlDQpjbG9jay1mcmVxdWVuY3kgcHJvcGVydHkgb2Yg
Y2xvY2tnZW4sIHRoYXQgd291bGQgYmUgcmVkdW5kYW50IGJlY2F1c2UgYm90aCBjbG9ja2dlbiBu
b2RlDQphbmQgdGhlIGV4dHJhIG5vZGUgaGF2ZSB0aGUgc2FtZSBjbG9jay1mcmVxdWVuY3kgbm9k
ZS4NClNvLCBJIGNob29zZSB3aGF0IEkgZGlkIG5vdy4NCiANCkNvdWxkIHlvdSBnaXZlIG1lIHNv
bWUgc3VnZ2VzdGlvbnMgb24gdGhpcz8NClJlZ2FyZHMsDQpZdWFudGlhbg0KDQo+IC1TY290dA0K
PiANCg0K

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-13  2:50       ` Tang Yuantian-B29983
@ 2013-09-16 20:39         ` Scott Wood
  2013-09-17  7:19           ` Tang Yuantian-B29983
  0 siblings, 1 reply; 7+ messages in thread
From: Scott Wood @ 2013-09-16 20:39 UTC (permalink / raw)
  To: Tang Yuantian-B29983
  Cc: Wood Scott-B07421, Li Yang-Leo-R58472, linuxppc-dev, devicetree

On Thu, 2013-09-12 at 21:50 -0500, Tang Yuantian-B29983 wrote:
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: 2013=E5=B9=B49=E6=9C=8812=E6=97=A5 =E6=98=9F=E6=9C=9F=E5=9B=9B =
22:44
> > To: Tang Yuantian-B29983
> > Cc: Wood Scott-B07421; galak@kernel.crashing.org; linuxppc-
> > dev@lists.ozlabs.org; devicetree@vger.kernel.org; Li Yang-Leo-R58472
> > Subject: Re: [PATCH v4] powerpc/mpc85xx: Update the clock device tree
> > nodes
> >=20
> > On Wed, 2013-09-11 at 20:31 -0500, Tang Yuantian-B29983 wrote:
> > > > -----Original Message-----
> > > > From: Wood Scott-B07421
> > > > Sent: 2013=E5=B9=B49=E6=9C=8812=E6=97=A5 =E6=98=9F=E6=9C=9F=E5=9B=
=9B 9:10
> > > > To: Tang Yuantian-B29983
> > > > Cc: galak@kernel.crashing.org; linuxppc-dev@lists.ozlabs.org;
> > > > devicetree@vger.kernel.org; Li Yang-Leo-R58472
> > > > Subject: Re: [PATCH v4] powerpc/mpc85xx: Update the clock device
> > > > tree nodes
> > > >
> > > > This description of "reg" is overly specific (assumes how the par=
ent
> > > > node's ranges are set up), incomplete (there's a size as well as =
the
> > > > offset), and does not apply to the clockgen node itself (you
> > > > probably shouldn't lump them together like this).
> > > >
> > > Do you mean I should explain the REG of clockgen and its child node
> > respectively?
> > >
> > > > > +- clocks : shall be the input parent clock phandle for the clo=
ck.
> > > >
> > > > Not required on the clockgen node
> > > >
> > > Required by child node of clockgen.
> >=20
> > My point is that you're lumping several different types of nodes toge=
ther
> > with one binding, when some parts of the binding are not applicable t=
o
> > the clockgen node.
> >=20
> Not several, just two types of nodes.
> One is clockgen node, the other is PLL and mux nodes.

clockgen + PLL + mux =3D 3 =3D several :-)

> The reason they lumped together is that the clockgen node is not only I=
P block
> Node but also a clock provider node

I don't understand why that merits lumping them together.

Just describe them separately.

> At first, I want to add a extra fixed-clock node and move the clock-fre=
quency of clockgen=20
> Node to it, but it is against the backward compatibility

Right.

> which I think it is not a big deal, Because nobody hasn't used it yet.

The point is it will require updating U-Boot to use it, versus existing
U-Boots which already patch up the clock-frequency in the clockgen node.
And there's nothing semantically wrong with the way it currently is.

> If I add a extra node with the clock-frequency property and don't move =
the
> clock-frequency property of clockgen, that would be redundant because b=
oth clockgen node
> and the extra node have the same clock-frequency node.
> So, I choose what I did now.

I'm not complaining about how you structured the nodes, just how you
documented them.

-Scott

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes
  2013-09-16 20:39         ` Scott Wood
@ 2013-09-17  7:19           ` Tang Yuantian-B29983
  0 siblings, 0 replies; 7+ messages in thread
From: Tang Yuantian-B29983 @ 2013-09-17  7:19 UTC (permalink / raw)
  To: Wood Scott-B07421; +Cc: devicetree, linuxppc-dev, Li Yang-Leo-R58472

PiA+ID4gT24gV2VkLCAyMDEzLTA5LTExIGF0IDIwOjMxIC0wNTAwLCBUYW5nIFl1YW50aWFuLUIy
OTk4MyB3cm90ZToNCj4gPiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4g
PiA+IEZyb206IFdvb2QgU2NvdHQtQjA3NDIxDQo+ID4gPiA+ID4gU2VudDogMjAxM+W5tDnmnIgx
MuaXpSDmmJ/mnJ/lm5sgOToxMA0KPiA+ID4gPiA+IFRvOiBUYW5nIFl1YW50aWFuLUIyOTk4Mw0K
PiA+ID4gPiA+IENjOiBnYWxha0BrZXJuZWwuY3Jhc2hpbmcub3JnOyBsaW51eHBwYy1kZXZAbGlz
dHMub3psYWJzLm9yZzsNCj4gPiA+ID4gPiBkZXZpY2V0cmVlQHZnZXIua2VybmVsLm9yZzsgTGkg
WWFuZy1MZW8tUjU4NDcyDQo+ID4gPiA+ID4gU3ViamVjdDogUmU6IFtQQVRDSCB2NF0gcG93ZXJw
Yy9tcGM4NXh4OiBVcGRhdGUgdGhlIGNsb2NrIGRldmljZQ0KPiA+ID4gPiA+IHRyZWUgbm9kZXMN
Cj4gPiA+ID4gPg0KPiA+ID4gPiA+IFRoaXMgZGVzY3JpcHRpb24gb2YgInJlZyIgaXMgb3Zlcmx5
IHNwZWNpZmljIChhc3N1bWVzIGhvdyB0aGUNCj4gPiA+ID4gPiBwYXJlbnQgbm9kZSdzIHJhbmdl
cyBhcmUgc2V0IHVwKSwgaW5jb21wbGV0ZSAodGhlcmUncyBhIHNpemUgYXMNCj4gPiA+ID4gPiB3
ZWxsIGFzIHRoZSBvZmZzZXQpLCBhbmQgZG9lcyBub3QgYXBwbHkgdG8gdGhlIGNsb2NrZ2VuIG5v
ZGUNCj4gPiA+ID4gPiBpdHNlbGYgKHlvdSBwcm9iYWJseSBzaG91bGRuJ3QgbHVtcCB0aGVtIHRv
Z2V0aGVyIGxpa2UgdGhpcykuDQo+ID4gPiA+ID4NCj4gPiA+ID4gRG8geW91IG1lYW4gSSBzaG91
bGQgZXhwbGFpbiB0aGUgUkVHIG9mIGNsb2NrZ2VuIGFuZCBpdHMgY2hpbGQNCj4gPiA+ID4gbm9k
ZQ0KPiA+ID4gcmVzcGVjdGl2ZWx5Pw0KPiA+ID4gPg0KPiA+ID4gPiA+ID4gKy0gY2xvY2tzIDog
c2hhbGwgYmUgdGhlIGlucHV0IHBhcmVudCBjbG9jayBwaGFuZGxlIGZvciB0aGUNCj4gY2xvY2su
DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBOb3QgcmVxdWlyZWQgb24gdGhlIGNsb2NrZ2VuIG5vZGUN
Cj4gPiA+ID4gPg0KPiA+ID4gPiBSZXF1aXJlZCBieSBjaGlsZCBub2RlIG9mIGNsb2NrZ2VuLg0K
PiA+ID4NCj4gPiA+IE15IHBvaW50IGlzIHRoYXQgeW91J3JlIGx1bXBpbmcgc2V2ZXJhbCBkaWZm
ZXJlbnQgdHlwZXMgb2Ygbm9kZXMNCj4gPiA+IHRvZ2V0aGVyIHdpdGggb25lIGJpbmRpbmcsIHdo
ZW4gc29tZSBwYXJ0cyBvZiB0aGUgYmluZGluZyBhcmUgbm90DQo+ID4gPiBhcHBsaWNhYmxlIHRv
IHRoZSBjbG9ja2dlbiBub2RlLg0KPiA+ID4NCj4gPiBOb3Qgc2V2ZXJhbCwganVzdCB0d28gdHlw
ZXMgb2Ygbm9kZXMuDQo+ID4gT25lIGlzIGNsb2NrZ2VuIG5vZGUsIHRoZSBvdGhlciBpcyBQTEwg
YW5kIG11eCBub2Rlcy4NCj4gDQo+IGNsb2NrZ2VuICsgUExMICsgbXV4ID0gMyA9IHNldmVyYWwg
Oi0pDQo+IA0KPiA+IFRoZSByZWFzb24gdGhleSBsdW1wZWQgdG9nZXRoZXIgaXMgdGhhdCB0aGUg
Y2xvY2tnZW4gbm9kZSBpcyBub3Qgb25seQ0KPiA+IElQIGJsb2NrIE5vZGUgYnV0IGFsc28gYSBj
bG9jayBwcm92aWRlciBub2RlDQo+IA0KPiBJIGRvbid0IHVuZGVyc3RhbmQgd2h5IHRoYXQgbWVy
aXRzIGx1bXBpbmcgdGhlbSB0b2dldGhlci4NCj4gDQo+IEp1c3QgZGVzY3JpYmUgdGhlbSBzZXBh
cmF0ZWx5Lg0KPiANCkl0IGlzIG5vdCB0aGF0IGVhc3kgdG8gc2VwYXJhdGUgdGhlbSBiZWNhdXNl
IGNsb2NrZ2VuIG5vZGUgcGxheXMgdHdvIHR5cGVzDQpPZiByb2xlcy4gVGFrZSBSRUcgcHJvcGVy
dHkgYXMgZXhhbXBsZToNCkFzIElQIGJsb2NrIG5vZGUsIFJFRyBzaG91bGQgYmUgcmVnID0gPDB4
ZTEwMDAgMHgxMDAwPiwgd2hpbGUgYXMNCkNsb2NrIHByb3ZpZGVyIG5vZGUsIGl0IHNob3VsZCBi
ZSByZWcgPSA8MHhhYmMgMHg0PiBvciBubyByZWcgYXQgYWxsKGZvciBmaXhlZCBjbG9jaykuDQoN
Cj4gPiBBdCBmaXJzdCwgSSB3YW50IHRvIGFkZCBhIGV4dHJhIGZpeGVkLWNsb2NrIG5vZGUgYW5k
IG1vdmUgdGhlDQo+ID4gY2xvY2stZnJlcXVlbmN5IG9mIGNsb2NrZ2VuIE5vZGUgdG8gaXQsIGJ1
dCBpdCBpcyBhZ2FpbnN0IHRoZSBiYWNrd2FyZA0KPiA+IGNvbXBhdGliaWxpdHkNCj4gDQo+IFJp
Z2h0Lg0KPiANCj4gPiB3aGljaCBJIHRoaW5rIGl0IGlzIG5vdCBhIGJpZyBkZWFsLCBCZWNhdXNl
IG5vYm9keSBoYXNuJ3QgdXNlZCBpdCB5ZXQuDQo+IA0KPiBUaGUgcG9pbnQgaXMgaXQgd2lsbCBy
ZXF1aXJlIHVwZGF0aW5nIFUtQm9vdCB0byB1c2UgaXQsIHZlcnN1cyBleGlzdGluZw0KPiBVLUJv
b3RzIHdoaWNoIGFscmVhZHkgcGF0Y2ggdXAgdGhlIGNsb2NrLWZyZXF1ZW5jeSBpbiB0aGUgY2xv
Y2tnZW4gbm9kZS4NCj4gQW5kIHRoZXJlJ3Mgbm90aGluZyBzZW1hbnRpY2FsbHkgd3Jvbmcgd2l0
aCB0aGUgd2F5IGl0IGN1cnJlbnRseSBpcy4NCj4gDQpZZXMsIG5vdGhpbmcgd3JvbmcgYWJvdXQg
aXQuDQpCdXQgd2Ugd2lsbCBrZWVwIGFkZGluZyB0aGUgY2xvY2tnZW4teC55IG5vZGUgYWxsIHRo
ZSB0aW1lIGluIHVib290Lg0KSWYgd2UgaGF2ZSBvbmUgZXh0cmEgbm9kZSB0byBrZWVwIGNsb2Nr
LWZyZXF1ZW5jeSwgaXQgd291bGQgYmUgdXBkYXRlZCBvbmx5IG9uY2UuDQoNCj4gPiBJZiBJIGFk
ZCBhIGV4dHJhIG5vZGUgd2l0aCB0aGUgY2xvY2stZnJlcXVlbmN5IHByb3BlcnR5IGFuZCBkb24n
dCBtb3ZlDQo+ID4gdGhlIGNsb2NrLWZyZXF1ZW5jeSBwcm9wZXJ0eSBvZiBjbG9ja2dlbiwgdGhh
dCB3b3VsZCBiZSByZWR1bmRhbnQNCj4gPiBiZWNhdXNlIGJvdGggY2xvY2tnZW4gbm9kZSBhbmQg
dGhlIGV4dHJhIG5vZGUgaGF2ZSB0aGUgc2FtZSBjbG9jay0NCj4gZnJlcXVlbmN5IG5vZGUuDQo+
ID4gU28sIEkgY2hvb3NlIHdoYXQgSSBkaWQgbm93Lg0KPiANCj4gSSdtIG5vdCBjb21wbGFpbmlu
ZyBhYm91dCBob3cgeW91IHN0cnVjdHVyZWQgdGhlIG5vZGVzLCBqdXN0IGhvdyB5b3UNCj4gZG9j
dW1lbnRlZCB0aGVtLg0KPiANCkFzIEkgc2FpZCBpdCBpcyBoYXJkIHRvIGRvY3VtZW50IGNsb2Nr
Z2VuIG5vZGUgaWYgd2UgZG9uJ3Qgc2VwYXJhdGUgaXRzDQp0d28gcm9sZXMuDQpJIHRoaW5rIHRo
ZSBmb2xsb3dpbmcgc3RydWN0dXJlIGlzIGJldHRlci4NCg0KKyAgIGNsb2NrZ2VuOiBnbG9iYWwt
dXRpbGl0aWVzQGUxMDAwIHsNCisgICAgICAgY29tcGF0aWJsZSA9ICJmc2wscDUwMjAtY2xvY2tn
ZW4iLCAiZnNsLHFvcmlxLWNsb2NrZ2VuLTEuMCI7DQorICAgICAgIHJlZyA9IDwweGUxMDAwIDB4
MTAwMD47DQorICAgICAgICNhZGRyZXNzLWNlbGxzID0gPDE+Ow0KKyAgICAgICAjc2l6ZS1jZWxs
cyA9IDwxPjsNCgkgIA0KCSAgU3lzY2xrOnN5c2NsayB7DQoJICAJY29tcGF0aWJsZSA9ICJmc2ws
cW9yaXEtc3lzY2xrIiwgImZpeGVkLWNsb2NrIjsNCiAgICAgICAJY2xvY2stb3V0cHV0LW5hbWVz
ID0gInN5c2NsayI7DQogICAgICAgCSNjbG9jay1jZWxscyA9IDwwPjsgICANCgkJY2xvY2stZnJl
cXVlbmN5ID0gPDA+OwkJDQoJICB9DQorICAgICAgIHBsbDA6IHBsbDBAODAwIHsNCisgICAgICAg
ICAgICNjbG9jay1jZWxscyA9IDwxPjsNCisgICAgICAgICAgIHJlZyA9IDwweDgwMCAweDQ+Ow0K
KyAgICAgICAgICAgY29tcGF0aWJsZSA9ICJmc2wscW9yaXEtY2hhc3NpczEtY29yZS1wbGwiOw0K
KyAgICAgICAgICAgY2xvY2tzID0gPCYgU3lzY2xrID47DQorICAgICAgICAgICBjbG9jay1vdXRw
dXQtbmFtZXMgPSAicGxsMCIsICJwbGwwLWRpdjIiOw0KKyAgICAgICB9Ow0KDQpSZWdhcmRzLA0K
WXVhbnRpYW4NCg0KPiAtU2NvdHQNCj4gDQoNCg==

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-09-17  7:19 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-11  6:57 [PATCH v4] powerpc/mpc85xx: Update the clock device tree nodes Yuantian.Tang
2013-09-12  1:10 ` Scott Wood
2013-09-12  1:31   ` Tang Yuantian-B29983
2013-09-12 14:44     ` Scott Wood
2013-09-13  2:50       ` Tang Yuantian-B29983
2013-09-16 20:39         ` Scott Wood
2013-09-17  7:19           ` Tang Yuantian-B29983

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).