[alsa-devel] [PATCH 3/3] ASoC: omap-mcbsp: Add period size protection mode

Trent Piepho tpiepho at gmail.com
Tue Mar 20 20:47:31 CET 2012


On Tue, Mar 20, 2012 at 3:20 PM, Jarkko Nikula <jarkko.nikula at bitmer.com> wrote:
> On 03/20/2012 06:42 PM, Grazvydas Ignotas wrote:
>> This is what we have in pandora tree now:
>> http://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=commitdiff;h=d494977441ac8f99d094b5e03398cb33a14e832a
>> Seems to work well for everything here.
>>
> To me this looks more like a correct fix. At quick test I got single
> xrun when starting up but not endless loop of them. Maybe need to tune a
> bit with CONFIG_SND_PCM_XRUN_DEBUG=y.

Does the ALSA API allow the driver to change start_threshold in the
prepare function?  It seems what is needed is a minimum
start_threshold constraint, but there aren't constaints for sw_params.

With that fix, you could have an app set start_threshold to 50 ms,
write 51 ms of audio, and expect the stream to start.  But it won't,
because the driver has increased start_threshold.  The app could have
read back start_threshold from the driver, but I doubt any apps do
this, since there is nothing in the documentation about that being
necessary.


More information about the Alsa-devel mailing list