diff options
-rw-r--r-- | drivers/watchdog/s3c2410_wdt.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c index 300932580ded..ae53662c29bc 100644 --- a/drivers/watchdog/s3c2410_wdt.c +++ b/drivers/watchdog/s3c2410_wdt.c | |||
@@ -532,21 +532,22 @@ static int __devinit s3c2410wdt_probe(struct platform_device *pdev) | |||
532 | 532 | ||
533 | static int __devexit s3c2410wdt_remove(struct platform_device *dev) | 533 | static int __devexit s3c2410wdt_remove(struct platform_device *dev) |
534 | { | 534 | { |
535 | s3c2410wdt_cpufreq_deregister(); | 535 | misc_deregister(&s3c2410wdt_miscdev); |
536 | |||
537 | release_resource(wdt_mem); | ||
538 | kfree(wdt_mem); | ||
539 | wdt_mem = NULL; | ||
540 | 536 | ||
541 | free_irq(wdt_irq->start, dev); | 537 | s3c2410wdt_cpufreq_deregister(); |
542 | wdt_irq = NULL; | ||
543 | 538 | ||
544 | clk_disable(wdt_clock); | 539 | clk_disable(wdt_clock); |
545 | clk_put(wdt_clock); | 540 | clk_put(wdt_clock); |
546 | wdt_clock = NULL; | 541 | wdt_clock = NULL; |
547 | 542 | ||
543 | free_irq(wdt_irq->start, dev); | ||
544 | wdt_irq = NULL; | ||
545 | |||
548 | iounmap(wdt_base); | 546 | iounmap(wdt_base); |
549 | misc_deregister(&s3c2410wdt_miscdev); | 547 | |
548 | release_resource(wdt_mem); | ||
549 | kfree(wdt_mem); | ||
550 | wdt_mem = NULL; | ||
550 | return 0; | 551 | return 0; |
551 | } | 552 | } |
552 | 553 | ||