Merge git://git.denx.de/u-boot-fsl-qoriq
[oweals/u-boot.git] / drivers / power / regulator / max77686.c
index 946b87c60ad5970ae68864b14e197fc6c08d80a8..2212d36ed6a91a0324c93b29f9cc788c52717988 100644 (file)
@@ -71,8 +71,8 @@ static const char max77686_buck_out[] = {
 
 static int max77686_buck_volt2hex(int buck, int uV)
 {
-       unsigned int hex = 0;
-       unsigned int hex_max = 0;
+       int hex = 0;
+       int hex_max = 0;
 
        switch (buck) {
        case 2:
@@ -87,8 +87,8 @@ static int max77686_buck_volt2hex(int buck, int uV)
                 * hex = (uV - 750000) / 50000. We assume that dynamic voltage
                 * scaling via GPIOs is not enabled and don't support that.
                 * If this is enabled then the driver will need to take that
-                * into account anrd check different registers depending on
-                * the current setting See the datasheet for details.
+                * into account and check different registers depending on
+                * the current setting. See the datasheet for details.
                 */
                hex = (uV - MAX77686_BUCK_UV_HMIN) / MAX77686_BUCK_UV_HSTEP;
                hex_max = MAX77686_BUCK_VOLT_MAX_HEX;
@@ -98,14 +98,14 @@ static int max77686_buck_volt2hex(int buck, int uV)
        if (hex >= 0 && hex <= hex_max)
                return hex;
 
-       error("Value: %d uV is wrong for BUCK%d", uV, buck);
+       pr_err("Value: %d uV is wrong for BUCK%d", uV, buck);
        return -EINVAL;
 }
 
 static int max77686_buck_hex2volt(int buck, int hex)
 {
        unsigned uV = 0;
-       unsigned int hex_max = 0;
+       int hex_max = 0;
 
        if (hex < 0)
                goto bad_hex;
@@ -134,13 +134,13 @@ static int max77686_buck_hex2volt(int buck, int hex)
        return uV;
 
 bad_hex:
-       error("Value: %#x is wrong for BUCK%d", hex, buck);
+       pr_err("Value: %#x is wrong for BUCK%d", hex, buck);
        return -EINVAL;
 }
 
 static int max77686_ldo_volt2hex(int ldo, int uV)
 {
-       unsigned int hex = 0;
+       int hex = 0;
 
        switch (ldo) {
        case 1:
@@ -160,7 +160,7 @@ static int max77686_ldo_volt2hex(int ldo, int uV)
        if (hex >= 0 && hex <= MAX77686_LDO_VOLT_MAX_HEX)
                return hex;
 
-       error("Value: %d uV is wrong for LDO%d", uV, ldo);
+       pr_err("Value: %d uV is wrong for LDO%d", uV, ldo);
        return -EINVAL;
 }
 
@@ -189,7 +189,7 @@ static int max77686_ldo_hex2volt(int ldo, int hex)
        return uV;
 
 bad_hex:
-       error("Value: %#x is wrong for ldo%d", hex, ldo);
+       pr_err("Value: %#x is wrong for ldo%d", hex, ldo);
        return -EINVAL;
 }
 
@@ -319,16 +319,16 @@ static int max77686_ldo_modes(int ldo, struct dm_regulator_mode **modesp,
 
 static int max77686_ldo_val(struct udevice *dev, int op, int *uV)
 {
-       unsigned int ret, hex, adr;
+       unsigned int adr;
        unsigned char val;
-       int ldo;
+       int hex, ldo, ret;
 
        if (op == PMIC_OP_GET)
                *uV = 0;
 
        ldo = dev->driver_data;
        if (ldo < 1 || ldo > MAX77686_LDO_NUM) {
-               error("Wrong ldo number: %d", ldo);
+               pr_err("Wrong ldo number: %d", ldo);
                return -EINVAL;
        }
 
@@ -360,13 +360,13 @@ static int max77686_ldo_val(struct udevice *dev, int op, int *uV)
 
 static int max77686_buck_val(struct udevice *dev, int op, int *uV)
 {
-       unsigned int hex, ret, mask, adr;
+       unsigned int mask, adr;
        unsigned char val;
-       int buck;
+       int hex, buck, ret;
 
        buck = dev->driver_data;
        if (buck < 1 || buck > MAX77686_BUCK_NUM) {
-               error("Wrong buck number: %d", buck);
+               pr_err("Wrong buck number: %d", buck);
                return -EINVAL;
        }
 
@@ -414,16 +414,16 @@ static int max77686_buck_val(struct udevice *dev, int op, int *uV)
 
 static int max77686_ldo_mode(struct udevice *dev, int op, int *opmode)
 {
-       unsigned int ret, adr, mode;
+       unsigned int adr, mode;
        unsigned char val;
-       int ldo;
+       int ldo, ret;
 
        if (op == PMIC_OP_GET)
                *opmode = -EINVAL;
 
        ldo = dev->driver_data;
        if (ldo < 1 || ldo > MAX77686_LDO_NUM) {
-               error("Wrong ldo number: %d", ldo);
+               pr_err("Wrong ldo number: %d", ldo);
                return -EINVAL;
        }
 
@@ -493,7 +493,7 @@ static int max77686_ldo_mode(struct udevice *dev, int op, int *opmode)
        }
 
        if (mode == 0xff) {
-               error("Wrong mode: %d for ldo%d", *opmode, ldo);
+               pr_err("Wrong mode: %d for ldo%d", *opmode, ldo);
                return -EINVAL;
        }
 
@@ -515,25 +515,19 @@ static int max77686_ldo_enable(struct udevice *dev, int op, bool *enable)
 
                switch (on_off) {
                case OPMODE_OFF:
-                       *enable = 0;
+                       *enable = false;
                        break;
                case OPMODE_ON:
-                       *enable = 1;
+                       *enable = true;
                        break;
                default:
                        return -EINVAL;
                }
        } else if (op == PMIC_OP_SET) {
-               switch (*enable) {
-               case 0:
-                       on_off = OPMODE_OFF;
-                       break;
-               case 1:
+               if (*enable)
                        on_off = OPMODE_ON;
-                       break;
-               default:
-                       return -EINVAL;
-               }
+               else
+                       on_off = OPMODE_OFF;
 
                ret = max77686_ldo_mode(dev, op, &on_off);
                if (ret)
@@ -545,13 +539,13 @@ static int max77686_ldo_enable(struct udevice *dev, int op, bool *enable)
 
 static int max77686_buck_mode(struct udevice *dev, int op, int *opmode)
 {
-       unsigned int ret, mask, adr, mode, mode_shift;
+       unsigned int mask, adr, mode, mode_shift;
        unsigned char val;
-       int buck;
+       int buck, ret;
 
        buck = dev->driver_data;
        if (buck < 1 || buck > MAX77686_BUCK_NUM) {
-               error("Wrong buck number: %d", buck);
+               pr_err("Wrong buck number: %d", buck);
                return -EINVAL;
        }
 
@@ -620,7 +614,7 @@ static int max77686_buck_mode(struct udevice *dev, int op, int *opmode)
        }
 
        if (mode == 0xff) {
-               error("Wrong mode: %d for buck: %d\n", *opmode, buck);
+               pr_err("Wrong mode: %d for buck: %d\n", *opmode, buck);
                return -EINVAL;
        }
 
@@ -651,16 +645,10 @@ static int max77686_buck_enable(struct udevice *dev, int op, bool *enable)
                        return -EINVAL;
                }
        } else if (op == PMIC_OP_SET) {
-               switch (*enable) {
-               case 0:
-                       on_off = OPMODE_OFF;
-                       break;
-               case 1:
+               if (*enable)
                        on_off = OPMODE_ON;
-                       break;
-               default:
-                       return -EINVAL;
-               }
+               else
+                       on_off = OPMODE_OFF;
 
                ret = max77686_buck_mode(dev, op, &on_off);
                if (ret)
@@ -700,7 +688,7 @@ static int ldo_set_value(struct udevice *dev, int uV)
        return max77686_ldo_val(dev, PMIC_OP_SET, &uV);
 }
 
-static bool ldo_get_enable(struct udevice *dev)
+static int ldo_get_enable(struct udevice *dev)
 {
        bool enable = false;
        int ret;
@@ -764,7 +752,7 @@ static int buck_set_value(struct udevice *dev, int uV)
        return max77686_buck_val(dev, PMIC_OP_SET, &uV);
 }
 
-static bool buck_get_enable(struct udevice *dev)
+static int buck_get_enable(struct udevice *dev)
 {
        bool enable = false;
        int ret;