[WATCHDOG] s3c2410_wdt - initialize watchdog irq resource
In the error path of s3c2410wdt_probe() and in s3c2410wdt_remove(), we're using wdt_irq without initialising it, leading to a oops. Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org> Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>hifive-unleashed-5.1
parent
261259b2a8
commit
62be074147
|
@ -379,14 +379,14 @@ static int s3c2410wdt_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
DBG("probe: mapped wdt_base=%p\n", wdt_base);
|
DBG("probe: mapped wdt_base=%p\n", wdt_base);
|
||||||
|
|
||||||
res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
wdt_irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
|
||||||
if (res == NULL) {
|
if (wdt_irq == NULL) {
|
||||||
printk(KERN_INFO PFX "failed to get irq resource\n");
|
printk(KERN_INFO PFX "failed to get irq resource\n");
|
||||||
ret = -ENOENT;
|
ret = -ENOENT;
|
||||||
goto err_map;
|
goto err_map;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = request_irq(res->start, s3c2410wdt_irq, 0, pdev->name, pdev);
|
ret = request_irq(wdt_irq->start, s3c2410wdt_irq, 0, pdev->name, pdev);
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
printk(KERN_INFO PFX "failed to install irq (%d)\n", ret);
|
printk(KERN_INFO PFX "failed to install irq (%d)\n", ret);
|
||||||
goto err_map;
|
goto err_map;
|
||||||
|
|
Loading…
Reference in New Issue