diff options
Diffstat (limited to 'drivers/watchdog/coh901327_wdt.c')
-rw-r--r-- | drivers/watchdog/coh901327_wdt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/watchdog/coh901327_wdt.c b/drivers/watchdog/coh901327_wdt.c index 6876430a9f5e..cb5da5c3ece2 100644 --- a/drivers/watchdog/coh901327_wdt.c +++ b/drivers/watchdog/coh901327_wdt.c | |||
@@ -263,6 +263,7 @@ static int __exit coh901327_remove(struct platform_device *pdev) | |||
263 | watchdog_unregister_device(&coh901327_wdt); | 263 | watchdog_unregister_device(&coh901327_wdt); |
264 | coh901327_disable(); | 264 | coh901327_disable(); |
265 | free_irq(irq, pdev); | 265 | free_irq(irq, pdev); |
266 | clk_unprepare(clk); | ||
266 | clk_put(clk); | 267 | clk_put(clk); |
267 | iounmap(virtbase); | 268 | iounmap(virtbase); |
268 | release_mem_region(phybase, physize); | 269 | release_mem_region(phybase, physize); |
@@ -300,9 +301,9 @@ static int __init coh901327_probe(struct platform_device *pdev) | |||
300 | dev_err(&pdev->dev, "could not get clock\n"); | 301 | dev_err(&pdev->dev, "could not get clock\n"); |
301 | goto out_no_clk; | 302 | goto out_no_clk; |
302 | } | 303 | } |
303 | ret = clk_enable(clk); | 304 | ret = clk_prepare_enable(clk); |
304 | if (ret) { | 305 | if (ret) { |
305 | dev_err(&pdev->dev, "could not enable clock\n"); | 306 | dev_err(&pdev->dev, "could not prepare and enable clock\n"); |
306 | goto out_no_clk_enable; | 307 | goto out_no_clk_enable; |
307 | } | 308 | } |
308 | 309 | ||
@@ -369,7 +370,7 @@ static int __init coh901327_probe(struct platform_device *pdev) | |||
369 | out_no_wdog: | 370 | out_no_wdog: |
370 | free_irq(irq, pdev); | 371 | free_irq(irq, pdev); |
371 | out_no_irq: | 372 | out_no_irq: |
372 | clk_disable(clk); | 373 | clk_disable_unprepare(clk); |
373 | out_no_clk_enable: | 374 | out_no_clk_enable: |
374 | clk_put(clk); | 375 | clk_put(clk); |
375 | out_no_clk: | 376 | out_no_clk: |