pinctrl: aw9523: Destroy mutex on ->remove()
If aw9523_hw_init() fails on ->remove() the mutex left alive. Destroy it in that case as well. While at it, remove never true check at the beginning of the function. Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com> Message-ID: <20240329105634.712457-2-andy.shevchenko@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
d303735ce5
commit
e5e8a58023
@ -1067,10 +1067,6 @@ err_disable_vregs:
|
||||
static void aw9523_remove(struct i2c_client *client)
|
||||
{
|
||||
struct aw9523 *awi = i2c_get_clientdata(client);
|
||||
int ret;
|
||||
|
||||
if (!awi)
|
||||
return;
|
||||
|
||||
/*
|
||||
* If the chip VIO is connected to a regulator that we can turn
|
||||
@ -1082,10 +1078,8 @@ static void aw9523_remove(struct i2c_client *client)
|
||||
regulator_disable(awi->vio_vreg);
|
||||
} else {
|
||||
mutex_lock(&awi->i2c_lock);
|
||||
ret = aw9523_hw_init(awi);
|
||||
aw9523_hw_init(awi);
|
||||
mutex_unlock(&awi->i2c_lock);
|
||||
if (ret)
|
||||
return;
|
||||
}
|
||||
|
||||
mutex_destroy(&awi->i2c_lock);
|
||||
|
Loading…
x
Reference in New Issue
Block a user