Skip to contentSkip to conversation

linux-2.6-windriver: omap3: beaglexm: fix EHCI power up GPIO dir

PATCH In review Darren Hart 2 participants 3 messages Jan 21, 2011

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

PATCH 1/1 linux-2.6-windriver: omap3: beaglexm: fix EHCI power up GPIO dir

The following patch from Koen's angstrom-linux repository fixes initialization of the Beagleboard xM's on-board USB hub and makes it possible to use the on-board network port.

Please merge contrib/dvhart/beagleboard-standard with beagleboard-standard.

Pull URL: git://git.pokylinux.org/linux-2.6-windriver-contrib.git
Branch: dvhart/beagleboard-standard
Browse: http://git.pokylinux.org/cgit.cgi/linux-2.6-windriver-contrib/log/?h=dvhart/beagleboard-standard

Thanks,
Darren Hart <[email protected]>

From 23a104853de8cdb351b7747af799463215dc4d8c Mon Sep 17 00:00:00 2001
From: Koen Kooi <[email protected]>
Date: Tue, 11 Jan 2011 17:13:35 +0000
Subject: [PATCH] omap3: beaglexm: fix EHCI power up GPIO dir

commit a5624323866c06156ca548b8515d9347fdd5188e angstrom-linux

EHCI enable power pin is inverted (active high) in comparison to vanilla beagle which is active low. Handle this case conditionally.

Without this fix, Beagle XM 4 port EHCI will not function and no networking will be available

[[email protected]: split up, added descriptive changelogs]
---
 arch/arm/mach-omap2/board-omap3beagle.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)
arch/arm/mach-omap2/board-omap3beagle.c +8 -2
index 5bcf6ee..80c203c 100644
@@ -250,9 +250,15 @@ static int beagle_twl_gpio_setup(struct device *dev,
 	gpio_request(gpio + 1, "EHCI_nOC");
 	gpio_direction_input(gpio + 1);
 
-	/* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
+	/*
+	 * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active
+	 * high / others active low)
+	 */
 	gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
-	gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
+	if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)
+		gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
+	else
+		gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
 
 	/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
 	gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
Signature · 5 lines
1.7.1
-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
#1 lore raw

Op 21 jan 2011, om 20:45 heeft Darren Hart het volgende geschreven:

Quoted 3 lines

The following patch from Koen's angstrom-linux repository fixes initialization of the Beagleboard xM's on-board USB hub and makes it possible to use the on-board network port.

FWIW, that patch will be in 2.6.38rc1 :)

Quoted 64 lines

Please merge contrib/dvhart/beagleboard-standard with beagleboard-standard.

Pull URL: git://git.pokylinux.org/linux-2.6-windriver-contrib.git
Branch: dvhart/beagleboard-standard
Browse: http://git.pokylinux.org/cgit.cgi/linux-2.6-windriver-contrib/log/?h=dvhart/beagleboard-standard

Thanks,
Darren Hart <[email protected]>

From 23a104853de8cdb351b7747af799463215dc4d8c Mon Sep 17 00:00:00 2001
From: Koen Kooi <[email protected]>
Date: Tue, 11 Jan 2011 17:13:35 +0000
Subject: [PATCH] omap3: beaglexm: fix EHCI power up GPIO dir

commit a5624323866c06156ca548b8515d9347fdd5188e angstrom-linux

EHCI enable power pin is inverted (active high) in comparison to vanilla beagle which is active low. Handle this case conditionally.

Without this fix, Beagle XM 4 port EHCI will not function and no networking will be available

[[email protected]: split up, added descriptive changelogs]

---
arch/arm/mach-omap2/board-omap3beagle.c | 10 ++++++++--

1 files changed, 8 insertions(+), 2 deletions(-)
arch/arm/mach-omap2/board-omap3beagle.c +8 -2
index 5bcf6ee..80c203c 100644
@@ -250,9 +250,15 @@ static int beagle_twl_gpio_setup(struct device *dev,
 	gpio_request(gpio + 1, "EHCI_nOC");
 	gpio_direction_input(gpio + 1);
 
-	/* TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, active low) */
+	/*
+	 * TWL4030_GPIO_MAX + 0 == ledA, EHCI nEN_USB_PWR (out, XM active
+	 * high / others active low)
+	 */
 	gpio_request(gpio + TWL4030_GPIO_MAX, "nEN_USB_PWR");
-	gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
+	if (omap3_beagle_get_rev() == OMAP3BEAGLE_BOARD_XM)
+		gpio_direction_output(gpio + TWL4030_GPIO_MAX, 1);
+	else
+		gpio_direction_output(gpio + TWL4030_GPIO_MAX, 0);
 
 	/* TWL4030_GPIO_MAX + 1 == ledB, PMU_STAT (out, active low LED) */
 	gpio_leds[2].gpio = gpio + TWL4030_GPIO_MAX + 1;
Signature · 9 lines
1.7.1
-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky
#2 lore raw
Quoted 8 lines · Koen Kooi

Op 21 jan 2011, om 20:45 heeft Darren Hart het volgende geschreven:

Quoted 3 lines

The following patch from Koen's angstrom-linux repository fixes initialization of the Beagleboard xM's on-board USB hub and makes it possible to use the on-board network port.

FWIW, that patch will be in 2.6.38rc1 :)

Thanks, it looked pretty straight forward, so I figured it was targeted for upstream. Going forward, are there any branches I should avoid pulling from - or any particular branch I should restrict my pulls to?

Signature · 3 lines
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel