[alsa-devel] am335x: mcasp in DIT mode
vaibhav.bedia at ti.com
Mon Mar 4 12:25:35 CET 2013
On Mon, Mar 04, 2013 at 15:56:47, Yegor Yefremov wrote:
> I found this passage in 188.8.131.52.2 of the "AM335x ARM® Cortex™-A8
> Microprocessors (MPUs) Technical Reference Manual" Literature Number:
> The DIT transmitter only works in the following configuration:
> • In transmit frame control register (AFSXCTL):
> – Internally-generated transmit frame sync, FSXM = 1.
> – Rising-edge frame sync, FSXP = 0.
> – Bit-width frame sync, FXWID = 0.
> – 384-slot TDM, XMOD = 1 1000 0000b.
> • In transmit clock control register (ACLKXCTL), ASYNC = 1.
> • In transmit bitstream format register (XFMT), XSSZ = 1111 (32-bit slot size).
> So slot size does matter for DIT mode. On the same page you have frame
> format description. It says that two following rotation settings are
> valid for DIT XROT = 010 and XROT = 000, but the only one working with
> right-aligned data is 0x6 i.e. 24-bit rotation. This value was used in
> the davinci-mcasp.c driver source.
Ok. Since you seem to have a h/w handy, if you have time to spare, could you
please try out a config which sets the slot size to 16 instead of 32 and let
us know whether it works? Depending on the test result we'll know for sure
whether the original code ever worked.
More information about the Alsa-devel