Skip to contentSkip to conversation

ARM: dts: omap5: EMIF and LPDDR2 device tree data

PATCH Superseded Lokesh Vutla 2 participants 10 messages Oct 11, 2012 – Nov 5, 2012 Device tree bindings

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

v2 cover ARM: dts: omap5: EMIF and LPDDR2 device tree data

This patch series adds Device tree data for the EMIF sdram controllers in OMAP5 and LPDDR2 memory devices in OMAP5-evm board.

Testing:
- Boot tested on OMAP5430 evm.
- Built EMIF as a module.

Changes from v1:
* Created a seperate dtsi file for Samsung LPDDR2 memory device used in OMAP5-evm.
* Passing reg and interrupt fields from dt for EMIF1 and EMIF2.

Lokesh Vutla (3):
ARM: dts: omap5-evm: Fix size of memory defined for EVM
ARM: dts: omap5: EMIF device tree data for OMAP5 boards
ARM: dts: omap5-evm: LPDDR2 memory device details for EVM

 arch/arm/boot/dts/omap5-evm.dts           |   13 +++++-
 arch/arm/boot/dts/omap5.dtsi              |   24 +++++++++++
 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi |   67 +++++++++++++++++++++++++++++
 3 files changed, 103 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi
Signature · 1 line
1.7.10.4
#1 lore raw

PATCH v2 1/3 ARM: dts: omap5-evm: Fix size of memory defined for EVM

Memory present for OMAP5-evm is 2GB. But in dts file it is specified as 1GB. Correcting the same.

---
 arch/arm/boot/dts/omap5-evm.dts |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/omap5-evm.dts +1 -1
index 9c41a3f..6f87e1a 100644
@@ -15,7 +15,7 @@
 
 	memory {
 		device_type = "memory";
-		reg = <0x80000000 0x40000000>; /* 1 GB */
+		reg = <0x80000000 0x80000000>; /* 2 GB */
 	};
 
 	vmmcsd_fixed: fixedregulator-mmcsd {
Signature · 1 line
1.7.10.4
#2 lore raw

PATCH v2 2/3 ARM: dts: omap5: EMIF device tree data for OMAP5 boards

In reply to Lokesh Vutla

Adding EMIF device tree data for OMAP5 boards.

---
 arch/arm/boot/dts/omap5.dtsi |   24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm/boot/dts/omap5.dtsi +24 -0
index 5db33f4..445aeea 100644
@@ -319,5 +319,29 @@
 			ti,buffer-size = <128>;
 			ti,hwmods = "mcbsp3";
 		};
+
+		emif1: emif at 0x4c000000 {
+			compatible	= "ti,emif-4d5";
+			ti,hwmods	= "emif1";
+			phy-type	= <2>;
+			reg = <0x4c000000 0x3ff>;
+			interrupts = <0 110 0x4>;
+			interrupt-parent = <&gic>;
+			hw-caps-read-idle-ctrl;
+			hw-caps-ll-interface;
+			hw-caps-temp-alert;
+		};
+
+		emif2: emif at 0x4d000000 {
+			compatible	= "ti,emif-4d5";
+			ti,hwmods	= "emif2";
+			phy-type	= <2>;
+			reg = <0x4d000000 0x3ff>;
+			interrupts = <0 111 0x4>;
+			interrupt-parent = <&gic>;
+			hw-caps-read-idle-ctrl;
+			hw-caps-ll-interface;
+			hw-caps-temp-alert;
+		};
 	};
 };
Signature · 1 line
1.7.10.4
#3 lore raw

PATCH v2 2/3 ARM: dts: omap5: EMIF device tree data for OMAP5 boards

Quoted 12 lines · Lokesh Vutla

Adding EMIF device tree data for OMAP5 boards.

---
 arch/arm/boot/dts/omap5.dtsi |   24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
arch/arm/boot/dts/omap5.dtsi +0 -0
index 5db33f4..445aeea 100644

