From 03bc8a7c8aec3ed2c2bbe60442df9d4789975f1f Mon Sep 17 00:00:00 2001 From: Seshendra Gadagottu Date: Tue, 1 Mar 2011 14:59:03 +0530 Subject: tegra: usb: ehci: Handling for hsic phy rx error Increased timeout values to maximum safe values BUG 791857 Change-Id: Ib3aa2a495391b8cf1e3795759bfe3bb78598839d Reviewed-on: http://git-master/r/21234 Tested-by: Seshendra Gadagottu Reviewed-by: Shail Dave --- drivers/usb/host/ehci-tegra.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c index 9adcfef2af07..6111352a86ff 100644 --- a/drivers/usb/host/ehci-tegra.c +++ b/drivers/usb/host/ehci-tegra.c @@ -692,7 +692,6 @@ static ssize_t show_ehci_power(struct device *dev, { return sprintf(buf, "EHCI Power %s\n", (ehci_handle) ? "on" : "off"); } - static ssize_t store_ehci_power(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) @@ -739,7 +738,7 @@ static inline void remove_ehci_sys_file(struct ehci_hcd *ehci) static int ehci_tegra_wait_register(void __iomem *reg, u32 mask, u32 result) { - unsigned long timeout = 2000; + unsigned long timeout = 50000; do { if ((readl(reg) & mask) == result) @@ -769,7 +768,7 @@ void tegra_ehci_recover_rx_error(void) ehci_writel(ehci, val | PORT_SUSPEND, &ehci->regs->port_status[0]); /* (2) wait until PORTSC SUSP = 1 */ if (handshake(ehci, &ehci->regs->port_status[0], PORT_SUSPEND, - PORT_SUSPEND, 2000)) { + PORT_SUSPEND, 5000)) { pr_err("%s: timeout waiting for PORT_SUSPEND = 1\n", __func__); return; } @@ -804,7 +803,7 @@ void tegra_ehci_recover_rx_error(void) ehci_writel(ehci, val | PORT_RESUME, &ehci->regs->port_status[0]); /* (10) wait until PORTSC FPR = 0 */ if (handshake(ehci, &ehci->regs->port_status[0], PORT_RESUME, - 0, 2000)) { + 0, 5000)) { pr_err("%s: timeout waiting for PORT_RESUME = 1\n", __func__); return; } -- cgit v1.2.3