Commit c268cd36 authored by Alex Deucher's avatar Alex Deucher Committed by Dave Airlie

drm/radeon/kms: only enable hdmi features if the monitor supports audio

This avoids some issues in the current hdmi audio code for monitors
without audio.
Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent c3307cd6
...@@ -641,7 +641,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder) ...@@ -641,7 +641,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder)
switch (connector->connector_type) { switch (connector->connector_type) {
case DRM_MODE_CONNECTOR_DVII: case DRM_MODE_CONNECTOR_DVII:
case DRM_MODE_CONNECTOR_HDMIB: /* HDMI-B is basically DL-DVI; analog works fine */ case DRM_MODE_CONNECTOR_HDMIB: /* HDMI-B is basically DL-DVI; analog works fine */
if (drm_detect_hdmi_monitor(radeon_connector->edid)) { if (drm_detect_monitor_audio(radeon_connector->edid)) {
/* fix me */ /* fix me */
if (ASIC_IS_DCE4(rdev)) if (ASIC_IS_DCE4(rdev))
return ATOM_ENCODER_MODE_DVI; return ATOM_ENCODER_MODE_DVI;
...@@ -655,7 +655,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder) ...@@ -655,7 +655,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder)
case DRM_MODE_CONNECTOR_DVID: case DRM_MODE_CONNECTOR_DVID:
case DRM_MODE_CONNECTOR_HDMIA: case DRM_MODE_CONNECTOR_HDMIA:
default: default:
if (drm_detect_hdmi_monitor(radeon_connector->edid)) { if (drm_detect_monitor_audio(radeon_connector->edid)) {
/* fix me */ /* fix me */
if (ASIC_IS_DCE4(rdev)) if (ASIC_IS_DCE4(rdev))
return ATOM_ENCODER_MODE_DVI; return ATOM_ENCODER_MODE_DVI;
...@@ -673,7 +673,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder) ...@@ -673,7 +673,7 @@ atombios_get_encoder_mode(struct drm_encoder *encoder)
if ((dig_connector->dp_sink_type == CONNECTOR_OBJECT_ID_DISPLAYPORT) || if ((dig_connector->dp_sink_type == CONNECTOR_OBJECT_ID_DISPLAYPORT) ||
(dig_connector->dp_sink_type == CONNECTOR_OBJECT_ID_eDP)) (dig_connector->dp_sink_type == CONNECTOR_OBJECT_ID_eDP))
return ATOM_ENCODER_MODE_DP; return ATOM_ENCODER_MODE_DP;
else if (drm_detect_hdmi_monitor(radeon_connector->edid)) { else if (drm_detect_monitor_audio(radeon_connector->edid)) {
/* fix me */ /* fix me */
if (ASIC_IS_DCE4(rdev)) if (ASIC_IS_DCE4(rdev))
return ATOM_ENCODER_MODE_DVI; return ATOM_ENCODER_MODE_DVI;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment