[U-Boot] [PATCH 1/2] Tegra: fdt: Add/enhance sdhci (mmc) nodes for all T20 DT files

Tom Warren
2013-02-04T23:48:54Z

Linux dts files were used for those boards that didn't already
have sdhci info populated. If a cd-gpio was present, I set
"removable = <1>", else removable = <0>.

Signed-off-by: Tom Warren <twarren@nvidia.com>
---
arch/arm/dts/tegra20.dtsi | 12 +++++++++++
board/avionic-design/dts/tegra20-medcom-wide.dts | 9 ++++++++
board/avionic-design/dts/tegra20-plutux.dts | 9 ++++++++
board/avionic-design/dts/tegra20-tec.dts | 9 ++++++++
board/compal/dts/tegra20-paz00.dts | 22 +++++++++++++++++++-
board/compulab/dts/tegra20-trimslice.dts | 17 ++++++++++++++++
board/nvidia/dts/tegra20-harmony.dts | 21 ++++++++++++++++++++
board/nvidia/dts/tegra20-seaboard.dts | 19 ++++++++++++-----
board/nvidia/dts/tegra20-ventana.dts | 23 ++++++++++++++++++++++
board/nvidia/dts/tegra20-whistler.dts | 16 +++++++++++++++
board/toradex/dts/tegra20-colibri_t20_iris.dts | 8 +++++++
11 files changed, 157 insertions(+), 8 deletions(-)

diff --git a/arch/arm/dts/tegra20.dtsi b/arch/arm/dts/tegra20.dtsi
index 12049fd..2603277 100644
--- a/arch/arm/dts/tegra20.dtsi
+++ b/arch/arm/dts/tegra20.dtsi
@@ -307,23 +307,35 @@
compatible = "nvidia,tegra20-sdhci";
reg = <0xc8000000 0x200>;
interrupts = < 46 >;
+ status = "disabled";
+ /* PERIPH_ID_SDMMC1, PLLP_OUT? */
+ clocks = <&tegra_car 14>;
};

sdhci at c8000200 {
compatible = "nvidia,tegra20-sdhci";
reg = <0xc8000200 0x200>;
interrupts = < 47 >;
+ status = "disabled";
+ /* PERIPH_ID_SDMMC2, PLLP_OUT? */
+ clocks = <&tegra_car 9>;
};

sdhci at c8000400 {
compatible = "nvidia,tegra20-sdhci";
reg = <0xc8000400 0x200>;
interrupts = < 51 >;
+ status = "disabled";
+ /* PERIPH_ID_SDMMC3, PLLP_OUT? */
+ clocks = <&tegra_car 69>;
};

sdhci at c8000600 {
compatible = "nvidia,tegra20-sdhci";
reg = <0xc8000600 0x200>;
interrupts = < 63 >;
+ status = "disabled";
+ /* PERIPH_ID_SDMMC4, PLLP_OUT? */
+ clocks = <&tegra_car 15>;
};
};
diff --git a/board/avionic-design/dts/tegra20-medcom-wide.dts b/board/avionic-design/dts/tegra20-medcom-wide.dts
index e46afbe..33d174d 100644
--- a/board/avionic-design/dts/tegra20-medcom-wide.dts
+++ b/board/avionic-design/dts/tegra20-medcom-wide.dts
@@ -55,6 +55,15 @@
status = "disabled";
};

+ sdhci at c8000600 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 58 0>; /* gpio PH2 */
+ wp-gpios = <&gpio 59 0>; /* gpio PH3 */
+ bus-width = <4>;
+ removable = <1>;
+ };
+
lcd_panel: panel {
clock = <61715000>;
xres = <1366>;
diff --git a/board/avionic-design/dts/tegra20-plutux.dts b/board/avionic-design/dts/tegra20-plutux.dts
index 3e6cce0..3a0147f 100644
--- a/board/avionic-design/dts/tegra20-plutux.dts
+++ b/board/avionic-design/dts/tegra20-plutux.dts
@@ -41,4 +41,13 @@
usb at c5004000 {
status = "disabled";
};
+
+ sdhci at c8000600 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 58 0>; /* gpio PH2 */
+ wp-gpios = <&gpio 59 0>; /* gpio PH3 */
+ bus-width = <4>;
+ removable = <1>;
+ };
};
diff --git a/board/avionic-design/dts/tegra20-tec.dts b/board/avionic-design/dts/tegra20-tec.dts
index bf3ff1d..521a255 100644
--- a/board/avionic-design/dts/tegra20-tec.dts
+++ b/board/avionic-design/dts/tegra20-tec.dts
@@ -66,6 +66,15 @@
status = "disabled";
};

