mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 21:38:32 +08:00
drivers/rtc/rtc-at91rm9200.c: fix missing iounmap
Add missing iounmap to probe error path and remove. Signed-off-by: Johan Hovold <jhovold@gmail.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
b9d8c4603e
commit
3427de92ac
@ -299,7 +299,7 @@ static int __init at91_rtc_probe(struct platform_device *pdev)
|
||||
"at91_rtc", pdev);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev, "IRQ %d already in use.\n", irq);
|
||||
return ret;
|
||||
goto err_unmap;
|
||||
}
|
||||
|
||||
/* cpu init code should really have flagged this device as
|
||||
@ -311,13 +311,20 @@ static int __init at91_rtc_probe(struct platform_device *pdev)
|
||||
rtc = rtc_device_register(pdev->name, &pdev->dev,
|
||||
&at91_rtc_ops, THIS_MODULE);
|
||||
if (IS_ERR(rtc)) {
|
||||
free_irq(irq, pdev);
|
||||
return PTR_ERR(rtc);
|
||||
ret = PTR_ERR(rtc);
|
||||
goto err_free_irq;
|
||||
}
|
||||
platform_set_drvdata(pdev, rtc);
|
||||
|
||||
dev_info(&pdev->dev, "AT91 Real Time Clock driver.\n");
|
||||
return 0;
|
||||
|
||||
err_free_irq:
|
||||
free_irq(irq, pdev);
|
||||
err_unmap:
|
||||
iounmap(at91_rtc_regs);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -334,6 +341,7 @@ static int __exit at91_rtc_remove(struct platform_device *pdev)
|
||||
free_irq(irq, pdev);
|
||||
|
||||
rtc_device_unregister(rtc);
|
||||
iounmap(at91_rtc_regs);
|
||||
platform_set_drvdata(pdev, NULL);
|
||||
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user