More Generic Audio Graph Sound Card idea

Sameer Pujar spujar at nvidia.com
Tue Aug 25 05:11:03 CEST 2020


Hi Morimoto-san,

CC Jon, Sharad

On 8/25/2020 6:29 AM, Kuninori Morimoto wrote:
> External email: Use caution opening links or attachments
>
>
> Hi Sameer
>
>> The series [0] introduces small deltas to resolve issues I am
>> facing. As you see, most of the implementation is unchanged for the
>> graph-card driver. Hence I am not sure if we need a new driver now.
> Yes, maybe it is not needed *for now*, but will be issue in the future,
> because I can't have normal-link and DPCM-link in the same time, right ?

Yes I am forcing usage of DPCM for all links. May be the compatible 
"-cc-" should reflect this. The reason for doing so is, wanted to use 
DPCM interface with the component model as previously discussed with 
Mark in [1]. The existing detection mechanism did not work because, in 
my case, the HW links are one-to-one and the DT is described that way in 
[0].

>
>> at all it gets complicated in future, the "-cc-" compatible can be
>> moved to new driver? Please note that the new "-cc-" compatibility is
>> added to address following and some of these are discussed in [1].
>> - DPCM usage with component model (where there can be N number of
>> components available and M (<= N) of them can be connected together to
>> form an audio path). For example the path would be like,
>> FE -> BE_1 -> BE_2 -> ... -> BE_M.
>> - I am extending dpcm_path_get() for this reason and DAI ops get
>> called for all connected components.
>>
>> [0] https://lkml.org/lkml/2020/8/5/42
>> [1] https://lkml.org/lkml/2020/4/30/519
> The difference between "-cc" and "card2" is DPCM link detection.
> "-cc-"  will assume all are DPCM link,
> "card2" will detect both normal-link and DPCM-link via DT.
>
> But, I guess new driver 1st version is focus to
> detecting normal-link and DPCM-link only.

Do you plan to propose something like enum for card2 and has scope for 
extension, where link type can be normal/DPCM/codec-to-codec/etc., ?
Since there are so many board variants and may have some specific 
requirements, I am wondering being able to detect link type from DT 
should be the only motivation for a new driver.

>
> This means it is not enough for your case,
> because I can't full reproduce your board/situation.
> Maybe you need some extra patch on "card2"
> which "-cc-" added to soc-xxx.c

I am afraid that even the new driver won't work as it is for my case 
unless a similar compatible and flag exposed for it. So I am not sure 
how different it would be from [0].


Thanks,
Sameer.


More information about the Alsa-devel mailing list