[alsa-devel] ASoC: wm9712: Microphone doesn't work: Mux handling broken?

Christoph Fritz chf.fritz at googlemail.com
Tue May 15 11:15:41 CEST 2012


On Sun, May 13, 2012 at 05:56:53AM +0200, Christoph Fritz wrote:
> On Sat, May 12, 2012 at 12:51:31PM +0100, Mark Brown wrote:
> > On Sat, May 12, 2012 at 02:15:56AM +0200, Christoph Fritz wrote:
> > 
> > > They refuse to change their Item0 because they are defined as
> > > SND_SOC_DAPM_MUX without a correlating path->name so that
> > > snd_soc_dapm_mux_update_power() (in sound/soc/soc-dapmc) doesn't
> > > change anything.
> > 
> > A route into a mux without a path name (other than a supply) just isn't
> > meaningful and I'm surprised it ever worked.
> > 
> > > It works in 2.6.33, but current kernel has different mux handling and
> > > it seems that no one since cared that much about microphone support.
> > 
> > It's nothing to do with microphones really, it's more that AC'97 CODECs
> > are rarely used with modern kernels as the boards that use AC'97 are
> > mostly quite old and suffer performance issues with modern software
> > stacks so newer kernels haven't been getting much testing with them.
> > 
> > > Mark, can you confirm this, purpose a fix or even come up with
> > > a patch?
> > 
> > Just filling in the appropriate mux value in the relevant route should
> > do the trick.

Do you mean filling in to wm9712_audio_map or wm9712_enum?

> > Looking at the code it looks like the widget isn't hooked
> > into the audio routing map at all so I'm a little surprised.

Does that mean that wm9712_dapm_widgets should be referred by a
struct snd_kcontrol_new ?

> >I'm out of
> > the office at the minute and so can't readily set up a test system
> > myself.

I'm not that into alsa and would greatly appreciate if you could have
a look with your test system.

Thanks,
 -- Christoph



More information about the Alsa-devel mailing list