summaryrefslogtreecommitdiff
path: root/sound/pci/ice1712
diff options
context:
space:
mode:
authorDavid Henningsson <launchpad.web@epost.diwic.se>2009-10-11 11:37:22 +0200
committerTakashi Iwai <tiwai@suse.de>2009-10-11 18:07:21 +0200
commitbd3c200e6d5495343c91db66d2acf1853b57a141 (patch)
tree7b9da68657c80e89375b255cd8a9e84ff1825fff /sound/pci/ice1712
parent43189a38dada053b820fafc47de8ba665dd3a618 (diff)
downloadlinux-bd3c200e6d5495343c91db66d2acf1853b57a141.tar.gz
linux-bd3c200e6d5495343c91db66d2acf1853b57a141.tar.xz
ALSA: ice1724 - Make call to set hw params succeed on ESI Juli@
If two streams are started immediately after one another (such as a playback and a recording stream), the call to set hw params fails with EBUSY. This patch makes the call succeed, so playback and recording will work properly. Signed-off-by: David Henningsson <launchpad.web@epost.diwic.se> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/ice1712')
-rw-r--r--sound/pci/ice1712/ice1724.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/pci/ice1712/ice1724.c b/sound/pci/ice1712/ice1724.c
index 76b717dae4b6..10fc92c05574 100644
--- a/sound/pci/ice1712/ice1724.c
+++ b/sound/pci/ice1712/ice1724.c
@@ -648,7 +648,7 @@ static int snd_vt1724_set_pro_rate(struct snd_ice1712 *ice, unsigned int rate,
(inb(ICEMT1724(ice, DMA_PAUSE)) & DMA_PAUSES)) {
/* running? we cannot change the rate now... */
spin_unlock_irqrestore(&ice->reg_lock, flags);
- return -EBUSY;
+ return ((rate == ice->cur_rate) && !force) ? 0 : -EBUSY;
}
if (!force && is_pro_rate_locked(ice)) {
spin_unlock_irqrestore(&ice->reg_lock, flags);