[RFC 08/13] ASoC: Intel: avs: Declare path and its components

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Mon Mar 21 19:14:19 CET 2022




>>> +struct avs_path {
>>> +    u32 dma_id;
>>
>> that is very surprising...
>>
>> This would seem to limit the concept of an avs path to a single host DMA
>> channel, which somewhat contradicts that there can be multiple pipelines
>> in the same path, or that a path can contain mixers.
>>
>> And even if this is a single dma, what does this represent? the
>> stream_tag? the BE DMA for SSP/DMIC?
>>
>> Please clarify the concepts first, it's frustrating to discover this at
>> patch 8.
> 
> A single path is tied to either FE or BE. So at most to a single, 
> user-visible endpoint if it's FE. If there are more FEs, then we move to 
> NxFE <-> 1xBE scenario. You can have many pipelines forming the path - 
> most of the pipelines do not contain module connected to any gateway 
> (HDA/SSP/DMIC etc.) anyway.

This should have been explained in the cover letter.

Assuming that there's a single Back-End that can handle all possible 
routing cases is a very narrow interpretation of how DPCM is supposed to 
be used, and it adds quite a few opens on routing changes that can't be 
handled with regular triggers. What happens when not all interfaces are 
handled by the DSP 'gateway' is also interesting.


More information about the Alsa-devel mailing list