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: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
c3307cd6a7
commit
c268cd36cc
|
@ -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)
|
||||||
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)
|
||||||
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;
|
||||||
|
|
Loading…
Reference in New Issue