Commit 856fe64d authored by Dan Carpenter's avatar Dan Carpenter Committed by Mark Brown

ASoC: cs42l56: fix up error handling in probe

There are two issues with this code.  The first error path forgot to set
the error code and instead returns success.  The second error path
doesn't clean up.

Fixes: 272b5edd ("ASoC: Add support for CS42L56 CODEC")
Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/X9NE/9nK9/TuxuL+@mwandaSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 43fb2919
...@@ -1250,6 +1250,7 @@ static int cs42l56_i2c_probe(struct i2c_client *i2c_client, ...@@ -1250,6 +1250,7 @@ static int cs42l56_i2c_probe(struct i2c_client *i2c_client,
dev_err(&i2c_client->dev, dev_err(&i2c_client->dev,
"CS42L56 Device ID (%X). Expected %X\n", "CS42L56 Device ID (%X). Expected %X\n",
devid, CS42L56_DEVID); devid, CS42L56_DEVID);
ret = -EINVAL;
goto err_enable; goto err_enable;
} }
alpha_rev = reg & CS42L56_AREV_MASK; alpha_rev = reg & CS42L56_AREV_MASK;
...@@ -1307,7 +1308,7 @@ static int cs42l56_i2c_probe(struct i2c_client *i2c_client, ...@@ -1307,7 +1308,7 @@ static int cs42l56_i2c_probe(struct i2c_client *i2c_client,
ret = devm_snd_soc_register_component(&i2c_client->dev, ret = devm_snd_soc_register_component(&i2c_client->dev,
&soc_component_dev_cs42l56, &cs42l56_dai, 1); &soc_component_dev_cs42l56, &cs42l56_dai, 1);
if (ret < 0) if (ret < 0)
return ret; goto err_enable;
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment