mfd: Free dangling irq in ab8500 gpadc probe error path

Signed-off-by: Daniel Willerud <daniel.willerud@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Daniel Willerud 2011-03-05 11:46:27 +01:00 committed by Samuel Ortiz
parent 6321992cd3
commit 633e0fa590
1 changed files with 3 additions and 1 deletions

View File

@ -267,11 +267,13 @@ static int __devinit ab8500_gpadc_probe(struct platform_device *pdev)
if (IS_ERR(gpadc->regu)) { if (IS_ERR(gpadc->regu)) {
ret = PTR_ERR(gpadc->regu); ret = PTR_ERR(gpadc->regu);
dev_err(gpadc->dev, "failed to get vtvout LDO\n"); dev_err(gpadc->dev, "failed to get vtvout LDO\n");
goto fail; goto fail_irq;
} }
list_add_tail(&gpadc->node, &ab8500_gpadc_list); list_add_tail(&gpadc->node, &ab8500_gpadc_list);
dev_dbg(gpadc->dev, "probe success\n"); dev_dbg(gpadc->dev, "probe success\n");
return 0; return 0;
fail_irq:
free_irq(gpadc->irq, gpadc);
fail: fail:
kfree(gpadc); kfree(gpadc);
gpadc = NULL; gpadc = NULL;