patch-2.1.128 linux/drivers/sound/ad1848.c

Next file: linux/drivers/sound/audio.c
Previous file: linux/drivers/sound/Readme.modules
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.127/linux/drivers/sound/ad1848.c linux/drivers/sound/ad1848.c
@@ -1814,7 +1814,7 @@
 			ad_write(devc, 16, tmp & ~0x40);	/* Disable timer */
 
 			if (devc->timer_ticks == 0)
-				printk(KERN_WARNING "ad1848: Interrupt test failed (IRQ%d)\n", devc->irq);
+				printk(KERN_WARNING "ad1848: Interrupt test failed (IRQ%d)\n", irq);
 			else
 			{
 				DDB(printk("Interrupt test OK\n"));
@@ -1935,7 +1935,7 @@
 		if (!share_dma)
 		{
 			if (irq > 0)
-				free_irq(devc->irq, NULL);
+				free_irq(devc->irq, (void *)devc->dev_no);
 
 			sound_free_dma(audio_devs[dev]->dmap_out->dma);
 
@@ -1945,6 +1945,10 @@
 		mixer = audio_devs[devc->dev_no]->mixer_dev;
 		if(mixer>=0)
 			sound_unload_mixerdev(mixer);
+
+		nr_ad1848_devs--;
+		for ( ; i < nr_ad1848_devs ; i++)
+			adev_info[i] = adev_info[i+1];
 	}
 	else
 		printk(KERN_ERR "ad1848: Can't find device to be unloaded. Base=%x\n", io_base);

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov