[alsa-devel] ASOC: stream widget created two times

Liam Girdwood liam.r.girdwood at linux.intel.com
Mon Nov 25 19:48:02 CET 2013


On Fri, 2013-11-22 at 15:19 +0100, Arnaud POULIQUEN wrote:
> Hello,
> I 'm newbie on asoc dev. I'm trying to develop a driver based on dynamic
> PCM implementation with backend and frontend. I'm working on 3.10
> 
> I have declared a FE  :
> {
>             .name = "MMDL0",
>             .stream_name = "MM DL0 Frontend",
>             .cpu_dai_name = "mm_dl0",
> 
>             .codec_name = "snd-soc-dummy",
>             .codec_dai_name = "snd-soc-dummy-dai",
> 
>             .dynamic=1,
>             .trigger = {SND_SOC_DPCM_TRIGGER_POST, SND_SOC_DPCM_TRIGGER_POST},
>             .ignore_pmdown_time = 1, /* Power down without delay */
>             .init = sti_dummy_init,
> },
> 
> CPU DAI associated:
> static struct snd_soc_dai_driver sti_frontend_cpu_dais[] = {
>             {
>                         .name = "mm_dl0",
>                         .playback = {
>                                     .stream_name = "MM_DL0",
>                                     .channels_min = 1,
>                                     .channels_max = 8,
>                                     .rates = SNDRV_PCM_RATE_48000,
>                                     .formats = SNDRV_PCM_FMTBIT_S16_LE
>                         },
>                         .probe = sti_frontend_dai_probe,
>                         .probe_order = SND_SOC_COMP_ORDER_FIRST,
>             },
> }
> Platform is declared using platform_of_node using DTS.
> I have also declared a BE and the route that links the FE cpu dai widget with
> the BE codec dai widget.
> 
> My concern is that MM_DL0 widget is created 2 times. One time in soc_probe_link_dais
> and one time in soc_probe_platform.

This bug has been fixed in later kernel. Can you cherry pick commit
ae10e7e8f1c9d021c8daca750d743cc3baa12e6d from 3.12.

Thanks

Liam



More information about the Alsa-devel mailing list