(Sorry if I'm spawning a very old thread here).
After all this time I have been patching my kernels to workaround [0][1]
[0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=624549 [1] https://bugs.freedesktop.org/show_bug.cgi?id=37040
Some time ago I found [2] and today I finally solved the problem.
[2] http://www.blaicher.com/2012/06/howto-fixing-a-broken-edid-eeprom-with-a-bus-pirate-v4/
Some stuff I learned: the kernel does ignores checksums mismatches by 8... in the positive side! My mismatch was exactly -1, ie, 255.
I have been modifying the original patch to workaround this since 2011. I'm attaching my last patch in case someone else needs it. It does adds a kernel parameter to ignore edid mismatches.
Kinds regards, Lisandro.