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?

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

Attachment: signature.asc
Description: PGP signature

Reply via email to