After resume the HDMI/DVI output was still blank. It turns out that
framebuffers have to be reconfigured so the output is activated again.

---
 drivers/video/omap2/omapfb/omapfb-main.c |   33 ++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/drivers/video/omap2/omapfb/omapfb-main.c 
b/drivers/video/omap2/omapfb/omapfb-main.c
index 2bd90ca..a5a0725 100644
--- a/drivers/video/omap2/omapfb/omapfb-main.c
+++ b/drivers/video/omap2/omapfb/omapfb-main.c
@@ -30,6 +30,7 @@
 #include <linux/platform_device.h>
 #include <linux/omapfb.h>
 #include <linux/console.h>
+#include <linux/pm.h>
 
 #include <plat/display.h>
 #include <plat/vram.h>
@@ -2274,6 +2275,37 @@ static int omapfb_parse_def_modes(struct omapfb2_device 
*fbdev)
        return r;
 }
 
+#ifdef CONFIG_PM
+static int omapfb_suspend(struct device *dev)
+{
+       return 0;
+}
+
+static int omapfb_resume(struct device *dev)
+{
+       struct platform_device *pdev = to_platform_device(dev);
+       struct omapfb2_device *fbdev = platform_get_drvdata(pdev);
+       int i;
+
+       if (fbdev != NULL) {
+               for (i = 0; i < fbdev->num_fbs; i++) {
+                       omapfb_set_par(fbdev->fbs[i]);
+               }
+       }
+       return 0;
+}
+#else
+#define omapfb_suspend NULL
+#define omapfb_resume  NULL
+#endif
+
+static const struct dev_pm_ops omapfb_pm_ops = {
+       .suspend        = omapfb_suspend,
+       .resume         = omapfb_resume,
+       .poweroff       = omapfb_suspend,
+       .restore        = omapfb_resume,
+};
+
 static int omapfb_probe(struct platform_device *pdev)
 {
        struct omapfb2_device *fbdev = NULL;
@@ -2440,6 +2472,7 @@ static struct platform_driver omapfb_driver = {
        .driver         = {
                .name   = "omapfb",
                .owner  = THIS_MODULE,
+               .pm     = &omapfb_pm_ops,
        },
 };
 
-- 
1.7.5.3


_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to