patch below adds DDC2/I2C support to the tdfx driver which has the distinct advantage to work anywhere since it doesn't depend on the vbe module. It will try DDC2 first and if that fails fall back to the old vbe stuff when possible. Moved mode validation and related stuff /after/ monitor detection. Tested on NetBSD/macppc with a voodoo3 ( with unofficial patches to allow PCI IO access, but these affect only the platform-specific PCI code, not the tdfx driver ) The patch is for NetBSD's xsrc which is based on XFree86 4.5 - maybe it's useful here too.
Created attachment 3034 [details] [review] patch against NetBSD's xsrc
Patch and driver could use a some indentation and Bus naming needs to be changed. This bus is aimed at DDC, not at the BT869 or the VPX3224 found on 3000 and 3500s. I2C Bus initialisation needs to be separated out from doTDFXDDC. In future we will get DDC data more often, while we only need (all) busses initialised at PreInit. I'm not sure how well that will work with the rest of VIDSERIALPARALELPORT though, and how restoration of it will proceed. Maybe the higher level i2c functions should be used?
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
committed a cleaned up variation on this patch: 220cc642c2d6b131f47d2c9769cb521bc6fe8c09
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.