]> git.openfabrics.org - ~shefty/rdma-dev.git/commitdiff
USB: OTG: msm: Clear in_lpm flag before enabling the IRQ in resume
authorPavankumar Kondeti <pkondeti@codeaurora.org>
Mon, 2 May 2011 06:26:33 +0000 (11:56 +0530)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 3 May 2011 17:25:26 +0000 (10:25 -0700)
The current code is clearing in_lpm flag after enabling the IRQ.
If IRQ comes immediately before in_lpm flag is set, it thinks that
hardware is in low power mode and disables the IRQ.  Fix this by
clearing in_lpm flag before enabling the IRQ.

Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/otg/msm_otg.c

index 296598628b853b2e9bf9586dd563cbdd34412606..f58b7dab75aa836ef7d41dd3914134265573432f 100644 (file)
@@ -389,14 +389,14 @@ skip_phy_resume:
        if (bus)
                set_bit(HCD_FLAG_HW_ACCESSIBLE, &(bus_to_hcd(bus))->flags);
 
+       atomic_set(&motg->in_lpm, 0);
+
        if (motg->async_int) {
                motg->async_int = 0;
                pm_runtime_put(otg->dev);
                enable_irq(motg->irq);
        }
 
-       atomic_set(&motg->in_lpm, 0);
-
        dev_info(otg->dev, "USB exited from low power mode\n");
 
        return 0;