A fair amount of the time, my X server fails to detect the correct HorizSync and VertRefresh values for my Hansol 900P (CRT). The graphics board is a Radeon 8500. Architecture is amd64, and it looks like it is somewhat specific to that architecture, at least I can't remember being able to reproduce it on i386. I discussed the problem with airlied on IRC and by his advice I ripped out the horrendous OUTREG/INREG/usleep code in RADEONDisplayDDCConnected, but it didn't help. http://err.no/tmp/Xorg-640-480.log.txt is a server log where it fails, http://err.no/tmp/xorg-works.txt is a server log where it works.
Are you sure it's not the monitor? I have an older 19" MAG which has never done DDC reliably.
I seem to be utterly unable to reproduce the bug if I boot an i386 version instead of the amd64 version I'm using, so I don't think the problem is the monitor.
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
I suspect the i2c timeouts aren't long enough. VESA specifies longer timeouts than standard i2c. I'll try and add this to the radeon driver at some point. It's a trivial patch; see the intel driver for more.
does this still have problems on xserver 1.3 or newer or the latest radeon code from git? I suspect this is related to the ddc timeouts. my unreliable mag became very reliable after the timeouts changed. Please re-open if you still have problems.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct.