Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: watchdog: Enable NXP LPC32XX support in Kconfig (resend) watchdog: ts72xx_wdt: disable watchdog at probe watchdog: sb_wdog: release irq and reboot notifier in error path and module_exit()
This commit is contained in:
commit
7fd3fce3a0
|
@ -213,11 +213,11 @@ config OMAP_WATCHDOG
|
|||
here to enable the OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer.
|
||||
|
||||
config PNX4008_WATCHDOG
|
||||
tristate "PNX4008 Watchdog"
|
||||
depends on ARCH_PNX4008
|
||||
tristate "PNX4008 and LPC32XX Watchdog"
|
||||
depends on ARCH_PNX4008 || ARCH_LPC32XX
|
||||
help
|
||||
Say Y here if to include support for the watchdog timer
|
||||
in the PNX4008 processor.
|
||||
in the PNX4008 or LPC32XX processor.
|
||||
This driver can be built as a module by choosing M. The module
|
||||
will be called pnx4008_wdt.
|
||||
|
||||
|
|
|
@ -305,7 +305,7 @@ static int __init sbwdog_init(void)
|
|||
if (ret) {
|
||||
printk(KERN_ERR "%s: failed to request irq 1 - %d\n",
|
||||
ident.identity, ret);
|
||||
return ret;
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = misc_register(&sbwdog_miscdev);
|
||||
|
@ -313,14 +313,20 @@ static int __init sbwdog_init(void)
|
|||
printk(KERN_INFO "%s: timeout is %ld.%ld secs\n",
|
||||
ident.identity,
|
||||
timeout / 1000000, (timeout / 100000) % 10);
|
||||
} else
|
||||
free_irq(1, (void *)user_dog);
|
||||
return 0;
|
||||
}
|
||||
free_irq(1, (void *)user_dog);
|
||||
out:
|
||||
unregister_reboot_notifier(&sbwdog_notifier);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void __exit sbwdog_exit(void)
|
||||
{
|
||||
misc_deregister(&sbwdog_miscdev);
|
||||
free_irq(1, (void *)user_dog);
|
||||
unregister_reboot_notifier(&sbwdog_notifier);
|
||||
}
|
||||
|
||||
module_init(sbwdog_init);
|
||||
|
|
|
@ -449,6 +449,9 @@ static __devinit int ts72xx_wdt_probe(struct platform_device *pdev)
|
|||
wdt->pdev = pdev;
|
||||
mutex_init(&wdt->lock);
|
||||
|
||||
/* make sure that the watchdog is disabled */
|
||||
ts72xx_wdt_stop(wdt);
|
||||
|
||||
error = misc_register(&ts72xx_wdt_miscdev);
|
||||
if (error) {
|
||||
dev_err(&pdev->dev, "failed to register miscdev\n");
|
||||
|
|
Loading…
Reference in a new issue