X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/abaf2ffdcf152689802d935daaef57481b3092dc..bebb0ec8a15f2314b9232811e523adb91dcb9de4:/package/avila-wdt/src/avila-wdt.c?ds=sidebyside diff --git a/package/avila-wdt/src/avila-wdt.c b/package/avila-wdt/src/avila-wdt.c index 6b3b42b09..981f3857a 100644 --- a/package/avila-wdt/src/avila-wdt.c +++ b/package/avila-wdt/src/avila-wdt.c @@ -21,6 +21,8 @@ #include #include #include +#include +#include #include #include #include @@ -74,10 +76,8 @@ static void wdt_enable(void) static void wdt_disable(void) { - /* NB: we can't turn off the watchdog anymore, so we - * have to keep running the strobe timer without decrementing - * the counter */ - clear_bit(WDT_RUNNING, &wdt_status); + /* Re-enable clock generator output on GPIO 14/15 */ + *IXP4XX_GPIO_GPCLKR |= (1 << 8); } static int avila_wdt_open(struct inode *inode, struct file *file) @@ -209,6 +209,8 @@ static int __init avila_wdt_init(void) static void __exit avila_wdt_exit(void) { misc_deregister(&avila_wdt_miscdev); + del_timer(&wdt_timer); + wdt_disable(); }