OSDN Git Service

regulator: Fix setting low power mode for wm831x aldo
authorAxel Lin <axel.lin@gmail.com>
Thu, 29 Mar 2012 07:02:55 +0000 (15:02 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 29 Mar 2012 11:06:24 +0000 (12:06 +0100)
Set BIT[8] of LDO7 ON Control mode for low power mode.

R16507 (407Bh)  LDO7 ON Control
BIT[8] LDO7_ON_MODE: LDO7 ON Operating Mode
        0 = Normal mode
        1 = Low Power mode

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/regulator/wm831x-ldo.c

index f1e4ab0..641e9f6 100644 (file)
@@ -506,22 +506,19 @@ static int wm831x_aldo_set_mode(struct regulator_dev *rdev,
 {
        struct wm831x_ldo *ldo = rdev_get_drvdata(rdev);
        struct wm831x *wm831x = ldo->wm831x;
-       int ctrl_reg = ldo->base + WM831X_LDO_CONTROL;
        int on_reg = ldo->base + WM831X_LDO_ON_CONTROL;
        int ret;
 
 
        switch (mode) {
        case REGULATOR_MODE_NORMAL:
-               ret = wm831x_set_bits(wm831x, on_reg,
-                                     WM831X_LDO7_ON_MODE, 0);
+               ret = wm831x_set_bits(wm831x, on_reg, WM831X_LDO7_ON_MODE, 0);
                if (ret < 0)
                        return ret;
                break;
 
        case REGULATOR_MODE_IDLE:
-               ret = wm831x_set_bits(wm831x, ctrl_reg,
-                                     WM831X_LDO7_ON_MODE,
+               ret = wm831x_set_bits(wm831x, on_reg, WM831X_LDO7_ON_MODE,
                                      WM831X_LDO7_ON_MODE);
                if (ret < 0)
                        return ret;