From 4cddf19dfcf65e6fb1277a3230fd0fe509ec7e81 Mon Sep 17 00:00:00 2001 From: David Wagner Date: Wed, 2 Apr 2014 15:12:54 +0200 Subject: tinyalsa: add pcm_get_subdevice() The users of tinyalsa had no way of knowing on which subdevice a stream had been created. A new API, "unsigned int pcm_get_subdevice(struct *pcm)" returns it. This information is filled during the pcm_open() Change-Id: Ie866e10e06ce6691ede09e2ca46a24441723ea8b Signed-off-by: David Wagner Signed-off-by: Vinod Koul --- pcm.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'pcm.c') diff --git a/pcm.c b/pcm.c index 90c9dad..d58d6a3 100644 --- a/pcm.c +++ b/pcm.c @@ -171,6 +171,7 @@ struct pcm { void *mmap_buffer; unsigned int noirq_frames_per_msec; long pcm_delay; + unsigned int subdevice; }; unsigned int pcm_get_buffer_size(struct pcm *pcm) @@ -183,6 +184,11 @@ const char* pcm_get_error(struct pcm *pcm) return pcm->error; } +unsigned int pcm_get_subdevice(struct pcm *pcm) +{ + return pcm->subdevice; +} + static int oops(struct pcm *pcm, int e, const char *fmt, ...) { va_list ap; @@ -654,6 +660,7 @@ struct pcm *pcm_open(unsigned int card, unsigned int device, oops(pcm, errno, "cannot get info"); goto fail_close; } + pcm->subdevice = info.subdevice; param_init(¶ms); param_set_mask(¶ms, SNDRV_PCM_HW_PARAM_FORMAT, -- cgit v1.2.3