Makefile.am | 2 +- xf86DDC.c | 20 ++++++++++++++++++-- xf86DDC.h | 4 ++++ 3 files changed, 23 insertions(+), 3 deletions(-) Index: Makefile.am =================================================================== RCS file: /cvs/xorg/xserver/xorg/hw/xfree86/ddc/Makefile.am,v retrieving revision 1.6 diff -u -d -p -r1.6 Makefile.am --- Makefile.am 2 Dec 2005 06:02:40 -0000 1.6 +++ Makefile.am 24 Dec 2005 15:25:51 -0000 @@ -4,7 +4,7 @@ module_LTLIBRARIES = libddc.la libddc_la_LDFLAGS = -avoid-version libddc_la_SOURCES = xf86DDC.c edid.c interpret_edid.c print_edid.c \ - interpret_vdif.c print_vdif.c ddcProperty.c + interpret_vdif.c print_vdif.c ddcProperty.c inject_edid.c INCLUDES = $(XORG_INCS) -I$(srcdir)/../i2c Index: xf86DDC.c =================================================================== RCS file: /cvs/xorg/xserver/xorg/hw/xfree86/ddc/xf86DDC.c,v retrieving revision 1.7 diff -u -d -p -r1.7 xf86DDC.c --- xf86DDC.c 18 Nov 2005 18:02:24 -0000 1.7 +++ xf86DDC.c 24 Dec 2005 15:25:51 -0000 @@ -30,6 +30,16 @@ const char *i2cSymbols[] = { #ifdef XFree86LOADER +/* + * version history: + * + * 1.0.0: libddc as of Xorg 7.0 + * 1.1.0: Added xorgInjectEDID() + */ +#define LIBDDC_MAJOR 1 +#define LIBDDC_MINOR 1 +#define LIBDDC_PATCH 0 + static MODULESETUPPROTO(ddcSetup); static XF86ModuleVersionInfo ddcVersRec = @@ -39,7 +49,7 @@ static XF86ModuleVersionInfo ddcVersRec MODINFOSTRING1, MODINFOSTRING2, XORG_VERSION_CURRENT, - 1, 0, 0, + LIBDDC_MAJOR, LIBDDC_MINOR, LIBDDC_PATCH, ABI_CLASS_VIDEODRV, /* needs the video driver ABI */ ABI_VIDEODRV_VERSION, MOD_CLASS_NONE, @@ -178,7 +188,11 @@ xf86DoEDID_DDC1( if (!tmp) ErrorF("Cannot interpret EDID block\n"); #endif - return tmp; + + if (tmp) + xorgInjectEDID(pScrn, tmp); + + return tmp; } xf86MonPtr @@ -223,6 +237,8 @@ xf86DoEDID_DDC2(int scrnIndex, I2CBusPtr VDIF_Block = VDIFRead(scrnIndex, pBus, EDID1_LEN * (tmp->no_sections + 1)); tmp->vdif = xf86InterpretVdif(VDIF_Block); + + xorgInjectEDID(pScrn, tmp); } return tmp; Index: xf86DDC.h =================================================================== RCS file: /cvs/xorg/xserver/xorg/hw/xfree86/ddc/xf86DDC.h,v retrieving revision 1.6 diff -u -d -p -r1.6 xf86DDC.h --- xf86DDC.h 24 Aug 2005 11:18:33 -0000 1.6 +++ xf86DDC.h 24 Dec 2005 15:25:51 -0000 @@ -57,6 +57,10 @@ extern void xf86print_vdif( xf86vdifPtr v ); +extern void xorgInjectEDID( + ScrnInfoPtr pScrn, xf86MonPtr pMon +); + #endif