aboutsummaryrefslogtreecommitdiff
path: root/sound/firewire/bebob/bebob.c
diff options
context:
space:
mode:
authorTakashi Sakamoto2014-04-25 22:45:20 +0900
committerTakashi Iwai2014-05-26 14:31:03 +0200
commit618eabeae711c56d376daa147c6a684116d68705 (patch)
tree5c3aae69f57c84a57437645d40bcd7c0f1b18e67 /sound/firewire/bebob/bebob.c
parentfbbebd2c40795e87f1280ca4d963f7cbe1c83168 (diff)
ALSA: bebob: Add hwdep interface
This interface is designed for mixer/control application. By using hwdep interface, the application can get information about firewire node, can lock/unlock kernel streaming and can get notification at starting/stopping kernel streaming. Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/firewire/bebob/bebob.c')
-rw-r--r--sound/firewire/bebob/bebob.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/firewire/bebob/bebob.c b/sound/firewire/bebob/bebob.c
index dbd12c360046..b7d70c2e4e87 100644
--- a/sound/firewire/bebob/bebob.c
+++ b/sound/firewire/bebob/bebob.c
@@ -153,6 +153,7 @@ bebob_probe(struct fw_unit *unit,
bebob->unit = unit;
mutex_init(&bebob->mutex);
spin_lock_init(&bebob->lock);
+ init_waitqueue_head(&bebob->hwdep_wait);
err = name_device(bebob, entry->vendor_id);
if (err < 0)
@@ -175,6 +176,10 @@ bebob_probe(struct fw_unit *unit,
if (err < 0)
goto error;
+ err = snd_bebob_create_hwdep_device(bebob);
+ if (err < 0)
+ goto error;
+
err = snd_bebob_stream_init_duplex(bebob);
if (err < 0)
goto error;