Patch to dump raw EDID data

Philip Prindeville philipp_subx at redfish-solutions.com
Fri Oct 28 11:57:53 PDT 2005


Howdy:

I created a bug to cover this issue, and I submitted a patch on the list
as well as creating an attachment to the bug.  What else might I need
to do to get closer to having this fix reviewed and committed?

Thanks,

-Philip


Philip Prindeville wrote:

> Howdy.
>
> I was wondering if it was worth creating a bug to track
> (and drive) the following issue:  it would be nice to get the
> raw dump (in hex) of the returned DDC information in the
> X server.
>
> It's sometimes useful to get this information when working
> with video card manufacturers, BIOS/mainboard houses,
> and monitor/display manufacturers...
>
> Ideally, a stand-alone utility built around libddc.so would be
> handy, but until that happens, this will do.
>
> -Philip
>
>------------------------------------------------------------------------
>
>*** xc/programs/Xserver/hw/xfree86/ddc/print_edid.c.bak	2005-07-03 02:53:43.000000000 -0600
>--- xc/programs/Xserver/hw/xfree86/ddc/print_edid.c	2005-10-16 23:07:57.000000000 -0600
>***************
>*** 31,40 ****
>--- 31,46 ----
>  static void print_whitepoint(int scrnIndex, struct disp_features *);
>  static void print_number_sections(int scrnIndex, int);
>  
>+ #define EDID_WIDTH	16
>+ 
>  xf86MonPtr
>  xf86PrintEDID(xf86MonPtr m)
>  {
>+     CARD16 i, j;
>+     char buf[EDID_WIDTH * 2 + 1];
>+ 
>      if (!(m)) return NULL;
>+ 
>      print_vendor(m->scrnIndex,&m->vendor);
>      print_version(m->scrnIndex,&m->ver);
>      print_display(m->scrnIndex,&m->features, &m->ver);
>***************
>*** 42,47 ****
>--- 48,62 ----
>      print_std_timings(m->scrnIndex,m->timings2);
>      print_detailed_monitor_section(m->scrnIndex,m->det_mon);
>      print_number_sections(m->scrnIndex,m->no_sections);
>+ 
>+     xf86DrvMsg(m->scrnIndex, X_INFO, "EDID (in hex):\n");
>+  
>+     for (i = 0; i < 128; i += j) {
>+ 	for (j = 0; j < EDID_WIDTH; ++j) {
>+ 	    sprintf(&buf[j * 2], "%02x", m->rawData[i + j]);
>+ 	}
>+ 	xf86DrvMsg(m->scrnIndex, X_INFO, "\t%s\n", buf);
>+     }
>      
>      return m;
>  }
>  
>
>------------------------------------------------------------------------
>




More information about the xorg mailing list