V4L/DVB (13345): soc-camera: sh_mobile_ceu_camera: call pm_runtime_disable
authorKuninori Morimoto <morimoto.kuninori@renesas.com>
Mon, 9 Nov 2009 19:13:24 +0000 (16:13 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 26 Nov 2009 21:38:03 +0000 (19:38 -0200)
pm_runtime_disable is needed if it failed or removed

Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/sh_mobile_ceu_camera.c

index 55afe3e98e160750b147b316c6783defdd1c17bd..afdea0d26fc6dc8ef01289fda474aed643f98da3 100644 (file)
@@ -1724,10 +1724,12 @@ static int __devinit sh_mobile_ceu_probe(struct platform_device *pdev)
 
        err = soc_camera_host_register(&pcdev->ici);
        if (err)
-               goto exit_free_irq;
+               goto exit_free_clk;
 
        return 0;
 
+exit_free_clk:
+       pm_runtime_disable(&pdev->dev);
 exit_free_irq:
        free_irq(pcdev->irq, pcdev);
 exit_release_mem:
@@ -1748,6 +1750,7 @@ static int __devexit sh_mobile_ceu_remove(struct platform_device *pdev)
                                        struct sh_mobile_ceu_dev, ici);
 
        soc_camera_host_unregister(soc_host);
+       pm_runtime_disable(&pdev->dev);
        free_irq(pcdev->irq, pcdev);
        if (platform_get_resource(pdev, IORESOURCE_MEM, 1))
                dma_release_declared_memory(&pdev->dev);