[ALSA] es1938 - improve capture hw pointer reads
authorHermann Lauer <Hermann.Lauer@iwr.uni-heidelberg.de>
Wed, 30 Jan 2008 07:25:13 +0000 (08:25 +0100)
committerMercurial server <hg@alsa0.alsa-project.org>
Thu, 31 Jan 2008 16:30:23 +0000 (17:30 +0100)
commit19e2e3c30485ba78a653dc521ed9e1f2b6a8bee1
treecd68c33c408bddc8c9f5a6cc44ec2eaf0d5c019c
parent4979bca9dcfe4c21c26f378ce446c912fc583ac1
[ALSA] es1938 - improve capture hw pointer reads

With the Solo1 (es1938) I got a lot of xrun's during capture on my machine.
Tracing that down it seems to be comming from reading ocassionaly bad hw
pointers from the chip.  This patch uses more checking to avoid that false
pointer reads.
Failed reads are giving back the last good value read instead of spinning in
a tight loop, which seems more appropriate to me in an interrupt. I think I
saw this trick used in another driver

Signed-off-by: Hermann Lauer <Hermann.Lauer@iwr.uni-heidelberg.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
sound/pci/es1938.c