aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/atmel-ssc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc/atmel-ssc.c')
-rw-r--r--drivers/misc/atmel-ssc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/misc/atmel-ssc.c b/drivers/misc/atmel-ssc.c
index c09c28f92055..e6191976d990 100644
--- a/drivers/misc/atmel-ssc.c
+++ b/drivers/misc/atmel-ssc.c
@@ -58,7 +58,7 @@ struct ssc_device *ssc_request(unsigned int ssc_num)
58 ssc->user++; 58 ssc->user++;
59 spin_unlock(&user_lock); 59 spin_unlock(&user_lock);
60 60
61 clk_enable(ssc->clk); 61 clk_prepare_enable(ssc->clk);
62 62
63 return ssc; 63 return ssc;
64} 64}
@@ -69,7 +69,7 @@ void ssc_free(struct ssc_device *ssc)
69 spin_lock(&user_lock); 69 spin_lock(&user_lock);
70 if (ssc->user) { 70 if (ssc->user) {
71 ssc->user--; 71 ssc->user--;
72 clk_disable(ssc->clk); 72 clk_disable_unprepare(ssc->clk);
73 } else { 73 } else {
74 dev_dbg(&ssc->pdev->dev, "device already free\n"); 74 dev_dbg(&ssc->pdev->dev, "device already free\n");
75 } 75 }
@@ -172,10 +172,10 @@ static int ssc_probe(struct platform_device *pdev)
172 } 172 }
173 173
174 /* disable all interrupts */ 174 /* disable all interrupts */
175 clk_enable(ssc->clk); 175 clk_prepare_enable(ssc->clk);
176 ssc_writel(ssc->regs, IDR, -1); 176 ssc_writel(ssc->regs, IDR, -1);
177 ssc_readl(ssc->regs, SR); 177 ssc_readl(ssc->regs, SR);
178 clk_disable(ssc->clk); 178 clk_disable_unprepare(ssc->clk);
179 179
180 ssc->irq = platform_get_irq(pdev, 0); 180 ssc->irq = platform_get_irq(pdev, 0);
181 if (!ssc->irq) { 181 if (!ssc->irq) {