Thread (27 messages) flat view 27 messages, 6 authors, 2011-02-25
STALE5672d

[PATCH] omap4: Fix ULPI PHY init for ES1.0 SDP (Re: 4430SDP boot failure)

From: Anand Gadiyar <hidden>
Date: 2011-02-01 12:55:59
Also in: linux-omap

Tony Lindgren wrote:
quoted hunk ↗ jump to hunk
Here's one more es1.0 fix after the recent USB changes.

Regards,

Tony


Author: Tony Lindgren [off-list ref]
Date:   Tue Jan 11 15:03:03 2011 -0800

    omap4: Fix ULPI PHY init for ES1.0 SDP

    Commit 6aa85a5ae610106d89e50c7e1f760c56d12f9bc4 (omap4: 4430sdp:
    enable the ehci port on 4430SDP) added code to enable EHCI
    support on 4430sdp board.

    Looks like the ULPI pin does not seem to be muxed properly on ES1.0
    SDP and this causes the system to reboot when the ULPI PHY is
    enabled.

    Fix this by muxing the pin, this is the same setting for
    both ES1.0 and ES2.0. Also add checking for gpio_request.

    Cc: Keshava Munegowda <keshava_mgowda@ti.com
    Signed-off-by: Tony Lindgren [off-list ref]
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -554,6 +554,7 @@ static void __init omap_sfh7741prox_init(void)

 #ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
+	OMAP4_MUX(USBB2_ULPITLL_CLK, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
 #else
Tony,

I believe this fix is fixing your reboot issue, but it's breaking
EHCI support on the SDP.

The MODE4 above should really be MODE3 - all GPIOs are on MODE3.
By changing

The patch snippet below fixes EHCI on the SDP, but I believe that
making this change will reintroduce the "board reboots" issue
you originally reported. Could you check and tell me if this
is the case?

Just curious - is your board a Blaze, or an SDP?
diff --git a/arch/arm/mach-omap2/board-4430sdp.c
b/arch/arm/mach-omap2/board-4430sdp.c
index 07d1b20..ab9fb4d 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -554,7 +554,7 @@ static void __init omap_sfh7741prox_init(void)

 #ifdef CONFIG_OMAP_MUX
 static struct omap_board_mux board_mux[] __initdata = {
-	OMAP4_MUX(USBB2_ULPITLL_CLK, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
+	OMAP4_MUX(USBB2_ULPITLL_CLK, OMAP_MUX_MODE3 | OMAP_PIN_OUTPUT),
 	{ .reg_offset = OMAP_MUX_TERMINATOR },
 };
 #else
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help