From a58befe9d243bd562cb4b2f08ec5c9f754148c20 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sat, 17 Mar 2007 17:12:37 -0700 Subject: [PATCH] Remove extra (and incorrect) I2C ByteTimeout setting. Setting the value correctly and then immediately breaking it caused many I2C transactions to timeout with slow monitors. Oops. --- src/i830_i2c.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/i830_i2c.c b/src/i830_i2c.c index 319e8dab..08ff522e 100644 --- a/src/i830_i2c.c +++ b/src/i830_i2c.c @@ -368,10 +368,14 @@ I830I2CInit(ScrnInfoPtr pScrn, I2CBusPtr *bus_ptr, int i2c_reg, char *name) /* Assume all busses are used for DDCish stuff */ + /* + * These were set incorrectly in the server pre-1.3, Having + * duplicate settings is sub-optimal, but this lets the driver + * work with older servers + */ pI2CBus->ByteTimeout = 2200; /* VESA DDC spec 3 p. 43 (+10 %) */ pI2CBus->StartTimeout = 550; pI2CBus->BitTimeout = 40; - pI2CBus->ByteTimeout = 40; pI2CBus->AcknTimeout = 40; if (!xf86I2CBusInit(pI2CBus))