diff options
author | Vinayak Pane <vpane@nvidia.com> | 2011-12-13 20:34:30 -0800 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2012-01-30 12:31:39 -0800 |
commit | a882618b895bfad07b59f97e70964fc3adda82e0 (patch) | |
tree | 5a27cc536e873e2e7891f5fc54ccaca415bb7969 /drivers/usb | |
parent | bac4549bd4c8a8481db8d1c89e08702c8d7e0794 (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')
-rw-r--r-- | drivers/usb/host/ehci-tegra.c | 6 |
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 */ |