diff --git a/drivers/gpu/drm/radeon/radeon_audio.c b/drivers/gpu/drm/radeon/radeon_audio.c index a07561d..5c261da 100644 --- a/drivers/gpu/drm/radeon/radeon_audio.c +++ b/drivers/gpu/drm/radeon/radeon_audio.c @@ -473,12 +473,16 @@ void radeon_audio_detect(struct drm_connector *connector, radeon_encoder = to_radeon_encoder(encoder); dig = radeon_encoder->enc_priv; + DRM_INFO("encoder id: 0x%x\n", radeon_encoder->encoder_id); + if (!dig->afmt) return; if (status == connector_status_connected) { struct radeon_connector *radeon_connector = to_radeon_connector(connector); + DRM_INFO("connector_status_connected\n"); + if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort && radeon_dp_getsinktype(radeon_connector) == CONNECTOR_OBJECT_ID_DISPLAYPORT) @@ -486,14 +490,21 @@ void radeon_audio_detect(struct drm_connector *connector, else radeon_encoder->audio = rdev->audio.hdmi_funcs; + DRM_INFO("audio: 0x%p\n", radeon_encoder->audio); + dig->afmt->pin = radeon_audio_get_pin(encoder); if (drm_detect_monitor_audio(radeon_connector_edid(connector))) { + DRM_INFO("enabling audio\n"); radeon_audio_enable(rdev, dig->afmt->pin, 0xf); } else { + DRM_INFO("disabling audio\n"); radeon_audio_enable(rdev, dig->afmt->pin, 0); dig->afmt->pin = NULL; } + DRM_INFO("pin: 0x%p\n", dig->afmt->pin); } else { + DRM_INFO("connector_status_disconnected\n"); + DRM_INFO("pin: 0x%p\n", dig->afmt->pin); radeon_audio_enable(rdev, dig->afmt->pin, 0); dig->afmt->pin = NULL; }