diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-09-22 07:34:31 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-09-27 04:25:51 -0400 |
commit | 99df4ee107a85530f3d4f6d628c8a86db9b1a8b3 (patch) | |
tree | cd77ce5245ec0e94b2e4f504c955832071f4107b /drivers/video/amba-clcd.c | |
parent | ac3e2fa6770052a82d42fc4db194a27317518c97 (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.c | 9 |
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); |