]> Git Repo - linux.git/commitdiff
Merge remote-tracking branch 'regulator/topic/core' into regulator-next
authorMark Brown <[email protected]>
Wed, 4 Nov 2015 11:19:36 +0000 (11:19 +0000)
committerMark Brown <[email protected]>
Wed, 4 Nov 2015 11:19:36 +0000 (11:19 +0000)
1  2 
drivers/regulator/core.c

diff --combined drivers/regulator/core.c
index 8a34f6acc801531ce8eb16882fed2b04ed4c874c,065fe877dcf5d1e02fc1848ae162adfecbc85b04..455732c2e8437c79e7a49e252f91de0e76f5d9c8
@@@ -180,7 -180,7 +180,7 @@@ static int regulator_check_voltage(stru
                return -ENODEV;
        }
        if (!(rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_VOLTAGE)) {
-               rdev_err(rdev, "operation not allowed\n");
+               rdev_err(rdev, "voltage operation not allowed\n");
                return -EPERM;
        }
  
@@@ -240,7 -240,7 +240,7 @@@ static int regulator_check_current_limi
                return -ENODEV;
        }
        if (!(rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_CURRENT)) {
-               rdev_err(rdev, "operation not allowed\n");
+               rdev_err(rdev, "current operation not allowed\n");
                return -EPERM;
        }
  
@@@ -277,7 -277,7 +277,7 @@@ static int regulator_mode_constrain(str
                return -ENODEV;
        }
        if (!(rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_MODE)) {
-               rdev_err(rdev, "operation not allowed\n");
+               rdev_err(rdev, "mode operation not allowed\n");
                return -EPERM;
        }
  
@@@ -301,7 -301,7 +301,7 @@@ static int regulator_check_drms(struct 
                return -ENODEV;
        }
        if (!(rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_DRMS)) {
-               rdev_dbg(rdev, "operation not allowed\n");
+               rdev_dbg(rdev, "drms operation not allowed\n");
                return -EPERM;
        }
        return 0;
@@@ -1394,19 -1394,15 +1394,19 @@@ static int regulator_resolve_supply(str
                return 0;
  
        r = regulator_dev_lookup(dev, rdev->supply_name, &ret);
 -      if (ret == -ENODEV) {
 -              /*
 -               * No supply was specified for this regulator and
 -               * there will never be one.
 -               */
 -              return 0;
 -      }
 -
        if (!r) {
 +              if (ret == -ENODEV) {
 +                      /*
 +                       * No supply was specified for this regulator and
 +                       * there will never be one.
 +                       */
 +                      return 0;
 +              }
 +
 +              /* Did the lookup explicitly defer for us? */
 +              if (ret == -EPROBE_DEFER)
 +                      return ret;
 +
                if (have_full_constraints()) {
                        r = dummy_regulator_rdev;
                } else {
                return ret;
  
        /* Cascade always-on state to supply */
 -      if (_regulator_is_enabled(rdev)) {
 +      if (_regulator_is_enabled(rdev) && rdev->supply) {
                ret = regulator_enable(rdev->supply);
                if (ret < 0) {
 -                      if (rdev->supply)
 -                              _regulator_put(rdev->supply);
 +                      _regulator_put(rdev->supply);
                        return ret;
                }
        }
This page took 0.06743 seconds and 4 git commands to generate.