[Intel-gfx] [PATCH 2/2] drm/i915: add dp mst judgement in hsw_audio_codec_enable
Ville Syrjälä
ville.syrjala at linux.intel.com
Thu Jan 7 08:51:08 PST 2016
On Wed, Jan 06, 2016 at 10:26:42AM +0800, libin.yang at linux.intel.com wrote:
> From: Libin Yang <libin.yang at linux.intel.com>
>
> hsw platforms supports DP MST while ilk doesn't.
> This patch fixes the bug.
>
> Signed-off-by: Libin Yang <libin.yang at linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_audio.c | 11 ++++-------
> 1 file changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c
> index 431487a0..d8d42d3 100644
> --- a/drivers/gpu/drm/i915/intel_audio.c
> +++ b/drivers/gpu/drm/i915/intel_audio.c
> @@ -272,8 +272,7 @@ static void hsw_audio_codec_disable(struct intel_encoder *encoder)
> tmp |= AUD_CONFIG_N_PROG_ENABLE;
> tmp &= ~AUD_CONFIG_UPPER_N_MASK;
> tmp &= ~AUD_CONFIG_LOWER_N_MASK;
> - if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT) ||
> - intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DP_MST))
> + if (intel_crtc->config->has_dp_encoder)
> tmp |= AUD_CONFIG_N_VALUE_INDEX;
> I915_WRITE(HSW_AUD_CFG(pipe), tmp);
>
> @@ -339,7 +338,7 @@ static void hsw_audio_codec_enable(struct drm_connector *connector,
> tmp = I915_READ(HSW_AUD_CFG(pipe));
> tmp &= ~AUD_CONFIG_N_VALUE_INDEX;
> tmp &= ~AUD_CONFIG_PIXEL_CLOCK_HDMI_MASK;
> - if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT))
> + if (intel_crtc->config->has_dp_encoder)
> tmp |= AUD_CONFIG_N_VALUE_INDEX;
> else
> tmp |= audio_config_hdmi_pixel_clock(adjusted_mode);
> @@ -486,8 +485,7 @@ static void ilk_audio_codec_enable(struct drm_connector *connector,
> tmp &= ~AUD_CONFIG_N_VALUE_INDEX;
> tmp &= ~AUD_CONFIG_N_PROG_ENABLE;
> tmp &= ~AUD_CONFIG_PIXEL_CLOCK_HDMI_MASK;
> - if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT) ||
> - intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DP_MST))
> + if (intel_pipe_has_type(intel_crtc, INTEL_OUTPUT_DISPLAYPORT))
Could have used has_dp_encoder everywhere, but whatever
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> tmp |= AUD_CONFIG_N_VALUE_INDEX;
> else
> tmp |= audio_config_hdmi_pixel_clock(adjusted_mode);
> @@ -526,8 +524,7 @@ void intel_audio_codec_enable(struct intel_encoder *intel_encoder)
>
> /* ELD Conn_Type */
> connector->eld[5] &= ~(3 << 2);
> - if (intel_pipe_has_type(crtc, INTEL_OUTPUT_DISPLAYPORT) ||
> - intel_pipe_has_type(crtc, INTEL_OUTPUT_DP_MST))
> + if (crtc->config->has_dp_encoder)
> connector->eld[5] |= (1 << 2);
>
> connector->eld[6] = drm_av_sync_delay(connector, adjusted_mode) / 2;
> --
> 1.9.1
--
Ville Syrjälä
Intel OTC
More information about the Intel-gfx
mailing list