From: Li Jun Date: Wed, 24 Dec 2014 10:23:04 +0000 (+0800) Subject: MLK-10051-1 usb: host: don't break clear suspend feature if otg fsm is used X-Git-Tag: C0P2-H0.0--20200415~4634 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=5e1db5d131ec13f4a7494b22b29ce89593e692d3;p=linux.git MLK-10051-1 usb: host: don't break clear suspend feature if otg fsm is used Current code just do not do reusme signaling for clear suspend feature if it's a OTG port with b_hnp_enable set, this result in OTG host cannot clear suspend and resume OTG device after system resume from sleep, then host will disconnect the OTG B-device and enumerate it again. To make OTG A-device in host state can do clear feature of suspend like an usual host, and also be compatible legacy OTG device, this patch adds another condition to check if OTG FSM driver is used ,as in OTG FSM driver, we need not do HNP in that case. Acked-by: Peter Chen Signed-off-by: Li Jun (cherry picked from commit f92731f787ca00ef8cd0ab9d591e4e24d5a40cc4) (cherry picked from commit 92f5f68e853713e1179c0e30c1e84456ba11302e) --- diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c index 74f62d68f013..6a96628374a3 100644 --- a/drivers/usb/host/ehci-hub.c +++ b/drivers/usb/host/ehci-hub.c @@ -935,7 +935,7 @@ int ehci_hub_control( break; #ifdef CONFIG_USB_OTG if ((hcd->self.otg_port == (wIndex + 1)) - && hcd->self.b_hnp_enable) { + && hcd->self.b_hnp_enable && !hcd->self.otg_fsm) { otg_start_hnp(hcd->usb_phy->otg); break; }