Re: [PATCH v1 1/1] ASoC: rsnd: ssi: Fix issue in dma data address assignment

From: Kuninori Morimoto
Date: Thu Dec 21 2017 - 19:44:01 EST

Hi Jiada

Thank you for your feedback
I understand your situation

> We have enabled TDM Split and Ex-Split mode in our kernel,
> and SSI(U)'s dma address diffs based on the BUSIF it is using,
> so have a single dma data struct per rsnd_ssi will cause issue when
> SSI isn't working with BUSIF0.

First of all, "TDM (Ex) Split mode" is not yet supported.
And unfortunately, your patch is not enough for it.
I guess you enabled it with many local patches,
and posted one of them ?

It is very advanced feature, we need to consider about
channel/sampling rate/data width/settings/address etc etc etc...
Lots of things we need to solve/care !
DMA pointer is one of them.

If we focus only to DMA, your patch is still wrong I think.
"Playback/Capture direction" is not related to this topic.
1 DMA on 1 DAI is enough ?
And we need to update rsnd_gen2_dma_addr() too for DMA address.

> Do you have any suggestion to address this issue?

I have no idea at this point.
Missing part for TDM (Ex) Split mode is not only DMA pointer.

Why do you want to use it ?
If you want to do is only "use 2 DAIs for playback",
how about to use MIXer ? It is already supported on upstream.

Best regards
Kuninori Morimoto