[alsa-devel] Feasibility of adding alternative audio transport besides I2S/PWM/SPDIF, etc

Liam Girdwood liam.r.girdwood at linux.intel.com
Fri Oct 9 11:34:56 CEST 2015


On Thu, 2015-10-08 at 08:51 -0700, Caleb Crome wrote:
> Hi All,
>    I'm in a constant struggle to bring up many channel audio on each
> separate SoC.
> 
> I can easily put a microcontroller in place that will collect and
> distrubute all the TDM channels to the codecs, and connect the
> hardware via an SPI interface to the SoC.
> 
> So, instead of:
> 
> CODECS <---TDM--->  SoC
> 
> It would be
> 
> CODECS <---TDM---> uC <---SPI---> SoC
> 
> So, my questions are:
> 
> * I suspect the SPI interface could be used more universally than each
> individual I2S/TDM interface (like FSL SSI vs. Ti McBSP vs. Ti McASP,
> etc).  and the SPI port would provide a very common API regardless of
> SoC.   Is that true?

Some SPI ports could probably be used for audio, but this depends on the
SPI port HW capabilities. e.g. the SSP port on minnowboard can be
configured for TDM, I2S and SPI (afaik). I don't think any advantage
could be gained from running in SPI mode unless your HW permits some
special features ?

> 
> * Is it feasible to integrate an SPI transport into the SoC/alsa
> layer?  What are the difficulties involved with that?
> 

Yes, that's doable providing the SPI port is capable of supporting audio
formats and has good DMA connectivity. A DAI driver would need to be
written for your SPI port to allow it to send audio data within ASoC.

Liam
> 
> Cheers,
>   -Caleb




More information about the Alsa-devel mailing list