diff options
author | Manuel Lauss <manuel.lauss@googlemail.com> | 2011-05-05 10:35:24 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-06 21:16:39 -0400 |
commit | a7535ac05443f234b9c68389fc053976383feca4 (patch) | |
tree | 55151645de7026eec8061ae57bce840c6ba9e583 /drivers/usb | |
parent | 3df004532582d0cc721da0df28311bcedd639724 (diff) |
USB: ehci-au1xxx: fix suspend callback
Remove a stray 'return 0' at the top of the suspend callback,
and move au1xxx_stop_ehc() out of the ehci spinlock since it takes
some time to complete.
Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/host/ehci-au1xxx.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/usb/host/ehci-au1xxx.c b/drivers/usb/host/ehci-au1xxx.c index 40b002869ac2..42ae57409908 100644 --- a/drivers/usb/host/ehci-au1xxx.c +++ b/drivers/usb/host/ehci-au1xxx.c | |||
@@ -216,10 +216,7 @@ static int ehci_hcd_au1xxx_drv_suspend(struct device *dev) | |||
216 | struct usb_hcd *hcd = dev_get_drvdata(dev); | 216 | struct usb_hcd *hcd = dev_get_drvdata(dev); |
217 | struct ehci_hcd *ehci = hcd_to_ehci(hcd); | 217 | struct ehci_hcd *ehci = hcd_to_ehci(hcd); |
218 | unsigned long flags; | 218 | unsigned long flags; |
219 | int rc; | 219 | int rc = 0; |
220 | |||
221 | return 0; | ||
222 | rc = 0; | ||
223 | 220 | ||
224 | if (time_before(jiffies, ehci->next_statechange)) | 221 | if (time_before(jiffies, ehci->next_statechange)) |
225 | msleep(10); | 222 | msleep(10); |
@@ -234,13 +231,13 @@ static int ehci_hcd_au1xxx_drv_suspend(struct device *dev) | |||
234 | (void)ehci_readl(ehci, &ehci->regs->intr_enable); | 231 | (void)ehci_readl(ehci, &ehci->regs->intr_enable); |
235 | 232 | ||
236 | clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags); | 233 | clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags); |
237 | |||
238 | au1xxx_stop_ehc(); | ||
239 | spin_unlock_irqrestore(&ehci->lock, flags); | 234 | spin_unlock_irqrestore(&ehci->lock, flags); |
240 | 235 | ||
241 | // could save FLADJ in case of Vaux power loss | 236 | // could save FLADJ in case of Vaux power loss |
242 | // ... we'd only use it to handle clock skew | 237 | // ... we'd only use it to handle clock skew |
243 | 238 | ||
239 | au1xxx_stop_ehc(); | ||
240 | |||
244 | return rc; | 241 | return rc; |
245 | } | 242 | } |
246 | 243 | ||