]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
more patches queued
authorGreg Kroah-Hartman <gregkh@suse.de>
Tue, 13 Dec 2005 07:20:33 +0000 (23:20 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 13 Dec 2005 07:20:33 +0000 (23:20 -0800)
queue/i82365-release-all-resources-if-no-devices-are-found.patch [new file with mode: 0644]
queue/nm256-reset-workaround-for-latitude-csx.patch [new file with mode: 0644]
queue/series
queue/v4l-dvb-fix-analog-ntsc-for-thomson-dtt-761x-hybrid-tuner.patch [new file with mode: 0644]
queue/v4l-dvb-fix-tuner-init-for-pinnacle-pctv-stereo.patch [new file with mode: 0644]

diff --git a/queue/i82365-release-all-resources-if-no-devices-are-found.patch b/queue/i82365-release-all-resources-if-no-devices-are-found.patch
new file mode 100644 (file)
index 0000000..b1c317a
--- /dev/null
@@ -0,0 +1,32 @@
+From stable-bounces@linux.kernel.org Tue Dec  6 23:50:21 2005
+Date: Wed, 7 Dec 2005 08:46:33 +0100
+From: Dominik Brodowski <linux@dominikbrodowski.net>
+To: stable@kernel.org
+Message-ID: <20051207074633.GA26768@dominikbrodowski.de>
+Content-Disposition: inline
+Cc: 
+Subject: i82365: release all resources if no devices are found
+
+From: Igor Popik <igor.popik@gmail.com>
+
+The i82365 driver does not release all the resources when the device is not
+found. This can cause an oops when reading /proc/ioports after module
+unload (e.g. bug #5657).
+
+Signed-off-by: Igor Popik <igor.popik@gmail.com>
+Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+---
+ drivers/pcmcia/i82365.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- linux-2.6.14.3.orig/drivers/pcmcia/i82365.c
++++ linux-2.6.14.3/drivers/pcmcia/i82365.c
+@@ -1382,6 +1382,7 @@ static int __init init_i82365(void)
+     if (sockets == 0) {
+       printk("not found.\n");
+       platform_device_unregister(&i82365_device);
++      release_region(i365_base, 2);
+       driver_unregister(&i82365_driver);
+       return -ENODEV;
+     }
diff --git a/queue/nm256-reset-workaround-for-latitude-csx.patch b/queue/nm256-reset-workaround-for-latitude-csx.patch
new file mode 100644 (file)
index 0000000..2dadace
--- /dev/null
@@ -0,0 +1,116 @@
+From stable-bounces@linux.kernel.org Tue Dec  6 18:56:50 2005
+Date: Tue, 6 Dec 2005 21:51:53 -0500
+From: Dave Jones <davej@redhat.com>
+To: stable@kernel.org
+Message-ID: <20051207025153.GA22374@redhat.com>
+Content-Disposition: inline
+Cc: 
+Subject: [ALSA] nm256: reset workaround for Latitude CSx
+
+From: John W. Linville <linville@tuxdriver.com>
+
+Modules: NM256 driver
+
+The current snd-nm256 driver can cause Dell Latitude CSx laptops to
+lock-up during module (un)load.  I have isolated this to the writes to
+the control port register at offset 0x6cc which were not already
+protected by the existing reset_workaround.
+
+I tried grouping these writes with the existing reset_workaround
+clause, but that caused the driver to have (un)load problems on the
+Dell Latitude LS laptops.  So, I have implemented a reset_workaround_2
+clause (please feel free to suggest a better name!) to cover this
+situation and added a quirk entry for the CSx laptops.
+
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+diff --git a/sound/pci/nm256/nm256.c b/sound/pci/nm256/nm256.c
+index ebfa38b..d0da9a5 100644
+---
+ sound/pci/nm256/nm256.c |   23 ++++++++++++++++++++---
+ 1 file changed, 20 insertions(+), 3 deletions(-)
+
+--- linux-2.6.14.3.orig/sound/pci/nm256/nm256.c
++++ linux-2.6.14.3/sound/pci/nm256/nm256.c
+@@ -62,6 +62,7 @@ static int buffer_top[SNDRV_CARDS] = {[0
+ static int use_cache[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS - 1)] = 0}; /* disabled */
+ static int vaio_hack[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS - 1)] = 0}; /* disabled */
+ static int reset_workaround[SNDRV_CARDS];
++static int reset_workaround_2[SNDRV_CARDS];
+ module_param_array(index, int, NULL, 0444);
+ MODULE_PARM_DESC(index, "Index value for " CARD_NAME " soundcard.");
+@@ -83,6 +84,8 @@ module_param_array(vaio_hack, bool, NULL
+ MODULE_PARM_DESC(vaio_hack, "Enable workaround for Sony VAIO notebooks.");
+ module_param_array(reset_workaround, bool, NULL, 0444);
+ MODULE_PARM_DESC(reset_workaround, "Enable AC97 RESET workaround for some laptops.");
++module_param_array(reset_workaround_2, bool, NULL, 0444);
++MODULE_PARM_DESC(reset_workaround_2, "Enable extended AC97 RESET workaround for some other laptops.");
+ /*
+  * hw definitions
+@@ -226,6 +229,7 @@ struct snd_nm256 {
+       unsigned int coeffs_current: 1; /* coeff. table is loaded? */
+       unsigned int use_cache: 1;      /* use one big coef. table */
+       unsigned int reset_workaround: 1; /* Workaround for some laptops to avoid freeze */
++      unsigned int reset_workaround_2: 1; /* Extended workaround for some other laptops to avoid freeze */
+       int mixer_base;                 /* register offset of ac97 mixer */
+       int mixer_status_offset;        /* offset of mixer status reg. */
+@@ -1199,8 +1203,11 @@ snd_nm256_ac97_reset(ac97_t *ac97)
+               /* Dell latitude LS will lock up by this */
+               snd_nm256_writeb(chip, 0x6cc, 0x87);
+       }
+-      snd_nm256_writeb(chip, 0x6cc, 0x80);
+-      snd_nm256_writeb(chip, 0x6cc, 0x0);
++      if (! chip->reset_workaround_2) {
++              /* Dell latitude CSx will lock up by this */
++              snd_nm256_writeb(chip, 0x6cc, 0x80);
++              snd_nm256_writeb(chip, 0x6cc, 0x0);
++      }
+ }
+ /* create an ac97 mixer interface */
+@@ -1542,7 +1549,7 @@ struct nm256_quirk {
+       int type;
+ };
+-enum { NM_BLACKLISTED, NM_RESET_WORKAROUND };
++enum { NM_BLACKLISTED, NM_RESET_WORKAROUND, NM_RESET_WORKAROUND_2 };
+ static struct nm256_quirk nm256_quirks[] __devinitdata = {
+       /* HP omnibook 4150 has cs4232 codec internally */
+@@ -1551,6 +1558,8 @@ static struct nm256_quirk nm256_quirks[]
+       { .vendor = 0x104d, .device = 0x8041, .type = NM_RESET_WORKAROUND },
+       /* Dell Latitude LS */
+       { .vendor = 0x1028, .device = 0x0080, .type = NM_RESET_WORKAROUND },
++      /* Dell Latitude CSx */
++      { .vendor = 0x1028, .device = 0x0091, .type = NM_RESET_WORKAROUND_2 },
+       { } /* terminator */
+ };
+@@ -1582,6 +1591,9 @@ static int __devinit snd_nm256_probe(str
+                       case NM_BLACKLISTED:
+                               printk(KERN_INFO "nm256: The device is blacklisted.  Loading stopped\n");
+                               return -ENODEV;
++                      case NM_RESET_WORKAROUND_2:
++                              reset_workaround_2[dev] = 1;
++                              /* Fall-through */
+                       case NM_RESET_WORKAROUND:
+                               reset_workaround[dev] = 1;
+                               break;
+@@ -1638,6 +1650,11 @@ static int __devinit snd_nm256_probe(str
+               chip->reset_workaround = 1;
+       }
++      if (reset_workaround_2[dev]) {
++              snd_printdd(KERN_INFO "nm256: reset_workaround_2 activated\n");
++              chip->reset_workaround_2 = 1;
++      }
++
+       if ((err = snd_nm256_pcm(chip, 0)) < 0 ||
+           (err = snd_nm256_mixer(chip)) < 0) {
+               snd_card_free(card);
index 1b29f3bbbfdc38345b1fffad58094e30a56c84a5..875db6b32c5ee8634389b4086472827768ad4517 100644 (file)
@@ -11,3 +11,7 @@ acpi-prefer-_cst-over-fadt-for-c-state-capabilities.patch
 acpi-fix-hp-nx8220-boot-hang-regression.patch
 acpi-add-support-for-fadt-p_lvl2_up-flag.patch
 32bit-integer-overflow-in-invalidate_inode_pages2.patch
+v4l-dvb-fix-tuner-init-for-pinnacle-pctv-stereo.patch
+v4l-dvb-fix-analog-ntsc-for-thomson-dtt-761x-hybrid-tuner.patch
+nm256-reset-workaround-for-latitude-csx.patch
+i82365-release-all-resources-if-no-devices-are-found.patch
diff --git a/queue/v4l-dvb-fix-analog-ntsc-for-thomson-dtt-761x-hybrid-tuner.patch b/queue/v4l-dvb-fix-analog-ntsc-for-thomson-dtt-761x-hybrid-tuner.patch
new file mode 100644 (file)
index 0000000..a771def
--- /dev/null
@@ -0,0 +1,42 @@
+From stable-bounces@linux.kernel.org Thu Dec  8 22:27:06 2005
+Message-ID: <43991E34.60503@gmail.com>
+Date: Fri, 09 Dec 2005 01:03:32 -0500
+From: Michael Krufky <mkrufky@gmail.com>
+To: stable@kernel.org
+Cc: Mauro Carvalho Chehab <mchehab@brturbo.com.br>,
+        lkml <linux-kernel@vger.kernel.org>, mkrufky@gmail.com
+Subject: V4L/DVB: Fix analog NTSC for Thomson DTT 761X hybrid tuner
+
+[PATCH] V4L/DVB: Fix analog NTSC for Thomson DTT 761X hybrid tuner
+
+- Enable tda9887 on the following cx88 boards:
+  pcHDTV 3000
+  FusionHDTV3 Gold-T
+- This ensures that analog NTSC video will function properly, without
+  this patch, the tuner may appear to be broken.
+
+Signed-off-by: Michael Krufky <mkrufky@m1k.net>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+---
+ drivers/media/video/cx88/cx88-cards.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- linux-2.6.14.3.orig/drivers/media/video/cx88/cx88-cards.c
++++ linux-2.6.14.3/drivers/media/video/cx88/cx88-cards.c
+@@ -567,6 +567,7 @@ struct cx88_board cx88_boards[] = {
+               .radio_type     = UNSET,
+               .tuner_addr     = ADDR_UNSET,
+               .radio_addr     = ADDR_UNSET,
++              .tda9887_conf   = TDA9887_PRESENT,
+               .input          = {{
+                       .type   = CX88_VMUX_TELEVISION,
+                       .vmux   = 0,
+@@ -711,6 +712,7 @@ struct cx88_board cx88_boards[] = {
+               .radio_type     = UNSET,
+               .tuner_addr     = ADDR_UNSET,
+               .radio_addr     = ADDR_UNSET,
++              .tda9887_conf   = TDA9887_PRESENT,
+               .input          = {{
+                         .type   = CX88_VMUX_TELEVISION,
+                         .vmux   = 0,
diff --git a/queue/v4l-dvb-fix-tuner-init-for-pinnacle-pctv-stereo.patch b/queue/v4l-dvb-fix-tuner-init-for-pinnacle-pctv-stereo.patch
new file mode 100644 (file)
index 0000000..3a7ea37
--- /dev/null
@@ -0,0 +1,37 @@
+From stable-bounces@linux.kernel.org Thu Dec  8 15:26:50 2005
+From: mchehab@brturbo.com.br
+To: akpm@osdl.org
+Date: Thu, 08 Dec 2005 21:18:47 -0200
+Message-Id: <1134083966.7047.160.camel@localhost>
+Cc: js@linuxtv.org, Mauro Carvalho Chehab <mchehab@brturbo.com.br>,
+        linux-kernel@vger.kernel.org, mchehab@infradead.org,
+        linux-dvb-maintainer@linuxtv.org, stable@kernel.org,
+        Ricardo Cerqueira <v4l@cerqueira.org>
+Subject: V4L/DVB (3135) Fix tuner init for Pinnacle PCTV Stereo
+
+From: Ricardo Cerqueira <v4l@cerqueira.org>
+
+- The Pinnacle PCTV Stereo needs tda9887 port2 set to 1
+- Without this patch, mt20xx tuner is not detected and the board
+  doesn't tune.
+
+Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
+Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ drivers/media/video/saa7134/saa7134-cards.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- linux-2.6.14.3.orig/drivers/media/video/saa7134/saa7134-cards.c
++++ linux-2.6.14.3/drivers/media/video/saa7134/saa7134-cards.c
+@@ -972,7 +972,7 @@ struct saa7134_board saa7134_boards[] = 
+               .radio_type     = UNSET,
+               .tuner_addr     = ADDR_UNSET,
+               .radio_addr     = ADDR_UNSET,
+-              .tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER,
++              .tda9887_conf   = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_ACTIVE,
+               .inputs         = {{
+                       .name = name_tv,
+                       .vmux = 3,