Commit 70da7521 authored by Lyude Paul's avatar Lyude Paul
Browse files

drm/i915/gen9_bc: Add W/A for missing STRAP config on TGP PCH + CML combos



Apparently the new gen9_bc platforms that Intel has introduced don't
provide us with a STRAP config register to read from for initializing DDI
B, C, and D detection. So, workaround this by hard-coding our strap config
in intel_setup_outputs().

Changes since v4:
* Split this into it's own commit

Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
[originally from Tejas's work]
Signed-off-by: default avatarTejas Upadhyay <tejaskumarx.surendrakumar.upadhyay@intel.com>
Signed-off-by: default avatarLyude Paul <lyude@redhat.com>
Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210209212832.1401815-5-lyude@redhat.com
parent c8455098
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -11954,7 +11954,14 @@ static void intel_setup_outputs(struct drm_i915_private *dev_priv)

		/* DDI B, C, D, and F detection is indicated by the SFUSE_STRAP
		 * register */
		if (HAS_PCH_TGP(dev_priv)) {
			/* W/A due to lack of STRAP config on TGP PCH*/
			found = (SFUSE_STRAP_DDIB_DETECTED |
				 SFUSE_STRAP_DDIC_DETECTED |
				 SFUSE_STRAP_DDID_DETECTED);
		} else {
			found = intel_de_read(dev_priv, SFUSE_STRAP);
		}

		if (found & SFUSE_STRAP_DDIB_DETECTED)
			intel_ddi_init(dev_priv, PORT_B);