From 780b75b4a0c3d6817cb2ef9493c1d1826cd6fc6b Mon Sep 17 00:00:00 2001
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date: Tue, 7 Jun 2011 23:32:46 +0100
Subject: [PATCH] ASoC: Allow suppression of series updates on wm_hubs devices

Some devices do not support manual updates of the DC servo.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
---
 sound/soc/codecs/wm_hubs.c | 2 +-
 sound/soc/codecs/wm_hubs.h | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/sound/soc/codecs/wm_hubs.c b/sound/soc/codecs/wm_hubs.c
index ee218a80e5878..4ebc131b7f366 100644
--- a/sound/soc/codecs/wm_hubs.c
+++ b/sound/soc/codecs/wm_hubs.c
@@ -194,7 +194,7 @@ static int wm8993_put_dc_servo(struct snd_kcontrol *kcontrol,
 
 	/* If we're applying an offset correction then updating the
 	 * callibration would be likely to introduce further offsets. */
-	if (hubs->dcs_codes)
+	if (hubs->dcs_codes || hubs->no_series_update)
 		return ret;
 
 	/* Only need to do this if the outputs are active */
diff --git a/sound/soc/codecs/wm_hubs.h b/sound/soc/codecs/wm_hubs.h
index aeb58712a0e8f..0d290d2740ec7 100644
--- a/sound/soc/codecs/wm_hubs.h
+++ b/sound/soc/codecs/wm_hubs.h
@@ -24,6 +24,7 @@ struct wm_hubs_data {
 	int dcs_readback_mode;
 	int hp_startup_mode;
 	int series_startup;
+	int no_series_update;
 
 	bool class_w;
 	u16 class_w_dcs;
-- 
GitLab