diff options
-rw-r--r-- | drivers/gpu/drm/i915/intel_ddi.c | 20 | ||||
-rw-r--r-- | drivers/gpu/drm/i915/intel_drv.h | 2 |
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 | ||
2516 | bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv, | 2516 | static 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 | ||
2529 | void intel_ddi_compute_min_voltage_level(struct drm_i915_private *dev_priv, | 2529 | void 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); | |||
1288 | void intel_ddi_set_pipe_settings(const struct intel_crtc_state *crtc_state); | 1288 | void intel_ddi_set_pipe_settings(const struct intel_crtc_state *crtc_state); |
1289 | void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp); | 1289 | void intel_ddi_prepare_link_retrain(struct intel_dp *intel_dp); |
1290 | bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector); | 1290 | bool intel_ddi_connector_get_hw_state(struct intel_connector *intel_connector); |
1291 | bool intel_ddi_is_audio_enabled(struct drm_i915_private *dev_priv, | ||
1292 | struct intel_crtc *intel_crtc); | ||
1293 | void intel_ddi_get_config(struct intel_encoder *encoder, | 1291 | void intel_ddi_get_config(struct intel_encoder *encoder, |
1294 | struct intel_crtc_state *pipe_config); | 1292 | struct intel_crtc_state *pipe_config); |
1295 | 1293 | ||