watchdog: sp805_wdt: use devm_clk_get()
[cascardo/linux.git] / drivers / watchdog / dw_wdt.c
index 2037669..e621098 100644 (file)
@@ -154,8 +154,8 @@ static int dw_wdt_open(struct inode *inode, struct file *filp)
        return nonseekable_open(inode, filp);
 }
 
-ssize_t dw_wdt_write(struct file *filp, const char __user *buf, size_t len,
-                    loff_t *offset)
+static ssize_t dw_wdt_write(struct file *filp, const char __user *buf,
+                           size_t len, loff_t *offset)
 {
        if (!len)
                return 0;
@@ -305,13 +305,13 @@ static int dw_wdt_drv_probe(struct platform_device *pdev)
        if (IS_ERR(dw_wdt.regs))
                return PTR_ERR(dw_wdt.regs);
 
-       dw_wdt.clk = clk_get(&pdev->dev, NULL);
+       dw_wdt.clk = devm_clk_get(&pdev->dev, NULL);
        if (IS_ERR(dw_wdt.clk))
                return PTR_ERR(dw_wdt.clk);
 
        ret = clk_enable(dw_wdt.clk);
        if (ret)
-               goto out_put_clk;
+               return ret;
 
        spin_lock_init(&dw_wdt.lock);
 
@@ -327,8 +327,6 @@ static int dw_wdt_drv_probe(struct platform_device *pdev)
 
 out_disable_clk:
        clk_disable(dw_wdt.clk);
-out_put_clk:
-       clk_put(dw_wdt.clk);
 
        return ret;
 }
@@ -338,7 +336,6 @@ static int dw_wdt_drv_remove(struct platform_device *pdev)
        misc_deregister(&dw_wdt_miscdev);
 
        clk_disable(dw_wdt.clk);
-       clk_put(dw_wdt.clk);
 
        return 0;
 }