aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/s3c-fb.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-12-27 09:16:09 -0500
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2012-01-03 11:00:04 -0500
commit3500b0be62c8cc2f93e8022dc70071ec31b067de (patch)
tree37d55ac3103e5ea0ca4608cc9a05857925960584 /drivers/video/s3c-fb.c
parenta2b77dcebf6e968bada4d415d426b39ac199e8aa (diff)
video: s3c-fb: Disable runtime PM in error paths from probe
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Diffstat (limited to 'drivers/video/s3c-fb.c')
-rw-r--r--drivers/video/s3c-fb.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/video/s3c-fb.c b/drivers/video/s3c-fb.c
index be4c218bb931..2e0eef0a563f 100644
--- a/drivers/video/s3c-fb.c
+++ b/drivers/video/s3c-fb.c
@@ -1464,7 +1464,7 @@ static int __devinit s3c_fb_probe(struct platform_device *pdev)
1464 dev_err(dev, "failed to create window %d\n", win); 1464 dev_err(dev, "failed to create window %d\n", win);
1465 for (; win >= 0; win--) 1465 for (; win >= 0; win--)
1466 s3c_fb_release_win(sfb, sfb->windows[win]); 1466 s3c_fb_release_win(sfb, sfb->windows[win]);
1467 goto err_irq; 1467 goto err_pm_runtime;
1468 } 1468 }
1469 } 1469 }
1470 1470
@@ -1473,7 +1473,8 @@ static int __devinit s3c_fb_probe(struct platform_device *pdev)
1473 1473
1474 return 0; 1474 return 0;
1475 1475
1476err_irq: 1476err_pm_runtime:
1477 pm_runtime_put_sync(sfb->dev);
1477 free_irq(sfb->irq_no, sfb); 1478 free_irq(sfb->irq_no, sfb);
1478 1479
1479err_ioremap: 1480err_ioremap:
@@ -1483,6 +1484,8 @@ err_req_region:
1483 release_mem_region(sfb->regs_res->start, resource_size(sfb->regs_res)); 1484 release_mem_region(sfb->regs_res->start, resource_size(sfb->regs_res));
1484 1485
1485err_lcd_clk: 1486err_lcd_clk:
1487 pm_runtime_disable(sfb->dev);
1488
1486 if (!sfb->variant.has_clksel) { 1489 if (!sfb->variant.has_clksel) {
1487 clk_disable(sfb->lcd_clk); 1490 clk_disable(sfb->lcd_clk);
1488 clk_put(sfb->lcd_clk); 1491 clk_put(sfb->lcd_clk);