[meta-freescale] i.MX6 ASRC problem
Alexander Smirnov
alex.bluesman.smirnov at gmail.com
Mon Jun 10 23:13:25 PDT 2013
Dear all,
last 3 weeks I spent in attempts to get ASRC working for my codec but
all of them seem to be failed. So, at the moment I'm still stuck with
ASRC due to several black spots in RM and source code.
My environment:
===============
1. I use kernel from the following package L3.0.35_4.0.0_130424_source
2. I have a custom board with a custom DAC codec
3. Codec is connected to CPU over SSI2
My base support package works good, so I can play audio over codec by
using 'aplay' at fixed sample rates:
$ aplay -D "hw:0,0" foo.wav
What I've done:
===============
1. I've implemented ASRC support for CS4344 according to the CS42888
reference code. But in some configurations I got I/O error (ASRC doesn't
start and aborts by timeout), in other - empty stream
2. I've posted a question to Freescale's community, but after 2 weeks
there is still no reply. The link is:
https://community.freescale.com/message/332039#332039
Questions:
==========
1. ASRC requires 2 physical clocks: input and output. According to the
Reference Manual (RM), ASRC fetches data from each enabled FIFO and
processes the data sample-by-sample after each rising edge of input
clock (chapter 15.1.2.1.1, page 639 of RM). But, there is no information
about output clock usage, only mentioned that it should be physically
available. The ratio Fs_in/Fs_out is provided as integers.
So what's the meaning of input/output physical clocks, sample clocks?
Which physical clocks are required to get ASRC working?
2. Why SSI3_RX clock is called INCLK_NONE in Linux? What does it mean?
3. I use SSI2 bus for my DAC. Which clocks should I use to get mxc_asrc
driver work properly?
4. Does the current ASRC driver work? I found some old linux-2.6-imx
kernel, which has support for i.MX5 family only. I noticed, that all
codecs (3-stack) in 'sound/soc/imx/' have ASRC support. But in current
kernel only cs42888 has ASRC support...
5. Is there some more detailed ASRC specification?
6. Does ALSA utils require some extra ASRC support? I've tried ASRC by
the following command:
$ aplay -D "hw:0,1" foo.wav
I will highly appreciate any hints on this topic, thanks in advance!
BTW: I have several several fixes for ASRC driver, but they are mostly
cosmetic. I'm going to send them after I'll be sure that the driver works.
With best regards,
Alex
More information about the meta-freescale
mailing list