diff options
author | Lukasz Majewski <l.majewski@samsung.com> | 2012-05-04 14:17:16 +0200 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2012-05-04 15:53:18 +0300 |
commit | 1d144c6732f6badd4be7a1383a4ae2adcc3f9386 (patch) | |
tree | db009a3d73d7a4defcd0a01de50fa1108f6d4eb8 /drivers/usb | |
parent | 04b4a0fce530eab728e27e24b5a8d6192c6f70d9 (diff) |
usb:hsotg:samsung: err_irq: support for probe function
Missing handler for freeing requested IRQ added.
Moreover clk_ calls has been reorganized.
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/gadget/s3c-hsotg.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/usb/gadget/s3c-hsotg.c b/drivers/usb/gadget/s3c-hsotg.c index 1cac0be86f68..5061a2fe9620 100644 --- a/drivers/usb/gadget/s3c-hsotg.c +++ b/drivers/usb/gadget/s3c-hsotg.c @@ -3558,7 +3558,7 @@ static int __devinit s3c_hsotg_probe(struct platform_device *pdev) hsotg->supplies); if (ret) { dev_err(dev, "failed to request supplies: %d\n", ret); - goto err_supplies; + goto err_irq; } ret = regulator_bulk_enable(ARRAY_SIZE(hsotg->supplies), @@ -3637,17 +3637,13 @@ static int __devinit s3c_hsotg_probe(struct platform_device *pdev) return 0; - err_ep_mem: +err_ep_mem: kfree(eps); - err_supplies: s3c_hsotg_phy_disable(hsotg); - regulator_bulk_free(ARRAY_SIZE(hsotg->supplies), hsotg->supplies); - - clk_disable_unprepare(hsotg->clk); - clk_put(hsotg->clk); - +err_irq: + free_irq(hsotg->irq, hsotg); err_regs: iounmap(hsotg->regs); @@ -3655,6 +3651,7 @@ err_regs_res: release_resource(hsotg->regs_res); kfree(hsotg->regs_res); err_clk: + clk_disable_unprepare(hsotg->clk); clk_put(hsotg->clk); err_mem: kfree(hsotg); |