mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 15:41:52 +02:00
ASoC: tas571x: Fix the error handling of tas571x_i2c_probe()
After enabling the regulator, The driver should disable the regulator when failing at probing. Signed-off-by: Zheyu Ma <zheyuma97@gmail.com> Link: https://lore.kernel.org/r/20220510153251.1741210-5-zheyuma97@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
7883c193d7
commit
ef1878fd0c
|
|
@ -833,7 +833,8 @@ static int tas571x_i2c_probe(struct i2c_client *client)
|
|||
if (IS_ERR(priv->pdn_gpio)) {
|
||||
dev_err(dev, "error requesting pdn_gpio: %ld\n",
|
||||
PTR_ERR(priv->pdn_gpio));
|
||||
return PTR_ERR(priv->pdn_gpio);
|
||||
ret = PTR_ERR(priv->pdn_gpio);
|
||||
goto disable_regs;
|
||||
}
|
||||
|
||||
priv->reset_gpio = devm_gpiod_get_optional(dev, "reset",
|
||||
|
|
@ -841,7 +842,8 @@ static int tas571x_i2c_probe(struct i2c_client *client)
|
|||
if (IS_ERR(priv->reset_gpio)) {
|
||||
dev_err(dev, "error requesting reset_gpio: %ld\n",
|
||||
PTR_ERR(priv->reset_gpio));
|
||||
return PTR_ERR(priv->reset_gpio);
|
||||
ret = PTR_ERR(priv->reset_gpio);
|
||||
goto disable_regs;
|
||||
} else if (priv->reset_gpio) {
|
||||
/* pulse the active low reset line for ~100us */
|
||||
usleep_range(100, 200);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user