regulator: core: Allow drivers to set voltage mapping table in regulator_desc
[deliverable/linux.git] / include / linux / regulator / driver.h
index b0432cc2b16958809bdd66a8ce6d0c65d7b4a881..80226383e561d1ceb536235f52040a0414c5bc7f 100644 (file)
@@ -170,6 +170,7 @@ enum regulator_type {
  *
  * @min_uV: Voltage given by the lowest selector (if linear mapping)
  * @uV_step: Voltage increase with each selector (if linear mapping)
+ * @volt_table: Voltage mapping table (if table based mapping)
  *
  * @vsel_reg: Register for selector when using regulator_regmap_X_voltage_
  * @vsel_mask: Mask for register bitfield used for selector
@@ -189,6 +190,8 @@ struct regulator_desc {
        unsigned int min_uV;
        unsigned int uV_step;
 
+       const unsigned int *volt_table;
+
        unsigned int vsel_reg;
        unsigned int vsel_mask;
        unsigned int enable_reg;
@@ -271,6 +274,8 @@ int regulator_mode_to_status(unsigned int);
 
 int regulator_list_voltage_linear(struct regulator_dev *rdev,
                                  unsigned int selector);
+int regulator_list_voltage_table(struct regulator_dev *rdev,
+                                 unsigned int selector);
 int regulator_map_voltage_linear(struct regulator_dev *rdev,
                                  int min_uV, int max_uV);
 int regulator_map_voltage_iterate(struct regulator_dev *rdev,
This page took 0.026488 seconds and 5 git commands to generate.