On Fri, Dec 06, 2019 at 03:53:00PM +0800, Chuhong Yuan wrote:
The driver forgets to call regulator_bulk_disable() in remove like that in probe failure. Add the missed call to fix it.
Signed-off-by: Chuhong Yuan hslester96@gmail.com
sound/soc/codecs/wm5100.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/sound/soc/codecs/wm5100.c b/sound/soc/codecs/wm5100.c index 91cc63c5a51f..d985b2061169 100644 --- a/sound/soc/codecs/wm5100.c +++ b/sound/soc/codecs/wm5100.c @@ -2653,6 +2653,8 @@ static int wm5100_i2c_remove(struct i2c_client *i2c) gpio_set_value_cansleep(wm5100->pdata.ldo_ena, 0); gpio_free(wm5100->pdata.ldo_ena); }
- regulator_bulk_disable(ARRAY_SIZE(wm5100->core_supplies),
wm5100->core_supplies);
This is a bit trickier than this since these regulators are being controlled by PM runtime, and it doesn't necessarily leave things in an enabled state when it is disabled.
Thanks, Charles