twl-regulator: Fix reg_disable functionality for 4030 and 6030
authorJuha Keski-Saari <ext-juha.1.keski-saari@nokia.com>
Wed, 16 Dec 2009 13:28:00 +0000 (15:28 +0200)
committerLiam Girdwood <lrg@slimlogic.co.uk>
Thu, 17 Dec 2009 10:27:29 +0000 (10:27 +0000)
This change makes sure all regulator group assignments are cleared on
disable call

Signed-off-by: Juha Keski-Saari <ext-juha.1.keski-saari@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
drivers/regulator/twl-regulator.c

index 9bcea4d131be5e074f9b4b2870e018fcac2c92b6..7e674859bd59b366288d43bf9baf2bc13dab8b11 100644 (file)
@@ -163,9 +163,9 @@ static int twlreg_disable(struct regulator_dev *rdev)
                return grp;
 
        if (twl_class_is_4030())
-               grp &= ~P1_GRP_4030;
+               grp &= ~(P1_GRP_4030 | P2_GRP_4030 | P3_GRP_4030);
        else
-               grp &= ~P1_GRP_6030;
+               grp &= ~(P1_GRP_6030 | P2_GRP_6030 | P3_GRP_6030);
 
        return twlreg_write(info, TWL_MODULE_PM_RECEIVER, VREG_GRP, grp);
 }