linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15
@ 2014-03-06  4:44 Simon Horman
  2014-03-06  4:44 ` [PATCH 1/7] ARM: shmobile: r8a7790: add Ether DT support Simon Horman
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Olof, Hi Kevin, Hi Arnd,

Please consider this fourth round of Renesas ARM based SoC DT updates for v3.15.

This pull request is based on the previous round of
such requests, tagged as renesas-dt3-for-v3.15,
which I have already sent a pull-request for.


The following changes since commit 367aaaea1d6c6496695ffd06b49590b8cfcb8aa5:

  ARM: shmobile: genmai: adapt dts to use native i2c driver (2014-02-18 11:35:30 +0900)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-dt4-for-v3.15

for you to fetch changes up to 2c60a7df72711fb8b4be1e6aa651ab166a8931bc:

  ARM: shmobile: Add SDHI devices for Koelsch DTS (2014-02-26 15:11:41 +0900)

----------------------------------------------------------------
Fourth Round of Renesas ARM Based SoC DT Updates for v3.15

* r8a7791 (R-Car M2) based koelsch board
  - Add SDHI devices
  - Add ethernet

* r8a7791 (R-Car M2) SoC
  - Correct clock index for i2c5

* r8a7790 (R-Car H2) based lager board
  - Add ethernet

----------------------------------------------------------------
Magnus Damm (2):
      ARM: shmobile: Add SDHI devices to r8a7791 DTSI
      ARM: shmobile: Add SDHI devices for Koelsch DTS

Sergei Shtylyov (4):
      ARM: shmobile: r8a7790: add Ether DT support
      ARM: shmobile: lager: add Ether DT support
      ARM: shmobile: r8a7791: add Ether DT support
      ARM: shmobile: koelsch: add Ether DT support

Wolfram Sang (1):
      ARM: shmobile: r8a7791: fix clock index for i2c5

 arch/arm/boot/dts/r8a7790-lager.dts   |  28 ++++++-
 arch/arm/boot/dts/r8a7790.dtsi        |  14 +++-
 arch/arm/boot/dts/r8a7791-koelsch.dts | 147 +++++++++++++++++++++++++++++++++-
 arch/arm/boot/dts/r8a7791.dtsi        |  43 +++++++++-
 4 files changed, 227 insertions(+), 5 deletions(-)

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

* [PATCH 1/7] ARM: shmobile: r8a7790: add Ether DT support
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 2/7] ARM: shmobile: lager: " Simon Horman
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Define the generic R8A7790 part of the Ether device node.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7790.dtsi | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi
index 6eb9613..e22520d 100644
--- a/arch/arm/boot/dts/r8a7790.dtsi
+++ b/arch/arm/boot/dts/r8a7790.dtsi
@@ -1,7 +1,8 @@
 /*
  * Device Tree Source for the r8a7790 SoC
  *
- * Copyright (C) 2013 Renesas Solutions Corp.
+ * Copyright (C) 2013-2014 Renesas Solutions Corp.
+ * Copyright (C) 2014 Cogent Embedded Inc.
  *
  * This file is licensed under the terms of the GNU General Public License
  * version 2.  This program is licensed "as is" without any warranty of any
@@ -379,6 +380,17 @@
 		status = "disabled";
 	};
 
+	ether: ethernet at ee700000 {
+		compatible = "renesas,ether-r8a7790";
+		reg = <0 0xee700000 0 0x400>;
+		interrupts = <0 162 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp8_clks R8A7790_CLK_ETHER>;
+		phy-mode = "rmii";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		status = "disabled";
+	};
+
 	sata0: sata at ee300000 {
 		compatible = "renesas,sata-r8a7790";
 		reg = <0 0xee300000 0 0x2000>;
-- 
1.8.5.2

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

* [PATCH 2/7] ARM: shmobile: lager: add Ether DT support
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
  2014-03-06  4:44 ` [PATCH 1/7] ARM: shmobile: r8a7790: add Ether DT support Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 3/7] ARM: shmobile: r8a7791: " Simon Horman
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Define the Lager board dependent part of the Ether device node.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7790-lager.dts | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts
index 26a9010..6e99eb2 100644
--- a/arch/arm/boot/dts/r8a7790-lager.dts
+++ b/arch/arm/boot/dts/r8a7790-lager.dts
@@ -1,7 +1,8 @@
 /*
  * Device Tree Source for the Lager board
  *
- * Copyright (C) 2013 Renesas Solutions Corp.
+ * Copyright (C) 2013-2014 Renesas Solutions Corp.
+ * Copyright (C) 2014 Cogent Embedded, Inc.
  *
  * This file is licensed under the terms of the GNU General Public License
  * version 2.  This program is licensed "as is" without any warranty of any
@@ -124,6 +125,16 @@
 		renesas,function = "scif0";
 	};
 
+	ether_pins: ether {
+		renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
+		renesas,function = "eth";
+	};
+
+	phy1_pins: phy1 {
+		renesas,groups = "intc_irq0";
+		renesas,function = "intc";
+	};
+
 	scif1_pins: serial1 {
 		renesas,groups = "scif1_data";
 		renesas,function = "scif1";
@@ -150,6 +161,21 @@
 	};
 };
 
+&ether {
+	pinctrl-0 = <&ether_pins &phy1_pins>;
+	pinctrl-names = "default";
+
+	phy-handle = <&phy1>;
+	renesas,ether-link-active-low;
+	status = "ok";
+
+	phy1: ethernet-phy at 1 {
+		reg = <1>;
+		interrupt-parent = <&irqc0>;
+		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+	};
+};
+
 &mmcif1 {
 	pinctrl-0 = <&mmc1_pins>;
 	pinctrl-names = "default";
-- 
1.8.5.2

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

* [PATCH 3/7] ARM: shmobile: r8a7791: add Ether DT support
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
  2014-03-06  4:44 ` [PATCH 1/7] ARM: shmobile: r8a7790: add Ether DT support Simon Horman
  2014-03-06  4:44 ` [PATCH 2/7] ARM: shmobile: lager: " Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 4/7] ARM: shmobile: koelsch: " Simon Horman
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Define the generic R8A7791 part of the Ether device node.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7791.dtsi | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi
index 1ab4f3d..45c369d 100644
--- a/arch/arm/boot/dts/r8a7791.dtsi
+++ b/arch/arm/boot/dts/r8a7791.dtsi
@@ -2,7 +2,8 @@
  * Device Tree Source for the r8a7791 SoC
  *
  * Copyright (C) 2013 Renesas Electronics Corporation
- * Copyright (C) 2013 Renesas Solutions Corp.
+ * Copyright (C) 2013-2014 Renesas Solutions Corp.
+ * Copyright (C) 2014 Cogent Embedded Inc.
  *
  * This file is licensed under the terms of the GNU General Public License
  * version 2.  This program is licensed "as is" without any warranty of any
@@ -407,6 +408,17 @@
 		status = "disabled";
 	};
 
+	ether: ethernet at ee700000 {
+		compatible = "renesas,ether-r8a7791";
+		reg = <0 0xee700000 0 0x400>;
+		interrupts = <0 162 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp8_clks R8A7791_CLK_ETHER>;
+		phy-mode = "rmii";
+		#address-cells = <1>;
+		#size-cells = <0>;
+		status = "disabled";
+	};
+
 	sata0: sata at ee300000 {
 		compatible = "renesas,sata-r8a7791";
 		reg = <0 0xee300000 0 0x2000>;
-- 
1.8.5.2

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

* [PATCH 4/7] ARM: shmobile: koelsch: add Ether DT support
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
                   ` (2 preceding siblings ...)
  2014-03-06  4:44 ` [PATCH 3/7] ARM: shmobile: r8a7791: " Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 5/7] ARM: shmobile: r8a7791: fix clock index for i2c5 Simon Horman
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Define the Koelsch board dependent part of the Ether device node.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7791-koelsch.dts | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts
index bf6ba0c..603af8c 100644
--- a/arch/arm/boot/dts/r8a7791-koelsch.dts
+++ b/arch/arm/boot/dts/r8a7791-koelsch.dts
@@ -2,7 +2,8 @@
  * Device Tree Source for the Koelsch board
  *
  * Copyright (C) 2013 Renesas Electronics Corporation
- * Copyright (C) 2013 Renesas Solutions Corp.
+ * Copyright (C) 2013-2014 Renesas Solutions Corp.
+ * Copyright (C) 2014 Cogent Embedded, Inc.
  *
  * This file is licensed under the terms of the GNU General Public License
  * version 2.  This program is licensed "as is" without any warranty of any
@@ -146,12 +147,37 @@
 		renesas,function = "scif1";
 	};
 
+	ether_pins: ether {
+		renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
+		renesas,function = "eth";
+	};
+
+	phy1_pins: phy1 {
+		renesas,groups = "intc_irq0";
+		renesas,function = "intc";
+	};
+
 	qspi_pins: spi {
 		renesas,groups = "qspi_ctrl", "qspi_data4";
 		renesas,function = "qspi";
 	};
 };
 
+&ether {
+	pinctrl-0 = <&ether_pins &phy1_pins>;
+	pinctrl-names = "default";
+
+	phy-handle = <&phy1>;
+	renesas,ether-link-active-low;
+	status = "ok";
+
+	phy1: ethernet-phy at 1 {
+		reg = <1>;
+		interrupt-parent = <&irqc0>;
+		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+	};
+};
+
 &sata0 {
 	status = "okay";
 };
-- 
1.8.5.2

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

* [PATCH 5/7] ARM: shmobile: r8a7791: fix clock index for i2c5
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
                   ` (3 preceding siblings ...)
  2014-03-06  4:44 ` [PATCH 4/7] ARM: shmobile: koelsch: " Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 6/7] ARM: shmobile: Add SDHI devices to r8a7791 DTSI Simon Horman
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Wolfram Sang <wsa@sang-engineering.com>

Signed-off-by: Wolfram Sang <wsa@sang-engineering.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7791.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi
index 45c369d..0852734 100644
--- a/arch/arm/boot/dts/r8a7791.dtsi
+++ b/arch/arm/boot/dts/r8a7791.dtsi
@@ -743,7 +743,7 @@
 			#clock-cells = <1>;
 			renesas,clock-indices = <
 				R8A7791_CLK_RCAN1 R8A7791_CLK_RCAN0 R8A7791_CLK_QSPI_MOD
-				R8A7791_CLK_I2C4 R8A7791_CLK_I2C4 R8A7791_CLK_I2C3
+				R8A7791_CLK_I2C5 R8A7791_CLK_I2C4 R8A7791_CLK_I2C3
 				R8A7791_CLK_I2C2 R8A7791_CLK_I2C1 R8A7791_CLK_I2C0
 			>;
 			clock-output-names =
-- 
1.8.5.2

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

* [PATCH 6/7] ARM: shmobile: Add SDHI devices to r8a7791 DTSI
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
                   ` (4 preceding siblings ...)
  2014-03-06  4:44 ` [PATCH 5/7] ARM: shmobile: r8a7791: fix clock index for i2c5 Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-06  4:44 ` [PATCH 7/7] ARM: shmobile: Add SDHI devices for Koelsch DTS Simon Horman
  2014-03-17  7:46 ` [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Olof Johansson
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Magnus Damm <damm@opensource.se>

Add SDHI0, SDHI1 and SDHI2 to the r8a7791 DTSI.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7791.dtsi | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi
index 0852734..b007f9e 100644
--- a/arch/arm/boot/dts/r8a7791.dtsi
+++ b/arch/arm/boot/dts/r8a7791.dtsi
@@ -246,6 +246,33 @@
 		#gpio-range-cells = <3>;
 	};
 
+	sdhi0: sd at ee100000 {
+		compatible = "renesas,sdhi-r8a7791";
+		reg = <0 0xee100000 0 0x200>;
+		interrupt-parent = <&gic>;
+		interrupts = <0 165 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp3_clks R8A7791_CLK_SDHI0>;
+		status = "disabled";
+	};
+
+	sdhi1: sd at ee140000 {
+		compatible = "renesas,sdhi-r8a7791";
+		reg = <0 0xee140000 0 0x100>;
+		interrupt-parent = <&gic>;
+		interrupts = <0 167 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp3_clks R8A7791_CLK_SDHI1>;
+		status = "disabled";
+	};
+
+	sdhi2: sd at ee160000 {
+		compatible = "renesas,sdhi-r8a7791";
+		reg = <0 0xee160000 0 0x100>;
+		interrupt-parent = <&gic>;
+		interrupts = <0 168 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp3_clks R8A7791_CLK_SDHI2>;
+		status = "disabled";
+	};
+
 	scifa0: serial at e6c40000 {
 		compatible = "renesas,scifa-r8a7791", "renesas,scifa";
 		reg = <0 0xe6c40000 0 64>;
-- 
1.8.5.2

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

* [PATCH 7/7] ARM: shmobile: Add SDHI devices for Koelsch DTS
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
                   ` (5 preceding siblings ...)
  2014-03-06  4:44 ` [PATCH 6/7] ARM: shmobile: Add SDHI devices to r8a7791 DTSI Simon Horman
@ 2014-03-06  4:44 ` Simon Horman
  2014-03-17  7:46 ` [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Olof Johansson
  7 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2014-03-06  4:44 UTC (permalink / raw)
  To: linux-arm-kernel

From: Magnus Damm <damm@opensource.se>

Add DT support for SDHI0, SDHI1 and SDHI2 on Koelsch.

The board specific handling of CD and WP pins are
using GPIOs. SDHI0 and SDHI1 are hooked up to regular
SD connectors while SDHI2 is using micro-SD which
is lacking WP signal.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 arch/arm/boot/dts/r8a7791-koelsch.dts | 119 ++++++++++++++++++++++++++++++++++
 1 file changed, 119 insertions(+)

diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts
index 603af8c..bdd73e6 100644
--- a/arch/arm/boot/dts/r8a7791-koelsch.dts
+++ b/arch/arm/boot/dts/r8a7791-koelsch.dts
@@ -103,6 +103,78 @@
 			gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
 		};
 	};
+
+	vcc_sdhi0: regulator at 0 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "SDHI0 Vcc";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
+	vccq_sdhi0: regulator at 1 {
+		compatible = "regulator-gpio";
+
+		regulator-name = "SDHI0 VccQ";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
+		gpios-states = <1>;
+		states = <3300000 1
+			  1800000 0>;
+	};
+
+	vcc_sdhi1: regulator at 2 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "SDHI1 Vcc";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
+	vccq_sdhi1: regulator at 3 {
+		compatible = "regulator-gpio";
+
+		regulator-name = "SDHI1 VccQ";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
+		gpios-states = <1>;
+		states = <3300000 1
+			  1800000 0>;
+	};
+
+	vcc_sdhi2: regulator at 4 {
+		compatible = "regulator-fixed";
+
+		regulator-name = "SDHI2 Vcc";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
+	vccq_sdhi2: regulator at 5 {
+		compatible = "regulator-gpio";
+
+		regulator-name = "SDHI2 VccQ";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <3300000>;
+
+		gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
+		gpios-states = <1>;
+		states = <3300000 1
+			  1800000 0>;
+	};
 };
 
 &extal_clk {
@@ -157,6 +229,21 @@
 		renesas,function = "intc";
 	};
 
+	sdhi0_pins: sd0 {
+		renesas,gpios = "sdhi0_data4", "sdhi0_ctrl";
+		renesas,function = "sdhi0";
+	};
+
+	sdhi1_pins: sd1 {
+		renesas,gpios = "sdhi1_data4", "sdhi1_ctrl";
+		renesas,function = "sdhi1";
+	};
+
+	sdhi2_pins: sd2 {
+		renesas,gpios = "sdhi2_data4", "sdhi2_ctrl";
+		renesas,function = "sdhi2";
+	};
+
 	qspi_pins: spi {
 		renesas,groups = "qspi_ctrl", "qspi_data4";
 		renesas,function = "qspi";
@@ -182,6 +269,38 @@
 	status = "okay";
 };
 
+&sdhi0 {
+	pinctrl-0 = <&sdhi0_pins>;
+	pinctrl-names = "default";
+
+	vmmc-supply = <&vcc_sdhi0>;
+	vqmmc-supply = <&vccq_sdhi0>;
+	cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
+	wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
+	status = "okay";
+};
+
+&sdhi1 {
+	pinctrl-0 = <&sdhi1_pins>;
+	pinctrl-names = "default";
+
+	vmmc-supply = <&vcc_sdhi1>;
+	vqmmc-supply = <&vccq_sdhi1>;
+	cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
+	wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
+	status = "okay";
+};
+
+&sdhi2 {
+	pinctrl-0 = <&sdhi2_pins>;
+	pinctrl-names = "default";
+
+	vmmc-supply = <&vcc_sdhi2>;
+	vqmmc-supply = <&vccq_sdhi2>;
+	cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
+	status = "okay";
+};
+
 &spi {
 	pinctrl-0 = <&qspi_pins>;
 	pinctrl-names = "default";
-- 
1.8.5.2

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

* [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15
  2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
                   ` (6 preceding siblings ...)
  2014-03-06  4:44 ` [PATCH 7/7] ARM: shmobile: Add SDHI devices for Koelsch DTS Simon Horman
@ 2014-03-17  7:46 ` Olof Johansson
  2014-04-03  6:16   ` Magnus Damm
  7 siblings, 1 reply; 12+ messages in thread
From: Olof Johansson @ 2014-03-17  7:46 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Mar 06, 2014 at 01:44:28PM +0900, Simon Horman wrote:
> Hi Olof, Hi Kevin, Hi Arnd,
> 
> Please consider this fourth round of Renesas ARM based SoC DT updates for v3.15.
> 
> This pull request is based on the previous round of
> such requests, tagged as renesas-dt3-for-v3.15,
> which I have already sent a pull-request for.
> 
> 
> The following changes since commit 367aaaea1d6c6496695ffd06b49590b8cfcb8aa5:
> 
>   ARM: shmobile: genmai: adapt dts to use native i2c driver (2014-02-18 11:35:30 +0900)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-dt4-for-v3.15

Hi,

I've merged this into next/dt. However, a general comment on these patches:

> Sergei Shtylyov (4):
>       ARM: shmobile: r8a7790: add Ether DT support
>       ARM: shmobile: lager: add Ether DT support
>       ARM: shmobile: r8a7791: add Ether DT support
>       ARM: shmobile: koelsch: add Ether DT support

I think you should consider doing a generic binding for the ethernet
controller, that specifies the data that the driver needs as part of the device
tree contents. that way you don't have to add a new _data structure for every
new SoC that implements things -- from taking a brief look at the driver there
seems to be a bit of boiler plate and/or several parts that share common
feature sets already.

Anyway, given the way the binding is written, this can be done later by adding
a generic compatible string that expects more properties, etc -- so it's not
something that needs to be done now. But I do recommend that as you add new
SoCs in the future (if you do).


-Olof

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

* [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15
  2014-03-17  7:46 ` [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Olof Johansson
@ 2014-04-03  6:16   ` Magnus Damm
  2014-04-03  6:23     ` Olof Johansson
  0 siblings, 1 reply; 12+ messages in thread
From: Magnus Damm @ 2014-04-03  6:16 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Mar 17, 2014 at 4:46 PM, Olof Johansson <olof@lixom.net> wrote:
> On Thu, Mar 06, 2014 at 01:44:28PM +0900, Simon Horman wrote:
>> Hi Olof, Hi Kevin, Hi Arnd,
>>
>> Please consider this fourth round of Renesas ARM based SoC DT updates for v3.15.
>>
>> This pull request is based on the previous round of
>> such requests, tagged as renesas-dt3-for-v3.15,
>> which I have already sent a pull-request for.
>>
>>
>> The following changes since commit 367aaaea1d6c6496695ffd06b49590b8cfcb8aa5:
>>
>>   ARM: shmobile: genmai: adapt dts to use native i2c driver (2014-02-18 11:35:30 +0900)
>>
>> are available in the git repository at:
>>
>>   git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-dt4-for-v3.15
>
> Hi,
>
> I've merged this into next/dt. However, a general comment on these patches:
>
>> Sergei Shtylyov (4):
>>       ARM: shmobile: r8a7790: add Ether DT support
>>       ARM: shmobile: lager: add Ether DT support
>>       ARM: shmobile: r8a7791: add Ether DT support
>>       ARM: shmobile: koelsch: add Ether DT support
>
> I think you should consider doing a generic binding for the ethernet
> controller, that specifies the data that the driver needs as part of the device
> tree contents. that way you don't have to add a new _data structure for every
> new SoC that implements things -- from taking a brief look at the driver there
> seems to be a bit of boiler plate and/or several parts that share common
> feature sets already.
>
> Anyway, given the way the binding is written, this can be done later by adding
> a generic compatible string that expects more properties, etc -- so it's not
> something that needs to be done now. But I do recommend that as you add new
> SoCs in the future (if you do).

Hi Olof,

Thanks for your suggestion. If I understand your proposal correctly
then you recommend us to make the driver more generic and
configuration driven based on configuration from DT. In general I
agree about this direction, but in the case of sh-eth this seems
difficult due to huge differences between different IP variants. And
to make it worse, the documentation is often of poor quality with no
real IP version information. Because of this we keep knowledge in the
driver and adjust behavior using the SoC number as suffix in the
compatible string. The SoC number is the only "stable id" we have that
is suitable for DT ABI unfortunately.

Of course I welcome further data sharing, cleanups and bug fixes for
this driver. If you can think of anything in particular please let me
or one of the sh-eth developers know. I will do my best to help you.

Thanks,

/ magnus

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

* [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15
  2014-04-03  6:16   ` Magnus Damm
@ 2014-04-03  6:23     ` Olof Johansson
  2014-04-03  6:45       ` Magnus Damm
  0 siblings, 1 reply; 12+ messages in thread
From: Olof Johansson @ 2014-04-03  6:23 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Magnus,

On Wed, Apr 2, 2014 at 11:16 PM, Magnus Damm <magnus.damm@gmail.com> wrote:
> On Mon, Mar 17, 2014 at 4:46 PM, Olof Johansson <olof@lixom.net> wrote:
>> On Thu, Mar 06, 2014 at 01:44:28PM +0900, Simon Horman wrote:
>>> Hi Olof, Hi Kevin, Hi Arnd,
>>>
>>> Please consider this fourth round of Renesas ARM based SoC DT updates for v3.15.
>>>
>>> This pull request is based on the previous round of
>>> such requests, tagged as renesas-dt3-for-v3.15,
>>> which I have already sent a pull-request for.
>>>
>>>
>>> The following changes since commit 367aaaea1d6c6496695ffd06b49590b8cfcb8aa5:
>>>
>>>   ARM: shmobile: genmai: adapt dts to use native i2c driver (2014-02-18 11:35:30 +0900)
>>>
>>> are available in the git repository at:
>>>
>>>   git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-dt4-for-v3.15
>>
>> Hi,
>>
>> I've merged this into next/dt. However, a general comment on these patches:
>>
>>> Sergei Shtylyov (4):
>>>       ARM: shmobile: r8a7790: add Ether DT support
>>>       ARM: shmobile: lager: add Ether DT support
>>>       ARM: shmobile: r8a7791: add Ether DT support
>>>       ARM: shmobile: koelsch: add Ether DT support
>>
>> I think you should consider doing a generic binding for the ethernet
>> controller, that specifies the data that the driver needs as part of the device
>> tree contents. that way you don't have to add a new _data structure for every
>> new SoC that implements things -- from taking a brief look at the driver there
>> seems to be a bit of boiler plate and/or several parts that share common
>> feature sets already.
>>
>> Anyway, given the way the binding is written, this can be done later by adding
>> a generic compatible string that expects more properties, etc -- so it's not
>> something that needs to be done now. But I do recommend that as you add new
>> SoCs in the future (if you do).
>
> Hi Olof,
>
> Thanks for your suggestion. If I understand your proposal correctly
> then you recommend us to make the driver more generic and
> configuration driven based on configuration from DT. In general I
> agree about this direction, but in the case of sh-eth this seems
> difficult due to huge differences between different IP variants. And
> to make it worse, the documentation is often of poor quality with no
> real IP version information. Because of this we keep knowledge in the
> driver and adjust behavior using the SoC number as suffix in the
> compatible string. The SoC number is the only "stable id" we have that
> is suitable for DT ABI unfortunately.
>
> Of course I welcome further data sharing, cleanups and bug fixes for
> this driver. If you can think of anything in particular please let me
> or one of the sh-eth developers know. I will do my best to help you.


My observation was mostly based on the fact that while there are a
number of tunables in the platform data, there seems to mostly be a
few different main collections of settings used. I.e. several of them
seem to share several of the tunables.

Maybe that's mostly coincidental, or maybe it's an indication that
most "similar-timeframe" SoCs used similar settings -- I don't know
enough to tell. Which is why I brought it up.


-Olof

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

* [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15
  2014-04-03  6:23     ` Olof Johansson
@ 2014-04-03  6:45       ` Magnus Damm
  0 siblings, 0 replies; 12+ messages in thread
From: Magnus Damm @ 2014-04-03  6:45 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Olof,

On Thu, Apr 3, 2014 at 3:23 PM, Olof Johansson <olof@lixom.net> wrote:
> Hi Magnus,
>
> On Wed, Apr 2, 2014 at 11:16 PM, Magnus Damm <magnus.damm@gmail.com> wrote:
>> On Mon, Mar 17, 2014 at 4:46 PM, Olof Johansson <olof@lixom.net> wrote:
>>> On Thu, Mar 06, 2014 at 01:44:28PM +0900, Simon Horman wrote:
>>>> Hi Olof, Hi Kevin, Hi Arnd,
>>>>
>>>> Please consider this fourth round of Renesas ARM based SoC DT updates for v3.15.
>>>>
>>>> This pull request is based on the previous round of
>>>> such requests, tagged as renesas-dt3-for-v3.15,
>>>> which I have already sent a pull-request for.
>>>>
>>>>
>>>> The following changes since commit 367aaaea1d6c6496695ffd06b49590b8cfcb8aa5:
>>>>
>>>>   ARM: shmobile: genmai: adapt dts to use native i2c driver (2014-02-18 11:35:30 +0900)
>>>>
>>>> are available in the git repository at:
>>>>
>>>>   git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git tags/renesas-dt4-for-v3.15
>>>
>>> Hi,
>>>
>>> I've merged this into next/dt. However, a general comment on these patches:
>>>
>>>> Sergei Shtylyov (4):
>>>>       ARM: shmobile: r8a7790: add Ether DT support
>>>>       ARM: shmobile: lager: add Ether DT support
>>>>       ARM: shmobile: r8a7791: add Ether DT support
>>>>       ARM: shmobile: koelsch: add Ether DT support
>>>
>>> I think you should consider doing a generic binding for the ethernet
>>> controller, that specifies the data that the driver needs as part of the device
>>> tree contents. that way you don't have to add a new _data structure for every
>>> new SoC that implements things -- from taking a brief look at the driver there
>>> seems to be a bit of boiler plate and/or several parts that share common
>>> feature sets already.
>>>
>>> Anyway, given the way the binding is written, this can be done later by adding
>>> a generic compatible string that expects more properties, etc -- so it's not
>>> something that needs to be done now. But I do recommend that as you add new
>>> SoCs in the future (if you do).
>>
>> Hi Olof,
>>
>> Thanks for your suggestion. If I understand your proposal correctly
>> then you recommend us to make the driver more generic and
>> configuration driven based on configuration from DT. In general I
>> agree about this direction, but in the case of sh-eth this seems
>> difficult due to huge differences between different IP variants. And
>> to make it worse, the documentation is often of poor quality with no
>> real IP version information. Because of this we keep knowledge in the
>> driver and adjust behavior using the SoC number as suffix in the
>> compatible string. The SoC number is the only "stable id" we have that
>> is suitable for DT ABI unfortunately.
>>
>> Of course I welcome further data sharing, cleanups and bug fixes for
>> this driver. If you can think of anything in particular please let me
>> or one of the sh-eth developers know. I will do my best to help you.
>
>
> My observation was mostly based on the fact that while there are a
> number of tunables in the platform data, there seems to mostly be a
> few different main collections of settings used. I.e. several of them
> seem to share several of the tunables.

I understand and agree. So similar SoCs may share the same tunables,
but if this is correct or not for all cases remains to be seen.

Actually, for sh-eth the documentation has been so poor that for some
SoCs we have to rely on undocumented registers. Because of the lacking
docs the question in my mind is where to draw the line for the ABI. By
keeping the compatible string fixed to the SoC suffix we make sure the
DTB remains compatible as long as the driver knows how to handle the
hardware. Then when we get a surprise data sheet update then we don't
have to break the ABI.

> Maybe that's mostly coincidental, or maybe it's an indication that
> most "similar-timeframe" SoCs used similar settings -- I don't know
> enough to tell. Which is why I brought it up.

Historically this driver was initially developed for SH-based SoCs,
and because of that the platform data interface supports a wider range
of devices than DT which is ARM-only. There may be some
"similar-timeframe" cases too. But for sh-eth it is a mix of fast and
gigabit ethernet controllers with RMII or GMII interfaces.

One way to deal with "similar tunables" is to break out similar
versions of the IP into a certain "software defined IP block version",
but wouldn't we describe the current state of the driver then instead
of the actual hardware? Just because the driver may work with two
different IP versions does not mean they are naturally hardware
compatible in my opinion.

To keep things simple I'd like to enforce a "SoC suffix" compatible
string policy for our drivers. I know it does not scale but in my
opinion this is the place for simplicity and stability. In parallel we
need to work on getting the IP version described in the documentation
as expected. Once we have IP version in the documentation then we can
use that in the compatible string and then hopefully we are in a
better place.

Thanks,

/ magnus

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

end of thread, other threads:[~2014-04-03  6:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-06  4:44 [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Simon Horman
2014-03-06  4:44 ` [PATCH 1/7] ARM: shmobile: r8a7790: add Ether DT support Simon Horman
2014-03-06  4:44 ` [PATCH 2/7] ARM: shmobile: lager: " Simon Horman
2014-03-06  4:44 ` [PATCH 3/7] ARM: shmobile: r8a7791: " Simon Horman
2014-03-06  4:44 ` [PATCH 4/7] ARM: shmobile: koelsch: " Simon Horman
2014-03-06  4:44 ` [PATCH 5/7] ARM: shmobile: r8a7791: fix clock index for i2c5 Simon Horman
2014-03-06  4:44 ` [PATCH 6/7] ARM: shmobile: Add SDHI devices to r8a7791 DTSI Simon Horman
2014-03-06  4:44 ` [PATCH 7/7] ARM: shmobile: Add SDHI devices for Koelsch DTS Simon Horman
2014-03-17  7:46 ` [GIT PULL] Fourth Round of Renesas ARM Based SoC DT Updates for v3.15 Olof Johansson
2014-04-03  6:16   ` Magnus Damm
2014-04-03  6:23     ` Olof Johansson
2014-04-03  6:45       ` Magnus Damm

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