]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
start 2.6.19 queue up again
authorGreg Kroah-Hartman <gregkh@suse.de>
Tue, 20 Feb 2007 23:10:16 +0000 (15:10 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 20 Feb 2007 23:10:16 +0000 (15:10 -0800)
queue-2.6.19/V4L-Fix-quickcam-communicator-driver-for-big-endian-architectures.patch [new file with mode: 0644]
queue-2.6.19/V4L-buf_qbuf-fix-videobuf_queue-stream-corruption-and-lockup.patch [new file with mode: 0644]
queue-2.6.19/V4L-cx88-Fix-lockup-on-suspend.patch [new file with mode: 0644]
queue-2.6.19/V4L-fix-ks0127-status-flags.patch [new file with mode: 0644]
queue-2.6.19/V4L-tveeprom-autodetect-LG-TAPC-G701D-as-tuner-type-37.patch [new file with mode: 0644]
queue-2.6.19/series [new file with mode: 0644]

diff --git a/queue-2.6.19/V4L-Fix-quickcam-communicator-driver-for-big-endian-architectures.patch b/queue-2.6.19/V4L-Fix-quickcam-communicator-driver-for-big-endian-architectures.patch
new file mode 100644 (file)
index 0000000..7acad81
--- /dev/null
@@ -0,0 +1,52 @@
+From af7d08db1a47fef67f7096bb7183299adf4cfa6d Mon Sep 17 00:00:00 2001
+From: Grant Likely <grant.likely@secretlab.ca>
+Date: Sun, 7 Jan 2007 10:33:30 -0300
+Subject: [PATCH] V4L: Fix quickcam communicator driver for big endian architectures
+
+Host endianess does not affect the order that pixel rgb data comes
+in from the quickcam (the values are bytes, not words or longs).  The
+driver is erroniously swapping the order of rgb values for big endian
+machines.  This patch is needed get the Quickcam communicator working
+on big endian machines (tested on powerpc)
+
+(cherry picked from commit c6d704c8c4453f05717ba88792f70f8babf95268)
+
+Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/media/video/usbvideo/quickcam_messenger.h |   14 --------------
+ 1 file changed, 14 deletions(-)
+
+--- linux-2.6.19.4.orig/drivers/media/video/usbvideo/quickcam_messenger.h
++++ linux-2.6.19.4/drivers/media/video/usbvideo/quickcam_messenger.h
+@@ -35,27 +35,13 @@ struct rgb {
+ };
+ struct bayL0 {
+-#ifdef __BIG_ENDIAN
+-      u8 r;
+-      u8 g;
+-#elif __LITTLE_ENDIAN
+       u8 g;
+       u8 r;
+-#else
+-#error not byte order defined
+-#endif
+ };
+ struct bayL1 {
+-#ifdef __BIG_ENDIAN
+-      u8 g;
+-      u8 b;
+-#elif __LITTLE_ENDIAN
+       u8 b;
+       u8 g;
+-#else
+-#error not byte order defined
+-#endif
+ };
+ struct cam_size {
diff --git a/queue-2.6.19/V4L-buf_qbuf-fix-videobuf_queue-stream-corruption-and-lockup.patch b/queue-2.6.19/V4L-buf_qbuf-fix-videobuf_queue-stream-corruption-and-lockup.patch
new file mode 100644 (file)
index 0000000..4b40085
--- /dev/null
@@ -0,0 +1,29 @@
+From 9a211062bff9e9dee4c0c10545e524fb7449605f Mon Sep 17 00:00:00 2001
+From: Oleg Nesterov <oleg@tv-sign.ru>
+Date: Tue, 23 Jan 2007 20:04:13 -0300
+Subject: [PATCH] V4L: buf_qbuf: fix videobuf_queue->stream corruption and lockup
+
+We are doing ->buf_prepare(buf) before adding buf to q->stream list. This
+means that videobuf_qbuf() should not try to re-add a STATE_PREPARED buffer.
+
+(cherry picked from commit 419dd8378dfa32985672ab7927b4bc827f33b332)
+
+Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/media/video/video-buf.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- linux-2.6.19.4.orig/drivers/media/video/video-buf.c
++++ linux-2.6.19.4/drivers/media/video/video-buf.c
+@@ -700,6 +700,7 @@ videobuf_qbuf(struct videobuf_queue *q,
+               goto done;
+       }
+       if (buf->state == STATE_QUEUED ||
++          buf->state == STATE_PREPARED ||
+           buf->state == STATE_ACTIVE) {
+               dprintk(1,"qbuf: buffer is already queued or active.\n");
+               goto done;
diff --git a/queue-2.6.19/V4L-cx88-Fix-lockup-on-suspend.patch b/queue-2.6.19/V4L-cx88-Fix-lockup-on-suspend.patch
new file mode 100644 (file)
index 0000000..f00c497
--- /dev/null
@@ -0,0 +1,39 @@
+From 93b966dfcbb67f5fc80f72c8962942bc7cd2a433 Mon Sep 17 00:00:00 2001
+From: Robert Hancock <hancockr@shaw.ca>
+Date: Sun, 7 Jan 2007 08:12:19 -0300
+Subject: [PATCH] V4L: cx88: Fix lockup on suspend
+
+Suspending with the cx88xx module loaded causes the system to lock up
+because the cx88_audio_thread kthread was missing a try_to_freeze()
+call, which caused it to go into a tight loop and result in softlockup
+when suspending. Fix that.
+
+(cherry picked from commit a96afb3e9428f2e7463344f12dbc85faf08e2e09)
+
+Signed-off-by: Robert Hancock <hancockr@shaw.ca>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/media/video/cx88/cx88-tvaudio.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- linux-2.6.19.4.orig/drivers/media/video/cx88/cx88-tvaudio.c
++++ linux-2.6.19.4/drivers/media/video/cx88/cx88-tvaudio.c
+@@ -38,6 +38,7 @@
+ #include <linux/module.h>
+ #include <linux/moduleparam.h>
+ #include <linux/errno.h>
++#include <linux/freezer.h>
+ #include <linux/kernel.h>
+ #include <linux/slab.h>
+ #include <linux/mm.h>
+@@ -974,6 +975,7 @@ int cx88_audio_thread(void *data)
+               msleep_interruptible(1000);
+               if (kthread_should_stop())
+                       break;
++              try_to_freeze();
+               /* just monitor the audio status for now ... */
+               memset(&t, 0, sizeof(t));
diff --git a/queue-2.6.19/V4L-fix-ks0127-status-flags.patch b/queue-2.6.19/V4L-fix-ks0127-status-flags.patch
new file mode 100644 (file)
index 0000000..c2b6df5
--- /dev/null
@@ -0,0 +1,39 @@
+From fcd5a0e170936416c537398f8444b8f94b708df9 Mon Sep 17 00:00:00 2001
+From: Martin Samuelsson <sam@home.se>
+Date: Sun, 7 Jan 2007 20:50:27 -0300
+Subject: [PATCH] V4L: fix ks0127 status flags
+
+Or status flags together in DECODER_GET_STATUS instead of and-zapping them.
+
+(cherry picked from commit 55d5440d4587454628a850ce26703639885af678)
+
+Signed-off-by: Martin Samuelsson <sam@home.se>
+Signed-off-by: Andrew Morton <akpm@osdl.org>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/media/video/ks0127.c |    8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- linux-2.6.19.4.orig/drivers/media/video/ks0127.c
++++ linux-2.6.19.4/drivers/media/video/ks0127.c
+@@ -712,13 +712,13 @@ static int ks0127_command(struct i2c_cli
+               *iarg = 0;
+               status = ks0127_read(ks, KS_STAT);
+               if (!(status & 0x20))            /* NOVID not set */
+-                      *iarg = (*iarg & DECODER_STATUS_GOOD);
++                      *iarg = (*iarg | DECODER_STATUS_GOOD);
+               if ((status & 0x01))                  /* CLOCK set */
+-                      *iarg = (*iarg & DECODER_STATUS_COLOR);
++                      *iarg = (*iarg | DECODER_STATUS_COLOR);
+               if ((status & 0x08))               /* PALDET set */
+-                      *iarg = (*iarg & DECODER_STATUS_PAL);
++                      *iarg = (*iarg | DECODER_STATUS_PAL);
+               else
+-                      *iarg = (*iarg & DECODER_STATUS_NTSC);
++                      *iarg = (*iarg | DECODER_STATUS_NTSC);
+               break;
+       //Catch any unknown command
diff --git a/queue-2.6.19/V4L-tveeprom-autodetect-LG-TAPC-G701D-as-tuner-type-37.patch b/queue-2.6.19/V4L-tveeprom-autodetect-LG-TAPC-G701D-as-tuner-type-37.patch
new file mode 100644 (file)
index 0000000..41ce81a
--- /dev/null
@@ -0,0 +1,31 @@
+From 397da4781ffd4c4fbc2bc48c4cbf97705287dcda Mon Sep 17 00:00:00 2001
+From: Michael Krufky <mkrufky@linuxtv.org>
+Date: Fri, 12 Jan 2007 17:38:05 -0300
+Subject: [PATCH] V4L: tveeprom: autodetect LG TAPC G701D as tuner type 37
+
+Autodetect LG TAPC G701D as tuner type 37, fixing
+mis-detected tuners in some Hauppauge tv tuner cards.
+
+Thanks to Adonis Papas, for pointing this out.
+
+(cherry picked from commit 1323fbda1343f50f198bc8bd6d1d59c8b7fc45bf)
+
+Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/media/video/tveeprom.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- linux-2.6.19.4.orig/drivers/media/video/tveeprom.c
++++ linux-2.6.19.4/drivers/media/video/tveeprom.c
+@@ -184,7 +184,7 @@ hauppauge_tuner[] =
+       { TUNER_ABSENT,        "Thompson DTT757"},
+       /* 80-89 */
+       { TUNER_ABSENT,        "Philips FQ1216LME MK3"},
+-      { TUNER_ABSENT,        "LG TAPC G701D"},
++      { TUNER_LG_PAL_NEW_TAPC, "LG TAPC G701D"},
+       { TUNER_LG_NTSC_NEW_TAPC, "LG TAPC H791F"},
+       { TUNER_LG_PAL_NEW_TAPC, "TCL 2002MB 3"},
+       { TUNER_LG_PAL_NEW_TAPC, "TCL 2002MI 3"},
diff --git a/queue-2.6.19/series b/queue-2.6.19/series
new file mode 100644 (file)
index 0000000..6aa7bd5
--- /dev/null
@@ -0,0 +1,5 @@
+V4L-cx88-Fix-lockup-on-suspend.patch
+V4L-Fix-quickcam-communicator-driver-for-big-endian-architectures.patch
+V4L-fix-ks0127-status-flags.patch
+V4L-tveeprom-autodetect-LG-TAPC-G701D-as-tuner-type-37.patch
+V4L-buf_qbuf-fix-videobuf_queue-stream-corruption-and-lockup.patch