From 36d892e496a8d98b7e36de5599d1c195cc9f0c20 Mon Sep 17 00:00:00 2001 From: Benoit Goby Date: Tue, 18 Jan 2011 12:56:16 -0800 Subject: usb: host: tegra: Fix resuming low speed devices from lp0 Change-Id: I9576853bbe0fae52c5c2cfab26ce8f2017077d4e Signed-off-by: Benoit Goby Reviewed-on: http://git-master/r/16709 Reviewed-by: Varun Colbert Tested-by: Varun Colbert --- drivers/usb/host/ehci-tegra.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c index f44181737025..23931797d1e4 100644 --- a/drivers/usb/host/ehci-tegra.c +++ b/drivers/usb/host/ehci-tegra.c @@ -269,7 +269,7 @@ static int tegra_usb_resume(struct usb_hcd *hcd) goto restart; } - tegra_ehci_phy_restore_start(tegra->phy); + tegra_ehci_phy_restore_start(tegra->phy, context->port_speed); /* Check if the phy resume from LP0. When the phy resume from LP0 * USB register will be reset. */ @@ -345,10 +345,13 @@ static int tegra_usb_resume(struct usb_hcd *hcd) } tegra_ehci_phy_restore_end(tegra->phy); + return 0; restart: - tegra_ehci_phy_restore_end(tegra->phy); + if (context->valid) + tegra_ehci_phy_restore_end(tegra->phy); + tegra_ehci_restart(hcd); return 0; } -- cgit v1.2.3