aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/r600_hdmi.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/radeon/r600_hdmi.c')
-rw-r--r--drivers/gpu/drm/radeon/r600_hdmi.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/drivers/gpu/drm/radeon/r600_hdmi.c b/drivers/gpu/drm/radeon/r600_hdmi.c
index 2616b822ba68..d014472d0d3f 100644
--- a/drivers/gpu/drm/radeon/r600_hdmi.c
+++ b/drivers/gpu/drm/radeon/r600_hdmi.c
@@ -353,17 +353,18 @@ void r600_hdmi_setmode(struct drm_encoder *encoder, struct drm_display_mode *mod
353/* 353/*
354 * update settings with current parameters from audio engine 354 * update settings with current parameters from audio engine
355 */ 355 */
356void r600_hdmi_update_audio_settings(struct drm_encoder *encoder, 356void r600_hdmi_update_audio_settings(struct drm_encoder *encoder)
357 int channels,
358 int rate,
359 int bps,
360 uint8_t status_bits,
361 uint8_t category_code)
362{ 357{
363 struct drm_device *dev = encoder->dev; 358 struct drm_device *dev = encoder->dev;
364 struct radeon_device *rdev = dev->dev_private; 359 struct radeon_device *rdev = dev->dev_private;
365 uint32_t offset = to_radeon_encoder(encoder)->hdmi_offset; 360 uint32_t offset = to_radeon_encoder(encoder)->hdmi_offset;
366 361
362 int channels = r600_audio_channels(rdev);
363 int rate = r600_audio_rate(rdev);
364 int bps = r600_audio_bits_per_sample(rdev);
365 uint8_t status_bits = r600_audio_status_bits(rdev);
366 uint8_t category_code = r600_audio_category_code(rdev);
367
367 uint32_t iec; 368 uint32_t iec;
368 369
369 if (!offset) 370 if (!offset)
@@ -518,6 +519,8 @@ void r600_hdmi_enable(struct drm_encoder *encoder)
518 } 519 }
519 } 520 }
520 521
522 r600_audio_enable_polling(encoder);
523
521 DRM_DEBUG("Enabling HDMI interface @ 0x%04X for encoder 0x%x\n", 524 DRM_DEBUG("Enabling HDMI interface @ 0x%04X for encoder 0x%x\n",
522 radeon_encoder->hdmi_offset, radeon_encoder->encoder_id); 525 radeon_encoder->hdmi_offset, radeon_encoder->encoder_id);
523} 526}
@@ -539,6 +542,8 @@ void r600_hdmi_disable(struct drm_encoder *encoder)
539 return; 542 return;
540 } 543 }
541 544
545 r600_audio_disable_polling(encoder);
546
542 DRM_DEBUG("Disabling HDMI interface @ 0x%04X for encoder 0x%x\n", 547 DRM_DEBUG("Disabling HDMI interface @ 0x%04X for encoder 0x%x\n",
543 radeon_encoder->hdmi_offset, radeon_encoder->encoder_id); 548 radeon_encoder->hdmi_offset, radeon_encoder->encoder_id);
544 549