On 11/08/2020 12:04, Stephan Gerhold wrote:
On Tue, Aug 11, 2020 at 11:25:51AM +0100, Srinivas Kandagatla wrote:
Most of the DAPM widgets for DSP ASoC components reuse reg field
of the widgets for its internal calculations, however these are not
real registers. So read/writes to these numbers are not really
valid. However ASoC core will read these registers to get default
state during startup.
Actually q6afe-dai does not seem to make use of the register number.
The DAPM widgets all look like
SND_SOC_DAPM_AIF_IN("HDMI_RX", NULL, 0, 0, 0, 0),
/* (wname, stname, wchan, wreg, wshift, winvert)
Wouldn't it be better to replace wreg = 0 with SND_SOC_NOPM in this case
so the read/write won't happen at all?
That should work, let me try that!
--srini
q6routing on the other hand does make use of wreg, so this would not
work there...
Also: If I remember correctly the ASoC core will also attempt to write
to these "registers" when starting to play some audio, so you might also
need to implement component->write().
Stephan