Skip to contentSkip to conversation

ARM: dts: Better support for Gumstix Overo

PATCH New Florian Vaussard 4 participants 27 messages Jan 9, 2014 – Jan 17, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

cover ARM: dts: Better support for Gumstix Overo

Hello,

This series adds a number of improvements to Gumstix Overo.

Patch 1+2: fix an issue with the vendor prefix (reported long ago by Javier Martinez Canillas) Patch 3+4: add some missing pinctrl entries
Patch 5: completely turn off the PMIC on power off
Patch 6: enable the on-board Wifi
Patch 7: add the high-speed USB PHY
Patch 8: add specific timings for LAN9221 into a generic file
-> This might interest other people using the same chip, result in doubled bandwith

Patch 9: simplify omap3-tobi by using patch 8
Patch 10: add support for AT24C01 EEPROM used on expansion boards Patch 11: factorize parts common to all expansion boards Patch 12: rename omap3-tobi to omap3-overo-tobi
-> I do not know to which extent this might qualify as an API breakage,
but the new name is far better IMHO

Patch 13 to 17: add new extension boards (Palo43, Gallop43, Alto35, Chestnut43, Summit) Patch 18: add the HDMI output
-> this patch depends on Tomi Valkeinen's DT binding for OMAPDSS, which is
not yet merged, so this patch will have to wait

The patches 13 to 17 are based on the hardware schematics and compile-tested, as I do not have the necessary hardware (anyone willing to send me some boards ? :-) We are mainly missing the support for the various LCDs, the accelerometer + probably other small things.

This series is based on Tony's omap-for-v3.14/dt branch + work from Tomi [1] for the patch 18.

Benoit: I guess that I am too late for the 3.14... ?

Regards,

Florian

Florian Vaussard (18):
of: add vendor prefix for Gumstix
ARM: dts: omap3-tobi: Use the correct vendor prefix
ARM: dts: omap3-tobi: Add missing pinctrl
ARM: dts: omap3-overo: Add missing pinctrl
ARM: dts: omap3-overo: Use complete poweroff
ARM: dts: omap3-overo: Enable MMC2
ARM: dts: omap3-overo: Add HSUSB PHY
ARM: dts: omap: Add common file for SMSC9221
ARM: dts: omap3-tobi: Use include file omap-gpmc-smsc9221
ARM: dts: omap3-tobi: Add AT24C01 EEPROM
ARM: dts: omap3-tobi: Create a file for common Gumstix peripherals
ARM: dts: omap3-tobi: Rename to omap3-overo-tobi
ARM: dts: Add support for the Overo Palo43
ARM: dts: Add support for the Overo Gallop43
ARM: dts: Add support for the Overo Alto35
ARM: dts: Add support for the Overo Chestnut43
ARM: dts: Add support for the Overo Summit
ARM: dts: overo: Add support for DVI output

 .../devicetree/bindings/vendor-prefixes.txt        |   1 +
 arch/arm/boot/dts/Makefile                         |   7 +-
 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi          |  58 ++++++++++
 arch/arm/boot/dts/omap3-overo-alto35.dts           |  52 +++++++++
 arch/arm/boot/dts/omap3-overo-chestnut43.dts       |  76 +++++++++++++
 arch/arm/boot/dts/omap3-overo-common-dvi.dtsi      | 108 ++++++++++++++++++
 arch/arm/boot/dts/omap3-overo-common.dtsi          |  39 +++++++
 arch/arm/boot/dts/omap3-overo-gallop43.dts         |  51 +++++++++
 arch/arm/boot/dts/omap3-overo-palo43.dts           |  52 +++++++++
 arch/arm/boot/dts/omap3-overo-summit.dts           |  30 +++++
 .../dts/{omap3-tobi.dts => omap3-overo-tobi.dts}   |  41 +------
 arch/arm/boot/dts/omap3-overo.dtsi                 | 122 +++++++++++++++++++--
 12 files changed, 594 insertions(+), 43 deletions(-)
 create mode 100644 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi
 create mode 100644 arch/arm/boot/dts/omap3-overo-alto35.dts
 create mode 100644 arch/arm/boot/dts/omap3-overo-chestnut43.dts
 create mode 100644 arch/arm/boot/dts/omap3-overo-common-dvi.dtsi
 create mode 100644 arch/arm/boot/dts/omap3-overo-common.dtsi
 create mode 100644 arch/arm/boot/dts/omap3-overo-gallop43.dts
 create mode 100644 arch/arm/boot/dts/omap3-overo-palo43.dts
 create mode 100644 arch/arm/boot/dts/omap3-overo-summit.dts
 rename arch/arm/boot/dts/{omap3-tobi.dts => omap3-overo-tobi.dts} (54%)
Signature · 1 line
1.8.1.2
#1 lore raw

PATCH 1/18 of: add vendor prefix for Gumstix

Using "gumstix" for Gumstix Inc.

---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index edbb8d8..968a955 100644
@@ -33,6 +33,7 @@ fsl	Freescale Semiconductor
 GEFanuc	GE Fanuc Intelligent Platforms Embedded Systems, Inc.
 gef	GE Fanuc Intelligent Platforms Embedded Systems, Inc.
 gmt	Global Mixed-mode Technology, Inc.
+gumstix	Gumstix, Inc.
 hisilicon	Hisilicon Limited.
 hp	Hewlett Packard
 ibm	International Business Machines (IBM)
Signature · 1 line
1.8.1.2
#2 lore raw

PATCH 2/18 ARM: dts: omap3-tobi: Use the correct vendor prefix

In reply to Florian Vaussard

Gumstix is the correct vendor for all Overo related products.

---
 arch/arm/boot/dts/omap3-tobi.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm/boot/dts/omap3-tobi.dts +1 -1
index 7e4ad2a..9fe10ca 100644
@@ -14,7 +14,7 @@
 
 / {
 	model = "TI OMAP3 Gumstix Overo on Tobi";
-	compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3";
+	compatible = "gumstix,omap3-tobi", "gumstix,omap3-overo", "ti,omap3";
 
 	leds {
 		compatible = "gpio-leds";
Signature · 1 line
1.8.1.2
#3 lore raw

PATCH 3/18 ARM: dts: omap3-tobi: Add missing pinctrl

In reply to Florian Vaussard

Add missing pinctrl entries:
- i2c3

---
 arch/arm/boot/dts/omap3-tobi.dts | 11 +++++++++++
 1 file changed, 11 insertions(+)
arch/arm/boot/dts/omap3-tobi.dts +11 -0
index 9fe10ca..d39fe57 100644
@@ -38,6 +38,15 @@
 	};
 };
 
