[alsa-devel] synchronized block of register writes

Mark Brown broonie at opensource.wolfsonmicro.com
Thu Apr 7 00:48:53 CEST 2011

On Wed, Apr 06, 2011 at 03:28:10PM -0700, Peter Hsiang wrote:

> Hi Mark and Everyone,

Fix your mailer to word wrap at 80 columns, I've reflowed your text.

> When a codec driver control handling function needs to write a group
> of registers without any other register of the same codec being
> written to in parallel by ALSA, what is the best way to do this under
> the snd-soc codec driver architecture?  In the current architecture,
> does the driver's control handling function execute serially with
> other ALSA automated activities?

The framework should be taking care of locking for you in most
situations.  If you implement custom controls you will want to take the
CODEC mutex while applying changes from them (most of the existing
drivers are lax about this) and similarly for IRQs.

More information about the Alsa-devel mailing list