--- alsa-driver-0.9.2/alsa-kernel/pci/ali5451/ali5451.c	Tue Feb 25 14:35:43 2003
+++ alsa-driver-0.9.2-mod/alsa-kernel/pci/ali5451/ali5451.c	Tue Mar 25 00:26:53 2003
@@ -376,16 +376,19 @@
 				int sched )
 {
 	signed long end_time;
+	unsigned long res;
 	
 	end_time = jiffies + 10 * (HZ >> 2);
 	do {
-		if (!(snd_ali_5451_peek(codec,port) & 0x8000))
+		res = snd_ali_5451_peek(codec,port);
+		if (!(res & 0x8000))
 			return 0;
 		if (sched) {
 			set_current_state(TASK_UNINTERRUPTIBLE);
 			schedule_timeout(1);
 		}
 	} while (end_time - (signed long)jiffies >= 0);
+	snd_ali_5451_poke(codec,port, res & 0x7fff);
 	snd_printk("ali_codec_ready: codec is not ready.\n ");
 	return -EIO;
 }
@@ -408,6 +411,9 @@
 			schedule_timeout(1);
 		}
 	} while (end_time - (signed long)jiffies >= 0);
+	
+	
+	
 	snd_printk("ali_stimer_read: stimer is not ready.\n");
 	return -EIO;
 }
