From: Pavankumar Kondeti Date: Mon, 2 May 2011 06:26:33 +0000 (+0530) Subject: USB: OTG: msm: Clear in_lpm flag before enabling the IRQ in resume X-Git-Tag: v3.0-rc1~337^2~70 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=2ce2c3ac8852cfc8f74f4b7b9a2c4cdff007f96a;p=~shefty%2Frdma-dev.git USB: OTG: msm: Clear in_lpm flag before enabling the IRQ in resume 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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/otg/msm_otg.c b/drivers/usb/otg/msm_otg.c index 296598628b8..f58b7dab75a 100644 --- a/drivers/usb/otg/msm_otg.c +++ b/drivers/usb/otg/msm_otg.c @@ -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;