From 5ef74c59c974edb8d86e1948680c2e0e3513c49c Mon Sep 17 00:00:00 2001 From: Zhao Yakui Date: Thu, 6 May 2010 23:28:40 +0800 Subject: [PATCH] drm/i915: Configure audio bit correctly for HDMI monitor The basic audio is not supported on some HDMI monitors. In such case it is unnecessary to set the AUDIO bit. Signed-off-by: Zhao Yakui --- drivers/gpu/drm/i915/intel_hdmi.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi.c index 0e268de..438b87e 100644 --- a/drivers/gpu/drm/i915/intel_hdmi.c +++ b/drivers/gpu/drm/i915/intel_hdmi.c @@ -39,7 +39,7 @@ struct intel_hdmi_priv { u32 sdvox_reg; u32 save_SDVOX; - bool has_hdmi_sink; + bool has_audio_sink; }; static void intel_hdmi_mode_set(struct drm_encoder *encoder, @@ -59,7 +59,7 @@ static void intel_hdmi_mode_set(struct drm_encoder *encoder, SDVO_VSYNC_ACTIVE_HIGH | SDVO_HSYNC_ACTIVE_HIGH; - if (hdmi_priv->has_hdmi_sink) + if (hdmi_priv->has_audio_sink) sdvox |= SDVO_AUDIO_ENABLE; if (intel_crtc->pipe == 1) @@ -155,14 +155,14 @@ intel_hdmi_detect(struct drm_connector *connector) struct edid *edid = NULL; enum drm_connector_status status = connector_status_disconnected; - hdmi_priv->has_hdmi_sink = false; + hdmi_priv->has_audio_sink = false; edid = drm_get_edid(&intel_output->base, intel_output->ddc_bus); if (edid) { if (edid->input & DRM_EDID_INPUT_DIGITAL) { status = connector_status_connected; - hdmi_priv->has_hdmi_sink = drm_detect_hdmi_monitor(edid); + hdmi_priv->has_audio_sink = drm_audio_is_supported(edid); } intel_output->base.display_info.raw_edid = NULL; kfree(edid); -- 1.5.4.5