+&omap3_pmx_core {
+	i2c3_pins: pinmux_i2c3_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)	/* i2c3_scl.i2c3_scl */
+			OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)	/* i2c3_sda.i2c3_sda */
+		>;
+	};
+};
+
 &gpmc {
 	ranges = <5 0 0x2c000000 0x1000000>;	/* CS5 */
 
@@ -75,6 +84,8 @@
 };
 
 &i2c3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c3_pins>;
 	clock-frequency = <100000>;
 };
 
Signature · 1 line
1.8.1.2
#4 lore raw

PATCH 4/18 ARM: dts: omap3-overo: Add missing pinctrl

In reply to Florian Vaussard

Add missing pinctrl entries for:
- i2c1
- mmc1

---
 arch/arm/boot/dts/omap3-overo.dtsi | 40 +++++++++++++++++++++++++++++---------
 1 file changed, 31 insertions(+), 9 deletions(-)
arch/arm/boot/dts/omap3-overo.dtsi +31 -9
index a461d2f..2d8b80c 100644
@@ -34,7 +34,36 @@
 	};
 };
 
+&omap3_pmx_core {
+	uart3_pins: pinmux_uart3_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0)	/* uart3_rx_irrx.uart3_rx_irrx */
+			OMAP3_CORE1_IOPAD(0x21a0, PIN_OUTPUT | MUX_MODE0)		/* uart3_tx_irtx.uart3_tx_irtx */
+		>;
+	};
+
+	i2c1_pins: pinmux_i2c1_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x21ba, PIN_INPUT | MUX_MODE0)		/* i2c1_scl.i2c1_scl */
+			OMAP3_CORE1_IOPAD(0x21bc, PIN_INPUT | MUX_MODE0)		/* i2c1_sda.i2c1_sda */
+		>;
+	};
+
+	mmc1_pins: pinmux_mmc1_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x2144, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_clk.sdmmc1_clk */
+			OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_cmd.sdmmc1_cmd */
+			OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat0.sdmmc1_dat0 */
+			OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat1.sdmmc1_dat1 */
+			OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat2.sdmmc1_dat2 */
+			OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat3.sdmmc1_dat3 */
+		>;
+	};
+};
+
 &i2c1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c1_pins>;
 	clock-frequency = <2600000>;
 
 	twl: twl at 48 {
@@ -60,6 +89,8 @@
 
 /* on board microSD slot */
 &mmc1 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc1_pins>;
 	vmmc-supply = <&vmmc1>;
 	bus-width = <4>;
 };
@@ -82,15 +113,6 @@
 	power = <50>;
 };
 
-&omap3_pmx_core {
-	uart3_pins: pinmux_uart3_pins {
-		pinctrl-single,pins = <
-			0x16e (PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0) /* uart3_rx_irrx.uart3_rx_irrx */
-			0x170 (PIN_OUTPUT | MUX_MODE0) /* uart3_tx_irtx.uart3_tx_irtx */
-		>;
-	};
-};
-
 &uart3 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart3_pins>;
Signature · 1 line
1.8.1.2
#5 lore raw

PATCH 5/18 ARM: dts: omap3-overo: Use complete poweroff

In reply to Florian Vaussard

Currently, the TWL4030 PMIC does not completely poweroff the processor. Commit b0fc1da4d0359d3cce8f12e0f014aed0704ae202 introduced the necessary binding to do this, so use it.

---
 arch/arm/boot/dts/omap3-overo.dtsi | 5 +++++
 1 file changed, 5 insertions(+)
arch/arm/boot/dts/omap3-overo.dtsi +5 -0
index 2d8b80c..d48f25c 100644
@@ -76,6 +76,11 @@
 			codec {
 			};
 		};
+
+		twl_power: power {
+			compatible = "ti,twl4030-power";
+			ti,use_poweroff;
+		};
 	};
 };
 
Signature · 1 line
1.8.1.2
#6 lore raw

PATCH 6/18 ARM: dts: omap3-overo: Enable MMC2

In reply to Florian Vaussard

MMC2 is used by the on-board WiFi module populated on some boards (based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not properly reset (missing binding for the GPIO reset).

---
 arch/arm/boot/dts/omap3-overo.dtsi | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)
arch/arm/boot/dts/omap3-overo.dtsi +21 -0
index d48f25c..9ce9591 100644
@@ -32,6 +32,12 @@
 		ti,mcbsp = <&mcbsp2>;
 		ti,codec = <&twl_audio>;
 	};
+
+	vlibertas: regulator-vlibertas {
+		compatible = "regulator-fixed";
+		regulator-name = "vlibertas";
+		regulator-always-on;
+	};
 };
 
 &omap3_pmx_core {
@@ -59,6 +65,17 @@
 			OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc1_dat3.sdmmc1_dat3 */
 		>;
 	};
