aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2010-04-13 11:21:59 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-04-26 10:47:55 -0400
commit1cda055bf9f47370067223da823342756fed786b (patch)
treeb775f690858cbe2d14ef86608a5b7eaf49a41d6a
parent4a9f5b424287bb6469caee0be5e8305429d7a180 (diff)
drm/radeon/kms: disable the tv encoder when tv/cv is not in use
commit d3a67a43b0460bae3e2ac14092497833344ac10d upstream. Switching between TV and VGA caused VGA to break on some systems since the TV encoder was left enabled when VGA was used. fixes fdo bug 25520. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/gpu/drm/radeon/radeon_encoders.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c b/drivers/gpu/drm/radeon/radeon_encoders.c
index 3c91724457ca..7626bd501ffc 100644
--- a/drivers/gpu/drm/radeon/radeon_encoders.c
+++ b/drivers/gpu/drm/radeon/radeon_encoders.c
@@ -1276,8 +1276,12 @@ radeon_atom_encoder_mode_set(struct drm_encoder *encoder,
1276 case ENCODER_OBJECT_ID_INTERNAL_DAC2: 1276 case ENCODER_OBJECT_ID_INTERNAL_DAC2:
1277 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2: 1277 case ENCODER_OBJECT_ID_INTERNAL_KLDSCP_DAC2:
1278 atombios_dac_setup(encoder, ATOM_ENABLE); 1278 atombios_dac_setup(encoder, ATOM_ENABLE);
1279 if (radeon_encoder->active_device & (ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)) 1279 if (radeon_encoder->devices & (ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)) {
1280 atombios_tv_setup(encoder, ATOM_ENABLE); 1280 if (radeon_encoder->active_device & (ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT))
1281 atombios_tv_setup(encoder, ATOM_ENABLE);
1282 else
1283 atombios_tv_setup(encoder, ATOM_DISABLE);
1284 }
1281 break; 1285 break;
1282 } 1286 }
1283 atombios_apply_encoder_quirks(encoder, adjusted_mode); 1287 atombios_apply_encoder_quirks(encoder, adjusted_mode);