]> rtime.felk.cvut.cz Git - linux-imx.git/commitdiff
drm/i915: set the VIC of the mode on the AVI InfoFrame
authorPaulo Zanoni <paulo.r.zanoni@intel.com>
Fri, 23 Nov 2012 14:09:27 +0000 (12:09 -0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 29 Nov 2012 10:42:38 +0000 (11:42 +0100)
We currently set "0" as the VIC value of the AVI InfoFrames. According
to the specs this should be fine and work for every mode, so to my
point of view we can't consider the current behavior as a bug. The
problem is that  we recently received a bug report (Kernel bug #50371)
from a user that has an AV receiver that gives a black screen for any
mode with VIC set to 0.

So in order to make at least some modes work for him, this patch sets
the correct VIC number when sending AVI InfoFrames.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=50371
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_hdmi.c

index 5c279b48df97f5a1e922712ef3ab20ad3b77ef2f..2ee9821b9d9312bb502df6502cc7b8c0cdc63f77 100644 (file)
@@ -340,6 +340,8 @@ static void intel_hdmi_set_avi_infoframe(struct drm_encoder *encoder,
        if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK)
                avi_if.body.avi.YQ_CN_PR |= DIP_AVI_PR_2;
 
+       avi_if.body.avi.VIC = drm_mode_cea_vic(adjusted_mode);
+
        intel_set_infoframe(encoder, &avi_if);
 }