+
+	mmc2_pins: pinmux_mmc2_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_clk.sdmmc2_clk */
+			OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_cmd.sdmmc2_cmd */
+			OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat0.sdmmc2_dat0 */
+			OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat1.sdmmc2_dat1 */
+			OMAP3_CORE1_IOPAD(0x2160, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat2.sdmmc2_dat2 */
+			OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat3.sdmmc2_dat3 */
+		>;
+	};
 };
 
 &i2c1 {
@@ -102,7 +119,11 @@
 
 /* optional on board WiFi */
 &mmc2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc2_pins>;
+	vmmc-supply = <&vlibertas>;
 	bus-width = <4>;
+	non-removable;
 };
 
 &twl_gpio {
Signature · 1 line
1.8.1.2
#7 lore raw

PATCH 6/18 ARM: dts: omap3-overo: Enable MMC2

[adding Enric Balletbo to cc]

Hello Florian,

Quoted 6 lines · Florian Vaussard

MMC2 is used by the on-board WiFi module populated on some boards (based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not properly reset (missing binding for the GPIO reset).

Have you looked at commit 0e9fd777 ("ARM: dts: omap3-igep: Add support for LBEE1USJYC WiFi connected to SDIO") ?

If I remember correctly the LBEE1USJYC Wifi/BT combo module is basically a Marvell Libertas 8688 Wlan and Enric got soft reset working too by adding a GPIO property to the regulator for the reset GPIO.

Hope it helps,
Javier

#8 lore raw

PATCH 6/18 ARM: dts: omap3-overo: Enable MMC2

Hello Javier,

Quoted 13 lines · Javier Martinez Canillas

[adding Enric Balletbo to cc]

Hello Florian,

Quoted 6 lines · Florian Vaussard

MMC2 is used by the on-board WiFi module populated on some boards (based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not properly reset (missing binding for the GPIO reset).

Quoted 8 lines

Have you looked at commit 0e9fd777 ("ARM: dts: omap3-igep: Add support for LBEE1USJYC WiFi connected to SDIO") ?

If I remember correctly the LBEE1USJYC Wifi/BT combo module is basically a Marvell Libertas 8688 Wlan and Enric got soft reset working too by adding a GPIO property to the regulator for the reset GPIO.

Many thanks for the pointer. In the initial version, I had a regulator like you. But now I doubt if it was correctly added to the MMC node, which could be why it was not working... I will try again.

Thanks for your help!

Florian

#9 lore raw

PATCH 6/18 ARM: dts: omap3-overo: Enable MMC2

In reply to Javier Martinez Canillas

Hello Javier

Quoted 16 lines · Javier Martinez Canillas

[adding Enric Balletbo to cc]

Hello Florian,

Quoted 6 lines · Florian Vaussard

MMC2 is used by the on-board WiFi module populated on some boards (based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not properly reset (missing binding for the GPIO reset).

Have you looked at commit 0e9fd777 ("ARM: dts: omap3-igep: Add support for LBEE1USJYC WiFi connected to SDIO") ?

Quoted 6 lines

If I remember correctly the LBEE1USJYC Wifi/BT combo module is basically a Marvell Libertas 8688 Wlan and Enric got soft reset working too by adding a GPIO property to the regulator for the reset GPIO.

Hope it helps,

Thank you, I got it working. It is a bit messy, as I have 3 GPIOs (poweron, wifi-reset and bt-reset). As a regulator can control only one GPIO, I had to define 3 regulators, and assigning them to the vmmc, vqmmc, and vmmc_aux. I hope that a better solution will pop-up in this thread [1]. It is a pity that the previous version of the GPIO-reset controller was not merged.

Florian

[1] http://thread.gmane.org/gmane.linux.ports.arm.kernel/294907

#10 lore raw

PATCH 6/18 ARM: dts: omap3-overo: Enable MMC2

Hello Florian,

Quoted 24 lines · Florian Vaussard

Hello Javier

Quoted 21 lines · Javier Martinez Canillas

[adding Enric Balletbo to cc]

Hello Florian,

Quoted 6 lines · Florian Vaussard

MMC2 is used by the on-board WiFi module populated on some boards (based on Marvell Libertas 8688 SDIO).

Note: currently WiFi only works on cold boot, as the module is not properly reset (missing binding for the GPIO reset).

Have you looked at commit 0e9fd777 ("ARM: dts: omap3-igep: Add support for LBEE1USJYC WiFi connected to SDIO") ?

If I remember correctly the LBEE1USJYC Wifi/BT combo module is basically a Marvell Libertas 8688 Wlan and Enric got soft reset working too by adding a GPIO property to the regulator for the reset GPIO.

Quoted 9 lines
Quoted 1 line

Hope it helps,

Thank you, I got it working. It is a bit messy, as I have 3 GPIOs (poweron, wifi-reset and bt-reset). As a regulator can control only one GPIO, I had to define 3 regulators, and assigning them to the vmmc, vqmmc, and vmmc_aux. I hope that a better solution will pop-up in this thread [1]. It is a pity that the previous version of the GPIO-reset controller was not merged.

Glad to know that you got it working and yes it is a bit messy so let's hope that a cleaner solution will be the result of the current discussion on that thread.

Quoted 3 lines

Florian

[1] http://thread.gmane.org/gmane.linux.ports.arm.kernel/294907

Best regards,
Javier

#11 lore raw

PATCH 7/18 ARM: dts: omap3-overo: Add HSUSB PHY

In reply to Florian Vaussard

Add the High-Speed USB PHY.

---
 arch/arm/boot/dts/omap3-overo.dtsi | 60 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)
arch/arm/boot/dts/omap3-overo.dtsi +60 -0
index 9ce9591..ecf5818 100644
@@ -33,6 +33,24 @@
 		ti,codec = <&twl_audio>;
 	};
 
+	/* HS USB Port 2 Power */
+	hsusb2_power: hsusb2_power_reg {
+		compatible = "regulator-fixed";
+		regulator-name = "hsusb2_vbus";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		gpio = <&gpio6 8 0>;			/* gpio_168 */
+		startup-delay-us = <70000>;
+		enable-active-high;
+	};
+
+	/* HS USB Host PHY on PORT 2 */
+	hsusb2_phy: hsusb2_phy {
+		compatible = "usb-nop-xceiv";
+		reset-gpios = <&gpio6 23 GPIO_ACTIVE_LOW>;	/* gpio_183 */
+		vcc-supply = <&hsusb2_power>;
+	};
+
 	vlibertas: regulator-vlibertas {
 		compatible = "regulator-fixed";
 		regulator-name = "vlibertas";
@@ -41,6 +59,11 @@
 };
 
 &omap3_pmx_core {
+	pinctrl-names = "default";
+	pinctrl-0 = <
+			&hsusb2_pins
+	>;
+
 	uart3_pins: pinmux_uart3_pins {
 		pinctrl-single,pins = <
 			OMAP3_CORE1_IOPAD(0x219e, PIN_INPUT | PIN_OFF_WAKEUPENABLE | MUX_MODE0)	/* uart3_rx_irrx.uart3_rx_irrx */
@@ -76,6 +99,35 @@
 			OMAP3_CORE1_IOPAD(0x2162, PIN_INPUT_PULLUP | MUX_MODE0)		/* sdmmc2_dat3.sdmmc2_dat3 */
 		>;
 	};
+
+	hsusb2_pins: pinmux_hsusb2_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x21d4, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi1_cs3.hsusb2_data2 */
+			OMAP3_CORE1_IOPAD(0x21d6, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi2_clk.hsusb2_data7 */
+			OMAP3_CORE1_IOPAD(0x21d8, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi2_simo.hsusb2_data4 */
+			OMAP3_CORE1_IOPAD(0x21da, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi2_somi.hsusb2_data5 */
+			OMAP3_CORE1_IOPAD(0x21dc, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi2_cs0.hsusb2_data6 */
+			OMAP3_CORE1_IOPAD(0x21de, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* mcspi2_cs1.hsusb2_data3 */
+		>;
+	};
+};
+
+&omap3_pmx_core2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <
+			&hsusb2_2_pins
+	>;
+
+	hsusb2_2_pins: pinmux_hsusb2_2_pins {
+		pinctrl-single,pins = <
+			OMAP3630_CORE2_IOPAD(0x25f0, PIN_OUTPUT | MUX_MODE3)		/* etk_d10.hsusb2_clk */
+			OMAP3630_CORE2_IOPAD(0x25f2, PIN_OUTPUT | MUX_MODE3)		/* etk_d11.hsusb2_stp */
+			OMAP3630_CORE2_IOPAD(0x25f4, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* etk_d12.hsusb2_dir */
+			OMAP3630_CORE2_IOPAD(0x25f6, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* etk_d13.hsusb2_nxt */
+			OMAP3630_CORE2_IOPAD(0x25f8, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* etk_d14.hsusb2_data0 */
+			OMAP3630_CORE2_IOPAD(0x25fa, PIN_INPUT_PULLDOWN | MUX_MODE3)	/* etk_d15.hsusb2_data1 */
+		>;
+	};
 };
 
 &i2c1 {
@@ -139,6 +191,14 @@
 	power = <50>;
 };
 
+&usbhshost {
+	port2-mode = "ehci-phy";
+};
+
+&usbhsehci {
+	phys = <0 &hsusb2_phy>;
+};
+
 &uart3 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart3_pins>;
Signature · 1 line
1.8.1.2
#12 lore raw

PATCH 8/18 ARM: dts: omap: Add common file for SMSC9221

In reply to Florian Vaussard

Some devices (SMSC9217, SMSC9218 and SMSC9221 at least) have better timings, allowing a higher transfer speed. Create a common file with these timings.

Performance results with iperf:

- omap-gpmc-smsc911x.dtsi => 54.9 Mbps
- omap-gpmc-smsc9221.dtsi => 92.7 Mbps

---
 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi | 58 +++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi
arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi new file +58 -0
new file mode 100644
index 0000000..73e272f
@@ -0,0 +1,58 @@
+/*
+ * Common file for GPMC connected smsc9221 on omaps
+ *
+ * Compared to smsc911x, smsc9221 (and others like smsc9217
+ * or smsc 9218) has faster timings, leading to higher
+ * bandwidth.
+ *
+ * Note that the board specifc DTS file needs to specify
+ * ranges, pinctrl, reg, interrupt parent and interrupts.
+ */
+
+/ {
+	vddvario: regulator-vddvario {
+		  compatible = "regulator-fixed";
+		  regulator-name = "vddvario";
+		  regulator-always-on;
+	};
+
+	vdd33a: regulator-vdd33a {
+		compatible = "regulator-fixed";
+		regulator-name = "vdd33a";
+		regulator-always-on;
+	};
+};
+
+&gpmc {
+	ethernet at gpmc {
+		compatible = "smsc,lan9221","smsc,lan9115";
+		bank-width = <2>;
+
+		gpmc,mux-add-data;
+		gpmc,cs-on-ns = <0>;
+		gpmc,cs-rd-off-ns = <42>;
+		gpmc,cs-wr-off-ns = <36>;
+		gpmc,adv-on-ns = <6>;
+		gpmc,adv-rd-off-ns = <12>;
+		gpmc,adv-wr-off-ns = <12>;
+		gpmc,oe-on-ns = <0>;
+		gpmc,oe-off-ns = <42>;
+		gpmc,we-on-ns = <0>;
+		gpmc,we-off-ns = <36>;
+		gpmc,rd-cycle-ns = <60>;
+		gpmc,wr-cycle-ns = <54>;
+		gpmc,access-ns = <36>;
+		gpmc,page-burst-access-ns = <0>;
+		gpmc,bus-turnaround-ns = <0>;
+		gpmc,cycle2cycle-delay-ns = <0>;
+		gpmc,wr-data-mux-bus-ns = <18>;
+		gpmc,wr-access-ns = <42>;
+		gpmc,cycle2cycle-samecsen;
+		gpmc,cycle2cycle-diffcsen;
+
+		vddvario-supply = <&vddvario>;
+		vdd33a-supply = <&vdd33a>;
+		reg-io-width = <4>;
+		smsc,save-mac-address;
+	};
+};
Signature · 1 line
1.8.1.2
#13 lore raw

PATCH 9/18 ARM: dts: omap3-tobi: Use include file omap-gpmc-smsc9221

In reply to Florian Vaussard

Use the timings provided by omap-gpmc-smsc9221. This does not change the timings, but it avoids code duplication.

---
 arch/arm/boot/dts/omap3-tobi.dts | 30 +++---------------------------
 1 file changed, 3 insertions(+), 27 deletions(-)
arch/arm/boot/dts/omap3-tobi.dts +3 -27
index d39fe57..e9a841a 100644
@@ -47,39 +47,15 @@
 	};
 };
 
+#include "omap-gpmc-smsc9221.dtsi"
+
 &gpmc {
 	ranges = <5 0 0x2c000000 0x1000000>;	/* CS5 */
 
-	ethernet at 5,0 {
-		compatible = "smsc,lan9221", "smsc,lan9115";
+	ethernet at gpmc {
 		reg = <5 0 0xff>;
-		bank-width = <2>;
-
-		gpmc,mux-add-data;
-		gpmc,cs-on-ns = <0>;
-		gpmc,cs-rd-off-ns = <42>;
-		gpmc,cs-wr-off-ns = <36>;
-		gpmc,adv-on-ns = <6>;
-		gpmc,adv-rd-off-ns = <12>;
-		gpmc,adv-wr-off-ns = <12>;
-		gpmc,oe-on-ns = <0>;
-		gpmc,oe-off-ns = <42>;
-		gpmc,we-on-ns = <0>;
-		gpmc,we-off-ns = <36>;
-		gpmc,rd-cycle-ns = <60>;
-		gpmc,wr-cycle-ns = <54>;
-		gpmc,access-ns = <36>;
-		gpmc,page-burst-access-ns = <0>;
-		gpmc,bus-turnaround-ns = <0>;
-		gpmc,cycle2cycle-delay-ns = <0>;
-		gpmc,wr-data-mux-bus-ns = <18>;
-		gpmc,wr-access-ns = <42>;
-		gpmc,cycle2cycle-samecsen;
-		gpmc,cycle2cycle-diffcsen;
-
 		interrupt-parent = <&gpio6>;
 		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;	/* GPIO 176 */
-		reg-io-width = <4>;
 	};
 };
 
Signature · 1 line
1.8.1.2
#14 lore raw

PATCH 10/18 ARM: dts: omap3-tobi: Add AT24C01 EEPROM

In reply to Florian Vaussard

Add the AT24C01 EEPROM node populated on most Gumstix expansion board.

---
 arch/arm/boot/dts/omap3-tobi.dts | 7 +++++++
 1 file changed, 7 insertions(+)
arch/arm/boot/dts/omap3-tobi.dts +7 -0
index e9a841a..67c056d 100644
@@ -63,6 +63,13 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&i2c3_pins>;
 	clock-frequency = <100000>;
+
+	/* optional 1K EEPROM with revision information */
+	eeprom at 51 {
+		compatible = "atmel,24c01";
+		reg = <0x51>;
+		pagesize = <8>;
+	};
 };
 
 &mmc3 {
Signature · 1 line
1.8.1.2
#15 lore raw

PATCH 11/18 ARM: dts: omap3-tobi: Create a file for common Gumstix peripherals

In reply to Florian Vaussard

Gumstix expansion boards share a couple of peripherals:
- i2c3 is used for the console
- AT24C01 EEPROM on i2c3

Use this file for omap3-tobi.

---
 arch/arm/boot/dts/omap3-overo-common.dtsi | 39 +++++++++++++++++++++++++++++++
 arch/arm/boot/dts/omap3-tobi.dts          | 27 +--------------------
 2 files changed, 40 insertions(+), 26 deletions(-)
 create mode 100644 arch/arm/boot/dts/omap3-overo-common.dtsi
arch/arm/boot/dts/omap3-overo-common.dtsi new file +39 -0
new file mode 100644
index 0000000..5f38ce8
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/*
+ * Peripherals common to all Gumstix Overo boards (Tobi, Summit, Palo43,...)
+ */
+
+#include "omap3-overo.dtsi"
+
+&omap3_pmx_core {
+	i2c3_pins: pinmux_i2c3_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)	/* i2c3_scl.i2c3_scl */
+			OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)	/* i2c3_sda.i2c3_sda */
+		>;
+	};
+};
+
+&i2c3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&i2c3_pins>;
+	clock-frequency = <100000>;
+
+	/* optional 1K EEPROM with revision information */
+	eeprom at 51 {
+		compatible = "atmel,24c01";
+		reg = <0x51>;
+		pagesize = <8>;
+	};
+};
+
+&mmc3 {
+	status = "disabled";
+};
arch/arm/boot/dts/omap3-tobi.dts +1 -26
index 67c056d..928d12f 100644
@@ -10,7 +10,7 @@
  * Tobi expansion board is manufactured by Gumstix Inc.
  */
 
-#include "omap3-overo.dtsi"
+#include "omap3-overo-common.dtsi"
 
 / {
 	model = "TI OMAP3 Gumstix Overo on Tobi";
@@ -38,15 +38,6 @@
 	};
 };
 
-&omap3_pmx_core {
-	i2c3_pins: pinmux_i2c3_pins {
-		pinctrl-single,pins = <
-			OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)	/* i2c3_scl.i2c3_scl */
-			OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)	/* i2c3_sda.i2c3_sda */
-		>;
-	};
-};
-
 #include "omap-gpmc-smsc9221.dtsi"
 
 &gpmc {
@@ -59,19 +50,3 @@
 	};
 };
 
