diff options
author | Takashi Iwai <tiwai@suse.de> | 2013-02-05 14:48:03 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-02-05 14:48:03 +0100 |
commit | 2faea5274f079630991800bd579f85a621f96ef5 (patch) | |
tree | 4afb9032f0ae3a3e8b539e0abe40cda320989ac3 /drivers/staging/tidspbridge/core/wdt.c | |
parent | 16c5ab1d3a6d1b11ed2966fa33a3a4fecd13a2bc (diff) | |
parent | edac894389f9c9de2a1368c78809c824b343f3a5 (diff) |
Merge branch 'for-linus' into for-next
Merge pending fixes that haven't pulled into 3.8.
Diffstat (limited to 'drivers/staging/tidspbridge/core/wdt.c')
-rw-r--r-- | drivers/staging/tidspbridge/core/wdt.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/staging/tidspbridge/core/wdt.c b/drivers/staging/tidspbridge/core/wdt.c index 1dce36fb828f..7ff0e6c98039 100644 --- a/drivers/staging/tidspbridge/core/wdt.c +++ b/drivers/staging/tidspbridge/core/wdt.c @@ -63,11 +63,15 @@ int dsp_wdt_init(void) dsp_wdt.fclk = clk_get(NULL, "wdt3_fck"); if (!IS_ERR(dsp_wdt.fclk)) { + clk_prepare(dsp_wdt.fclk); + dsp_wdt.iclk = clk_get(NULL, "wdt3_ick"); if (IS_ERR(dsp_wdt.iclk)) { clk_put(dsp_wdt.fclk); dsp_wdt.fclk = NULL; ret = -EFAULT; + } else { + clk_prepare(dsp_wdt.iclk); } } else ret = -EFAULT; @@ -95,10 +99,14 @@ void dsp_wdt_exit(void) free_irq(INT_34XX_WDT3_IRQ, &dsp_wdt); tasklet_kill(&dsp_wdt.wdt3_tasklet); - if (dsp_wdt.fclk) + if (dsp_wdt.fclk) { + clk_unprepare(dsp_wdt.fclk); clk_put(dsp_wdt.fclk); - if (dsp_wdt.iclk) + } + if (dsp_wdt.iclk) { + clk_unprepare(dsp_wdt.iclk); clk_put(dsp_wdt.iclk); + } dsp_wdt.fclk = NULL; dsp_wdt.iclk = NULL; |