On 10/9/19 2:57 AM, Kuninori Morimoto wrote:
Hi ALSA ML
In my understanding, DPCM needs FE and BE. And, one FE can have multiple BE, and one BE can have multiple FE.
My question this time is that one snd_soc_pcm_runtime can be both FE and BE in the same time (= Sometimes FE, sometimes BE) ??
In my understanding, it never happen. But, is this correct ?
It is my understanding that the current code would not support a case where a FE is also a BE.
That said, do we want to preclude it? at some point we probably want to get rid of the FE/BE distinction and have 'domains' that can be chained. So it may not be a good thing to cast a restriction in stone. If at some point we need a list of upstream/downstream clients maybe we should keep this.
I'm asking because do we need .be_clients/.fe_clients ? If one pcm_runtime can't be FE / BE in the same time, just .clients is enough I think.
static int dpcm_be_connect(...) { ...
list_add(&dpcm->list_be, &fe->dpcm[stream].be_clients);
list_add(&dpcm->list_fe, &be->dpcm[stream].fe_clients);
list_add(&dpcm->list_be, &fe->dpcm[stream].clients);
... }list_add(&dpcm->list_fe, &be->dpcm[stream].clients);
Thank you for your help !! Best regards
Kuninori Morimoto _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org https://mailman.alsa-project.org/mailman/listinfo/alsa-devel