Skip to content

Commit 104d32b

Browse files
tititiou36lag-linaro
authored andcommitted
mfd: stmpe: Only disable the regulators if they are enabled
In stmpe_probe(), if some regulator_enable() calls fail, probing continues and there is only a dev_warn(). So, if stmpe_probe() is called the regulator may not be enabled. It is cleaner to test it before calling regulator_disable() in the remove function. Fixes: 9c9e321 ("mfd: stmpe: add optional regulators") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/8de3aaf297931d655b9ad6aed548f4de8b85425a.1686998575.git.christophe.jaillet@wanadoo.fr Signed-off-by: Lee Jones <lee@kernel.org>
1 parent e0cbc20 commit 104d32b

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

drivers/mfd/stmpe.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1485,9 +1485,9 @@ int stmpe_probe(struct stmpe_client_info *ci, enum stmpe_partnum partnum)
14851485

14861486
void stmpe_remove(struct stmpe *stmpe)
14871487
{
1488-
if (!IS_ERR(stmpe->vio))
1488+
if (!IS_ERR(stmpe->vio) && regulator_is_enabled(stmpe->vio))
14891489
regulator_disable(stmpe->vio);
1490-
if (!IS_ERR(stmpe->vcc))
1490+
if (!IS_ERR(stmpe->vcc) && regulator_is_enabled(stmpe->vcc))
14911491
regulator_disable(stmpe->vcc);
14921492

14931493
__stmpe_disable(stmpe, STMPE_BLOCK_ADC);

0 commit comments

Comments
 (0)