[alsa-devel] [PATCH v2 0/5] topology: Enhance support for private data

Vinod Koul vinod.koul at intel.com
Tue Jul 19 05:59:50 CEST 2016


On Mon, Jul 18, 2016 at 03:06:24PM +0000, Lin, Mengdong wrote:
> 
> > -----Original Message-----
> > From: Takashi Sakamoto [mailto:o-takashi at sakamocchi.jp]
> > Sent: Monday, July 18, 2016 11:43 AM
>  
> > I know all of what you explained. Therefore, You misunderstand about my
> > suggestion.
> > 
> > What I suggested is to drop a support of SNDRV_CTL_ELEM_ACCESS_USER
> > flag from current topology implementation in userspace library, because
> > current implementation of ALSA SoC part doesn't support it.
> > 
> > In ALSA SoC part, snd_ctl_new1() is called to add a control element set as a
> > result of parsing binary blob generated by topology implementation.
> > 
> > In snd_ctl_new1(), SNDRV_CTL_ELEM_ACCESS_USER flag is dropped, in these
> > lines:
> > http://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/tree/sound/core/c
> > ontrol.c#n263
> > 
> > Totally, the flag cannot be supported by current implementation of topology
> > in kernel. Thus, in userspace, we should drop this line to prevent users from
> > confusions:
> > http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/topology/ctl.c;h=b94
> > 8ac021ceecc116bc1087075743243e4b14055;hb=HEAD#l44
> > 
> > That's all what I mentioned. If something unclear, please tell it to me.
> 
> Yes, you're right. snd_ctl_new1() dropped SNDRV_CTL_ELEM_ACCESS_USER flag.
> I'll remove this from the topology user space tool to avoid confusion.

Oh no, that won't be a good idea.

We would like to specify the access for controls from topology. Some
controls can be read only and some write only :)

For example, any VU-meter controls should be read-only. Similarly if we have
some user data being sent to some modules which can do do all fancy audio
detection then these controls should be write-only.

Yes it seems to be broken by this, but we should fix it rather than remove.

-- 
~Vinod


More information about the Alsa-devel mailing list