[PATCH 1/2] usb: gadget: set composite to NULL when usb_gadget_register_driver fails

Sascha Hauer s.hauer at pengutronix.de
Wed Mar 19 11:17:09 EDT 2014


From: Lucas Stach <dev at lynxeye.de>

So that it can be tried later again.

Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
 drivers/usb/gadget/composite.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/gadget/composite.c b/drivers/usb/gadget/composite.c
index 11b6c18..71d0ecf 100644
--- a/drivers/usb/gadget/composite.c
+++ b/drivers/usb/gadget/composite.c
@@ -994,6 +994,8 @@ static struct usb_gadget_driver composite_driver = {
  */
 int usb_composite_register(struct usb_composite_driver *driver)
 {
+	int ret;
+
 	if (!driver || !driver->dev || !driver->bind || composite)
 		return -EINVAL;
 
@@ -1002,7 +1004,12 @@ int usb_composite_register(struct usb_composite_driver *driver)
 	composite_driver.function =  (char *) driver->name;
 	composite = driver;
 
-	return usb_gadget_register_driver(&composite_driver);
+	ret = usb_gadget_register_driver(&composite_driver);
+
+	if (ret)
+		composite = NULL;
+
+	return ret;
 }
 
 /**
-- 
1.9.0




More information about the barebox mailing list