]> git.ipfire.org Git - people/ms/linux.git/commitdiff
regulator: ltc3589: fix broken voltage transitions
authorSteffen Trumtrar <s.trumtrar@pengutronix.de>
Thu, 25 Sep 2014 14:39:11 +0000 (16:39 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Oct 2014 16:43:07 +0000 (09:43 -0700)
commit c5bb725ac2d1a13e9e766bf9a16bac986ade17cd upstream.

VCCR is used as a trigger to start voltage transitions, so
we need to mark it volatile in order to make sure it gets
written to hardware every time we set a new voltage.

Fixes regulator voltage being stuck at the first voltage
set after driver load.

[lst: reworded commit message]
Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/regulator/ltc3589.c

index c756955bfcc5a1a512c959d4f0e3731733fbeb83..0ce8e4e0fa7308dfd5056a0553ad7b5d9050b4a3 100644 (file)
@@ -372,6 +372,7 @@ static bool ltc3589_volatile_reg(struct device *dev, unsigned int reg)
        switch (reg) {
        case LTC3589_IRQSTAT:
        case LTC3589_PGSTAT:
+       case LTC3589_VCCR:
                return true;
        }
        return false;