--- /dev/null
+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;
+ }
--- /dev/null
+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);
--- /dev/null
+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,
--- /dev/null
+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,