aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim Van Sebroeck <wim@linux-watchdog.org>2018-03-26 14:48:27 -0400
committerWim Van Sebroeck <wim@linux-watchdog.org>2018-03-26 14:48:27 -0400
commit1991a55dc87e8f2557bc90d7f0062b7110ab8437 (patch)
tree49f440723878a86d9f7a2db0219ca617d0272596
parentab17ed70f79abbfdc7f0878836816267df2835a7 (diff)
parentd66e53649c18377edc08d48901e658e4fd491d46 (diff)
Merge branch 'v4.17-rc1'
-rw-r--r--drivers/watchdog/davinci_wdt.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/watchdog/davinci_wdt.c b/drivers/watchdog/davinci_wdt.c
index 3e4c592c239f..6c6594261cb7 100644
--- a/drivers/watchdog/davinci_wdt.c
+++ b/drivers/watchdog/davinci_wdt.c
@@ -236,15 +236,22 @@ static int davinci_wdt_probe(struct platform_device *pdev)
236 236
237 wdt_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); 237 wdt_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
238 davinci_wdt->base = devm_ioremap_resource(dev, wdt_mem); 238 davinci_wdt->base = devm_ioremap_resource(dev, wdt_mem);
239 if (IS_ERR(davinci_wdt->base)) 239 if (IS_ERR(davinci_wdt->base)) {
240 return PTR_ERR(davinci_wdt->base); 240 ret = PTR_ERR(davinci_wdt->base);
241 goto err_clk_disable;
242 }
241 243
242 ret = watchdog_register_device(wdd); 244 ret = watchdog_register_device(wdd);
243 if (ret < 0) { 245 if (ret) {
244 clk_disable_unprepare(davinci_wdt->clk);
245 dev_err(dev, "cannot register watchdog device\n"); 246 dev_err(dev, "cannot register watchdog device\n");
247 goto err_clk_disable;
246 } 248 }
247 249
250 return 0;
251
252err_clk_disable:
253 clk_disable_unprepare(davinci_wdt->clk);
254
248 return ret; 255 return ret;
249} 256}
250 257