aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/i915/intel_ddi.c20
-rw-r--r--drivers/gpu/drm/i915/intel_drv.h2
2 files changed, 10 insertions, 12 deletions
diff --git a/drivers/gpu/drm/i915/intel_ddi.c b/drivers/gpu/drm/i915/intel_ddi.c
index eff3b51872eb..48ba9b7fdc78 100644
--- a/drivers/gpu/drm/i915/intel_ddi.c
+++ b/drivers/gpu/drm/i915/intel_ddi.c
@@ -2513,17 +2513,17 @@ void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp)
2513 udelay(600); 2513 udelay(600);
2514} 2514}
2515 2515
2516bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv, 2516static bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv,
2517 struct intel_crtc *intel_crtc) 2517 enum transcoder cpu_transcoder)
2518{ 2518{
2519 u32 temp; 2519 if (cpu_transcoder == TRANSCODER_EDP)
2520 return false;
2520 2521
2521 if (intel_display_power_is_enabled(dev_priv, POWER_DOMAIN_AUDIO)) { 2522 if (!intel_display_power_is_enabled(dev_priv, POWER_DOMAIN_AUDIO))
2522 temp = I915_READ(HSW_AUD_PIN_ELD_CP_VLD); 2523 return false;
2523 if (temp & AUDIO_OUTPUT_ENABLE(intel_crtc->pipe)) 2524
2524 return true; 2525 return I915_READ(HSW_AUD_PIN_ELD_CP_VLD) &
2525 } 2526 AUDIO_OUTPUT_ENABLE(cpu_transcoder);
2526 return false;
2527} 2527}
2528 2528
2529void intel_ddi_compute_min_voltage_level(struct drm_i915_private *dev_priv, 2529void intel_ddi_compute_min_voltage_level(struct drm_i915_private *dev_priv,
@@ -2616,7 +2616,7 @@ void intel_ddi_get_config(struct intel_encoder *encoder,
2616 } 2616 }
2617 2617
2618 pipe_config->has_audio = 2618 pipe_config->has_audio =
2619 intel_ddi_is_audio_enabled(dev_priv, intel_crtc); 2619 intel_ddi_is_audio_enabled(dev_priv, cpu_transcoder);
2620 2620
2621 if (encoder->type == INTEL_OUTPUT_EDP && dev_priv->vbt.edp.bpp && 2621 if (encoder->type == INTEL_OUTPUT_EDP && dev_priv->vbt.edp.bpp &&
2622 pipe_config->pipe_bpp > dev_priv->vbt.edp.bpp) { 2622 pipe_config->pipe_bpp > dev_priv->vbt.edp.bpp) {
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 64426d3e078e..82d637d20d5d 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1288,8 +1288,6 @@ intel_ddi_get_crtc_new_encoder(struct intel_crtc_state *crtc_state);
1288void intel_ddi_set_pipe_settings(const struct intel_crtc_state *crtc_state); 1288void intel_ddi_set_pipe_settings(const struct intel_crtc_state *crtc_state);
1289void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp); 1289void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp);
1290bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector); 1290bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector);
1291bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv,
1292 struct intel_crtc *intel_crtc);
1293void intel_ddi_get_config(struct intel_encoder *encoder, 1291void intel_ddi_get_config(struct intel_encoder *encoder,
1294 struct intel_crtc_state *pipe_config); 1292 struct intel_crtc_state *pipe_config);
1295 1293