diff options
Diffstat (limited to 'drivers/usb/gadget/udc/udc-core.c')
-rw-r--r-- | drivers/usb/gadget/udc/udc-core.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/usb/gadget/udc/udc-core.c b/drivers/usb/gadget/udc/udc-core.c index 6e8300d6a737..e1b2dcebdc2e 100644 --- a/drivers/usb/gadget/udc/udc-core.c +++ b/drivers/usb/gadget/udc/udc-core.c | |||
@@ -603,11 +603,15 @@ int usb_gadget_probe_driver(struct usb_gadget_driver *driver) | |||
603 | } | 603 | } |
604 | } | 604 | } |
605 | 605 | ||
606 | list_add_tail(&driver->pending, &gadget_driver_pending_list); | 606 | if (!driver->match_existing_only) { |
607 | pr_info("udc-core: couldn't find an available UDC - added [%s] to list of pending drivers\n", | 607 | list_add_tail(&driver->pending, &gadget_driver_pending_list); |
608 | driver->function); | 608 | pr_info("udc-core: couldn't find an available UDC - added [%s] to list of pending drivers\n", |
609 | driver->function); | ||
610 | ret = 0; | ||
611 | } | ||
612 | |||
609 | mutex_unlock(&udc_lock); | 613 | mutex_unlock(&udc_lock); |
610 | return 0; | 614 | return ret; |
611 | found: | 615 | found: |
612 | ret = udc_bind_to_driver(udc, driver); | 616 | ret = udc_bind_to_driver(udc, driver); |
613 | mutex_unlock(&udc_lock); | 617 | mutex_unlock(&udc_lock); |