-&i2c3 {
-	pinctrl-names = "default";
-	pinctrl-0 = <&i2c3_pins>;
-	clock-frequency = <100000>;
-
-	/* optional 1K EEPROM with revision information */
-	eeprom at 51 {
-		compatible = "atmel,24c01";
-		reg = <0x51>;
-		pagesize = <8>;
-	};
-};
-
-&mmc3 {
-	status = "disabled";
-};
Signature · 1 line
1.8.1.2
#16 lore raw

PATCH 12/18 ARM: dts: omap3-tobi: Rename to omap3-overo-tobi

In reply to Florian Vaussard

To enhance the clarity and coherence, rename omap3-tobi to omap3-overo-tobi.

---
 arch/arm/boot/dts/Makefile                                 | 2 +-
 arch/arm/boot/dts/{omap3-tobi.dts => omap3-overo-tobi.dts} | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
 rename arch/arm/boot/dts/{omap3-tobi.dts => omap3-overo-tobi.dts} (93%)
arch/arm/boot/dts/Makefile +1 -1
index b7af502..7b028e4 100644
@@ -189,7 +189,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-n900.dtb \
 	omap3-n9.dtb \
 	omap3-n950.dtb \
-	omap3-tobi.dtb \
+	omap3-overo-tobi.dtb \
 	omap3-gta04.dtb \
 	omap3-igep0020.dtb \
 	omap3-igep0030.dtb \
