]> Pileus Git - ~andy/linux/blobdiff - include/linux/regulator/driver.h
Merge remote-tracking branch 'regulator/topic/gpio' into v3.9-rc8
[~andy/linux] / include / linux / regulator / driver.h
index 7b7aeec04f869aea735163145ac99519b341a5ae..6700cc94bdd12275df1b8be822939c298b811aff 100644 (file)
@@ -200,6 +200,10 @@ enum regulator_type {
  *                output when using regulator_set_voltage_sel_regmap
  * @enable_reg: Register for control when using regmap enable/disable ops
  * @enable_mask: Mask for control when using regmap enable/disable ops
+ * @enable_is_inverted: A flag to indicate set enable_mask bits to disable
+ *                      when using regulator_enable_regmap and friends APIs.
+ * @bypass_reg: Register for control when using regmap set_bypass
+ * @bypass_mask: Mask for control when using regmap set_bypass
  *
  * @enable_time: Time taken for initial enable of regulator (in uS).
  */
@@ -227,6 +231,7 @@ struct regulator_desc {
        unsigned int apply_bit;
        unsigned int enable_reg;
        unsigned int enable_mask;
+       bool enable_is_inverted;
        unsigned int bypass_reg;
        unsigned int bypass_mask;
 
@@ -327,6 +332,8 @@ int regulator_map_voltage_linear(struct regulator_dev *rdev,
                                  int min_uV, int max_uV);
 int regulator_map_voltage_iterate(struct regulator_dev *rdev,
                                  int min_uV, int max_uV);
+int regulator_map_voltage_ascend(struct regulator_dev *rdev,
+                                 int min_uV, int max_uV);
 int regulator_get_voltage_sel_regmap(struct regulator_dev *rdev);
 int regulator_set_voltage_sel_regmap(struct regulator_dev *rdev, unsigned sel);
 int regulator_is_enabled_regmap(struct regulator_dev *rdev);