summaryrefslogtreecommitdiffstats
path: root/sound/usb/card.h
diff options
context:
space:
mode:
authorShuah Khan <shuahkh@osg.samsung.com>2016-03-02 13:50:31 -0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2016-03-03 15:01:13 -0300
commitaebb2b89bff0fdeb4e7ddd73dcbccde1a0f27554 (patch)
treeaad7f1862beb01250032ac02d46d1dac11ccaa18 /sound/usb/card.h
parent6ede20f9683c55dac8281b63d80b5cc669640252 (diff)
downloadlinux-aebb2b89bff0fdeb4e7ddd73dcbccde1a0f27554.tar.gz
linux-aebb2b89bff0fdeb4e7ddd73dcbccde1a0f27554.tar.bz2
linux-aebb2b89bff0fdeb4e7ddd73dcbccde1a0f27554.zip
[media] sound/usb: Use Media Controller API to share media resources
Change ALSA driver to use Media Controller API to share media resources with DVB and V4L2 drivers on a AU0828 media device. Media Controller specific initialization is done after sound card is registered. ALSA creates Media interface and entity function graph nodes for Control, Mixer, PCM Playback, and PCM Capture devices. snd_usb_hw_params() will call Media Controller enable source handler interface to request the media resource. If resource request is granted, it will release it from snd_usb_hw_free(). If resource is busy, -EBUSY is returned. Media specific cleanup is done in usb_audio_disconnect(). Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com> Acked-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'sound/usb/card.h')
-rw-r--r--sound/usb/card.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/usb/card.h b/sound/usb/card.h
index 71778ca4b26a..34a0898e2238 100644
--- a/sound/usb/card.h
+++ b/sound/usb/card.h
@@ -105,6 +105,8 @@ struct snd_usb_endpoint {
struct list_head list;
};
+struct media_ctl;
+
struct snd_usb_substream {
struct snd_usb_stream *stream;
struct usb_device *dev;
@@ -156,6 +158,7 @@ struct snd_usb_substream {
} dsd_dop;
bool trigger_tstamp_pending_update; /* trigger timestamp being updated from initial estimate */
+ struct media_ctl *media_ctl;
};
struct snd_usb_stream {