aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/ac97
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2010-03-24 07:10:54 +0100
committerTakashi Iwai <tiwai@suse.de>2010-03-24 08:02:11 +0100
commit1c583063a5c769fe2ec604752e383972c69e6d9b (patch)
tree566f530439c23f25b448f7e8c6b576bc3f443fdd /sound/pci/ac97
parentsound/oss/vidc.c: change the field used with DMA_ACTIVE (diff)
downloadlinux-dev-1c583063a5c769fe2ec604752e383972c69e6d9b.tar.xz
linux-dev-1c583063a5c769fe2ec604752e383972c69e6d9b.zip
ALSA: cmipci: work around invalid PCM pointer
When the CMI8738 FRAME2 register is read, the chip sometimes (probably when wrapping around) returns an invalid value that would be outside the programmed DMA buffer. This leads to an inconsistent PCM pointer that is likely to result in an underrun. To work around this, read the register multiple times until we get a valid value; the error state seems to be very short-lived. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Reported-and-tested-by: Matija Nalis <mnalis-alsadev@voyager.hr> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/ac97')
0 files changed, 0 insertions, 0 deletions