Thread (4 messages) 4 messages, 3 authors, 2006-06-17

Re: soliciting feedback/direction on DDC support

From: Luca <hidden>
Date: 2006-06-17 17:28:49

Il Wed, Jun 14, 2006 at 08:30:27PM -0400, Dennis Munsie ha scritto: 
well, the hacks don't seem specific to the driver -- more that they  
are there to deal with quirks in the monitors -- which is something  
that shouldn't be in the driver.  It could also be that these hacks  
are completely unnecessary -- but that is something that I'm not  
qualified to determine.
Those hacks are needed to wake up the EEPROMs on some weird monitors.
When I did the initial coding of the I2C stuff I asked ATI and they
confirmed that that black magic was not stricly needed but a "nice to
have" to make sure that EDID could be read also from older monitors.
But, the problem is that to make it robust and generic, i need access  
to some internal data in the i2c bit algo.  I can call the  
appropriate functions that tie back into the drivers, but I can't be  
100% sure that the I2C adapter passed to me is a bit algo and not  
something else. There is no ID field in the adapter struct (or any  
of the structs inside of that one) that allows me to verify that I  
have good data.

Now, playing devil's advocate, we could just say that since this  
routine should only be called by drivers in the fb subsystem, they  
should know what i2c algorithm they are using, and it can be up to  
the caller to insure that everything is OK... but, I really don't  
feel comfortable using that method.  I'll leave that one up for  
debate...
Well, this stuff will be used only from kernel drivers. So I'd say that
if a driver is passing down something which is not a bit banging adaptor
then that driver is buggy, it violating the API.
I mean, right now I can pass crap to tons of kernel functions and then
watch the kernel explode; it's not a library which will be used by
userspace applications :P

Luca
-- 
Home: http://kronoz.cjb.net
"Ci sono le balle, le megaballe e le statistiche".
 Mark Twain
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help