diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2019-09-11 16:59:54 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2020-02-12 11:06:03 +0100 |
commit | b43415e2d1ac6ff6ebc39783b8cf3c9911a9cfd5 (patch) | |
tree | df1d86c6a6bd2f024e8f70fe6530fb76341aa9ee /drivers/usb | |
parent | 75ba548e940f9c7d387c3a41d0327b86221c8ad9 (diff) |
usb: chipidea: use seperate role sm when using extcon
Enable the code from commit 'aa5fc842bb05 usb: chipidea: use of extcon
framework to work for non OTG case' if ID and/or VBUS signals are taken
from extcon.
Otherwise (observed on a Colibri iMX6ULL) when booting in the ROLE_HOST
and then changing to ROLE_GADGET the gadget does not appear on the bus
and switching back to ROLE_HOST does also no longer detect any connected
USB devices.
Related-to: #50573
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit b80233b2f3ec91920bba3712dcc929dc913caf15)
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/chipidea/core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c index 758611ce40e1..e817786da66d 100644 --- a/drivers/usb/chipidea/core.c +++ b/drivers/usb/chipidea/core.c @@ -778,6 +778,7 @@ static int ci_get_platdata(struct device *dev, ext_id = extcon_get_edev_by_phandle(dev, 1); if (IS_ERR(ext_id) && PTR_ERR(ext_id) != -ENODEV) return PTR_ERR(ext_id); + platdata->flags |= CI_HDRC_DUAL_ROLE_NOT_OTG; } cable = &platdata->vbus_extcon; |