提交 789cd470 编写于 作者: U Ulrik Bech Hald 提交者: Wim Van Sebroeck

[WATCHDOG] OMAP fixes: enable clock in probe, trigger timer reload

This patch contains two fixes:

1)In omap_wdt_probe() the watchdog is reset and disabled. This
requires register access and the clks needs to be enabled temporarily

2)In omap_wdt_open() the timer register needs to be reloaded
to trigger a new timer value (the default of 60s)

Tested on OMAP34xx platform (Zoom1)
Reviewed-by: NKevin Hilman <khilman@ti.deeprootsystems.com>
Signed-off-by: NUlrik Bech Hald <ubh@ti.com>
Signed-off-by: NWim Van Sebroeck <wim@iguana.be>
上级 90074dce
...@@ -159,6 +159,7 @@ static int omap_wdt_open(struct inode *inode, struct file *file) ...@@ -159,6 +159,7 @@ static int omap_wdt_open(struct inode *inode, struct file *file)
file->private_data = (void *) wdev; file->private_data = (void *) wdev;
omap_wdt_set_timeout(wdev); omap_wdt_set_timeout(wdev);
omap_wdt_ping(wdev); /* trigger loading of new timeout value */
omap_wdt_enable(wdev); omap_wdt_enable(wdev);
return nonseekable_open(inode, file); return nonseekable_open(inode, file);
...@@ -313,6 +314,9 @@ static int __devinit omap_wdt_probe(struct platform_device *pdev) ...@@ -313,6 +314,9 @@ static int __devinit omap_wdt_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, wdev); platform_set_drvdata(pdev, wdev);
clk_enable(wdev->ick);
clk_enable(wdev->fck);
omap_wdt_disable(wdev); omap_wdt_disable(wdev);
omap_wdt_adjust_timeout(timer_margin); omap_wdt_adjust_timeout(timer_margin);
...@@ -332,6 +336,9 @@ static int __devinit omap_wdt_probe(struct platform_device *pdev) ...@@ -332,6 +336,9 @@ static int __devinit omap_wdt_probe(struct platform_device *pdev)
/* autogate OCP interface clock */ /* autogate OCP interface clock */
__raw_writel(0x01, wdev->base + OMAP_WATCHDOG_SYS_CONFIG); __raw_writel(0x01, wdev->base + OMAP_WATCHDOG_SYS_CONFIG);
clk_disable(wdev->ick);
clk_disable(wdev->fck);
omap_wdt_dev = pdev; omap_wdt_dev = pdev;
return 0; return 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册