Re: [PATCH] ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK

From: Adam Ford
Date: Tue Oct 11 2022 - 13:45:30 EST


On Mon, Oct 10, 2022 at 9:57 AM Charles Keepax
<ckeepax@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
> On Mon, Oct 10, 2022 at 05:20:14PM +0800, Xiaolei Wang wrote:
> > In wm8962 driver, the WM8962_ADDITIONAL_CONTROL_4 is used as a volatile
> > register, but this register mixes a bunch of volatile status bits and a
> > bunch of non-volatile control bits. The dapm widgets TEMP_HP and
> > TEMP_SPK leverages the control bits in this register. After the wm8962
> > probe, the regmap will bet set to cache only mode, then a read error
> > like below would be triggered when trying to read the initial power
> > state of the dapm widgets TEMP_HP and TEMP_SPK.
> > wm8962 0-001a: ASoC: error at soc_component_read_no_lock
> > on wm8962.0-001a: -16

Thanks for this. I saw this same error, but the audio that I use
didn't appear impacted, so I just ignored it.

> >
> > In order to fix this issue, we add event handler to actually power
> > up/down these widgets. With this change, we also need to explicitly
> > power off these widgets in the wm8962 probe since they are enabled
> > by default.
> >
> > Signed-off-by: Xiaolei Wang <xiaolei.wang@xxxxxxxxxxxxx>
> > ---
>
> Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>

Tested-by: Adam Ford <aford173@xxxxxxxxx>
>
> Thanks,
> Charles