diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2017-06-19 21:14:35 +0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2017-06-19 21:14:35 +0300 |
commit | 8052bd8243e823a0954bcbafda8f91072598f13d (patch) | |
tree | e5f1502735c2a75fbe865cf57582d2e8354e6f43 /drivers/usb/chipidea/udc.c | |
parent | d0fabd1cb8b70073a0f44f1cf8b663b5e7241c74 (diff) | |
parent | 531c221df182af5a7fc2bf7ba7eee89354fe9a10 (diff) | |
download | linux-8052bd8243e823a0954bcbafda8f91072598f13d.tar.xz |
Merge remote-tracking branch 'tip/perf/urgent' into perf/core
Merge branch 'perf/urgent' into perf/core, to pick up fixes
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'drivers/usb/chipidea/udc.c')
-rw-r--r-- | drivers/usb/chipidea/udc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c index 56d2d3213076..d68b125796f9 100644 --- a/drivers/usb/chipidea/udc.c +++ b/drivers/usb/chipidea/udc.c @@ -1993,6 +1993,7 @@ static void udc_id_switch_for_host(struct ci_hdrc *ci) int ci_hdrc_gadget_init(struct ci_hdrc *ci) { struct ci_role_driver *rdrv; + int ret; if (!hw_read(ci, CAP_DCCPARAMS, DCCPARAMS_DC)) return -ENXIO; @@ -2005,7 +2006,10 @@ int ci_hdrc_gadget_init(struct ci_hdrc *ci) rdrv->stop = udc_id_switch_for_host; rdrv->irq = udc_irq; rdrv->name = "gadget"; - ci->roles[CI_ROLE_GADGET] = rdrv; - return udc_start(ci); + ret = udc_start(ci); + if (!ret) + ci->roles[CI_ROLE_GADGET] = rdrv; + + return ret; } |