[ALSA] hda_intel: fix unexpected ring buffer positions
authorJaroslav Kysela <perex@perex.cz>
Fri, 10 Apr 2009 10:20:45 +0000 (12:20 +0200)
committerJaroslav Kysela <perex@perex.cz>
Fri, 10 Apr 2009 10:20:45 +0000 (12:20 +0200)
I found two issues with ICH7-M (it should be related to other HDA chipsets
as well):

- the ring buffer position is not reset when stream restarts (after xrun) -
  solved by moving azx_stream_reset() call from open() to prepare() callback
  and reset posbuf to zero (it might be filled with hw later than position()
  callback is called)
- irq_ignore flag should be set also when ring buffer memory area is not
  changed in prepare() callback - this patch replaces irq_ignore with
  more universal check based on jiffies clock

Signed-off-by: Jaroslav Kysela <perex@perex.cz>

No differences found