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

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

diff -u --recursive --new-file v2.1.131/linux/drivers/sound/ad1848.c linux/drivers/sound/ad1848.c
@@ -442,10 +442,6 @@
 	left = mix_cvt[left];
 	right = mix_cvt[right];
 
-	/* Scale it again */
-	left = mix_cvt[left];
-	right = mix_cvt[right];
-
 	if (devc->mix_devices[dev][LEFT_CHN].nbits == 0)
 		return -EINVAL;
 
@@ -1205,15 +1201,17 @@
 
 	{
 		int             tmout;
-
-		disable_dma(audio_devs[dev]->dmap_in->dma);
+		
+		if(!isa_dma_bridge_buggy)
+		        disable_dma(audio_devs[dev]->dmap_in->dma);
 
 		for (tmout = 0; tmout < 100000; tmout++)
 			if (ad_read(devc, 11) & 0x10)
 				break;
 		ad_write(devc, 9, ad_read(devc, 9) & ~0x02);	/* Stop capture */
 
-		enable_dma(audio_devs[dev]->dmap_in->dma);
+		if(!isa_dma_bridge_buggy)
+		        enable_dma(audio_devs[dev]->dmap_in->dma);
 		devc->audio_mode &= ~PCM_ENABLE_INPUT;
 	}
 
@@ -1240,14 +1238,17 @@
 	{
 		int             tmout;
 
-		disable_dma(audio_devs[dev]->dmap_out->dma);
+		if(!isa_dma_bridge_buggy)
+		        disable_dma(audio_devs[dev]->dmap_out->dma);
 
 		for (tmout = 0; tmout < 100000; tmout++)
 			if (ad_read(devc, 11) & 0x10)
 				break;
 		ad_write(devc, 9, ad_read(devc, 9) & ~0x01);	/* Stop playback */
 
-		enable_dma(audio_devs[dev]->dmap_out->dma);
+		if(!isa_dma_bridge_buggy)
+		       enable_dma(audio_devs[dev]->dmap_out->dma);
+
 		devc->audio_mode &= ~PCM_ENABLE_OUTPUT;
 	}
 

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