summaryrefslogtreecommitdiffstats
path: root/sound/usb/power.h
diff options
context:
space:
mode:
authorOliver Neukum <oneukum@suse.de>2011-03-11 14:51:12 +0100
committerTakashi Iwai <tiwai@suse.de>2011-03-11 14:59:29 +0100
commit88a8516a2128a6d078a106ead48092240e8a138f (patch)
treedc839c85a9b2fc2e17759c5a42368cb8300e42bc /sound/usb/power.h
parentALSA: usbaudio: fix suspend/resume (diff)
downloadlinux-88a8516a2128a6d078a106ead48092240e8a138f.tar.xz
linux-88a8516a2128a6d078a106ead48092240e8a138f.zip
ALSA: usbaudio: implement USB autosuspend
Devices are autosuspended if no pcm nor midi channel is open Mixer devices may be opened. This way they are active when in use to play or record sound, but can be suspended while users have a mixer application running. [Small clean-ups using static inline by tiwai] Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/power.h')
-rw-r--r--sound/usb/power.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/sound/usb/power.h b/sound/usb/power.h
new file mode 100644
index 000000000000..48ee51dcb71e
--- /dev/null
+++ b/sound/usb/power.h
@@ -0,0 +1,17 @@
+#ifndef __USBAUDIO_POWER_H
+#define __USBAUDIO_POWER_H
+
+#ifdef CONFIG_PM
+int snd_usb_autoresume(struct snd_usb_audio *chip);
+void snd_usb_autosuspend(struct snd_usb_audio *chip);
+#else
+static inline int snd_usb_autoresume(struct snd_usb_audio *chip)
+{
+ return 0;
+}
+static inline void snd_usb_autosuspend(struct snd_usb_audio *chip)
+{
+}
+#endif
+
+#endif /* __USBAUDIO_POWER_H */