summaryrefslogtreecommitdiffstats
path: root/sound/pci/au88x0/au88x0_pcm.c
diff options
context:
space:
mode:
authorRaymond Yau <superquad.vortex2@gmail.com>2012-01-06 09:19:29 +0800
committerTakashi Iwai <tiwai@suse.de>2012-01-08 14:38:42 +0100
commit3ae4e1f7a0dab95f7e6049272cdb59c7bdc34365 (patch)
treed6766423086eb992162fd6d5bb9fef9a765d29a2 /sound/pci/au88x0/au88x0_pcm.c
parent76474da05ff7b1729b36cd2b6d7aa6b1865d68f1 (diff)
ALSA: Au88x0 - Fix IRQ fifo error and channels swap of 4 channels playback
Fix IRQ fifo error when playing stereo by set stereo flag of fifo control. This also fix the swap of front and rear channels on au8830. Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/au88x0/au88x0_pcm.c')
-rw-r--r--sound/pci/au88x0/au88x0_pcm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/au88x0/au88x0_pcm.c b/sound/pci/au88x0/au88x0_pcm.c
index c5f7ae46afe..509969038ac 100644
--- a/sound/pci/au88x0/au88x0_pcm.c
+++ b/sound/pci/au88x0/au88x0_pcm.c
@@ -307,8 +307,8 @@ static int snd_vortex_pcm_prepare(struct snd_pcm_substream *substream)
fmt = vortex_alsafmt_aspfmt(runtime->format);
spin_lock_irq(&chip->lock);
if (VORTEX_PCM_TYPE(substream->pcm) != VORTEX_PCM_WT) {
- vortex_adbdma_setmode(chip, dma, 1, dir, fmt, 0 /*? */ ,
- 0);
+ vortex_adbdma_setmode(chip, dma, 1, dir, fmt,
+ runtime->channels == 1 ? 0 : 1, 0);
vortex_adbdma_setstartbuffer(chip, dma, 0);
if (VORTEX_PCM_TYPE(substream->pcm) != VORTEX_PCM_SPDIF)
vortex_adb_setsrc(chip, dma, runtime->rate, dir);