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

Commit 25f3ef11 authored by Paulo Zanoni's avatar Paulo Zanoni Committed by Daniel Vetter
Browse files

drm/i915: don't rely on previous values when setting LPT TRANSCONF



Because we already set all the bits we can set.

Signed-off-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
[danvet: apply by hand due to dropped patch. Also, obey my OCD a bit
and do a s/_TRANSACONF/TRANSCONF(TRANSCODER_A)/, makes it more
consisten with other lpt pch code imnsho ...]
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 937bb610
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -1729,16 +1729,15 @@ static void lpt_enable_pch_transcoder(struct drm_i915_private *dev_priv,
	assert_fdi_tx_enabled(dev_priv, cpu_transcoder);
	assert_fdi_rx_enabled(dev_priv, TRANSCODER_A);

	val = I915_READ(_TRANSACONF);
	val = TRANS_ENABLE;
	pipeconf_val = I915_READ(PIPECONF(cpu_transcoder));

	val &= ~TRANS_INTERLACE_MASK;
	if ((pipeconf_val & PIPECONF_INTERLACE_MASK) == PIPECONF_INTERLACED_ILK)
		val |= TRANS_INTERLACED;
	else
		val |= TRANS_PROGRESSIVE;

	I915_WRITE(_TRANSACONF, val | TRANS_ENABLE);
	I915_WRITE(TRANSCONF(TRANSCODER_A), val);
	if (wait_for(I915_READ(_TRANSACONF) & TRANS_STATE_ENABLE, 100))
		DRM_ERROR("Failed to enable PCH transcoder\n");
}