diff mbox

[5/5] ASoC: tlv320aic3x: fix shared reset pin for DT

Message ID 1396733753-9820-6-git-send-email-sre@kernel.org (mailing list archive)
State Accepted
Commit 3b5b24315781c744ab3868edee931ddb2145e6b5
Headers show

Commit Message

Sebastian Reichel April 5, 2014, 9:35 p.m. UTC
Currently the second tlv320aic3x instance fails to
be probed from DT if the reset pin is shared with
the first one.

This patch fixes it by moving the list add of the
reset pin into the i2c_probe method.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
---
 sound/soc/codecs/tlv320aic3x.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

Comments

Mark Brown April 15, 2014, 12:24 p.m. UTC | #1
On Sat, Apr 05, 2014 at 11:35:53PM +0200, Sebastian Reichel wrote:
> Currently the second tlv320aic3x instance fails to
> be probed from DT if the reset pin is shared with
> the first one.

Applied, thanks.
diff mbox

Patch

diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c
index b183510..d7349bc 100644
--- a/sound/soc/codecs/tlv320aic3x.c
+++ b/sound/soc/codecs/tlv320aic3x.c
@@ -1399,7 +1399,6 @@  static int aic3x_probe(struct snd_soc_codec *codec)
 	}
 
 	aic3x_add_widgets(codec);
-	list_add(&aic3x->list, &reset_list);
 
 	return 0;
 
@@ -1569,7 +1568,13 @@  static int aic3x_i2c_probe(struct i2c_client *i2c,
 
 	ret = snd_soc_register_codec(&i2c->dev,
 			&soc_codec_dev_aic3x, &aic3x_dai, 1);
-	return ret;
+
+	if (ret != 0)
+		goto err_gpio;
+
+	list_add(&aic3x->list, &reset_list);
+
+	return 0;
 
 err_gpio:
 	if (gpio_is_valid(aic3x->gpio_reset) &&