xserver: Branch 'master' - 2 commits
Adam Jackson
ajax at kemper.freedesktop.org
Mon Aug 25 07:45:05 PDT 2008
hw/xfree86/ddc/ddcProperty.c | 11 ++++++++---
hw/xfree86/modes/xf86Crtc.c | 6 ++++--
2 files changed, 12 insertions(+), 5 deletions(-)
New commits:
commit 76ed409acd772f2c041239345c6dc64cbef0e5b2
Author: Adam Jackson <ajax at redhat.com>
Date: Mon Aug 25 10:44:45 2008 -0400
EDID: Publish the whole block on the root window if we've got it.
diff --git a/hw/xfree86/ddc/ddcProperty.c b/hw/xfree86/ddc/ddcProperty.c
index 02125df..a4384f1 100644
--- a/hw/xfree86/ddc/ddcProperty.c
+++ b/hw/xfree86/ddc/ddcProperty.c
@@ -83,13 +83,18 @@ addRootWindowProperties(ScrnInfoPtr pScrn, xf86MonPtr DDC)
}
if (makeEDID1prop) {
- if ((EDID1rawdata = xalloc(128*sizeof(CARD8)))==NULL)
+ int size = 128;
+
+ if (DDC->flags & EDID_COMPLETE_RAWDATA)
+ size += DDC->no_sections * 128;
+
+ if ((EDID1rawdata = xalloc(size*sizeof(CARD8)))==NULL)
return;
EDID1Atom = MakeAtom(EDID1_ATOM_NAME, sizeof(EDID1_ATOM_NAME) - 1, TRUE);
- memcpy(EDID1rawdata, DDC->rawData, 128);
+ memcpy(EDID1rawdata, DDC->rawData, size);
xf86RegisterRootWindowProperty(scrnIndex, EDID1Atom, XA_INTEGER, 8,
- 128, (unsigned char *)EDID1rawdata);
+ size, (unsigned char *)EDID1rawdata);
}
if (makeEDID2prop) {
commit 5724f7fb5bea6fa1a354c64c0972c53d70e2f27b
Author: Adam Jackson <ajax at redhat.com>
Date: Mon Aug 25 10:39:36 2008 -0400
EDID: Publish the whole block in the RANDR property if we've got it.
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index a5a0a63..6ceb426 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -2631,9 +2631,11 @@ xf86OutputSetEDID (xf86OutputPtr output, xf86MonPtr edid_mon)
size = 0;
if (edid_mon)
{
- if (edid_mon->ver.version == 1)
+ if (edid_mon->ver.version == 1) {
size = 128;
- else if (edid_mon->ver.version == 2)
+ if (edid->flags & EDID_COMPLETE_RAWDATA)
+ size += edid->no_sections * 128;
+ } else if (edid_mon->ver.version == 2)
size = 256;
}
xf86OutputSetEDIDProperty (output, edid_mon ? edid_mon->rawData : NULL, size);
More information about the xorg-commit
mailing list