aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ohci-spear.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-14 13:15:50 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-14 13:15:50 -0400
commit3de80bfc1c9dc2b791e1f00671356279f2a9442b (patch)
treebe1ac98e444993d99b487d13b1e1257891bd5e2b /drivers/usb/host/ohci-spear.c
parent781b2137e3c50e4465908b2c7ffd8f4c48c3461e (diff)
Revert "USB: OHCI: Properly handle ohci-spear suspend"
This reverts commit 36a8758736238c9354f46b39ca506e9acabe82d0. Manjunath is no longer at Linaro, the email address bounces. Given that, and the fact that others have reported problems with these patches, I'm reverting them until someone from Linaro who can SUPPORT THEM submits them. I will no longer accept patches from linaro.com developers unless a senior Linaro developer has signed off on them, which did not happen with this patch set. Reported-by: Olof Johansson <olof@lixom.net> Cc: Manjunath Goudar <manjunath.goudar@linaro.org> Cc: Manjunath Goudar <csmanjuvijay@gmail.com> Cc: Alan Stern <stern@rowland.harvard.edu> Cc: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/usb/host/ohci-spear.c')
-rw-r--r--drivers/usb/host/ohci-spear.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/usb/host/ohci-spear.c b/drivers/usb/host/ohci-spear.c
index 41148f8895a4..31ff3fc4e26f 100644
--- a/drivers/usb/host/ohci-spear.c
+++ b/drivers/usb/host/ohci-spear.c
@@ -130,26 +130,20 @@ static int spear_ohci_hcd_drv_remove(struct platform_device *pdev)
130} 130}
131 131
132#if defined(CONFIG_PM) 132#if defined(CONFIG_PM)
133static int spear_ohci_hcd_drv_suspend(struct platform_device *pdev, 133static int spear_ohci_hcd_drv_suspend(struct platform_device *dev,
134 pm_message_t message) 134 pm_message_t message)
135{ 135{
136 struct usb_hcd *hcd = platform_get_drvdata(pdev); 136 struct usb_hcd *hcd = platform_get_drvdata(dev);
137 struct ohci_hcd *ohci = hcd_to_ohci(hcd); 137 struct ohci_hcd *ohci = hcd_to_ohci(hcd);
138 struct spear_ohci *sohci_p = to_spear_ohci(hcd); 138 struct spear_ohci *sohci_p = to_spear_ohci(hcd);
139 bool do_wakeup = device_may_wakeup(&pdev->dev);
140 int ret;
141 139
142 if (time_before(jiffies, ohci->next_statechange)) 140 if (time_before(jiffies, ohci->next_statechange))
143 msleep(5); 141 msleep(5);
144 ohci->next_statechange = jiffies; 142 ohci->next_statechange = jiffies;
145 143
146 ret = ohci_suspend(hcd, do_wakeup);
147 if (ret)
148 return ret;
149
150 clk_disable_unprepare(sohci_p->clk); 144 clk_disable_unprepare(sohci_p->clk);
151 145
152 return ret; 146 return 0;
153} 147}
154 148
155static int spear_ohci_hcd_drv_resume(struct platform_device *dev) 149static int spear_ohci_hcd_drv_resume(struct platform_device *dev)