All of lore.kernel.org
 help / color / mirror / Atom feed
* ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048
@ 2010-09-05 18:28 Patrick Doyle
  2010-09-06  7:16 ` Clemens Ladisch
  0 siblings, 1 reply; 3+ messages in thread
From: Patrick Doyle @ 2010-09-05 18:28 UTC (permalink / raw)
  To: alsa-devel

I'm getting this error when running an OSS application in emulation
mode (on an ADI Blackfin processor to which an SSM2602 codec is
attached, if anybody is interested).  I don't have a pure ALSA
application (yet) than i can try.  Can anybody give me pointers as to
how to try to track the source of this error down?

Thanks.

--wpd

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048
  2010-09-05 18:28 ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048 Patrick Doyle
@ 2010-09-06  7:16 ` Clemens Ladisch
       [not found]   ` <AANLkTi=nJMA_7Y0kjqZgcFy5AwJkbZM_D0rnMdVk3j6v@mail.gmail.com>
  0 siblings, 1 reply; 3+ messages in thread
From: Clemens Ladisch @ 2010-09-06  7:16 UTC (permalink / raw)
  To: Patrick Doyle; +Cc: alsa-devel

Patrick Doyle wrote:
> pos = 32768, buffer size = 32768

This means that the driver's pointer callback returned a position that
is outside the buffer; in this case, the position is just after the end
of the buffer.


Regards,
Clemens

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048
       [not found]   ` <AANLkTi=nJMA_7Y0kjqZgcFy5AwJkbZM_D0rnMdVk3j6v@mail.gmail.com>
@ 2010-09-06 17:35     ` Clemens Ladisch
  0 siblings, 0 replies; 3+ messages in thread
From: Clemens Ladisch @ 2010-09-06 17:35 UTC (permalink / raw)
  To: Patrick Doyle; +Cc: alsa-devel

Patrick Doyle wrote:
> On Mon, Sep 6, 2010 at 3:16 AM, Clemens Ladisch <clemens@ladisch.de> wrote:
> > Patrick Doyle wrote:
> > > pos = 32768, buffer size = 32768
> >
> > This means that the driver's pointer callback returned a position that
> > is outside the buffer; in this case, the position is just after the end
> > of the buffer.
> 
> OK, so I should go trace down how and when the driver invokes that
> callback.

That callback is invoked by the ALSA framework.
The callback itself is buggy.

> Hmmm... any tips on where I might start that journey, given that this
> driver is an SoC driver?

bf5xx_pcm_pointer() in soc/blackfin/bf5xx-i2s-pcm.c calls
sport_curr_offset_tx() in soc/blackfin/bf5xx-sport.c, which just calls
get_dma_curr_addr().

I'd guess that the end of the buffer is considered a valid address by
the Blackfin's DMA unit, so the driver has to check for that and wrap
it around to zero.


Regards,
Clemens

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-09-06 17:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-05 18:28 ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048 Patrick Doyle
2010-09-06  7:16 ` Clemens Ladisch
     [not found]   ` <AANLkTi=nJMA_7Y0kjqZgcFy5AwJkbZM_D0rnMdVk3j6v@mail.gmail.com>
2010-09-06 17:35     ` Clemens Ladisch

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.