aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/regulator/driver.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/regulator/driver.h')
-rw-r--r--include/linux/regulator/driver.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/regulator/driver.h b/include/linux/regulator/driver.h
index d45ab52c91c9..9a911bb5fb61 100644
--- a/include/linux/regulator/driver.h
+++ b/include/linux/regulator/driver.h
@@ -12,8 +12,6 @@
12#ifndef __LINUX_REGULATOR_DRIVER_H_ 12#ifndef __LINUX_REGULATOR_DRIVER_H_
13#define __LINUX_REGULATOR_DRIVER_H_ 13#define __LINUX_REGULATOR_DRIVER_H_
14 14
15#define MAX_COUPLED 2
16
17#include <linux/device.h> 15#include <linux/device.h>
18#include <linux/notifier.h> 16#include <linux/notifier.h>
19#include <linux/regulator/consumer.h> 17#include <linux/regulator/consumer.h>
@@ -283,6 +281,11 @@ enum regulator_type {
283 * @vsel_range_mask: Mask for register bitfield used for range selector 281 * @vsel_range_mask: Mask for register bitfield used for range selector
284 * @vsel_reg: Register for selector when using regulator_regmap_X_voltage_ 282 * @vsel_reg: Register for selector when using regulator_regmap_X_voltage_
285 * @vsel_mask: Mask for register bitfield used for selector 283 * @vsel_mask: Mask for register bitfield used for selector
284 * @vsel_step: Specify the resolution of selector stepping when setting
285 * voltage. If 0, then no stepping is done (requested selector is
286 * set directly), if >0 then the regulator API will ramp the
287 * voltage up/down gradually each time increasing/decreasing the
288 * selector by the specified step value.
286 * @csel_reg: Register for current limit selector using regmap set_current_limit 289 * @csel_reg: Register for current limit selector using regmap set_current_limit
287 * @csel_mask: Mask for register bitfield used for current limit selector 290 * @csel_mask: Mask for register bitfield used for current limit selector
288 * @apply_reg: Register for initiate voltage change on the output when 291 * @apply_reg: Register for initiate voltage change on the output when
@@ -357,6 +360,7 @@ struct regulator_desc {
357 unsigned int vsel_range_mask; 360 unsigned int vsel_range_mask;
358 unsigned int vsel_reg; 361 unsigned int vsel_reg;
359 unsigned int vsel_mask; 362 unsigned int vsel_mask;
363 unsigned int vsel_step;
360 unsigned int csel_reg; 364 unsigned int csel_reg;
361 unsigned int csel_mask; 365 unsigned int csel_mask;
362 unsigned int apply_reg; 366 unsigned int apply_reg;
@@ -423,7 +427,8 @@ struct regulator_config {
423 * incremented. 427 * incremented.
424 */ 428 */
425struct coupling_desc { 429struct coupling_desc {
426 struct regulator_dev *coupled_rdevs[MAX_COUPLED]; 430 struct regulator_dev **coupled_rdevs;
431 struct regulator_coupler *coupler;
427 int n_resolved; 432 int n_resolved;
428 int n_coupled; 433 int n_coupled;
429}; 434};
@@ -549,4 +554,5 @@ void regulator_unlock(struct regulator_dev *rdev);
549 */ 554 */
550int regulator_desc_list_voltage_linear_range(const struct regulator_desc *desc, 555int regulator_desc_list_voltage_linear_range(const struct regulator_desc *desc,
551 unsigned int selector); 556 unsigned int selector);
557
552#endif 558#endif