From: Takashi Iwai <tiwai@suse.de>
Subject: drm/i915: Workaround for DP DPMS D3 on Dell monitor
Patch-mainline: Never, SLE12-SP2 specific ad hoc fix
References: bsc#1019061

Dell Wyse 3040 box with Cherry Trail shows a blank monitor output
with a certain Dell DP monitors (E-series).  The only reliable
workaround so far is to skip DP DPMS D3 transition.

Signed-off-by: Takashi Iwai <tiwai@suse.de>

---
 drivers/gpu/drm/i915/intel_dp.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -2404,7 +2404,13 @@ static void intel_disable_dp(struct inte
 	 * ensure that we have vdd while we switch off the panel. */
 	intel_edp_panel_vdd_on(intel_dp);
 	intel_edp_backlight_off(intel_dp);
-	intel_dp_sink_dpms(intel_dp, DRM_MODE_DPMS_OFF);
+	/* FIXME: Wyse 3040 got a blank output with some Dell E-monitor, and
+	 * the workaround is to skip DP D3 transition (bsc#1019061)
+	 */
+	if (IS_CHERRYVIEW(dev))
+		DRM_DEBUG_DRIVER("Skipping DP DPMS D3 on CHV\n");
+	else
+		intel_dp_sink_dpms(intel_dp, DRM_MODE_DPMS_OFF);
 	intel_edp_panel_off(intel_dp);
 
 	/* disable the port before the pipe on g4x */
