aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_ddi.c
diff options
context:
space:
mode:
authorDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>2016-09-29 02:55:04 -0400
committerJani Nikula <jani.nikula@intel.com>2016-09-29 04:02:41 -0400
commitbe754b101f70076f6375c84db4e8bcc517a4524f (patch)
tree59583a9b365f817bf995a01cce13ecb8691a0e75 /drivers/gpu/drm/i915/intel_ddi.c
parent7d7f8633a82763577727762ff3ac1df3017cb8fe (diff)
Revert "drm/i915: start adding dp mst audio"
This reverts 'commit 3708d5e082c3 ("drm/i915: start adding dp mst audio")' because it breaks MST multi-monitor setups on some platforms. Fixes: 3708d5e082c3 ("drm/i915: start adding dp mst audio") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97907 Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Reported-by: Kim Lidström <kim@dxtr.im> Cc: Libin Yang <libin.yang@linux.intel.com> Cc: Lyude <cpaul@redhat.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1475132104-2754-1-git-send-email-dhinakaran.pandiyan@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ddi.c')
-rw-r--r--drivers/gpu/drm/i915/intel_ddi.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index 07cba6c0b1b5..35f0b7c9d0a6 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -2227,19 +2227,6 @@ void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp)
2227 udelay(600); 2227 udelay(600);
2228} 2228}
2229 2229
2230bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv,
2231 struct intel_crtc *intel_crtc)
2232{
2233 u32 temp;
2234
2235 if (intel_display_power_is_enabled(dev_priv, POWER_DOMAIN_AUDIO)) {
2236 temp = I915_READ(HSW_AUD_PIN_ELD_CP_VLD);
2237 if (temp & AUDIO_OUTPUT_ENABLE(intel_crtc->pipe))
2238 return true;
2239 }
2240 return false;
2241}
2242
2243void intel_ddi_get_config(struct intel_encoder *encoder, 2230void intel_ddi_get_config(struct intel_encoder *encoder,
2244 struct intel_crtc_state *pipe_config) 2231 struct intel_crtc_state *pipe_config)
2245{ 2232{
@@ -2305,8 +2292,11 @@ void intel_ddi_get_config(struct intel_encoder *encoder,
2305 break; 2292 break;
2306 } 2293 }
2307 2294
2308 pipe_config->has_audio = 2295 if (intel_display_power_is_enabled(dev_priv, POWER_DOMAIN_AUDIO)) {
2309 intel_ddi_is_audio_enabled(dev_priv, intel_crtc); 2296 temp = I915_READ(HSW_AUD_PIN_ELD_CP_VLD);
2297 if (temp & AUDIO_OUTPUT_ENABLE(intel_crtc->pipe))
2298 pipe_config->has_audio = true;
2299 }
2310 2300
2311 if (encoder->type == INTEL_OUTPUT_EDP && dev_priv->vbt.edp.bpp && 2301 if (encoder->type == INTEL_OUTPUT_EDP && dev_priv->vbt.edp.bpp &&
2312 pipe_config->pipe_bpp > dev_priv->vbt.edp.bpp) { 2302 pipe_config->pipe_bpp > dev_priv->vbt.edp.bpp) {