AnsweredAssumed Answered

i.MX6 Dual Connection and Drivers for TLV320AIC3120

Question asked by Dexter Travis on Dec 21, 2016
Latest reply on Dec 23, 2016 by jimmychan

We have a custom board based loosely on the imx6q-sabresd.  We are using the dual with possible upgrade path to the quad.


We are running the fslc-imx kernel version 4.1 and basing our build on the fsl-community-bsp.


I am trying to get linux drivers to recognize and use the tlv320aic3120 codec.  I am able to talk to the codec through i2c. 


I see that a few other codecs have "compatible" listings in device tree and corresponding imx-audio-<codec> drivers in sound/soc/fsl.  


I have looked at the forum for other answers and the closest I can find is How to enable TLV320 on IMX6Q?  However that is a hacked version of the imx-sgtl5000 driver from 2009 which does not have much similarity to the current driver in my 4.1 source.


Must I create this imx-audio-<codec> driver for my codec?


If I must create this new driver what other driver that exists in sound/soc/fsl/ is most closely related to the TLV320AIC31xx? What is my best baseline to copy from?


What other options are available, aside from changing to a supported codec?


Any guidance on how the imx-audio-<codec> driver mechanism works and how my new driver will have to "hook" into the existing system?


Is the asoc driver the correct driver for the sound system in the i.mx6 dual? If not which driver should I be using? It appears the asoc driver is coupled with the imx-audio-<codec> drivers.


Any help and suggestions appreciated.


Thank you,