arch/arm/boot/dts/omap3-overo-tobi.dts renamed from arch/arm/boot/dts/omap3-tobi.dts +1 -1
similarity index 93%
rename from arch/arm/boot/dts/omap3-tobi.dts
rename to arch/arm/boot/dts/omap3-overo-tobi.dts
index 928d12f..5072da2 100644
@@ -14,7 +14,7 @@
 
 / {
 	model = "TI OMAP3 Gumstix Overo on Tobi";
-	compatible = "gumstix,omap3-tobi", "gumstix,omap3-overo", "ti,omap3";
+	compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3";
 
 	leds {
 		compatible = "gpio-leds";
Signature · 1 line
1.8.1.2
#17 lore raw

PATCH 13/18 ARM: dts: Add support for the Overo Palo43

In reply to Florian Vaussard

Palo43 is an expansion board for Gumstix Overo products.

---
 arch/arm/boot/dts/Makefile               |  1 +
 arch/arm/boot/dts/omap3-overo-palo43.dts | 52 ++++++++++++++++++++++++++++++++
 2 files changed, 53 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-palo43.dts
arch/arm/boot/dts/Makefile +1 -0
index 7b028e4..98f9bc5 100644
@@ -189,6 +189,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-n900.dtb \
 	omap3-n9.dtb \
 	omap3-n950.dtb \
+	omap3-overo-palo43.dtb \
 	omap3-overo-tobi.dtb \
 	omap3-gta04.dtb \
 	omap3-igep0020.dtb \
arch/arm/boot/dts/omap3-overo-palo43.dts new file +52 -0

52 lines not on this page · raw message

Signature · 1 line
1.8.1.2
#18 lore raw

PATCH 14/18 ARM: dts: Add support for the Overo Gallop43

In reply to Florian Vaussard

Gallop43 is an expansion board for Gumstix Overo products.

---
 arch/arm/boot/dts/Makefile                 |  1 +
 arch/arm/boot/dts/omap3-overo-gallop43.dts | 51 ++++++++++++++++++++++++++++++
 2 files changed, 52 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-gallop43.dts
arch/arm/boot/dts/Makefile +1 -0
index 98f9bc5..799b306 100644
@@ -189,6 +189,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-n900.dtb \
 	omap3-n9.dtb \
 	omap3-n950.dtb \
+	omap3-overo-gallop43.dtb \
 	omap3-overo-palo43.dtb \
 	omap3-overo-tobi.dtb \
 	omap3-gta04.dtb \
arch/arm/boot/dts/omap3-overo-gallop43.dts new file +51 -0

51 lines not on this page · raw message

Signature · 1 line
1.8.1.2
#19 lore raw

PATCH 15/18 ARM: dts: Add support for the Overo Alto35

In reply to Florian Vaussard

Alto35 is an expansion board for Gumstix Overo products.

---
 arch/arm/boot/dts/Makefile               |  1 +
 arch/arm/boot/dts/omap3-overo-alto35.dts | 52 ++++++++++++++++++++++++++++++++
 2 files changed, 53 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-alto35.dts
arch/arm/boot/dts/Makefile +1 -0
index 799b306..29432b0 100644
@@ -189,6 +189,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-n900.dtb \
 	omap3-n9.dtb \
 	omap3-n950.dtb \
+	omap3-overo-alto35.dtb \
 	omap3-overo-gallop43.dtb \
 	omap3-overo-palo43.dtb \
 	omap3-overo-tobi.dtb \
arch/arm/boot/dts/omap3-overo-alto35.dts new file +52 -0

52 lines not on this page · raw message

Signature · 1 line
1.8.1.2
#20 lore raw

PATCH 16/18 ARM: dts: Add support for the Overo Chestnut43

In reply to Florian Vaussard

Chestnut43 is an expansion board for Gumstix Overo products.

---
 arch/arm/boot/dts/Makefile                   |  1 +
 arch/arm/boot/dts/omap3-overo-chestnut43.dts | 76 ++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-chestnut43.dts
arch/arm/boot/dts/Makefile +1 -0
index 29432b0..3f6ef70 100644
@@ -190,6 +190,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-n9.dtb \
 	omap3-n950.dtb \
 	omap3-overo-alto35.dtb \
+	omap3-overo-chestnut43.dtb \
 	omap3-overo-gallop43.dtb \
 	omap3-overo-palo43.dtb \
 	omap3-overo-tobi.dtb \
arch/arm/boot/dts/omap3-overo-chestnut43.dts new file +76 -0

76 lines not on this page · raw message

Signature · 1 line
1.8.1.2
#21 lore raw

PATCH 17/18 ARM: dts: Add support for the Overo Summit

In reply to Florian Vaussard

Summit is an expansion board for Gumstix Overo products.

---
 arch/arm/boot/dts/Makefile               |  1 +
 arch/arm/boot/dts/omap3-overo-summit.dts | 27 +++++++++++++++++++++++++++
 2 files changed, 28 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-summit.dts
arch/arm/boot/dts/Makefile +1 -0
index 3f6ef70..d00f023 100644
@@ -193,6 +193,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-overo-chestnut43.dtb \
 	omap3-overo-gallop43.dtb \
 	omap3-overo-palo43.dtb \
+	omap3-overo-summit.dtb \
 	omap3-overo-tobi.dtb \
 	omap3-gta04.dtb \
 	omap3-igep0020.dtb \
arch/arm/boot/dts/omap3-overo-summit.dts new file +27 -0
new file mode 100644
index 0000000..fd8b47c
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/*
+ * Summit expansion board is manufactured by Gumstix Inc.
+ */
+
+#include "omap3-overo-common.dtsi"
+
+/ {
+	model = "TI OMAP3 Gumstix Overo on Summit";
+	compatible = "gumstix,omap3-overo-summit", "gumstix,omap3-overo", "ti,omap3";
+
+	leds {
+		compatible = "gpio-leds";
+		heartbeat {
+			label = "overo:red:gpio21";
+			gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
+			linux,default-trigger = "heartbeat";
+		};
+	};
+};
Signature · 1 line
1.8.1.2
#22 lore raw

PATCH 18/18 ARM: dts: overo: Add support for DVI output

In reply to Florian Vaussard

Summit and Tobi expansion boards have a HDMI connector with a TFP410 encoder. Add a common include file for this configuration, and then use it for Summit and Tobi.

---
 arch/arm/boot/dts/omap3-overo-common-dvi.dtsi | 108 ++++++++++++++++++++++++++
 arch/arm/boot/dts/omap3-overo-summit.dts      |   3 +
 arch/arm/boot/dts/omap3-overo-tobi.dts        |   2 +
 3 files changed, 113 insertions(+)
 create mode 100644 arch/arm/boot/dts/omap3-overo-common-dvi.dtsi
arch/arm/boot/dts/omap3-overo-common-dvi.dtsi new file +108 -0
new file mode 100644
index 0000000..e4a0fa0
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/*
+ * DVI output for some Gumstix Overo boards (Tobi and Summit)
+ */
+
+&omap3_pmx_core {
+	i2c3_pins: pinmux_i2c3_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x21c2, PIN_INPUT | MUX_MODE0)	/* i2c3_scl.i2c3_scl */
+			OMAP3_CORE1_IOPAD(0x21c4, PIN_INPUT | MUX_MODE0)	/* i2c3_sda.i2c3_sda */
+		>;
+	};
+
+	dss_dpi_pins: pinmux_dss_dpi_pins {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0)	/* dss_pclk.dss_pclk */
+			OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0)	/* dss_hsync.dss_hsync */
+			OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0)	/* dss_vsync.dss_vsync */
+			OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0)	/* dss_acbias.dss_acbias */
+			OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0)	/* dss_data0.dss_data0 */
+			OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0)	/* dss_data1.dss_data1 */
+			OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0)	/* dss_data2.dss_data2 */
+			OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0)	/* dss_data3.dss_data3 */
+			OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0)	/* dss_data4.dss_data4 */
+			OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0)	/* dss_data5.dss_data5 */
+			OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0)	/* dss_data6.dss_data6 */
+			OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0)	/* dss_data7.dss_data7 */
+			OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0)	/* dss_data8.dss_data8 */
+			OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0)	/* dss_data9.dss_data9 */
+			OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0)	/* dss_data10.dss_data10 */
+			OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0)	/* dss_data11.dss_data11 */
+			OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0)	/* dss_data12.dss_data12 */
+			OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0)	/* dss_data13.dss_data13 */
+			OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0)	/* dss_data14.dss_data14 */
+			OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0)	/* dss_data15.dss_data15 */
+			OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0)	/* dss_data16.dss_data16 */
+			OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0)	/* dss_data17.dss_data17 */
+			OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0)	/* dss_data18.dss_data18 */
+			OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0)	/* dss_data19.dss_data19 */
+			OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0)	/* dss_data20.dss_data20 */
+			OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0)	/* dss_data21.dss_data21 */
+			OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0)	/* dss_data22.dss_data22 */
+			OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0)	/* dss_data23.dss_data23 */
+		>;
+	};
+};
+
+&dss {
+	pinctrl-names = "default";
+	pinctrl-0 = <&dss_dpi_pins>;
+
+	vdds_dsi-supply = <&vpll2>;
+
+	dpi_out: endpoint {
+		remote-endpoint = <&tfp410_in>;
+		data-lines = <24>;
+	};
+};
+
+/ {
+	aliases {
+		display0 = &dvi0;
+	};
+
+	tfp410: encoder at 0 {
+		compatible = "ti,tfp410";
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port at 0 {
+				reg = <0>;
+
+				tfp410_in: endpoint at 0 {
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port at 1 {
+				reg = <1>;
+
+				tfp410_out: endpoint at 0 {
+					remote-endpoint = <&dvi_connector_in>;
+				};
+			};
+		};
+	};
+
+	dvi0: connector at 0 {
+		compatible = "dvi-connector";
+		label = "dvi";
+
+		i2c-bus = <&i2c3>;
+
+		dvi_connector_in: endpoint {
+			remote-endpoint = <&tfp410_out>;
+		};
+	};
+};
+
arch/arm/boot/dts/omap3-overo-summit.dts +3 -0
index fd8b47c..1b8774e 100644
@@ -25,3 +25,6 @@
 		};
 	};
 };
