diff options
Diffstat (limited to 'drivers/watchdog/sp805_wdt.c')
-rw-r--r-- | drivers/watchdog/sp805_wdt.c | 23 |
1 files changed, 7 insertions, 16 deletions
diff --git a/drivers/watchdog/sp805_wdt.c b/drivers/watchdog/sp805_wdt.c index e4841c36798b..8872642505c0 100644 --- a/drivers/watchdog/sp805_wdt.c +++ b/drivers/watchdog/sp805_wdt.c @@ -130,16 +130,10 @@ static int wdt_config(struct watchdog_device *wdd, bool ping) int ret; if (!ping) { - ret = clk_prepare(wdt->clk); - if (ret) { - dev_err(&wdt->adev->dev, "clock prepare fail"); - return ret; - } - ret = clk_enable(wdt->clk); + ret = clk_prepare_enable(wdt->clk); if (ret) { dev_err(&wdt->adev->dev, "clock enable fail"); - clk_unprepare(wdt->clk); return ret; } } @@ -190,8 +184,7 @@ static int wdt_disable(struct watchdog_device *wdd) readl_relaxed(wdt->base + WDTLOCK); spin_unlock(&wdt->lock); - clk_disable(wdt->clk); - clk_unprepare(wdt->clk); + clk_disable_unprepare(wdt->clk); return 0; } @@ -210,7 +203,7 @@ static const struct watchdog_ops wdt_ops = { .get_timeleft = wdt_timeleft, }; -static int __devinit +static int sp805_wdt_probe(struct amba_device *adev, const struct amba_id *id) { struct sp805_wdt *wdt; @@ -272,7 +265,7 @@ err: return ret; } -static int __devexit sp805_wdt_remove(struct amba_device *adev) +static int sp805_wdt_remove(struct amba_device *adev) { struct sp805_wdt *wdt = amba_get_drvdata(adev); @@ -284,8 +277,7 @@ static int __devexit sp805_wdt_remove(struct amba_device *adev) return 0; } -#ifdef CONFIG_PM -static int sp805_wdt_suspend(struct device *dev) +static int __maybe_unused sp805_wdt_suspend(struct device *dev) { struct sp805_wdt *wdt = dev_get_drvdata(dev); @@ -295,7 +287,7 @@ static int sp805_wdt_suspend(struct device *dev) return 0; } -static int sp805_wdt_resume(struct device *dev) +static int __maybe_unused sp805_wdt_resume(struct device *dev) { struct sp805_wdt *wdt = dev_get_drvdata(dev); @@ -304,7 +296,6 @@ static int sp805_wdt_resume(struct device *dev) return 0; } -#endif /* CONFIG_PM */ static SIMPLE_DEV_PM_OPS(sp805_wdt_dev_pm_ops, sp805_wdt_suspend, sp805_wdt_resume); @@ -326,7 +317,7 @@ static struct amba_driver sp805_wdt_driver = { }, .id_table = sp805_wdt_ids, .probe = sp805_wdt_probe, - .remove = __devexit_p(sp805_wdt_remove), + .remove = sp805_wdt_remove, }; module_amba_driver(sp805_wdt_driver); |