aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/chipidea/udc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/chipidea/udc.c')
-rw-r--r--drivers/usb/chipidea/udc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c
index 065f5d97aa67..dfec5a176315 100644
--- a/drivers/usb/chipidea/udc.c
+++ b/drivers/usb/chipidea/udc.c
@@ -1596,8 +1596,11 @@ static int ci_udc_pullup(struct usb_gadget *_gadget, int is_on)
1596{ 1596{
1597 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget); 1597 struct ci_hdrc *ci = container_of(_gadget, struct ci_hdrc, gadget);
1598 1598
1599 /* Data+ pullup controlled by OTG state machine in OTG fsm mode */ 1599 /*
1600 if (ci_otg_is_fsm_mode(ci)) 1600 * Data+ pullup controlled by OTG state machine in OTG fsm mode;
1601 * and don't touch Data+ in host mode for dual role config.
1602 */
1603 if (ci_otg_is_fsm_mode(ci) || ci->role == CI_ROLE_HOST)
1601 return 0; 1604 return 0;
1602 1605
1603 pm_runtime_get_sync(&ci->gadget.dev); 1606 pm_runtime_get_sync(&ci->gadget.dev);