Commit 2ce2c3ac authored by Pavankumar Kondeti's avatar Pavankumar Kondeti Committed by Greg Kroah-Hartman
Browse files

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: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent ac1aa6a2
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -389,14 +389,14 @@ skip_phy_resume:
	if (bus)
	if (bus)
		set_bit(HCD_FLAG_HW_ACCESSIBLE, &(bus_to_hcd(bus))->flags);
		set_bit(HCD_FLAG_HW_ACCESSIBLE, &(bus_to_hcd(bus))->flags);


	atomic_set(&motg->in_lpm, 0);

	if (motg->async_int) {
	if (motg->async_int) {
		motg->async_int = 0;
		motg->async_int = 0;
		pm_runtime_put(otg->dev);
		pm_runtime_put(otg->dev);
		enable_irq(motg->irq);
		enable_irq(motg->irq);
	}
	}


	atomic_set(&motg->in_lpm, 0);

	dev_info(otg->dev, "USB exited from low power mode\n");
	dev_info(otg->dev, "USB exited from low power mode\n");


	return 0;
	return 0;