usb: renesas_usbhs: gadget: let udc-core manage gadget->dev
authorFelipe Balbi <balbi@ti.com>
Thu, 24 Jan 2013 15:08:01 +0000 (17:08 +0200)
committerFelipe Balbi <balbi@ti.com>
Mon, 18 Mar 2013 09:16:53 +0000 (11:16 +0200)
By simply setting a flag, we can drop some
boilerplate code.

Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/renesas_usbhs/mod_gadget.c

index 78fca978b2d058a86bb4b9a178bb5336951e99cf..5d5fab0ad0d13f6ac828350ad4592e0890fa3d65 100644 (file)
@@ -976,15 +976,12 @@ int usbhs_mod_gadget_probe(struct usbhs_priv *priv)
        /*
         * init gadget
         */
-       dev_set_name(&gpriv->gadget.dev, "gadget");
        gpriv->gadget.dev.parent        = dev;
        gpriv->gadget.dev.release       = usbhs_mod_gadget_release;
        gpriv->gadget.name              = "renesas_usbhs_udc";
        gpriv->gadget.ops               = &usbhsg_gadget_ops;
        gpriv->gadget.max_speed         = USB_SPEED_HIGH;
-       ret = device_register(&gpriv->gadget.dev);
-       if (ret < 0)
-               goto err_add_udc;
+       gpriv->gadget.register_my_device = true;
 
        INIT_LIST_HEAD(&gpriv->gadget.ep_list);
 
@@ -1014,15 +1011,13 @@ int usbhs_mod_gadget_probe(struct usbhs_priv *priv)
 
        ret = usb_add_gadget_udc(dev, &gpriv->gadget);
        if (ret)
-               goto err_register;
+               goto err_add_udc;
 
 
        dev_info(dev, "gadget probed\n");
 
        return 0;
 
-err_register:
-       device_unregister(&gpriv->gadget.dev);
 err_add_udc:
        kfree(gpriv->uep);
 
@@ -1038,8 +1033,6 @@ void usbhs_mod_gadget_remove(struct usbhs_priv *priv)
 
        usb_del_gadget_udc(&gpriv->gadget);
 
-       device_unregister(&gpriv->gadget.dev);
-
        kfree(gpriv->uep);
        kfree(gpriv);
 }