[alsa-devel] [PATCH 2/2] ASoC: tlv320aic3x: Fix Left/Rigth PGA mixer widgets/kcontrols

Lars-Peter Clausen lars at metafoo.de
Tue May 27 13:18:33 CEST 2014

On 05/27/2014 12:53 PM, Peter Ujfalusi wrote:
> Commit "cf7c1de20c576 ASoC: dapm: Move 'value' field from widget to
> control" changed the way how the 'value' has been stored for a widget.
> Since the driver is not updated following the mentioned commit it is mostly
> broken when we try to change mixers for Left/Right PGA since the value is
> not going to be updated correctly.

I don't think the mentioned commit is the cause. The driver didn't set 
widget->value either, so there is no change in behavior here. The commit 
only changed where the value is stored not how it is handled.

This driver uses a custom put handler and the generic get handler. 
dapm_kcontrol_get_value() is used in the generic get handler, but only if 
reg equal to SND_SOC_NOPM. Which is not the case for this driver. And that's 
the only place where the value stored for the kcontrol is used. I don't see 
how calling dapm_kcontrol_set_value() or not calling 
dapm_kcontrol_set_value() changes anything.

I might be missing something, but I think the issue is somewhere else.

- Lars

More information about the Alsa-devel mailing list