arch/arm/boot/dts/omap5.dtsi line 327

Quoted 9 lines
arch/arm/boot/dts/omap5.dtsi +6 -0
@@ -319,5 +319,29 @@
 			ti,buffer-size = <128>;
 			ti,hwmods = "mcbsp3";
 		};
+
+		emif1: emif at 0x4c000000 {
+			compatible	= "ti,emif-4d5";
+			ti,hwmods	= "emif1";
+			phy-type	= <2>;
+			reg = <0x4c000000 0x3ff>;

Should 0x400. This parameter is the size, not the end address.

arch/arm/boot/dts/omap5.dtsi line 329

Quoted 2 lines
arch/arm/boot/dts/omap5.dtsi +2 -0
+			interrupts = <0 110 0x4>;
+			interrupt-parent = <&gic>;

Please remove the interrupt-parent. It is not needed since DT will use the parent node to get it. It will avoid duplicating the entry for every nodes.

arch/arm/boot/dts/omap5.dtsi line 338

Quoted 9 lines
arch/arm/boot/dts/omap5.dtsi +9 -0
+			hw-caps-read-idle-ctrl;
+			hw-caps-ll-interface;
+			hw-caps-temp-alert;
+		};
+
+		emif2: emif at 0x4d000000 {
+			compatible	= "ti,emif-4d5";
+			ti,hwmods	= "emif2";
+			phy-type	= <2>;

Can you just add a comment to give more information. I know this is in the binding documentation, but some more comment never hurt.

arch/arm/boot/dts/omap5.dtsi line 339

Quoted 1 line
arch/arm/boot/dts/omap5.dtsi +1 -0
+			reg = <0x4d000000 0x3ff>;

0x400 as well.

arch/arm/boot/dts/omap5.dtsi line 341

Quoted 2 lines
arch/arm/boot/dts/omap5.dtsi +2 -0
+			interrupts = <0 111 0x4>;
+			interrupt-parent = <&gic>;

Ditto.

arch/arm/boot/dts/omap5.dtsi line 347

Quoted 7 lines
arch/arm/boot/dts/omap5.dtsi +4 -0
+			hw-caps-read-idle-ctrl;
+			hw-caps-ll-interface;
+			hw-caps-temp-alert;
+		};
 	};
 };

Regards,
Benoit

#4 lore raw

PATCH v2 3/3 ARM: dts: omap5-evm: LPDDR2 memory device details for EVM

In reply to Lokesh Vutla

Samsung's K3PE0E000B memory part is used in OMAP5-evm board. Adding timings and geometry details for Samsung's memory part and attaching the same to device-handle of EMIF1/2.

---
 arch/arm/boot/dts/omap5-evm.dts           |   11 +++++
 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi |   67 +++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+)
 create mode 100644 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi
arch/arm/boot/dts/omap5-evm.dts +11 -0
index 6f87e1a..ed1d1b5 100644
@@ -8,6 +8,7 @@
 /dts-v1/;
 
 /include/ "omap5.dtsi"
+/include/ "samsung_k3pe0e000b.dtsi"
 
 / {
 	model = "TI OMAP5 EVM board";
@@ -82,3 +83,13 @@
 			0x020700d9>;	/* SEARCH */
 	linux,input-no-autorepeat;
 };
+
+&emif1 {
+	cs1-used;
+	device-handle = <&samsung_K3PE0E000B>;
+};
+
+&emif2 {
+	cs1-used;
+	device-handle = <&samsung_K3PE0E000B>;
+};
arch/arm/boot/dts/samsung_k3pe0e000b.dtsi new file +67 -0

67 lines not on this page · raw message

Signature · 1 line
1.7.10.4
#5 lore raw

PATCH v2 3/3 ARM: dts: omap5-evm: LPDDR2 memory device details for EVM

Quoted 56 lines · Lokesh Vutla

