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 | ||
