Re: [PATCH 1/2] ASoC: q6afe-dai: add dummy register read function

From: Srinivas Kandagatla
Date: Tue Aug 11 2020 - 07:16:53 EST




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