Loading drivers/gpu/drm/radeon/r600_audio.c +22 −17 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ */ static int r600_audio_chipset_supported(struct radeon_device *rdev) { return (rdev->family >= CHIP_R600 && rdev->family < CHIP_CEDAR) return (rdev->family >= CHIP_R600 && !ASIC_IS_DCE4(rdev)) || rdev->family == CHIP_RS600 || rdev->family == CHIP_RS690 || rdev->family == CHIP_RS740; Loading Loading @@ -248,6 +248,9 @@ void r600_audio_set_clock(struct drm_encoder *encoder, int clock) return; } if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else { switch (dig->dig_encoder) { case 0: WREG32(R600_AUDIO_PLL1_MUL, base_rate * 50); Loading @@ -261,11 +264,13 @@ void r600_audio_set_clock(struct drm_encoder *encoder, int clock) WREG32(R600_AUDIO_CLK_SRCSEL, 1); break; default: dev_err(rdev->dev, "Unsupported DIG on encoder 0x%02X\n", dev_err(rdev->dev, "Unsupported DIG on encoder 0x%02X\n", radeon_encoder->encoder_id); return; } } } /* * release the audio timer Loading drivers/gpu/drm/radeon/r600_hdmi.c +11 −3 Original line number Diff line number Diff line Loading @@ -460,7 +460,9 @@ static void r600_hdmi_assign_block(struct drm_encoder *encoder) return; } if (ASIC_IS_DCE4(rdev)) { if (ASIC_IS_DCE5(rdev)) { /* TODO */ } else if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else if (ASIC_IS_DCE3(rdev)) { radeon_encoder->hdmi_offset = dig->dig_encoder ? Loading Loading @@ -497,9 +499,15 @@ void r600_hdmi_enable(struct drm_encoder *encoder) } offset = radeon_encoder->hdmi_offset; if (ASIC_IS_DCE32(rdev) && !ASIC_IS_DCE4(rdev)) { if (ASIC_IS_DCE5(rdev)) { /* TODO */ } else if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else if (ASIC_IS_DCE32(rdev)) { WREG32_P(radeon_encoder->hdmi_config_offset + 0x4, 0x1, ~0x1); } else if (rdev->family >= CHIP_R600 && !ASIC_IS_DCE3(rdev)) { } else if (ASIC_IS_DCE3(rdev)) { /* TODO */ } else if (rdev->family >= CHIP_R600) { switch (radeon_encoder->encoder_id) { case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1: WREG32_P(AVIVO_TMDSA_CNTL, 0x4, ~0x4); Loading Loading
drivers/gpu/drm/radeon/r600_audio.c +22 −17 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ */ static int r600_audio_chipset_supported(struct radeon_device *rdev) { return (rdev->family >= CHIP_R600 && rdev->family < CHIP_CEDAR) return (rdev->family >= CHIP_R600 && !ASIC_IS_DCE4(rdev)) || rdev->family == CHIP_RS600 || rdev->family == CHIP_RS690 || rdev->family == CHIP_RS740; Loading Loading @@ -248,6 +248,9 @@ void r600_audio_set_clock(struct drm_encoder *encoder, int clock) return; } if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else { switch (dig->dig_encoder) { case 0: WREG32(R600_AUDIO_PLL1_MUL, base_rate * 50); Loading @@ -261,11 +264,13 @@ void r600_audio_set_clock(struct drm_encoder *encoder, int clock) WREG32(R600_AUDIO_CLK_SRCSEL, 1); break; default: dev_err(rdev->dev, "Unsupported DIG on encoder 0x%02X\n", dev_err(rdev->dev, "Unsupported DIG on encoder 0x%02X\n", radeon_encoder->encoder_id); return; } } } /* * release the audio timer Loading
drivers/gpu/drm/radeon/r600_hdmi.c +11 −3 Original line number Diff line number Diff line Loading @@ -460,7 +460,9 @@ static void r600_hdmi_assign_block(struct drm_encoder *encoder) return; } if (ASIC_IS_DCE4(rdev)) { if (ASIC_IS_DCE5(rdev)) { /* TODO */ } else if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else if (ASIC_IS_DCE3(rdev)) { radeon_encoder->hdmi_offset = dig->dig_encoder ? Loading Loading @@ -497,9 +499,15 @@ void r600_hdmi_enable(struct drm_encoder *encoder) } offset = radeon_encoder->hdmi_offset; if (ASIC_IS_DCE32(rdev) && !ASIC_IS_DCE4(rdev)) { if (ASIC_IS_DCE5(rdev)) { /* TODO */ } else if (ASIC_IS_DCE4(rdev)) { /* TODO */ } else if (ASIC_IS_DCE32(rdev)) { WREG32_P(radeon_encoder->hdmi_config_offset + 0x4, 0x1, ~0x1); } else if (rdev->family >= CHIP_R600 && !ASIC_IS_DCE3(rdev)) { } else if (ASIC_IS_DCE3(rdev)) { /* TODO */ } else if (rdev->family >= CHIP_R600) { switch (radeon_encoder->encoder_id) { case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_TMDS1: WREG32_P(AVIVO_TMDSA_CNTL, 0x4, ~0x4); Loading