提交 a4ea4308 编写于 作者: D Daniel Vetter 提交者: Keith Packard

drm/i915: fixup interlaced bits clearing in PIPECONF on PCH_SPLIT

An identical patch has been merged for i9xx_crtc_mode_set:

Commit 59df7b17
Author: Christian Schmidt <schmidt@digadd.de>
Date:   Mon Dec 19 20:03:33 2011 +0100

    drm/intel: Fix initialization if startup happens in interlaced mode [v2]

But that one neglected to fix up the ironlake+ path.

This should fix the issue reported by Alfonso Fiore where booting with
only a HDMI cable connected to his TV failed to display anything. The
issue is that the bios set up things for 1080i and used the pannel
fitter to scale up the lower progressive resolutions. We failed to
clear the interlace bit in the PIPEACONF register, resulting in havoc.

Cc: Peter Ross <pross@xvid.org>
Tested-by: NAlfonso Fiore <alfonso.fiore@gmail.com>
Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: NKeith Packard <keithp@keithp.com>
Signed-off-by: NKeith Packard <keithp@keithp.com>
上级 d56d8b28
...@@ -5912,7 +5912,7 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc, ...@@ -5912,7 +5912,7 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc,
adjusted_mode->crtc_vsync_end -= 1; adjusted_mode->crtc_vsync_end -= 1;
adjusted_mode->crtc_vsync_start -= 1; adjusted_mode->crtc_vsync_start -= 1;
} else } else
pipeconf &= ~PIPECONF_INTERLACE_W_FIELD_INDICATION; /* progressive */ pipeconf &= ~PIPECONF_INTERLACE_MASK; /* progressive */
I915_WRITE(HTOTAL(pipe), I915_WRITE(HTOTAL(pipe),
(adjusted_mode->crtc_hdisplay - 1) | (adjusted_mode->crtc_hdisplay - 1) |
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册