From aa04ed649442296366bc2bad1936ec5184235069 Mon Sep 17 00:00:00 2001 From: Furquan Shaikh Date: Tue, 23 Jul 2013 15:53:02 -0700 Subject: Added structure members x_mm and y_mm to edid decoding Change-Id: I9a628cec4da127a3f072d9611259dad99dfa9d29 Reviewed-on: https://gerrit.chromium.org/gerrit/63125 Reviewed-by: Ronald G. Minnich Commit-Queue: Furquan Shaikh Tested-by: Furquan Shaikh Reviewed-on: http://review.coreboot.org/4382 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi --- src/include/edid.h | 2 ++ src/lib/edid.c | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/include/edid.h b/src/include/edid.h index 88ce55f804..4a2f13858b 100644 --- a/src/include/edid.h +++ b/src/include/edid.h @@ -45,6 +45,8 @@ struct edid { /* used to compute timing for graphics chips. */ unsigned char phsync; unsigned char pvsync; + unsigned int x_mm; + unsigned int y_mm; unsigned int pixel_clock; unsigned int link_clock; unsigned int ha; diff --git a/src/lib/edid.c b/src/lib/edid.c index 8018967bf1..dd7c46ab2b 100644 --- a/src/lib/edid.c +++ b/src/lib/edid.c @@ -449,6 +449,8 @@ detailed_block(struct edid *out, unsigned char *x, int in_extension) if (! did_detailed_timing){ /* Edid contains pixel clock in terms of 10KHz */ out->pixel_clock = (x[0] + (x[1] << 8)) * 10; + out->x_mm = (x[12] + ((x[14] & 0xF0) << 4)); + out->y_mm = (x[13] + ((x[14] & 0x0F) << 8)); out->ha = (x[2] + ((x[4] & 0xF0) << 4)); out->hbl = (x[3] + ((x[4] & 0x0F) << 8)); out->hso = (x[8] + ((x[11] & 0xC0) << 2)); @@ -524,8 +526,8 @@ detailed_block(struct edid *out, unsigned char *x, int in_extension) " %04x %04x %04x %04x vborder %x\n" " %chsync %cvsync%s%s %s\n", out->pixel_clock, - (x[12] + ((x[14] & 0xF0) << 4)), - (x[13] + ((x[14] & 0x0F) << 8)), + out->x_mm, + out->y_mm, out->ha, out->ha + out->hso, out->ha + out->hso + out->hspw, out->ha + out->hbl, out->hborder, out->va, out->va + out->vso, out->va + out->vso + out->vspw, -- cgit v1.2.3