Re: ALSA sound/core/pcm_lib.c:318: BUG: pcmC0D0p:0, pos = 32768, buffer size = 32768 , period size = 2048

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Patrick Doyle wrote:
> On Mon, Sep 6, 2010 at 3:16 AM, Clemens Ladisch <clemens@xxxxxxxxxx> 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
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel


[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux