aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelipe Balbi2013-01-24 17:28:30 +0200
committerFelipe Balbi2013-03-18 11:16:53 +0200
commitb73f5a2a0a2b2ff10d941e35c2ff08fcc04a9862 (patch)
treeda72fe3742a4caad26234d4c2ad027d4c766315a
parent0972ef71b4841a59fab6f998d6e6c2c684443583 (diff)
usb: gadget: pxa25x_udc: let udc-core manage gadget->dev
By simply setting a flag, we can drop some boilerplate code. Signed-off-by: Felipe Balbi <balbi@ti.com>
-rw-r--r--drivers/usb/gadget/pxa25x_udc.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/usb/gadget/pxa25x_udc.c b/drivers/usb/gadget/pxa25x_udc.c
index d0f37484b6b0..8996fcb053ef 100644
--- a/drivers/usb/gadget/pxa25x_udc.c
+++ b/drivers/usb/gadget/pxa25x_udc.c
@@ -2138,16 +2138,9 @@ static int __init pxa25x_udc_probe(struct platform_device *pdev)
dev->timer.function = udc_watchdog;
dev->timer.data = (unsigned long) dev;
- device_initialize(&dev->gadget.dev);
dev->gadget.dev.parent = &pdev->dev;
dev->gadget.dev.dma_mask = pdev->dev.dma_mask;
-
- retval = device_add(&dev->gadget.dev);
- if (retval) {
- dev->driver = NULL;
- dev->gadget.dev.driver = NULL;
- goto err_device_add;
- }
+ dev->gadget.register_my_device = true;
the_controller = dev;
platform_set_drvdata(pdev, dev);
@@ -2199,8 +2192,6 @@ lubbock_fail0:
free_irq(irq, dev);
#endif
err_irq1:
- device_unregister(&dev->gadget.dev);
- err_device_add:
if (gpio_is_valid(dev->mach->gpio_pullup))
gpio_free(dev->mach->gpio_pullup);
err_gpio_pullup:
@@ -2226,7 +2217,6 @@ static int __exit pxa25x_udc_remove(struct platform_device *pdev)
return -EBUSY;
usb_del_gadget_udc(&dev->gadget);
- device_unregister(&dev->gadget.dev);
dev->pullup = 0;
pullup(dev);