[alsa-devel] [PATCH] ASoC: wm8962: Update register CLASS_D_CONTROL_1 to be non-volatile
Shawn Guo
shawn.guo at linaro.org
Tue May 13 16:29:31 CEST 2014
On Tue, May 13, 2014 at 01:45:15PM +0100, Charles Keepax wrote:
> The register CLASS_D_CONTROL_1 is marked as volatile because it contains
> a bit, DAC_MUTE, which is also mirrored in the ADC_DAC_CONTROL_1
> register. This causes problems for the "Speaker Switch" control, which
> will report an error if the CODEC is suspended because it relies on a
> volatile register.
>
> To resolve this issue mark CLASS_D_CONTROL_1 as non-volatile and
> manually keep the register cache in sync by updating both bits when
> changing the mute status.
>
> Reported-by: Shawn Guo <shawn.guo at linaro.org>
> Signed-off-by: Charles Keepax <ckeepax at opensource.wolfsonmicro.com>
> ---
> Hi Shawn,
>
> I am afraid I don't have access to hardware for 8962 at the
> moment, so have only build tested this, but I believe it
> should fix your issue.
Yes, it fixes my issue. Thanks, Charles.
Tested-by: Shawn Guo <shawn.guo at linaro.org>
More information about the Alsa-devel
mailing list