]> git.hungrycats.org Git - linux/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:40:12 +0000 (09:40 -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 c8105182b8b8ecf26a76d606fe036551c0a42a8d..bef5842d0777e975b661f727b4e02b0f458fc325 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;