summaryrefslogtreecommitdiffstats
path: root/drivers/video/amba-clcd.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-09-22 07:34:31 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-09-27 04:25:51 -0400
commit99df4ee107a85530f3d4f6d628c8a86db9b1a8b3 (patch)
treecd77ce5245ec0e94b2e4f504c955832071f4107b /drivers/video/amba-clcd.c
parentac3e2fa6770052a82d42fc4db194a27317518c97 (diff)
clk: amba-clcd: convert to clk_prepare()/clk_unprepare()
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/video/amba-clcd.c')
-rw-r--r--drivers/video/amba-clcd.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/video/amba-clcd.c b/drivers/video/amba-clcd.c
index cf03ad067147..2cda6ba0939b 100644
--- a/drivers/video/amba-clcd.c
+++ b/drivers/video/amba-clcd.c
@@ -447,6 +447,10 @@ static int clcdfb_register(struct clcd_fb *fb)
447 goto out; 447 goto out;
448 } 448 }
449 449
450 ret = clk_prepare(fb->clk);
451 if (ret)
452 goto free_clk;
453
450 fb->fb.device = &fb->dev->dev; 454 fb->fb.device = &fb->dev->dev;
451 455
452 fb->fb.fix.mmio_start = fb->dev->res.start; 456 fb->fb.fix.mmio_start = fb->dev->res.start;
@@ -456,7 +460,7 @@ static int clcdfb_register(struct clcd_fb *fb)
456 if (!fb->regs) { 460 if (!fb->regs) {
457 printk(KERN_ERR "CLCD: unable to remap registers\n"); 461 printk(KERN_ERR "CLCD: unable to remap registers\n");
458 ret = -ENOMEM; 462 ret = -ENOMEM;
459 goto free_clk; 463 goto clk_unprep;
460 } 464 }
461 465
462 fb->fb.fbops = &clcdfb_ops; 466 fb->fb.fbops = &clcdfb_ops;
@@ -530,6 +534,8 @@ static int clcdfb_register(struct clcd_fb *fb)
530 fb_dealloc_cmap(&fb->fb.cmap); 534 fb_dealloc_cmap(&fb->fb.cmap);
531 unmap: 535 unmap:
532 iounmap(fb->regs); 536 iounmap(fb->regs);
537 clk_unprep:
538 clk_unprepare(fb->clk);
533 free_clk: 539 free_clk:
534 clk_put(fb->clk); 540 clk_put(fb->clk);
535 out: 541 out:
@@ -595,6 +601,7 @@ static int clcdfb_remove(struct amba_device *dev)
595 if (fb->fb.cmap.len) 601 if (fb->fb.cmap.len)
596 fb_dealloc_cmap(&fb->fb.cmap); 602 fb_dealloc_cmap(&fb->fb.cmap);
597 iounmap(fb->regs); 603 iounmap(fb->regs);
604 clk_unprepare(fb->clk);
598 clk_put(fb->clk); 605 clk_put(fb->clk);
599 606
600 fb->board->remove(fb); 607 fb->board->remove(fb);