Thread (13 messages) 13 messages, 4 authors, 2004-09-12

Re: monitor detection through ddc/edid stuff.

flat view

From: Kronos <hidden>
Date: 2004-09-11 15:36:33

Il Fri, Sep 10, 2004 at 01:16:27PM +0200, Sven Luther ha scritto: 
I also have quickly overviewed the radeon driver, which has a function to read
the EDID either from the BIOS or the pmac OF. There seem to be no code
whatsoever that adds proper EDID reading through the graphic card directly,
like it is done in XFree86, where one can do in the individual drivers (using
i2c stuff also) :

	...
	pBus->BusName = "DDC";
	pBus->I2CUDelay = WildcatVPI2CUDelay;
	pBus->I2CPutBits = WildcatVPI2CPutBits;
	pBus->I2CGetBits = WildcatVPI2CGetBits;

These three being smallish functions to delay a bit, and to put/get bits in
the DCC Clock/Data Out/In registers.
Ok, you a have a bit-style adapter. i2c kernel core needs function to
control SDA and SCL but they can be easily created from X functions.

*GetBits must be splited in getscl (read clock) and getsda (get data),
and *PutBits must be splited in setscl and setsda.

I've done that with the radeon driver, look at drivers/video/aty/radeon_i2c.c.
Would it make sense to implement such a feature in fbmon.c ? Is fbmon.c the
right place for this ? Is this already implemented somewhere else, or maybe in
some private tree somewhere ?
We already have a I2C subsystem, all you have to do is create a new
adapter and read from it (ie. you put the starting address on bus and
start reading).
As i understand this, we would need some place to set the those three
function, and then a common function to actually do a real EDID reading
through the graphic card (get_EDID_from_harware ?).
Well, instead of PutBits/GetBits we have 4 functions, the algorithm is 
provided by the i2c subsystem. Look at radeon_do_probe_i2c_edid in the
radeon driver, it's not hard to do.

Oh, radeon_probe_i2c_connector contains some "black magic" to wakeup
some older boards/monitor. An ATI developer confirmed that it's needed
to cover some corner case, probably you don't need that on your board.

Luca
-- 
Home: http://kronoz.cjb.net
"L'abilita` politica e` l'abilita` di prevedere quello che
 accadra` domani, la prossima settimana, il prossimo mese e
 l'anno prossimo. E di essere cosi` abili, piu` tardi,
 da spiegare  perche' non e` accaduto."


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM. 
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help