Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 59df7b17 authored by Christian Schmidt's avatar Christian Schmidt Committed by Dave Airlie
Browse files

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



My EFI BIOS starts the graphics card up in my projector's preferred EDID
mode, 1080@60i. The Intel driver does not clear all the interlaced bits.

This patch introduces a new PIPECONF_INTERLACE_MASK define and uses it
to restore progressive mode.

Signed-of-by: default avatarChristian Schmidt <schmidt@digadd.de>
Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 4966b2a9
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2312,6 +2312,7 @@
#define   PIPECONF_PROGRESSIVE	(0 << 21)
#define   PIPECONF_INTERLACE_W_FIELD_INDICATION	(6 << 21)
#define   PIPECONF_INTERLACE_FIELD_0_ONLY		(7 << 21)
#define   PIPECONF_INTERLACE_MASK	(7 << 21)
#define   PIPECONF_CXSR_DOWNCLOCK	(1<<16)
#define   PIPECONF_BPP_MASK	(0x000000e0)
#define   PIPECONF_BPP_8	(0<<5)
+1 −1
Original line number Diff line number Diff line
@@ -5136,7 +5136,7 @@ static int i9xx_crtc_mode_set(struct drm_crtc *crtc,
		adjusted_mode->crtc_vsync_end -= 1;
		adjusted_mode->crtc_vsync_start -= 1;
	} else
		pipeconf &= ~PIPECONF_INTERLACE_W_FIELD_INDICATION; /* progressive */
		pipeconf &= ~PIPECONF_INTERLACE_MASK; /* progressive */

	I915_WRITE(HTOTAL(pipe),
		   (adjusted_mode->crtc_hdisplay - 1) |