regulator: ltc3589: fix broken voltage transitions
authorSteffen Trumtrar <s.trumtrar@pengutronix.de>
Thu, 25 Sep 2014 14:39:11 +0000 (16:39 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 26 Sep 2014 08:22:50 +0000 (09:22 +0100)
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>
Cc: stable@vger.kernel.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;