rpms/kernel/F-11 linux-2.6-i2c-fix-bit-algorithm-timeout.patch, NONE, 1.1 TODO, 1.67, 1.68 kernel.spec, 1.1570, 1.1571

Dave Airlie airlied at fedoraproject.org
Fri Apr 24 04:35:04 UTC 2009


Author: airlied

Update of /cvs/pkgs/rpms/kernel/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv18313

Modified Files:
	TODO kernel.spec 
Added Files:
	linux-2.6-i2c-fix-bit-algorithm-timeout.patch 
Log Message:
* Fri Apr 24 2009 Dave Airlie <airlied at redhat.com> 2.6.29.1-109
- linux-2.6-i2c-fix-bit-algorithm-timeout.patch - fix i2c EDID timeout


linux-2.6-i2c-fix-bit-algorithm-timeout.patch:

--- NEW FILE linux-2.6-i2c-fix-bit-algorithm-timeout.patch ---
>From e4a2a2da918d130c8755c89c9732ada3a53e2709 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied at redhat.com>
Date: Fri, 24 Apr 2009 09:03:29 +1000
Subject: [PATCH] i2c: fix bit algorithm timeout for low values.

When fetching DDC using i2c algo bit, we were often seeing timeouts
before getting valid EDID on a retry. The VESA spec states 2ms is the
DDC timeout, so when this translates into 1 jiffie and we are close
to the end of the time period, it could return with a timeout less than
2ms.

Change this code to use time_after instead of time_after_eq.

Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 drivers/i2c/algos/i2c-algo-bit.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/i2c/algos/i2c-algo-bit.c b/drivers/i2c/algos/i2c-algo-bit.c
index d420cc5..e25e139 100644
--- a/drivers/i2c/algos/i2c-algo-bit.c
+++ b/drivers/i2c/algos/i2c-algo-bit.c
@@ -104,7 +104,7 @@ static int sclhi(struct i2c_algo_bit_data *adap)
 		 * chips may hold it low ("clock stretching") while they
 		 * are processing data internally.
 		 */
-		if (time_after_eq(jiffies, start + adap->timeout))
+		if (time_after(jiffies, start + adap->timeout))
 			return -ETIMEDOUT;
 		cond_resched();
 	}
-- 
1.6.0.6



Index: TODO
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/TODO,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -r1.67 -r1.68
--- TODO	19 Apr 2009 12:38:38 -0000	1.67
+++ TODO	24 Apr 2009 04:34:34 -0000	1.68
@@ -116,3 +116,6 @@
 	https://bugzilla.redhat.com/492523
 	Needed for xen domU to boot on some machines. Upstream since
 	2.6.30-rc2.
+
+* linux-2.6-i2c-fix-bit-algorithm-timeout.patch
+        Should be in stable soon - fix for EDID under kms


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-11/kernel.spec,v
retrieving revision 1.1570
retrieving revision 1.1571
diff -u -r1.1570 -r1.1571
--- kernel.spec	24 Apr 2009 04:10:41 -0000	1.1570
+++ kernel.spec	24 Apr 2009 04:34:34 -0000	1.1571
@@ -735,6 +735,7 @@
 # make RLIMIT_CPU work again
 Patch7003: linux-2.6-posix-timers-fix-rlimit_cpu-fork-2.patch
 Patch7004: linux-2.6-posix-timers-fix-rlimit_cpu-setitimer.patch
+Patch7005: linux-2.6-i2c-fix-bit-algorithm-timeout.patch
 
 Patch9001: revert-fix-modules_install-via-nfs.patch
 
@@ -1378,6 +1379,7 @@
 ApplyPatch linux-2.6-posix-timers-fix-clock-monotonicity.patch
 ApplyPatch linux-2.6-posix-timers-fix-rlimit_cpu-fork-2.patch
 ApplyPatch linux-2.6-posix-timers-fix-rlimit_cpu-setitimer.patch
+ApplyPatch linux-2.6-i2c-fix-bit-algorithm-timeout.patch
 
 # revert 8b249b6856f16f09b0e5b79ce5f4d435e439b9d6
 ApplyPatch revert-fix-modules_install-via-nfs.patch
@@ -1982,6 +1984,9 @@
 # and build.
 
 %changelog
+* Fri Apr 24 2009 Dave Airlie <airlied at redhat.com> 2.6.29.1-109
+- linux-2.6-i2c-fix-bit-algorithm-timeout.patch - fix i2c EDID timeout
+
 * Fri Apr 24 2009 Ben Skeggs <bskeggs at redhat.com> 2.6.29.1-108
 - nouveau/nv50: don't clobber 0x001700 during instmem init, can confuse ddx
 




More information about the fedora-extras-commits mailing list