Samsung's K3PE0E000B memory part is used in OMAP5-evm board. Adding timings and geometry details for Samsung's memory part and attaching the same to device-handle of EMIF1/2.

---
 arch/arm/boot/dts/omap5-evm.dts           |   11 +++++
 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi |   67 +++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+)
 create mode 100644 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi
arch/arm/boot/dts/omap5-evm.dts +11 -0
index 6f87e1a..ed1d1b5 100644
@@ -8,6 +8,7 @@
 /dts-v1/;
 
 /include/ "omap5.dtsi"
+/include/ "samsung_k3pe0e000b.dtsi"
 
 / {
 	model = "TI OMAP5 EVM board";
@@ -82,3 +83,13 @@
 			0x020700d9>;	/* SEARCH */
 	linux,input-no-autorepeat;
 };
+
+&emif1 {
+	cs1-used;
+	device-handle = <&samsung_K3PE0E000B>;
+};
+
+&emif2 {
+	cs1-used;
+	device-handle = <&samsung_K3PE0E000B>;
+};
arch/arm/boot/dts/samsung_k3pe0e000b.dtsi new file +13 -0
new file mode 100644
index 0000000..b352d69
@@ -0,0 +1,67 @@
+/*
+ * Timings and Geometry for Samsung K3PE0E000B memory part
+ */
+
+/ {
+	samsung_K3PE0E000B: lpddr2 {
+		compatible	= "Samsung,K3PE0E000B","jedec,lpddr2-s4";
+		density		= <4096>;
+		io-width	= <32>;
+
+		tRPab-min-tck	= <3>;
+		tRCD-min-tck	= <3>;
+		tWR-min-tck	= <3>;

arch/arm/boot/dts/samsung_k3pe0e000b.dtsi line 23

Quoted 10 lines
arch/arm/boot/dts/samsung_k3pe0e000b.dtsi new file +10 -0
+		tRASmin-min-tck	= <3>;
+		tRRD-min-tck	= <2>;
+		tWTR-min-tck	= <2>;
+		tXP-min-tck	= <2>;
+		tRTP-min-tck	= <2>;
+		tCKE-min-tck	= <3>;
+		tCKESR-min-tck	= <3>;
+		tFAW-min-tck	= <8>;
+
+		timings_samsung_K3PE0E000B_533mhz: lpddr2-timings at 0 {

Nit, but the official unit is: MHz [1].

Regards,
Benoit

[1] http://www.bipm.org/utils/common/pdf/si_brochure_8_en.pdf

#6 lore raw

v2 cover ARM: dts: omap5: EMIF and LPDDR2 device tree data

In reply to Lokesh Vutla

Hi,

Quoted 4 lines · Lokesh Vutla

This patch series adds Device tree data for the EMIF sdram controllers in OMAP5 and LPDDR2 memory devices in OMAP5-evm board.

Quoted 8 lines

Testing:
- Boot tested on OMAP5430 evm.
- Built EMIF as a module.

Changes from v1:
* Created a seperate dtsi file for Samsung LPDDR2 memory device used in OMAP5-evm.
* Passing reg and interrupt fields from dt for EMIF1 and EMIF2.

Gentle ping on this series.

Thanks
Lokesh

Quoted 12 lines

Lokesh Vutla (3):
ARM: dts: omap5-evm: Fix size of memory defined for EVM
ARM: dts: omap5: EMIF device tree data for OMAP5 boards
ARM: dts: omap5-evm: LPDDR2 memory device details for EVM

  arch/arm/boot/dts/omap5-evm.dts           |   13 +++++-
  arch/arm/boot/dts/omap5.dtsi              |   24 +++++++++++
  arch/arm/boot/dts/samsung_k3pe0e000b.dtsi |   67 +++++++++++++++++++++++++++++
  3 files changed, 103 insertions(+), 1 deletion(-)

create mode 100644 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi

#7 lore raw

v2 cover ARM: dts: omap5: EMIF and LPDDR2 device tree data

Hi Lokesh,

Quoted 10 lines · Lokesh Vutla

Hi,

Quoted 8 lines · Lokesh Vutla

This patch series adds Device tree data for the EMIF sdram controllers in OMAP5 and LPDDR2 memory devices in OMAP5-evm board.

Testing:
- Boot tested on OMAP5430 evm.
- Built EMIF as a module.

Quoted 5 lines
Quoted 4 lines

Changes from v1:
* Created a seperate dtsi file for Samsung LPDDR2 memory device used in OMAP5-evm.
* Passing reg and interrupt fields from dt for EMIF1 and EMIF2.

Gentle ping on this series.

Sorry, I missed it. It might be too late for 3.8, since Tony wanted us to push before -rc4. I'll pull the series anyway just in case.

I have a least one comment.

Regards,
Benoit

Quoted 17 lines

Thanks
Lokesh

Quoted 13 lines

Lokesh Vutla (3):
ARM: dts: omap5-evm: Fix size of memory defined for EVM
ARM: dts: omap5: EMIF device tree data for OMAP5 boards
ARM: dts: omap5-evm: LPDDR2 memory device details for EVM

  arch/arm/boot/dts/omap5-evm.dts           |   13 +++++-
  arch/arm/boot/dts/omap5.dtsi              |   24 +++++++++++
  arch/arm/boot/dts/samsung_k3pe0e000b.dtsi |   67
+++++++++++++++++++++++++++++
  3 files changed, 103 insertions(+), 1 deletion(-)

create mode 100644 arch/arm/boot/dts/samsung_k3pe0e000b.dtsi

#8 lore raw

v2 cover ARM: dts: omap5: EMIF and LPDDR2 device tree data

Quoted 17 lines · Benoit Cousson

Hi Lokesh,

Quoted 14 lines · Lokesh Vutla

Hi,

Quoted 12 lines · Lokesh Vutla

This patch series adds Device tree data for the EMIF sdram controllers in OMAP5 and LPDDR2 memory devices in OMAP5-evm board.

Testing:
- Boot tested on OMAP5430 evm.
- Built EMIF as a module.

Changes from v1:
* Created a seperate dtsi file for Samsung LPDDR2 memory device used in OMAP5-evm.
* Passing reg and interrupt fields from dt for EMIF1 and EMIF2.

Quoted 6 lines
Quoted 1 line

Gentle ping on this series.

Sorry, I missed it. It might be too late for 3.8, since Tony wanted us to push before -rc4. I'll pull the series anyway just in case.

I have a least one comment.

Could you just rebase on top of the for_3.8 branch, fix the minor comments and repost ASAP.

Thanks,
Benoit

#9 lore raw

v2 cover ARM: dts: omap5: EMIF and LPDDR2 device tree data

Hi Benoit,

Quoted 20 lines · Benoit Cousson
Quoted 19 lines · Benoit Cousson

Hi Lokesh,

Quoted 15 lines · Lokesh Vutla

Hi,

Quoted 4 lines · Lokesh Vutla

This patch series adds Device tree data for the EMIF sdram controllers in OMAP5 and LPDDR2 memory devices in OMAP5-evm board.

Quoted 8 lines

Testing:
- Boot tested on OMAP5430 evm.
- Built EMIF as a module.

Changes from v1:
* Created a seperate dtsi file for Samsung LPDDR2 memory device used in OMAP5-evm.
* Passing reg and interrupt fields from dt for EMIF1 and EMIF2.

Gentle ping on this series.

Quoted 7 lines
Quoted 4 lines

Sorry, I missed it. It might be too late for 3.8, since Tony wanted us to push before -rc4. I'll pull the series anyway just in case.

I have a least one comment.

Could you just rebase on top of the for_3.8 branch, fix the minor comments and repost ASAP.

OK I ll rebase and repost.

Thanks
Lokesh

Quoted 4 lines

Thanks,
Benoit