USB: dwc3_otg: Cancel charger detection work before entering LPM

Charger detection algorithm takes significant time (hundreds of msec)
to complete. This can result in a scenario where chg_det work is
pending to run even after cable disconnection. Since, USB clocks are
turned off after cable disconnect, hence, execution of detection-work
later can result in unlocked register accesses. Hence, cancel any
pending charger detection work before turning off clocks.

CRs-Fixed: 422848
Change-Id: Iccaba4c003ee492b84bce057de64a2ae8edc2ef6
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
diff --git a/drivers/usb/dwc3/dwc3_otg.c b/drivers/usb/dwc3/dwc3_otg.c
index 7b672c4..fab443c 100644
--- a/drivers/usb/dwc3/dwc3_otg.c
+++ b/drivers/usb/dwc3/dwc3_otg.c
@@ -640,14 +640,9 @@
 				}
 			}
 		} else {
-			if (charger) {
-				if (charger->chg_type == DWC3_INVALID_CHARGER)
-					charger->start_detection(dotg->charger,
-									false);
-				else
-					charger->chg_type =
-							DWC3_INVALID_CHARGER;
-			}
+			if (charger)
+				charger->start_detection(dotg->charger, false);
+
 			dwc3_otg_set_power(phy, 0);
 			dev_dbg(phy->dev, "No device, trying to suspend\n");
 			pm_runtime_put_sync(phy->dev);