On 22/09/10 21:59, Adam Jackson wrote:
On Tue, 2010-09-21 at 23:02 +0100, Sam Tygier wrote:
Currently an invalid EDID extension will cause the whole EDID to be
considered invalid. Instead just drop the extension, and return the
valid base block. The base block is modified to not claim to have
extensions, and update the checksum.
This does not appear to be what your patch does. I mean, yes, if
there's only one extension block, that's what it does, but if there's
more than one...
I could modify it to skip the only invalid extension blocks. As my monitor only claims to have 1 extension block, i could not test this properly. I also spotted that I should make sure that my fix is not run when the base block fails the checksum 4 times. May it should be put within the for loop, replacing "goto carp;".
For my EIZO S2242W the base block is fine, but the extension block is
all zeros. Without this patch I get no X and no VTs.
I suspect what's actually happening there is that we're failing to get
the extension block, not that it's being returned as zeros.
Could this be fixed? Anything I could try?
Also, we shouldn't be converting "checksum failure" to "display
disconnected". That's the real bug here.
In my case it would still need to return base block, as that correctly contains all the modes and stuff.
Thanks
Sam
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel