[alsa-devel] Multiple codecs on one sound card for multi-channel sound card

Caleb Crome caleb at crome.org
Thu Sep 17 17:34:32 CEST 2015


On Thu, Sep 17, 2015 at 7:33 AM, arnaud.mouiche at invoxia.com
<arnaud.mouiche at invoxia.com> wrote:
> hello,
>
> Le 17/09/2015 15:38, Caleb Crome a écrit :
>>
>> On Thu, Sep 17, 2015 at 1:51 AM, arnaud.mouiche at invoxia.com
>> <arnaud.mouiche at invoxia.com> wrote:
>>>
>>> Hello Caleb,
>>>
>>> freescale SSI is fine with more than 2 channels.
>>> I have planed to publish a set of patch in this direction but we still
>>> have
>>> some corner cases to fix first (rare issues with channels alignment)
>>>
>> I'd love to see anything you're willing to show :-)
>>
>>> Yet, this following is far enough to have it working.
>>> And since the max/min rate is at the end the intersection of what the
>>> SSI,
>>> the codec and the card are declaring, it will not change anything until
>>> you
>>> connect the SSI to a codec with more than 2 channels, or a multi-codec
>>> solution.
>>
>> What if I change channels_max to 16 for capture and playback?  Last
>> time I tried, it would not keep the channels synchronized on the TDM
>> bus.  I tried playing with the FIFO settings, which helped, but it
>> still would not start each channel in the right slot reliably.
>> Perhaps I was using an older kernel.
>
> you put the finger on what's hurting !  ;)
>
> In fact, we made 8 channels working in reliable way on imx50, with
> predictive latency  ... with an old kernel (3.17) ... based on freescale
> BSP... on sound/soc/imx/imx-ssi.c (something that doesn't exist outside
> freescale BSP)
>
> Well, just to say it is doable on any recent imx since the hardware is not
> the issue. But the job was a set of awful hacks.

Sorry, I don't quite understand.  Are you saying that on a recent
kernel (say 4.1 or 4.2), you think it will just work.  Or are yo
saying that even on a modern kernel it's a set of awful hacks?  And
should I use fsl_ssi.c or imx-ssi.c (device tree/non device tree)
version?

In short, what's your best current recommendation to get it working today?

>
> My plan was to re-do all this job on an upstream kernel, in a way it can be
> accepted.
> Unfortunately you will have to wait, I'm under pressure for other stuff
> right now.

Heh, understood.  If there's anything I can do to help, let me know.

Thanks,
-Caleb

> Regards,
> arnaud
>
>
>>
>> I'll give it a try again.  Like I said, we'd love to get our
>> 16-channel board up and running on the MX6, so I'm definitely
>> motivated to put some work in to get it reliable.
>>
>> Thanks,
>>   -Caleb
>>
>


More information about the Alsa-devel mailing list