+ sdhci at c8000600 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 58 0>; /* gpio PH2 */
+ wp-gpios = <&gpio 59 0>; /* gpio PH3 */
+ bus-width = <4>;
+ removable = <1>;
+ };
+
lcd_panel: panel {
clock = <33260000>;
xres = <800>;
diff --git a/board/compal/dts/tegra20-paz00.dts b/board/compal/dts/tegra20-paz00.dts
index 31b064d..ed709c8 100644
--- a/board/compal/dts/tegra20-paz00.dts
+++ b/board/compal/dts/tegra20-paz00.dts
@@ -3,11 +3,13 @@
/include/ ARCH_CPU_DTS

/ {
- model = "Toshiba AC100 / Dynabook AZ";
- compatible = "compal,paz00", "nvidia,tegra20";
+ model = "Toshiba AC100 / Dynabook AZ";
+ compatible = "compal,paz00", "nvidia,tegra20";

aliases {
usb0 = "/usb at c5008000";
+ sdmmc0 = "/sdhci at c8000600";
+ sdmmc1 = "/sdhci at c8000000";
};

memory {
@@ -53,6 +55,22 @@
status = "disabled";
};

+ sdhci at c8000000 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 173 0>; /* gpio PV5 */
+ wp-gpios = <&gpio 57 0>; /* gpio PH1 */
+ power-gpios = <&gpio 169 0>; /* gpio PV1 */
+ bus-width = <4>;
+ removable = <1>;
+ };
+
+ sdhci at c8000600 {
+ status = "okay";
+ bus-width = <8>;
+ removable = <0>;
+ };
+
lcd_panel: panel {
/* PAZ00 has 1024x600 */
clock = <54030000>;
diff --git a/board/compulab/dts/tegra20-trimslice.dts b/board/compulab/dts/tegra20-trimslice.dts
index c8a4dd4..0ab1c1d 100644
--- a/board/compulab/dts/tegra20-trimslice.dts
+++ b/board/compulab/dts/tegra20-trimslice.dts
@@ -9,6 +9,8 @@
aliases {
usb0 = "/usb at c5008000";
usb1 = "/usb at c5000000";
+ sdmmc0 = "/sdhci at c8000600";
+ sdmmc1 = "/sdhci at c8000000";
};

memory {
@@ -42,4 +44,19 @@
usb at c5004000 {
status = "disabled";
};
+
+ sdhci at c8000000 {
+ status = "okay";
+ bus-width = <4>;
+ removable = <0>;
+ };
+
+ sdhci at c8000600 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 121 0>; /* gpio PP1 */
+ wp-gpios = <&gpio 122 0>; /* gpio PP2 */
+ bus-width = <4>;
+ removable = <1>;
+ };
};
diff --git a/board/nvidia/dts/tegra20-harmony.dts b/board/nvidia/dts/tegra20-harmony.dts
index aeda3a1..de7ebdc 100644
--- a/board/nvidia/dts/tegra20-harmony.dts
+++ b/board/nvidia/dts/tegra20-harmony.dts
@@ -9,6 +9,8 @@
aliases {
usb0 = "/usb at c5008000";
usb1 = "/usb at c5004000";
+ sdmmc0 = "/sdhci at c8000600";
+ sdmmc1 = "/sdhci at c8000200";
};

memory {
@@ -52,4 +54,23 @@
usb at c5004000 {
nvidia,phy-reset-gpio = <&gpio 169 0>; /* gpio PV1 */
};
+
+ sdhci at c8000200 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 69 0>; /* gpio PI5 */
+ wp-gpios = <&gpio 57 0>; /* gpio PH1 */
+ power-gpios = <&gpio 155 0>; /* gpio PT3 */
+ bus-width = <4>;
+ removeable = <1>;
+ };
+
+ sdhci at c8000600 {
+ status = "okay";
+ cd-gpios = <&gpio 58 0>; /* gpio PH2 */
+ wp-gpios = <&gpio 59 0>; /* gpio PH3 */
+ power-gpios = <&gpio 70 0>; /* gpio PI6 */
+ bus-width = <8>;
+ removeable = <1>;
+ };
};
diff --git a/board/nvidia/dts/tegra20-seaboard.dts b/board/nvidia/dts/tegra20-seaboard.dts
index 527a296..1b1f563 100644
--- a/board/nvidia/dts/tegra20-seaboard.dts
+++ b/board/nvidia/dts/tegra20-seaboard.dts
@@ -12,14 +12,15 @@
};

