linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc
@ 2019-03-12  2:24 Anson Huang
  2019-03-12  2:24 ` [PATCH V5 2/4] ARM: dts: imx7ulp: add mmdc support Anson Huang
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Anson Huang @ 2019-03-12  2:24 UTC (permalink / raw)
  To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: dl-linux-imx

Freescale MMDC (Multi Mode DDR Controller) driver is supported
since i.MX6Q, but not yet documented, this patch adds binding
doc for MMDC module driver.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
Changes since V4:
	- update mmdc1 example.
---
 .../bindings/memory-controllers/fsl/mmdc.txt       | 35 ++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/memory-controllers/fsl/mmdc.txt

diff --git a/Documentation/devicetree/bindings/memory-controllers/fsl/mmdc.txt b/Documentation/devicetree/bindings/memory-controllers/fsl/mmdc.txt
new file mode 100644
index 0000000..bcc36c5
--- /dev/null
+++ b/Documentation/devicetree/bindings/memory-controllers/fsl/mmdc.txt
@@ -0,0 +1,35 @@
+Freescale Multi Mode DDR controller (MMDC)
+
+Required properties :
+- compatible : should be one of following:
+	for i.MX6Q/i.MX6DL:
+	- "fsl,imx6q-mmdc";
+	for i.MX6QP:
+	- "fsl,imx6qp-mmdc", "fsl,imx6q-mmdc";
+	for i.MX6SL:
+	- "fsl,imx6sl-mmdc", "fsl,imx6q-mmdc";
+	for i.MX6SLL:
+	- "fsl,imx6sll-mmdc", "fsl,imx6q-mmdc";
+	for i.MX6SX:
+	- "fsl,imx6sx-mmdc", "fsl,imx6q-mmdc";
+	for i.MX6UL/i.MX6ULL/i.MX6ULZ:
+	- "fsl,imx6ul-mmdc", "fsl,imx6q-mmdc";
+	for i.MX7ULP:
+	- "fsl,imx7ulp-mmdc", "fsl,imx6q-mmdc";
+- reg : address and size of MMDC DDR controller registers
+
+Optional properties :
+- clocks : the clock provided by the SoC to access the MMDC registers
+
+Example :
+	mmdc0: memory-controller@21b0000 { /* MMDC0 */
+		compatible = "fsl,imx6q-mmdc";
+		reg = <0x021b0000 0x4000>;
+		clocks = <&clks IMX6QDL_CLK_MMDC_P0_IPG>;
+	};
+
+	mmdc1: memory-controller@21b4000 { /* MMDC1 */
+		compatible = "fsl,imx6q-mmdc";
+		reg = <0x021b4000 0x4000>;
+		status = "disabled";
+	};
-- 
2.7.4


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

* [PATCH V5 2/4] ARM: dts: imx7ulp: add mmdc support
  2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
@ 2019-03-12  2:24 ` Anson Huang
  2019-03-12  2:24 ` [PATCH V5 3/4] ARM: dts: imx: make MMDC node name generic Anson Huang
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Anson Huang @ 2019-03-12  2:24 UTC (permalink / raw)
  To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: dl-linux-imx

i.MX7ULP has a MMDC module to control DDR, it reuses
i.MX6Q's MMDC module, add support for it.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
---
No changes.
---
 arch/arm/boot/dts/imx7ulp.dtsi | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/imx7ulp.dtsi b/arch/arm/boot/dts/imx7ulp.dtsi
index fca6e50..eb349fd 100644
--- a/arch/arm/boot/dts/imx7ulp.dtsi
+++ b/arch/arm/boot/dts/imx7ulp.dtsi
@@ -286,6 +286,12 @@
 			status = "disabled";
 		};
 
+		memory-controller@40ab0000 {
+			compatible = "fsl,imx7ulp-mmdc", "fsl,imx6q-mmdc";
+			reg = <0x40ab0000 0x1000>;
+			clocks = <&pcc3 IMX7ULP_CLK_MMDC>;
+		};
+
 		iomuxc1: pinctrl@40ac0000 {
 			compatible = "fsl,imx7ulp-iomuxc1";
 			reg = <0x40ac0000 0x1000>;
-- 
2.7.4


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

* [PATCH V5 3/4] ARM: dts: imx: make MMDC node name generic
  2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
  2019-03-12  2:24 ` [PATCH V5 2/4] ARM: dts: imx7ulp: add mmdc support Anson Huang
