summaryrefslogtreecommitdiffstats
path: root/sound/arm/aaci.h
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-01-25 16:52:33 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-01-25 22:20:22 +0100
commitb60fb519d7977e606621af85585c3677fc290ef8 (patch)
treec585e8f2e08717547a7d570ef84fbf2e8a6b874e /sound/arm/aaci.h
parentALSA: AACI: fix timeout duration (diff)
downloadlinux-b60fb519d7977e606621af85585c3677fc290ef8.tar.xz
linux-b60fb519d7977e606621af85585c3677fc290ef8.zip
ALSA: AACI: fix multiple IRQ claiming
Claiming the IRQ each time a playback or capture interface is opened is wasteful; the second copy of the registered handler is identical to the first and just wastes resources. Track the number of opens and only register the handler when necessary. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'sound/arm/aaci.h')
-rw-r--r--sound/arm/aaci.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/arm/aaci.h b/sound/arm/aaci.h
index 6a4a2eebdda1..04c4568413f4 100644
--- a/sound/arm/aaci.h
+++ b/sound/arm/aaci.h
@@ -226,6 +226,8 @@ struct aaci {
struct snd_card *card;
void __iomem *base;
unsigned int fifosize;
+ unsigned int users;
+ struct mutex irq_lock;
/* AC'97 */
struct mutex ac97_sem;