diff options
author | Marek Szyprowski <m.szyprowski@samsung.com> | 2016-02-08 07:42:14 -0500 |
---|---|---|
committer | Felipe Balbi <balbi@kernel.org> | 2016-02-23 01:51:37 -0500 |
commit | 31b994a4986dcdd664c597afcef2c0918763019a (patch) | |
tree | e71ac280b59baa997399b214a99b6156f64a9185 | |
parent | bba40e6948b94cba71965285fbac31bd078c024a (diff) |
usb: gadget: remove driver from pending list on probe error
Retry gadget probe only if the probe result is -EPROBE_DEFER, not on
every probe error.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
-rw-r--r-- | drivers/usb/gadget/udc/udc-core.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/gadget/udc/udc-core.c b/drivers/usb/gadget/udc/udc-core.c index fd73a3ea07c2..b86a6f03592e 100644 --- a/drivers/usb/gadget/udc/udc-core.c +++ b/drivers/usb/gadget/udc/udc-core.c | |||
@@ -413,9 +413,10 @@ int usb_add_gadget_udc_release(struct device *parent, struct usb_gadget *gadget, | |||
413 | if (!driver->udc_name || strcmp(driver->udc_name, | 413 | if (!driver->udc_name || strcmp(driver->udc_name, |
414 | dev_name(&udc->dev)) == 0) { | 414 | dev_name(&udc->dev)) == 0) { |
415 | ret = udc_bind_to_driver(udc, driver); | 415 | ret = udc_bind_to_driver(udc, driver); |
416 | if (ret != -EPROBE_DEFER) | ||
417 | list_del(&driver->pending); | ||
416 | if (ret) | 418 | if (ret) |
417 | goto err4; | 419 | goto err4; |
418 | list_del(&driver->pending); | ||
419 | break; | 420 | break; |
420 | } | 421 | } |
421 | } | 422 | } |