+
+#include "omap3-overo-common-dvi.dtsi"
+
arch/arm/boot/dts/omap3-overo-tobi.dts +2 -0
index 5072da2..17a85ad 100644
@@ -50,3 +50,5 @@
 	};
 };
 
+#include "omap3-overo-common-dvi.dtsi"
+
Signature · 1 line
1.8.1.2
#23 lore raw

cover ARM: dts: Better support for Gumstix Overo

In reply to Florian Vaussard

Hi Florian,

Quoted 3 lines · Florian Vaussard

Hello,

This series adds a number of improvements to Gumstix Overo.

Thanks for that nice series.

Quoted 21 lines

Patch 1+2: fix an issue with the vendor prefix (reported long ago by Javier Martinez Canillas) Patch 3+4: add some missing pinctrl entries
Patch 5: completely turn off the PMIC on power off
Patch 6: enable the on-board Wifi
Patch 7: add the high-speed USB PHY
Patch 8: add specific timings for LAN9221 into a generic file
-> This might interest other people using the same chip, result in doubled bandwith

Patch 9: simplify omap3-tobi by using patch 8
Patch 10: add support for AT24C01 EEPROM used on expansion boards Patch 11: factorize parts common to all expansion boards Patch 12: rename omap3-tobi to omap3-overo-tobi
-> I do not know to which extent this might qualify as an API breakage,
but the new name is far better IMHO

