Why querying of EDID is limited only to VBE version greater then 2.0?

Simon Thum simon.thum at gmx.de
Fri May 15 07:39:29 PDT 2009

Evgeny M. Zubok wrote:
> I have S3 Trio64V2 with VBE 1.2 and I want to add the possibility of
> display autodetection via DDC to s3 driver. There is two ways to deal
> with DDC: (i) VESA BIOS Extension and (ii) directly from videochip's DDC
> registers. The later method currently is impossible to implement due to
> the lack of information about DDC registers in accessible
> documentation. So I have tried the former method. Retrieving of EDID can
> be done with vbeDoEDID function from vbe.c, but I discovered that there
> is VBE version checking in this function -- if VBE version is lower than
> 2.0 the function returns NULL and didn't perform EDID query.
>     if (pVbe->version < 0x200)
> 	return NULL;
AFAIK the DDC stuff was endorsed in 2.0, so it's probably just a 
heuristic, not a hard limit. I'm not the maintainer but I guess a good 
patch is appreciated. IIRC the vbe bios does advertise if it has the DDC 
extension, which should be a preferable 'heuristic'.

> However S3 Trio64V2 with VBE 1.2 has DDC extention! I have verified this
> with get-edid program. What the real reason of limitation on the VBE
> version?
Probably such examples were not common enough.

More information about the xorg mailing list