Re: [PATCH] regulator: core: Fix s2idle

From: Geert Uytterhoeven
Date: Tue Jan 30 2018 - 07:11:23 EST


Hi Mark,

On Tue, Jan 30, 2018 at 1:03 PM, Mark Brown <broonie@xxxxxxxxxx> wrote:
> On Tue, Jan 30, 2018 at 11:32:26AM +0100, Geert Uytterhoeven wrote:
>> But I have no idea what impact it has. So far it doesn't seem to hurt,
>> though.
>
> I suspect that instead what we should be doing is changing the
> set_suspend_state() check to the below - if we don't have any
> constraints or there's otherwise nothing to do just let the suspend
> proceed.
>
> Can you give this a spin and confirm if it fixes things?

Sure. Works, too.

> diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
> index 42681c10cbe4..dd4708c58480 100644
> --- a/drivers/regulator/core.c
> +++ b/drivers/regulator/core.c
> @@ -758,7 +758,7 @@ static int suspend_set_state(struct regulator_dev *rdev,
>
> rstate = regulator_get_suspend_state(rdev, state);
> if (rstate == NULL)
> - return -EINVAL;
> + return 0;
>
> /* If we have no suspend mode configration don't set anything;
> * only warn if the driver implements set_suspend_voltage or

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds