[alsa-devel] Help on writing an ALSA ASoC Driver for WM8985

Mark Brown broonie at opensource.wolfsonmicro.com
Mon May 25 14:54:03 CEST 2009

On Mon, May 25, 2009 at 08:47:31PM +0800, Leung Chi Tat wrote:

> I'm right now studying the driver code for wm8980 codec (from the main
> trunk of linux-2.6-asoc) as it seems to be more close to wm8985.  I
> can't find any code for triggering those volume update bits after
> modified those volume registers.   But, the wm8980 datasheet states
> that we have to do so to make those volume updates properly.  Is there
> some black magic in the code?

The normal approach for volume update bits is to set them when
initialising the CODEC at startup - this is what the wm8990 driver is
doing when it writes to the volume registers in wm8990_init().  This
means that any further register writes which only change the volume
field in the registers will also have the volume update bit set.

More information about the Alsa-devel mailing list