[alsa-devel] Does amixer has to be used to make a complete path in ASoC?

Mark Brown broonie at opensource.wolfsonmicro.com
Mon May 23 03:01:18 CEST 2011

On Sun, May 22, 2011 at 05:41:14PM -0700, Feng Ye wrote:

Please fix your mail client to word wrap within paragraphs.  I've
reflowed your mail for legibility.

> I think the problem may not be in the driver, instead, amixer should
> be used to select the codec mixer settings to build a complete audio
> path (like the LEFT MIXER in wm8750).

Yes, exactly.

> I have following questions:

> 1.       Is my understanding correct? amixer has to be used before aplay?


> 2.       Is there way to do it in the code instead of using amixer?


> 3.       If amixer has to be used, where I can find sample wm8750
> amixer setting usage for a simple playback from I2S in to Lout1 &
> Rout1 out?

In general you need to look at the DAPM map in the driver and figure out
how to connect whatever your audio source is to an output - most of the
control will be in the CODEC.  Look at the DAPM routes between the
widgets and figure out what to connect - the driver source will have a
routing table like your driver has in the form:

	{ destination, control, source }

so if control is not NULL the control with the specified name needs to
be enabled.  The debugfs files for the DAPM widgets (look under asoc/ in
debugfs) can help here.

More information about the Alsa-devel mailing list