mirror of https://gitee.com/openkylin/linux.git
usb: gadget: lpc32xx_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:
parent
0b3702c62e
commit
e0c9e4739a
|
@ -3090,6 +3090,7 @@ static int __init lpc32xx_udc_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
/* init software state */
|
/* init software state */
|
||||||
udc->gadget.dev.parent = dev;
|
udc->gadget.dev.parent = dev;
|
||||||
|
udc->gadget.register_my_device = true;
|
||||||
udc->pdev = pdev;
|
udc->pdev = pdev;
|
||||||
udc->dev = &pdev->dev;
|
udc->dev = &pdev->dev;
|
||||||
udc->enabled = 0;
|
udc->enabled = 0;
|
||||||
|
@ -3248,12 +3249,6 @@ static int __init lpc32xx_udc_probe(struct platform_device *pdev)
|
||||||
udc_disable(udc);
|
udc_disable(udc);
|
||||||
udc_reinit(udc);
|
udc_reinit(udc);
|
||||||
|
|
||||||
retval = device_register(&udc->gadget.dev);
|
|
||||||
if (retval < 0) {
|
|
||||||
dev_err(udc->dev, "Device registration failure\n");
|
|
||||||
goto dev_register_fail;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Request IRQs - low and high priority USB device IRQs are routed to
|
/* Request IRQs - low and high priority USB device IRQs are routed to
|
||||||
* the same handler, while the DMA interrupt is routed elsewhere */
|
* the same handler, while the DMA interrupt is routed elsewhere */
|
||||||
retval = request_irq(udc->udp_irq[IRQ_USB_LP], lpc32xx_usb_lp_irq,
|
retval = request_irq(udc->udp_irq[IRQ_USB_LP], lpc32xx_usb_lp_irq,
|
||||||
|
@ -3320,8 +3315,6 @@ static int __init lpc32xx_udc_probe(struct platform_device *pdev)
|
||||||
irq_hp_fail:
|
irq_hp_fail:
|
||||||
free_irq(udc->udp_irq[IRQ_USB_LP], udc);
|
free_irq(udc->udp_irq[IRQ_USB_LP], udc);
|
||||||
irq_lp_fail:
|
irq_lp_fail:
|
||||||
device_unregister(&udc->gadget.dev);
|
|
||||||
dev_register_fail:
|
|
||||||
dma_pool_destroy(udc->dd_cache);
|
dma_pool_destroy(udc->dd_cache);
|
||||||
dma_alloc_fail:
|
dma_alloc_fail:
|
||||||
dma_free_coherent(&pdev->dev, UDCA_BUFF_SIZE,
|
dma_free_coherent(&pdev->dev, UDCA_BUFF_SIZE,
|
||||||
|
@ -3376,8 +3369,6 @@ static int lpc32xx_udc_remove(struct platform_device *pdev)
|
||||||
free_irq(udc->udp_irq[IRQ_USB_HP], udc);
|
free_irq(udc->udp_irq[IRQ_USB_HP], udc);
|
||||||
free_irq(udc->udp_irq[IRQ_USB_LP], udc);
|
free_irq(udc->udp_irq[IRQ_USB_LP], udc);
|
||||||
|
|
||||||
device_unregister(&udc->gadget.dev);
|
|
||||||
|
|
||||||
clk_disable(udc->usb_otg_clk);
|
clk_disable(udc->usb_otg_clk);
|
||||||
clk_put(udc->usb_otg_clk);
|
clk_put(udc->usb_otg_clk);
|
||||||
clk_disable(udc->usb_slv_clk);
|
clk_disable(udc->usb_slv_clk);
|
||||||
|
|
Loading…
Reference in New Issue