aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_edid.c
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2010-01-04 17:53:07 -0500
committerDave Airlie <airlied@redhat.com>2010-01-07 13:18:04 +1000
commit8e10ee9a0da12c586d3397150e34a946507c23f3 (patch)
treeef3ef465e5f09311e1232a5e2276706319ded296 /drivers/gpu/drm/drm_edid.c
parentdrm/edid: Skip empty CVT codepoints (diff)
downloadlinux-dev-8e10ee9a0da12c586d3397150e34a946507c23f3.tar.xz
linux-dev-8e10ee9a0da12c586d3397150e34a946507c23f3.zip
drm/edid: Fix CVT width/height decode
Signed-off-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to '')
-rw-r--r--drivers/gpu/drm/drm_edid.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 7d6ac22f5b2d..defcaf108460 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -920,18 +920,18 @@ static int drm_cvt_modes(struct drm_connector *connector,
if (!memcmp(cvt->code, empty, 3))
continue;
- height = (cvt->code[0] + ((cvt->code[1] & 0xf0) << 8) + 1) * 2;
- switch (cvt->code[1] & 0xc0) {
+ height = (cvt->code[0] + ((cvt->code[1] & 0xf0) << 4) + 1) * 2;
+ switch (cvt->code[1] & 0x0c) {
case 0x00:
width = height * 4 / 3;
break;
- case 0x40:
+ case 0x04:
width = height * 16 / 9;
break;
- case 0x80:
+ case 0x08:
width = height * 16 / 10;
break;
- case 0xc0:
+ case 0x0c:
width = height * 15 / 9;
break;
}