[alsa-devel] [RFC PATCH] ASoC: wm_adsp: Change ADSPs to be mixer widgets rather the PGAs

Charles Keepax ckeepax at opensource.wolfsonmicro.com
Wed Dec 18 11:53:44 CET 2013

PGAs often control the output from a chip and if the DSP is also marked
as a PGA it may be powered up after the output has been enabled. This
patch changes the ADSP2 cores to be marked as snd_soc_dapm_mixer widgets
so they are powered up before any PGAs.

Signed-off-by: Charles Keepax <ckeepax at opensource.wolfsonmicro.com>


Was also considering if it would be worth adding an
additional snd_soc_dapm_dsp id? That could sit between
mixers and pgas, but I can't really see any obvious issue
with treating the DSP as a mixer and it is a much simpler
change. Although I am open to writing the other change if it
is preferred?


 sound/soc/codecs/wm_adsp.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sound/soc/codecs/wm_adsp.h b/sound/soc/codecs/wm_adsp.h
index d018dea..795a3b2 100644
--- a/sound/soc/codecs/wm_adsp.h
+++ b/sound/soc/codecs/wm_adsp.h
@@ -66,7 +66,7 @@ struct wm_adsp {
 #define WM_ADSP2(wname, num) \
-	SND_SOC_DAPM_PGA_E(wname, SND_SOC_NOPM, num, 0, NULL, 0, \
+	SND_SOC_DAPM_MIXER_E(wname, SND_SOC_NOPM, num, 0, NULL, 0, \
 extern const struct snd_kcontrol_new wm_adsp1_fw_controls[];

More information about the Alsa-devel mailing list