From dc34bc494a2736a16495ccd58b009dea420b5eb5 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Mon, 22 Aug 2011 14:57:33 +0300 Subject: [PATCH] --- yaml --- r: 271423 b: refs/heads/master c: fa70dc5f472ddc261ad429f2c12eb7ac31c90b87 h: refs/heads/master i: 271421: 57abb1f1cf8af45a5ea0a2f1a49e173bb5fa9177 271419: ba4bba24236190581533cfa72f1935ab38941a3d 271415: 327a30a870a1b5df831c2394343eb071d6478cd7 271407: e9b411d3aeb34d44225eeb05b1b5845e27e4c167 271391: ef59c5f46d9577f3bfd993a92a3f7de99b5cb0a1 271359: 475eba0b182f10222f01afb4e9d734671aca675a v: v3 --- [refs] | 2 +- trunk/drivers/video/omap2/dss/hdmi.c | 13 +++++++++++-- trunk/drivers/video/omap2/dss/hdmi_panel.c | 7 +------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index db1ada70a20b..18c6761994f2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: df4769c9c4effa0960ead8d83522407f66e4a82a +refs/heads/master: fa70dc5f472ddc261ad429f2c12eb7ac31c90b87 diff --git a/trunk/drivers/video/omap2/dss/hdmi.c b/trunk/drivers/video/omap2/dss/hdmi.c index 06a78b2ab690..f503aa495b2f 100644 --- a/trunk/drivers/video/omap2/dss/hdmi.c +++ b/trunk/drivers/video/omap2/dss/hdmi.c @@ -571,11 +571,20 @@ void omapdss_hdmi_display_set_timing(struct omap_dss_device *dssdev) struct hdmi_cm cm; hdmi.custom_set = 1; + cm = hdmi_get_code(&dssdev->panel.timings); hdmi.code = cm.code; hdmi.mode = cm.mode; - omapdss_hdmi_display_enable(dssdev); - hdmi.custom_set = 0; + + if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) { + int r; + + hdmi_power_off(dssdev); + + r = hdmi_power_on(dssdev); + if (r) + DSSERR("failed to power on device\n"); + } } int omapdss_hdmi_display_enable(struct omap_dss_device *dssdev) diff --git a/trunk/drivers/video/omap2/dss/hdmi_panel.c b/trunk/drivers/video/omap2/dss/hdmi_panel.c index e30182f5fecf..8c851e624ee6 100644 --- a/trunk/drivers/video/omap2/dss/hdmi_panel.c +++ b/trunk/drivers/video/omap2/dss/hdmi_panel.c @@ -161,12 +161,7 @@ static void hdmi_set_timings(struct omap_dss_device *dssdev, mutex_lock(&hdmi.hdmi_lock); dssdev->panel.timings = *timings; - - if (dssdev->state == OMAP_DSS_DISPLAY_ACTIVE) { - /* turn the hdmi off and on to get new timings to use */ - omapdss_hdmi_display_disable(dssdev); - omapdss_hdmi_display_set_timing(dssdev); - } + omapdss_hdmi_display_set_timing(dssdev); mutex_unlock(&hdmi.hdmi_lock); }