usb: gadget: goku_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>
This commit is contained in:
Felipe Balbi 2013-01-24 16:17:45 +02:00
parent fc84d2fbe7
commit 5637bf5b7a
2 changed files with 2 additions and 11 deletions

View File

@ -1716,8 +1716,6 @@ static void goku_remove(struct pci_dev *pdev)
pci_resource_len (pdev, 0)); pci_resource_len (pdev, 0));
if (dev->enabled) if (dev->enabled)
pci_disable_device(pdev); pci_disable_device(pdev);
if (dev->registered)
device_unregister(&dev->gadget.dev);
pci_set_drvdata(pdev, NULL); pci_set_drvdata(pdev, NULL);
dev->regs = NULL; dev->regs = NULL;
@ -1756,11 +1754,11 @@ static int goku_probe(struct pci_dev *pdev, const struct pci_device_id *id)
dev->gadget.max_speed = USB_SPEED_FULL; dev->gadget.max_speed = USB_SPEED_FULL;
/* the "gadget" abstracts/virtualizes the controller */ /* the "gadget" abstracts/virtualizes the controller */
dev_set_name(&dev->gadget.dev, "gadget");
dev->gadget.dev.parent = &pdev->dev; dev->gadget.dev.parent = &pdev->dev;
dev->gadget.dev.dma_mask = pdev->dev.dma_mask; dev->gadget.dev.dma_mask = pdev->dev.dma_mask;
dev->gadget.dev.release = gadget_release; dev->gadget.dev.release = gadget_release;
dev->gadget.name = driver_name; dev->gadget.name = driver_name;
dev->gadget.register_my_device = true;
/* now all the pci goodies ... */ /* now all the pci goodies ... */
retval = pci_enable_device(pdev); retval = pci_enable_device(pdev);
@ -1810,12 +1808,6 @@ static int goku_probe(struct pci_dev *pdev, const struct pci_device_id *id)
create_proc_read_entry(proc_node_name, 0, NULL, udc_proc_read, dev); create_proc_read_entry(proc_node_name, 0, NULL, udc_proc_read, dev);
#endif #endif
retval = device_register(&dev->gadget.dev);
if (retval) {
put_device(&dev->gadget.dev);
goto err;
}
dev->registered = 1;
retval = usb_add_gadget_udc(&pdev->dev, &dev->gadget); retval = usb_add_gadget_udc(&pdev->dev, &dev->gadget);
if (retval) if (retval)
goto err; goto err;

View File

@ -250,8 +250,7 @@ struct goku_udc {
got_region:1, got_region:1,
req_config:1, req_config:1,
configured:1, configured:1,
enabled:1, enabled:1;
registered:1;
/* pci state used to access those endpoints */ /* pci state used to access those endpoints */
struct pci_dev *pdev; struct pci_dev *pdev;