From: Alex Deucher Date: Tue, 3 Apr 2012 21:05:41 +0000 (-0400) Subject: drm/radeon/kms: fix DVO setup on some r4xx chips X-Git-Tag: v3.3.3~74 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9285285e7bdd4a151576acdb433618950ab7a327;p=thirdparty%2Fkernel%2Fstable.git drm/radeon/kms: fix DVO setup on some r4xx chips commit afceb9319f21b18ee3bc15ee9a5f92e18ef8a8c9 upstream. Some r4xx chips have the wrong frev in the DVOEncoderControl table. It should always be 1 on r4xx. Fixes modesetting on DVO on r4xx chips with the bad frev. Reported by twied on #radeon. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c b/drivers/gpu/drm/radeon/atombios_encoders.c index 8ed806ab4be60..1dae0ea02c9a9 100644 --- a/drivers/gpu/drm/radeon/atombios_encoders.c +++ b/drivers/gpu/drm/radeon/atombios_encoders.c @@ -230,6 +230,10 @@ atombios_dvo_setup(struct drm_encoder *encoder, int action) if (!atom_parse_cmd_header(rdev->mode_info.atom_context, index, &frev, &crev)) return; + /* some R4xx chips have the wrong frev */ + if (rdev->family <= CHIP_RV410) + frev = 1; + switch (frev) { case 1: switch (crev) {