summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrashant Gaikwad <pgaikwad@nvidia.com>2011-04-13 10:44:47 +0530
committerVarun Colbert <vcolbert@nvidia.com>2011-04-13 18:04:53 -0700
commit869ec1ee437d28fb58b9d06b1b0076446fe94d62 (patch)
treea222437e1d7ea9261fc7f3bd42c46fd0547c200c
parent566c7a12ec0562158b68a4a07b82b248ee290cd2 (diff)
usb: otg: tegra: let the usb clock stabilize
add sleep to let the clock stabilize before handling interrupt. Bug 814888 Change-Id: I7983017f04ad8b84eb6def0f4f7c580292e6e374 Reviewed-on: http://git-master/r/27592 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
-rw-r--r--drivers/usb/otg/tegra-otg.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/usb/otg/tegra-otg.c b/drivers/usb/otg/tegra-otg.c
index 4e40d14f57cf..386bb8b922da 100644
--- a/drivers/usb/otg/tegra-otg.c
+++ b/drivers/usb/otg/tegra-otg.c
@@ -401,6 +401,11 @@ static int tegra_otg_resume(struct platform_device * pdev)
tegra_otg_enable_clk();
+ /* Following delay is intentional.
+ * It is placed here after observing system hang.
+ * Root cause is not confirmed.
+ */
+ msleep(1);
/* restore the interupt enable for cable ID and VBUS */
clk_enable(tegra_otg->clk);
writel(tegra_otg->intr_reg_data, (tegra_otg->regs + USB_PHY_WAKEUP));