Patch 13 to 17: add new extension boards (Palo43, Gallop43, Alto35, Chestnut43, Summit) Patch 18: add the HDMI output
-> this patch depends on Tomi Valkeinen's DT binding for OMAPDSS, which is
not yet merged, so this patch will have to wait

Quoted 8 lines

The patches 13 to 17 are based on the hardware schematics and compile-tested, as I do not have the necessary hardware (anyone willing to send me some boards ? :-) We are mainly missing the support for the various LCDs, the accelerometer + probably other small things.

This series is based on Tony's omap-for-v3.14/dt branch + work from Tomi [1] for the patch 18.

Benoit: I guess that I am too late for the 3.14... ?

Yeah, I think so, even my 3.14 branch is too late for 3.14 :-)

Thanks,
Benoit

Quoted 49 lines

Regards,

Florian

Florian Vaussard (18):
of: add vendor prefix for Gumstix
ARM: dts: omap3-tobi: Use the correct vendor prefix
ARM: dts: omap3-tobi: Add missing pinctrl
ARM: dts: omap3-overo: Add missing pinctrl
ARM: dts: omap3-overo: Use complete poweroff
ARM: dts: omap3-overo: Enable MMC2
ARM: dts: omap3-overo: Add HSUSB PHY
ARM: dts: omap: Add common file for SMSC9221
ARM: dts: omap3-tobi: Use include file omap-gpmc-smsc9221
ARM: dts: omap3-tobi: Add AT24C01 EEPROM
ARM: dts: omap3-tobi: Create a file for common Gumstix peripherals
ARM: dts: omap3-tobi: Rename to omap3-overo-tobi
ARM: dts: Add support for the Overo Palo43
ARM: dts: Add support for the Overo Gallop43
ARM: dts: Add support for the Overo Alto35
ARM: dts: Add support for the Overo Chestnut43
ARM: dts: Add support for the Overo Summit
ARM: dts: overo: Add support for DVI output

  .../devicetree/bindings/vendor-prefixes.txt        |   1 +
  arch/arm/boot/dts/Makefile                         |   7 +-
  arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi          |  58 ++++++++++
  arch/arm/boot/dts/omap3-overo-alto35.dts           |  52 +++++++++
  arch/arm/boot/dts/omap3-overo-chestnut43.dts       |  76 +++++++++++++
  arch/arm/boot/dts/omap3-overo-common-dvi.dtsi      | 108 ++++++++++++++++++
  arch/arm/boot/dts/omap3-overo-common.dtsi          |  39 +++++++
  arch/arm/boot/dts/omap3-overo-gallop43.dts         |  51 +++++++++
  arch/arm/boot/dts/omap3-overo-palo43.dts           |  52 +++++++++
  arch/arm/boot/dts/omap3-overo-summit.dts           |  30 +++++
  .../dts/{omap3-tobi.dts => omap3-overo-tobi.dts}   |  41 +------
  arch/arm/boot/dts/omap3-overo.dtsi                 | 122 +++++++++++++++++++--
  12 files changed, 594 insertions(+), 43 deletions(-)

