[alsa-devel] iMX6 ESAI TDM with underrun and overrun support

Aurelien Bouin a_bouin at yahoo.fr
Wed Dec 17 16:13:43 CET 2014


Hello,
I am currently working on an iMX6 board, I work with the master branch of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
I have seen some problems in the freescale ESAI implementation :

1.The registers TCCR and RCCR have TFP and RFP bits in register of a width of 5, not 4 !
With a value of 5 we are able to use the full range of slots (32)
Patch : http://pastebin.com/Ai1RZ9mE
2.The channels number are limited in Playback to 12, but actually we can rise 128, in Capture it is limited to 8 but actually we can rise 128 also

Patch : http://pastebin.com/SHk5eHPa

I use the iMX6 ESAI bus to send audio datas to other processors ... but actually I don't have any codec behind ...
I am wondering if there is any solution with the devicetree to implement such configuration with "simple-audio-card"

Because for the moment I have not find another solution than doing a module : http://pastebin.com/cnGwnEjn

I also see that the chip errata of the iMX6 ERR008000 is not handle ...Which make channel swapping on my ESAI bus ...
Is there someone that succeed in implementing the underrun overrun catch ?

Thank you for your return,

Regards
Aurelien BOUIN


More information about the Alsa-devel mailing list