summaryrefslogtreecommitdiff
path: root/drivers/usb/host
diff options
context:
space:
mode:
authorVinayak Pane <vpane@nvidia.com>2011-12-13 20:34:30 -0800
committerVarun Colbert <vcolbert@nvidia.com>2012-01-30 12:31:39 -0800
commita882618b895bfad07b59f97e70964fc3adda82e0 (patch)
tree5a27cc536e873e2e7891f5fc54ccaca415bb7969 /drivers/usb/host
parentbac4549bd4c8a8481db8d1c89e08702c8d7e0794 (diff)
tegra: usb: phy: Pullup HSIC strobe at idle
Correcting the strobe and SOFs behaviour. This avoids run-stop bit to start before actual bus_reset. Also, pullup the strobe signal during idle and wait for connect detect after bus idle. Bug 898008 Bug 922444 Reviewed-on: http://git-master/r/73261 Change-Id: I01999521013677f159ee9c12f2d7bcb453c3b39d Signed-off-by: Vinayak Pane <vpane@nvidia.com> Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/77748 Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'drivers/usb/host')
-rw-r--r--drivers/usb/host/ehci-tegra.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c
index dfd4c479c366..030b03b55dff 100644
--- a/drivers/usb/host/ehci-tegra.c
+++ b/drivers/usb/host/ehci-tegra.c
@@ -489,7 +489,11 @@ static void tegra_ehci_restart(struct usb_hcd *hcd, bool is_dpd)
ehci_writel(ehci, (u32)ehci->async->qh_dma, &ehci->regs->async_next);
/* setup the command register and set the controller in RUN mode */
ehci->command &= ~(CMD_LRESET|CMD_IAAD|CMD_PSE|CMD_ASE|CMD_RESET);
- ehci->command |= CMD_RUN;
+#ifndef CONFIG_ARCH_TEGRA_2x_SOC
+ /* dont start RS here for HSIC, it will be set by bus_reset */
+ if (tegra->phy->usb_phy_type != TEGRA_USB_PHY_TYPE_HSIC)
+#endif
+ ehci->command |= CMD_RUN;
ehci_writel(ehci, ehci->command, &ehci->regs->command);
/* Enable the root Port Power */