aliases {
- /* This defines the order of our USB ports */
+ /* This defines the order of our ports */
usb0 = "/usb at c5008000";
usb1 = "/usb at c5000000";
-
i2c0 = "/i2c at 7000d000";
i2c1 = "/i2c at 7000c000";
i2c2 = "/i2c at 7000c400";
i2c3 = "/i2c at 7000c500";
+ sdmmc0 = "/sdhci at c8000600";
+ sdmmc1 = "/sdhci at c8000400";
};

memory {
@@ -156,13 +157,19 @@
};

sdhci at c8000400 {
- cd-gpios = <&gpio 69 0>; /* gpio PI5 */
- wp-gpios = <&gpio 57 0>; /* gpio PH1 */
- power-gpios = <&gpio 70 0>; /* gpio PI6 */
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 69 0>; /* card detect, gpio PI5 */
+ wp-gpios = <&gpio 57 0>; /* write protect, gpio PH1 */
+ power-gpios = <&gpio 70 3>; /* power enable, gpio PI6 */
+ bus-width = <4>;
+ removable = <1>;
};

sdhci at c8000600 {
- support-8bit;
+ status = "okay";
+ bus-width = <8>;
+ removable = <0>;
};

lcd_panel: panel {
diff --git a/board/nvidia/dts/tegra20-ventana.dts b/board/nvidia/dts/tegra20-ventana.dts
index 3e5e39d..fed27ab 100644
--- a/board/nvidia/dts/tegra20-ventana.dts
+++ b/board/nvidia/dts/tegra20-ventana.dts
@@ -41,4 +41,27 @@
usb at c5004000 {
status = "disabled";
};
+
+ sdhci at c8000000 {
+ status = "okay";
+ power-gpios = <&gpio 86 0>; /* gpio PK6 */
+ bus-width = <4>;
+ removable = <0>;
+ };
+
+ sdhci at c8000400 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cd-gpios = <&gpio 69 0>; /* gpio PI5 */
+ wp-gpios = <&gpio 57 0>; /* gpio PH1 */
+ power-gpios = <&gpio 70 0>; /* gpio PI6 */
+ bus-width = <4>;
+ removable = <1>;
+ };
+
+ sdhci at c8000600 {
+ status = "okay";
+ bus-width = <8>;
+ removable = <0>;
+ };
};
diff --git a/board/nvidia/dts/tegra20-whistler.dts b/board/nvidia/dts/tegra20-whistler.dts
index 4579557..ae198bd 100644
--- a/board/nvidia/dts/tegra20-whistler.dts
+++ b/board/nvidia/dts/tegra20-whistler.dts
@@ -9,6 +9,8 @@
aliases {
i2c0 = "/i2c at 7000d000";
usb0 = "/usb at c5008000";
+ sdmmc0 = "/sdhci at c8000600";
+ sdmmc1 = "/sdhci at c8000400";
};

memory {
@@ -57,4 +59,18 @@
usb at c5004000 {
status = "disabled";
};
+
+ sdhci at c8000400 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ wp-gpios = <&gpio 173 0>; /* gpio PV5 */
+ bus-width = <8>;
+ removable = <1>;
+ };
+
+ sdhci at c8000600 {
+ status = "okay";
+ bus-width = <8>;
+ removable = <0>;
+ };
};
diff --git a/board/toradex/dts/tegra20-colibri_t20_iris.dts b/board/toradex/dts/tegra20-colibri_t20_iris.dts
index c29b43a..1689e1a 100644
--- a/board/toradex/dts/tegra20-colibri_t20_iris.dts
+++ b/board/toradex/dts/tegra20-colibri_t20_iris.dts
@@ -35,4 +35,12 @@
compatible = "nand-flash";
};
};
+
+ sdhci at c8000400 {
+ status = "okay";
+ /* Parameter 3 bit 0:1=output, 0=input; bit 1:1=high, 0=low */
+ cp-gpios = <&gpio 39 0>; /* gpio PC7 */
+ bus-width = <4>;
+ removable = <1>;
+ };
};
--
1.7.0.4