[PATCH 5.4 12/52] ASoC: wm8958: Fix change notifications for DSP controls

From: Greg Kroah-Hartman
Date: Tue May 10 2022 - 09:41:37 EST


From: Mark Brown <broonie@xxxxxxxxxx>

commit b4f5c6b2e52b27462c0599e64e96e53b58438de1 upstream.

The WM8958 DSP controls all return 0 on successful write, not a boolean
value indicating if the write changed the value of the control. Fix this
by returning 1 after a change, there is already a check at the start of
each put() that skips the function in the case that there is no change.

Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>
Link: https://lore.kernel.org/r/20220416125408.197440-1-broonie@xxxxxxxxxx
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
sound/soc/codecs/wm8958-dsp2.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

--- a/sound/soc/codecs/wm8958-dsp2.c
+++ b/sound/soc/codecs/wm8958-dsp2.c
@@ -534,7 +534,7 @@ static int wm8958_mbc_put(struct snd_kco

wm8958_dsp_apply(component, mbc, wm8994->mbc_ena[mbc]);

- return 0;
+ return 1;
}

#define WM8958_MBC_SWITCH(xname, xval) {\
@@ -660,7 +660,7 @@ static int wm8958_vss_put(struct snd_kco

wm8958_dsp_apply(component, vss, wm8994->vss_ena[vss]);

- return 0;
+ return 1;
}


@@ -734,7 +734,7 @@ static int wm8958_hpf_put(struct snd_kco

wm8958_dsp_apply(component, hpf % 3, ucontrol->value.integer.value[0]);

- return 0;
+ return 1;
}

#define WM8958_HPF_SWITCH(xname, xval) {\
@@ -828,7 +828,7 @@ static int wm8958_enh_eq_put(struct snd_

wm8958_dsp_apply(component, eq, ucontrol->value.integer.value[0]);

- return 0;
+ return 1;
}

#define WM8958_ENH_EQ_SWITCH(xname, xval) {\