From: Markus Pargmann <mpa@pengutronix.de>
To: Caleb Crome <caleb@crome.org>
Cc: Nicolin Chen <nicoleotsuka@gmail.com>,
Fabio Estevam <fabio.estevam@freescale.com>,
"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"shawn.guo@linaro.org" <shawn.guo@linaro.org>,
"arnaud.mouiche@invoxia.com" <arnaud.mouiche@invoxia.com>
Subject: Re: fsl_ssi.c: Getting channel slips with fsl_ssi.c in TDM (network) mode.
Date: Tue, 27 Oct 2015 08:13:44 +0100 [thread overview]
Message-ID: <20151027071344.GC25728@pengutronix.de> (raw)
In-Reply-To: <CAG5mAdwC00qbu9zMHKjx5JZX_2CobBo81+jtpsWGPHPQ0jKX0A@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 3479 bytes --]
Hi,
On Mon, Oct 26, 2015 at 10:31:08AM -0700, Caleb Crome wrote:
> On Wed, Oct 21, 2015 at 12:37 PM, Caleb Crome <caleb@crome.org> wrote:
> > On Wed, Oct 21, 2015 at 12:32 AM, arnaud.mouiche@invoxia.com
> > <arnaud.mouiche@invoxia.com> wrote:
> >>
> >>
> >> Le 20/10/2015 19:43, Caleb Crome a écrit :
> >>> Hi Arnaud,
> >>> My root filesystem already had that firmware in it (the kernel
> >>> didn't have the kernel patch, but when I applied that patch, the
> >>> generated sdma script was identical.
> >>>
> >>> So, unfortunately, that's not the problem with the channel slipping.
> >>> Any other thoughts on why the channel would slip? Or pointers on how
> >>> to diagnose? I have an oscilloscope & know how to use it :-) Also, I
> >>> can flip a GPIO to watch for timing of interrupts, etc (although I
> >>> haven't done that yet).
> >>>
> >>>
> >>> Thanks,
> >>> -Caleb
> >>
> >>
> >> Hello Caleb,
> >>
> >> In your situation, I would:
> >> - check if TUE0/1 flag never rise (Transmitter Underrun) by activating the
> >> TUE0/1IE bit to generate related interrupts. It looks like already enabled
> >> in 4.0 by collecting statistics with fsl_ssi_dbg_isr(). Despite there is no
> >> printk message on underrun, stats can be read from
> >> /sys/kernel/debug/xxxx.ssi/stats.
> >
> > Heh, I checked that and I couldn't get the fsl_ssi_dbg_isr to trigger
> > ever, for any reason. Somehow interrupts seem to be disabled in the
> > SSI driver, and I can't figure out how to enable them. It appears
> > that the only interrupt required is the DMA interrupt, and SSI
> > interrupts are not checked. The /sys/kernel/debug/xxxx.ssi/stats
> > file reads all zeros no matter what, even during playing, and even
> > after the user space detects underruns.
> >
> >>
> >> - I suspect the dma is not fast enough to fill the FIFO. may be you should
> >> dig to check how SDMA priority are configured amongs the differents DMA
> >> channels.
> >> Not something I already look at before. A quick look suggest that
> >> DMA_PRIO_HIGH is _NOT_ configured by the fsl_ssi.c driver (wheras the
> >> imx-ssi.c did)
> >
> >
> > Ah ha! Perhaps that's it. I will check into that. Maybe that's the
> > root cause. Thanks so much.
>
> So, the dma priority doesn't seem to be the issue. It's now set in
> the device tree, and strangely it's set to priority 0 (the highest)
> along with the UARTS. priority 0 is just the highest in the device
> tree -- it gets remapped to priority 3 in the sdma driver. the DT
> exposes only 3 levels of DMA priority, low, medium, and high. I
> created a new level that maps to DMA priroity 7 (the highest in the
> hardware), but still got the problem.
>
> So, still something unknown causing dma to miss samples. must be in
> the dma ISR I would assume. I guess it's time to look into that.
Cc Nicolin, Fabio, Shawn
Perhaps you have an idea about this?
Regards,
Markus
>
> -Caleb
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
next prev parent reply other threads:[~2015-10-27 7:13 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-19 15:55 fsl_ssi.c: Getting channel slips with fsl_ssi.c in TDM (network) mode Caleb Crome
2015-10-20 7:36 ` arnaud.mouiche
2015-10-20 17:43 ` Caleb Crome
2015-10-21 7:32 ` arnaud.mouiche
2015-10-21 19:37 ` Caleb Crome
2015-10-26 17:31 ` Caleb Crome
2015-10-27 7:13 ` Markus Pargmann [this message]
2015-10-27 9:41 ` Fabio Estevam
2015-10-27 16:02 ` Caleb Crome
2015-10-27 16:10 ` Fabio Estevam
2015-10-27 16:42 ` Caleb Crome
2015-10-27 16:45 ` Fabio Estevam
2015-10-27 18:57 ` Fabio Estevam
2015-10-28 8:11 ` Roberto Fichera
2015-10-28 13:59 ` Caleb Crome
2015-10-28 14:05 ` Roberto Fichera
2015-10-28 14:24 ` Caleb Crome
2015-10-28 14:48 ` Roberto Fichera
2015-10-28 22:09 ` Caleb Crome
2015-10-29 8:04 ` Roberto Fichera
2015-10-29 23:04 ` Nicolin Chen
2015-10-30 11:42 ` Roberto Fichera
2015-10-30 17:21 ` Nicolin Chen
2015-10-28 13:53 ` Caleb Crome
2015-10-27 20:11 ` Nicolin Chen
2015-10-28 8:23 ` Roberto Fichera
2015-10-29 23:05 ` Nicolin Chen
2015-10-28 22:06 ` Caleb Crome
2015-10-29 4:53 ` Nicolin Chen
2015-10-29 13:44 ` Caleb Crome
2015-10-29 14:55 ` Caleb Crome
2015-10-29 15:37 ` Roberto Fichera
2015-10-29 15:54 ` Caleb Crome
2015-10-29 16:02 ` Roberto Fichera
2015-10-29 16:19 ` Caleb Crome
2015-10-29 16:34 ` Roberto Fichera
2015-10-29 16:39 ` Caleb Crome
2015-10-29 16:59 ` Roberto Fichera
2015-10-29 18:36 ` Nicolin Chen
2015-10-29 19:08 ` Caleb Crome
2015-10-29 23:22 ` Nicolin Chen
2015-10-29 18:11 ` Nicolin Chen
2015-10-29 17:19 ` Nicolin Chen
2015-10-29 19:06 ` Caleb Crome
2015-10-29 19:28 ` Nicolin Chen
2015-10-29 22:23 ` Caleb Crome
2015-10-29 22:47 ` Nicolin Chen
2015-10-29 23:33 ` Caleb Crome
2015-10-30 1:29 ` Nicolin Chen
2015-10-30 8:29 ` arnaud.mouiche
2015-10-30 8:45 ` arnaud.mouiche
2015-10-30 16:07 ` Nicolin Chen
2015-10-30 15:49 ` Nicolin Chen
2015-10-30 18:10 ` Caleb Crome
2015-10-30 22:04 ` Caleb Crome
2015-10-30 22:35 ` Caleb Crome
2015-10-31 1:32 ` Nicolin Chen
2015-10-31 16:12 ` Caleb Crome
2015-10-31 1:48 ` Nicolin Chen
2015-10-31 16:22 ` Caleb Crome
2015-11-02 17:22 ` Nicolin Chen
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=20151027071344.GC25728@pengutronix.de \
--to=mpa@pengutronix.de \
--cc=alsa-devel@alsa-project.org \
--cc=arnaud.mouiche@invoxia.com \
--cc=caleb@crome.org \
--cc=fabio.estevam@freescale.com \
--cc=nicoleotsuka@gmail.com \
--cc=shawn.guo@linaro.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.