usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
Subsystems (3)
PATCH 1/1 usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
Fixes NFS root problems with Beagle (3530 ES1.0) when used with external USB-ethernet adapter and "USB start" command used within u-boot.
Soft resetting the UHH module causes instability issues on all OMAPs so we just avoid it.
See OMAP36xx Errata
i571: USB host EHCI may stall when entering smart-standby mode
i660: USBHOST Configured In Smart-Idle Can Lead To a Deadlock
On OMAP4/5, soft-resetting the UHH module can put it into Smart-Idle mode and lead to a deadlock.
On OMAP3 this doesn't seem to be the case but still instabilities are observed on beagle (3530 ES1.0) if soft-reset is used.
e.g. NFS root failures with Linux kernel.
--- drivers/usb/host/ehci-omap.c | 27 +++++++++++++++------------ 1 files changed, 15 insertions(+), 12 deletions(-)
drivers/usb/host/ehci-omap.c +15 -12
@@ -42,18 +42,21 @@ static struct omap_ehci *const ehci = (struct omap_ehci *)OMAP_EHCI_BASE;static int omap_uhh_reset (void ) { -unsigned long init =get_timer (0 ); - -/* perform UHH soft reset, and wait until reset is complete */ -writel (OMAP_UHH_SYSCONFIG_SOFTRESET , &uhh->sysc); - -/* Wait for UHH reset to complete */ -while (!(readl (&uhh->syss) &OMAP_UHH_SYSSTATUS_EHCI_RESETDONE )) -if (get_timer (init) >CONFIG_SYS_HZ ) { -debug ("OMAP UHH error: timeout resetting ehci\n" ); -return -EL3RST ; - } - +/* +* Soft resetting the UHH module causes instability issues on +* all OMAPs so we just avoid it. +* +* See OMAP36xx Errata +* i571: USB host EHCI may stall when entering smart-standby mode +* i660: USBHOST Configured In Smart-Idle Can Lead To a Deadlock +* +* On OMAP4/5, soft-resetting the UHH module will put it into +* Smart-Idle mode and lead to a deadlock. +* +* On OMAP3, this doesn't seem to be the case but still instabilities +* are observed on beagle (3530 ES1.0) if soft-reset is used. +* e.g. NFS root failures with Linux kernel. +*/ return 0 ; }
Signature · 1 line
1.7.4.1
PATCH 1/1 usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
Quoted 11 lines · Roger Quadros
Fixes NFS root problems with Beagle (3530 ES1.0) when used with external USB-ethernet adapter and "USB start" command used within u-boot.
Soft resetting the UHH module causes instability issues on all OMAPs so we just avoid it.
See OMAP36xx Errata
i571: USB host EHCI may stall when entering smart-standby mode
i660: USBHOST Configured In Smart-Idle Can Lead To a Deadlock
Quoted 8 lines
On OMAP4/5, soft-resetting the UHH module can put it into Smart-Idle mode and lead to a deadlock.
On OMAP3 this doesn't seem to be the case but still instabilities are observed on beagle (3530 ES1.0) if soft-reset is used.
e.g. NFS root failures with Linux kernel.Signed-off-by Roger Quadros <[email protected]>
Thanks a lot for fixing this. With this patch, beagleboard is able to boot into an NFS root-fs. Even when USB is used previously in U-Boot. Without this patch NFS booting hangs randomly at some time.
So:
Note: I think its a bit too late to take this patch into this release. So I suggest to apply it in the next merge-window.
Thanks,
Stefan
PATCH 1/1 usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
In reply to Roger QuadrosDear Roger Quadros,
Quoted 11 lines
Fixes NFS root problems with Beagle (3530 ES1.0) when used with external USB-ethernet adapter and "USB start" command used within u-boot.
Soft resetting the UHH module causes instability issues on all OMAPs so we just avoid it.
See OMAP36xx Errata
i571: USB host EHCI may stall when entering smart-standby mode
i660: USBHOST Configured In Smart-Idle Can Lead To a Deadlock
Quoted 8 lines
On OMAP4/5, soft-resetting the UHH module can put it into Smart-Idle mode and lead to a deadlock.
On OMAP3 this doesn't seem to be the case but still instabilities are observed on beagle (3530 ES1.0) if soft-reset is used.
e.g. NFS root failures with Linux kernel.Signed-off-by Roger Quadros <[email protected]>
Now it all depends on Tom, but this would be a last-second save ;-)
Best regards,
Marek Vasut
PATCH 1/1 usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
Quoted 20 lines · Marek Vasut
Dear Roger Quadros,
Quoted 18 lines
Fixes NFS root problems with Beagle (3530 ES1.0) when used with external USB-ethernet adapter and "USB start" command used within u-boot.
Soft resetting the UHH module causes instability issues on all OMAPs so we just avoid it.
See OMAP36xx Errata
i571: USB host EHCI may stall when entering smart-standby mode
i660: USBHOST Configured In Smart-Idle Can Lead To a DeadlockOn OMAP4/5, soft-resetting the UHH module can put it into Smart-Idle mode and lead to a deadlock.
On OMAP3 this doesn't seem to be the case but still instabilities are observed on beagle (3530 ES1.0) if soft-reset is used.
e.g. NFS root failures with Linux kernel.
Quoted 7 lines
Quoted 1 line
Signed-off-by Roger Quadros <[email protected]>Acked-by Marek Vasut <[email protected]>Now it all depends on Tom, but this would be a last-second save ;-)
Best regards,
Marek Vasut
Signature · 2 lines
------------------ Dan Murphy
Marek Vasut
AppliedPATCH 1/1 usb: ehci-omap: Don't softreset USB High-speed Host (UHH) Module
In reply to Roger QuadrosDear Roger Quadros,
Quoted 11 lines
Fixes NFS root problems with Beagle (3530 ES1.0) when used with external USB-ethernet adapter and "USB start" command used within u-boot.
Soft resetting the UHH module causes instability issues on all OMAPs so we just avoid it.
See OMAP36xx Errata
i571: USB host EHCI may stall when entering smart-standby mode
i660: USBHOST Configured In Smart-Idle Can Lead To a Deadlock
Quoted 8 lines
On OMAP4/5, soft-resetting the UHH module can put it into Smart-Idle mode and lead to a deadlock.
On OMAP3 this doesn't seem to be the case but still instabilities are observed on beagle (3530 ES1.0) if soft-reset is used.
e.g. NFS root failures with Linux kernel.Signed-off-by Roger Quadros <[email protected]>
Applied, thanks guys for helping me with these omap things.
Best regards,
Marek Vasut