From: Daniel Mack <zonque@gmail.com>
To: kartik natarajan <kartik8n8@gmail.com>
Cc: alsa-devel@alsa-project.org
Subject: Re: Arecord issue
Date: Thu, 11 Oct 2012 16:49:49 +0200 [thread overview]
Message-ID: <5076DC8D.9090300@gmail.com> (raw)
In-Reply-To: <CAAe3XR37zm=JBX+14RKSn28=xKcwnvx=dp9zBBw3u0dtn2w5bw@mail.gmail.com>
Please do not top-post.
On 11.10.2012 16:44, kartik natarajan wrote:
> Thanks!
> At about the same time I check the behaviour on the
> oscilloscope and inferred the same that there is no clock on the bus
> when arecord is executed.
> A little digging further, I see that the codec chip is set to master in
> both cases, aplay and arecord. But somehow it drives the clock in the
> former case and not in the other.
>
> So this problem is not related to either of aplay/ arecord but more of
> the PCM level behaviour, as it is at this level the master for the bus
> is decided.
Please have a look at the latest changes to this driver found here:
https://git.kernel.org/?p=linux/kernel/git/broonie/sound.git;a=shortlog;h=refs/heads/topic/davinci
I changed many of these details to make the driver fit into more
environments. If you find a solution to this problem, please post a
patch that applies on top of this tree.
> I'll get back with any information I get on this.
> Your mail has just made my findings easier. Thanks again.
You're welcome :)
Daniel
> On Thu, Oct 11, 2012 at 6:36 PM, Daniel Mack <zonque@gmail.com
> <mailto:zonque@gmail.com>> wrote:
>
> On 11.10.2012 14:54, kartik natarajan wrote:
> > I am working on a 2.6.37 kernel and on a DM365 davinci board
> with a
> > tlv320aic3254 audio codec (i2c control lines, i2s data transfer)
> > I wanted to get the audio up on my board so got the alsa-lib and
> alsa-utils
> > 1.0.25 compiled them and got the aplay to work fine.
> > When I got to working on the arecord things haven't worked fine. I
> have
> > traced all the calls and have reached so far;
> > codec gets set properly
> > davinci_pcm_trigger executes with success
> > snd_pcm_sw_params() executes successfully.
> > aplay calls begin_wave()
> > aplay calls pcm_read() that invokes snd_pcm_readi()
> > Finally my app seems to not go beyond the snd_pcm_start()
>
> I've been working on a custom AM33xx boards lately which features the
> same digital audio interface than the Davincis do.
>
> I've been running into similar issues when I tested the recording
> channels, and hooking up a logic analyzer showed that the clocks were
> not driven by the CPU. That causes the DMA engine not receive any
> samples (as the frame and bit clocks are missing), which will eventually
> lead to a timeout.
>
> This issue was worked around for now by starting the playback first and
> then the record. Unfortunately though, a simply "arecord | aplay" does
> not suffice, as aplay won't start before it received any samples from
> its input side, so you have a deadlock here.
>
> So I wrote a very simple test tool in order to prove that the overall
> system is working and published it here:
>
> https://github.com/zonque/simple-alsa-loop
>
> For the application of this board I'm working on, there's no case where
> we would record anything but not use the output, so this workaround will
> do for me. If you have other requirements, you might need to dig deeper.
> Note that the driver has seem quite some refactorization in 3.7.
>
>
> Daniel
>
>
>
>
> --
> Believe in your dreams, they have a strange way of coming true!!!
prev parent reply other threads:[~2012-10-11 14:49 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-11 12:54 Arecord issue kartik natarajan
2012-10-11 13:06 ` Daniel Mack
2012-10-11 14:44 ` kartik natarajan
2012-10-11 14:49 ` Daniel Mack [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5076DC8D.9090300@gmail.com \
--to=zonque@gmail.com \
--cc=alsa-devel@alsa-project.org \
--cc=kartik8n8@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).