aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ohci-exynos.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/host/ohci-exynos.c')
-rw-r--r--drivers/usb/host/ohci-exynos.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/usb/host/ohci-exynos.c b/drivers/usb/host/ohci-exynos.c
index 55aa35aa3d7b..37bb20ebb6fc 100644
--- a/drivers/usb/host/ohci-exynos.c
+++ b/drivers/usb/host/ohci-exynos.c
@@ -212,12 +212,10 @@ static int exynos_ohci_suspend(struct device *dev)
212 * mark HW unaccessible, bail out if RH has been resumed. Use 212 * mark HW unaccessible, bail out if RH has been resumed. Use
213 * the spinlock to properly synchronize with possible pending 213 * the spinlock to properly synchronize with possible pending
214 * RH suspend or resume activity. 214 * RH suspend or resume activity.
215 *
216 * This is still racy as hcd->state is manipulated outside of
217 * any locks =P But that will be a different fix.
218 */ 215 */
219 spin_lock_irqsave(&ohci->lock, flags); 216 spin_lock_irqsave(&ohci->lock, flags);
220 if (hcd->state != HC_STATE_SUSPENDED && hcd->state != HC_STATE_HALT) { 217 if (ohci->rh_state != OHCI_RH_SUSPENDED &&
218 ohci->rh_state != OHCI_RH_HALTED) {
221 rc = -EINVAL; 219 rc = -EINVAL;
222 goto fail; 220 goto fail;
223 } 221 }