@ 2019-03-12  2:24 ` Anson Huang
  2019-03-12  2:24 ` [PATCH V5 4/4] ARM: dts: imx6qdl: Improve mmdc1 node Anson Huang
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Anson Huang @ 2019-03-12  2:24 UTC (permalink / raw)
  To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: dl-linux-imx

Node name should be generic, so use "memory-controller"
instead of "mmdc" for MMDC node name, also remove "mmdc"
label for platforms with single MMDC node.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
---
No changes.
---
 arch/arm/boot/dts/imx6qdl.dtsi | 4 ++--
 arch/arm/boot/dts/imx6sl.dtsi  | 2 +-
 arch/arm/boot/dts/imx6sx.dtsi  | 2 +-
 arch/arm/boot/dts/imx6ul.dtsi  | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
index fe17a34..4c7278b 100644
--- a/arch/arm/boot/dts/imx6qdl.dtsi
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
@@ -1129,13 +1129,13 @@
 				reg = <0x021ac000 0x4000>;
 			};
 
-			mmdc0: mmdc@21b0000 { /* MMDC0 */
+			mmdc0: memory-controller@21b0000 { /* MMDC0 */
 				compatible = "fsl,imx6q-mmdc";
 				reg = <0x021b0000 0x4000>;
 				clocks = <&clks IMX6QDL_CLK_MMDC_P0_IPG>;
 			};
 
-			mmdc1: mmdc@21b4000 { /* MMDC1 */
+			mmdc1: memory-controller@21b4000 { /* MMDC1 */
 				reg = <0x021b4000 0x4000>;
 			};
 
diff --git a/arch/arm/boot/dts/imx6sl.dtsi b/arch/arm/boot/dts/imx6sl.dtsi
index 4b4813f..733ea50 100644
--- a/arch/arm/boot/dts/imx6sl.dtsi
+++ b/arch/arm/boot/dts/imx6sl.dtsi
@@ -922,7 +922,7 @@
 				status = "disabled";
 			};
 
-			mmdc: mmdc@21b0000 {
+			memory-controller@21b0000 {
 				compatible = "fsl,imx6sl-mmdc", "fsl,imx6q-mmdc";
 				reg = <0x021b0000 0x4000>;
 				clocks = <&clks IMX6SL_CLK_MMDC_P0_IPG>;
diff --git a/arch/arm/boot/dts/imx6sx.dtsi b/arch/arm/boot/dts/imx6sx.dtsi
index 5b16e65..df0c595 100644
--- a/arch/arm/boot/dts/imx6sx.dtsi
+++ b/arch/arm/boot/dts/imx6sx.dtsi
@@ -1017,7 +1017,7 @@
 				status = "disabled";
 			};
 
-			mmdc: mmdc@21b0000 {
+			memory-controller@21b0000 {
 				compatible = "fsl,imx6sx-mmdc", "fsl,imx6q-mmdc";
 				reg = <0x021b0000 0x4000>;
 				clocks = <&clks IMX6SX_CLK_MMDC_P0_IPG>;
diff --git a/arch/arm/boot/dts/imx6ul.dtsi b/arch/arm/boot/dts/imx6ul.dtsi
index 62ed30c..a77bbca 100644
--- a/arch/arm/boot/dts/imx6ul.dtsi
+++ b/arch/arm/boot/dts/imx6ul.dtsi
@@ -914,7 +914,7 @@
 				status = "disabled";
 			};
 
-			mmdc: mmdc@21b0000 {
+			memory-controller@21b0000 {
 				compatible = "fsl,imx6ul-mmdc", "fsl,imx6q-mmdc";
 				reg = <0x021b0000 0x4000>;
 				clocks = <&clks IMX6UL_CLK_MMDC_P0_IPG>;
-- 
2.7.4


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

* [PATCH V5 4/4] ARM: dts: imx6qdl: Improve mmdc1 node
  2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
  2019-03-12  2:24 ` [PATCH V5 2/4] ARM: dts: imx7ulp: add mmdc support Anson Huang
  2019-03-12  2:24 ` [PATCH V5 3/4] ARM: dts: imx: make MMDC node name generic Anson Huang
@ 2019-03-12  2:24 ` Anson Huang
  2019-03-12 13:09 ` [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Rob Herring
  2019-03-21  5:50 ` Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Anson Huang @ 2019-03-12  2:24 UTC (permalink / raw)
  To: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
	devicetree, linux-kernel, linux-arm-kernel
  Cc: dl-linux-imx

Add MMDC1 compatible string which is missing, and also set
it to be disabled by default, as most of the platforms ONLY
use single channel MMDC0, if dual MMDC channels are used, it
can be enabled in board dts file.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
New patch.
---
 arch/arm/boot/dts/imx6qdl.dtsi | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
index 4c7278b..8c51364 100644
--- a/arch/arm/boot/dts/imx6qdl.dtsi
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
@@ -1136,7 +1136,9 @@
 			};
 
 			mmdc1: memory-controller@21b4000 { /* MMDC1 */
+				compatible = "fsl,imx6q-mmdc";
 				reg = <0x021b4000 0x4000>;
+				status = "disabled";
 			};
 
 			weim: weim@21b8000 {
-- 
2.7.4


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

* Re: [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC  binding doc
  2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
                   ` (2 preceding siblings ...)
  2019-03-12  2:24 ` [PATCH V5 4/4] ARM: dts: imx6qdl: Improve mmdc1 node Anson Huang
@ 2019-03-12 13:09 ` Rob Herring
  2019-03-21  5:50 ` Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2019-03-12 13:09 UTC (permalink / raw)
  To: Anson Huang
  Cc: robh+dt, mark.rutland, shawnguo, s.hauer, kernel, festevam,
	devicetree, linux-kernel, linux-arm-kernel, dl-linux-imx

On Tue, 12 Mar 2019 02:24:08 +0000, Anson Huang wrote:
> Freescale MMDC (Multi Mode DDR Controller) driver is supported
> since i.MX6Q, but not yet documented, this patch adds binding
> doc for MMDC module driver.
> 
> Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
> ---
> Changes since V4:
> 	- update mmdc1 example.
> ---
>  .../bindings/memory-controllers/fsl/mmdc.txt       | 35 ++++++++++++++++++++++
>  1 file changed, 35 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/memory-controllers/fsl/mmdc.txt
> 

Reviewed-by: Rob Herring <robh@kernel.org>

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

* Re: [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc
  2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
                   ` (3 preceding siblings ...)
  2019-03-12 13:09 ` [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Rob Herring
@ 2019-03-21  5:50 ` Shawn Guo
  4 siblings, 0 replies; 6+ messages in thread
From: Shawn Guo @ 2019-03-21  5:50 UTC (permalink / raw)
  To: Anson Huang
  Cc: robh+dt, mark.rutland, s.hauer, kernel, festevam, devicetree,
	linux-kernel, linux-arm-kernel, dl-linux-imx

On Tue, Mar 12, 2019 at 02:24:08AM +0000, Anson Huang wrote:
> Freescale MMDC (Multi Mode DDR Controller) driver is supported
> since i.MX6Q, but not yet documented, this patch adds binding
> doc for MMDC module driver.
> 
> Signed-off-by: Anson Huang <Anson.Huang@nxp.com>

Applied all, thanks.

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

end of thread, other threads:[~2019-03-21  5:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-12  2:24 [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Anson Huang
2019-03-12  2:24 ` [PATCH V5 2/4] ARM: dts: imx7ulp: add mmdc support Anson Huang
2019-03-12  2:24 ` [PATCH V5 3/4] ARM: dts: imx: make MMDC node name generic Anson Huang
2019-03-12  2:24 ` [PATCH V5 4/4] ARM: dts: imx6qdl: Improve mmdc1 node Anson Huang
2019-03-12 13:09 ` [PATCH V5 1/4] dt-bindings: memory-controllers: freescale: add MMDC binding doc Rob Herring
2019-03-21  5:50 ` Shawn Guo

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).