create mode 100644 arch/arm/boot/dts/omap-gpmc-smsc9221.dtsi create mode 100644 arch/arm/boot/dts/omap3-overo-alto35.dts create mode 100644 arch/arm/boot/dts/omap3-overo-chestnut43.dts create mode 100644 arch/arm/boot/dts/omap3-overo-common-dvi.dtsi create mode 100644 arch/arm/boot/dts/omap3-overo-common.dtsi create mode 100644 arch/arm/boot/dts/omap3-overo-gallop43.dts create mode 100644 arch/arm/boot/dts/omap3-overo-palo43.dts create mode 100644 arch/arm/boot/dts/omap3-overo-summit.dts rename arch/arm/boot/dts/{omap3-tobi.dts => omap3-overo-tobi.dts} (54%)

Signature · 4 lines
Beno?t Cousson
BayLibre
Embedded Linux Technology Lab
www.baylibre.com
#24 lore raw

cover ARM: dts: Better support for Gumstix Overo

Hi Florian,

Quoted 4 lines · Benoit Cousson
Quoted 4 lines

The patches 13 to 17 are based on the hardware schematics and compile-tested, as I
do not have the necessary hardware (anyone willing to send me some boards ? :-)

Firstly: thanks!
Secondly: Could you email (ash at gumstix.com) me a wish list of boards/hardware? I'll see what I can wrangle.

--Ash

#25 lore raw

cover ARM: dts: Better support for Gumstix Overo

Hi Ash,

Quoted 7 lines · Ash Charles

Hi Florian,

Quoted 4 lines · Benoit Cousson
Quoted 4 lines

The patches 13 to 17 are based on the hardware schematics and compile-tested, as I
do not have the necessary hardware (anyone willing to send me some boards ? :-)

Firstly: thanks!

You are welcome.

Quoted 3 lines

Secondly: Could you email (ash at gumstix.com) me a wish list of boards/hardware? I'll see what I can wrangle.

Ok, I will see what I would need to advance further the DT support.

Best,

Florian

#26 lore raw

cover ARM: dts: Better support for Gumstix Overo

In reply to Benoit Cousson

Hi Benoit,

Quoted 26 lines · Benoit Cousson

Hi Florian,

Quoted 3 lines · Florian Vaussard

Hello,

This series adds a number of improvements to Gumstix Overo.

Thanks for that nice series.

Quoted 17 lines

Patch 1+2: fix an issue with the vendor prefix (reported long ago by Javier Martinez Canillas)
Patch 3+4: add some missing pinctrl entries
Patch 5: completely turn off the PMIC on power off
Patch 6: enable the on-board Wifi
Patch 7: add the high-speed USB PHY
Patch 8: add specific timings for LAN9221 into a generic file -> This might interest other people using the same chip, result in doubled bandwith

Patch 9: simplify omap3-tobi by using patch 8
Patch 10: add support for AT24C01 EEPROM used on expansion boards Patch 11: factorize parts common to all expansion boards Patch 12: rename omap3-tobi to omap3-overo-tobi
-> I do not know to which extent this might qualify as an API breakage,
but the new name is far better IMHO

Do you have any thoughts on this? I guess that the Tobi DT is not very widely used, apart for testing purposes, but I do not want to be flamed due to an API breakage :D But I deem the new name to be worth the risk.

Quoted 16 lines
Quoted 16 lines

Patch 13 to 17: add new extension boards (Palo43, Gallop43, Alto35, Chestnut43, Summit)
Patch 18: add the HDMI output
-> this patch depends on Tomi Valkeinen's DT binding for OMAPDSS, which is
not yet merged, so this patch will have to wait

The patches 13 to 17 are based on the hardware schematics and compile-tested, as I
do not have the necessary hardware (anyone willing to send me some boards ? :-)
We are mainly missing the support for the various LCDs, the accelerometer + probably
other small things.

Quoted 7 lines
Quoted 4 lines

This series is based on Tony's omap-for-v3.14/dt branch + work from Tomi [1] for the patch 18.

Benoit: I guess that I am too late for the 3.14... ?

Yeah, I think so, even my 3.14 branch is too late for 3.14 :-)

Damn!

Ok, will go for 3.15. Anyway, I have other DT patches under the hood (OMAP4 DuoVero + my own board), so everything can go into the same release.

Best,

Florian