aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorVaishali Thakkar <vthakkar1994@gmail.com>2015-08-17 23:28:40 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2015-09-01 06:55:32 -0400
commit7b554088d56e9df3ee5dff8989b44903965bad95 (patch)
treed7fd9ff4f6b41ddc4d5361e1b51e48acd6709a35 /drivers/video
parentc4e6774de19f4638bb887a47a58ee21d6809360b (diff)
video: fbdev: pxa168fb: Use devm_clk_get
This patch introduces the use of managed resource function devm_clk_get instead of clk_get and removes corresponding calls to clk_put in the probe and remove functions. To be compatible with the change various gotos are replaced with direct returns, and unneeded label failed_put_clk is dropped. Signed-off-by: Vaishali Thakkar <vthakkar1994@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/fbdev/pxa168fb.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/video/fbdev/pxa168fb.c b/drivers/video/fbdev/pxa168fb.c
index e209b039f553..efb57c059997 100644
--- a/drivers/video/fbdev/pxa168fb.c
+++ b/drivers/video/fbdev/pxa168fb.c
@@ -615,7 +615,7 @@ static int pxa168fb_probe(struct platform_device *pdev)
615 return -EINVAL; 615 return -EINVAL;
616 } 616 }
617 617
618 clk = clk_get(&pdev->dev, "LCDCLK"); 618 clk = devm_clk_get(&pdev->dev, "LCDCLK");
619 if (IS_ERR(clk)) { 619 if (IS_ERR(clk)) {
620 dev_err(&pdev->dev, "unable to get LCDCLK"); 620 dev_err(&pdev->dev, "unable to get LCDCLK");
621 return PTR_ERR(clk); 621 return PTR_ERR(clk);
@@ -624,21 +624,18 @@ static int pxa168fb_probe(struct platform_device *pdev)
624 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 624 res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
625 if (res == NULL) { 625 if (res == NULL) {
626 dev_err(&pdev->dev, "no IO memory defined\n"); 626 dev_err(&pdev->dev, "no IO memory defined\n");
627 ret = -ENOENT; 627 return -ENOENT;
628 goto failed_put_clk;
629 } 628 }
630 629
631 irq = platform_get_irq(pdev, 0); 630 irq = platform_get_irq(pdev, 0);
632 if (irq < 0) { 631 if (irq < 0) {
633 dev_err(&pdev->dev, "no IRQ defined\n"); 632 dev_err(&pdev->dev, "no IRQ defined\n");
634 ret = -ENOENT; 633 return -ENOENT;
635 goto failed_put_clk;
636 } 634 }
637 635
638 info = framebuffer_alloc(sizeof(struct pxa168fb_info), &pdev->dev); 636 info = framebuffer_alloc(sizeof(struct pxa168fb_info), &pdev->dev);
639 if (info == NULL) { 637 if (info == NULL) {
640 ret = -ENOMEM; 638 return -ENOMEM;
641 goto failed_put_clk;
642 } 639 }
643 640
644 /* Initialize private data */ 641 /* Initialize private data */
@@ -776,8 +773,6 @@ failed_free_fbmem:
776 info->screen_base, fbi->fb_start_dma); 773 info->screen_base, fbi->fb_start_dma);
777failed_free_info: 774failed_free_info:
778 kfree(info); 775 kfree(info);
779failed_put_clk:
780 clk_put(clk);
781 776
782 dev_err(&pdev->dev, "frame buffer device init failed with %d\n", ret); 777 dev_err(&pdev->dev, "frame buffer device init failed with %d\n", ret);
783 return ret; 778 return ret;
@@ -813,7 +808,6 @@ static int pxa168fb_remove(struct platform_device *pdev)
813 info->screen_base, info->fix.smem_start); 808 info->screen_base, info->fix.smem_start);
814 809
815 clk_disable(fbi->clk); 810 clk_disable(fbi->clk);
816 clk_put(fbi->clk);
817 811
818 framebuffer_release(info); 812 framebuffer_release(info);
819 813