diff options
| author | Laxman Dewangan <ldewangan@nvidia.com> | 2016-03-02 05:54:47 -0500 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2016-03-02 09:13:05 -0500 |
| commit | 354794dacc213da7596cefea4dbcd8c094368807 (patch) | |
| tree | 51a080d54afeba7ba26d46fd9b00e4e14beae6a5 /include/linux/regulator | |
| parent | 670666b9e0aff40c65d8061a2f53e79eee238685 (diff) | |
regulator: helper: Add helper to configure active-discharge using regmap
Add helper function to set the state of active-discharge of
regulator using regmap. The HW regulator driver can directly
use this by providing the necessary information in the regulator
descriptor.
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/linux/regulator')
| -rw-r--r-- | include/linux/regulator/driver.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/linux/regulator/driver.h b/include/linux/regulator/driver.h index 59dbaf78a25c..cd271e89a7e6 100644 --- a/include/linux/regulator/driver.h +++ b/include/linux/regulator/driver.h | |||
| @@ -269,6 +269,14 @@ enum regulator_type { | |||
| 269 | * @bypass_mask: Mask for control when using regmap set_bypass | 269 | * @bypass_mask: Mask for control when using regmap set_bypass |
| 270 | * @bypass_val_on: Enabling value for control when using regmap set_bypass | 270 | * @bypass_val_on: Enabling value for control when using regmap set_bypass |
| 271 | * @bypass_val_off: Disabling value for control when using regmap set_bypass | 271 | * @bypass_val_off: Disabling value for control when using regmap set_bypass |
| 272 | * @active_discharge_off: Enabling value for control when using regmap | ||
| 273 | * set_active_discharge | ||
| 274 | * @active_discharge_on: Disabling value for control when using regmap | ||
| 275 | * set_active_discharge | ||
| 276 | * @active_discharge_mask: Mask for control when using regmap | ||
| 277 | * set_active_discharge | ||
| 278 | * @active_discharge_reg: Register for control when using regmap | ||
| 279 | * set_active_discharge | ||
| 272 | * | 280 | * |
| 273 | * @enable_time: Time taken for initial enable of regulator (in uS). | 281 | * @enable_time: Time taken for initial enable of regulator (in uS). |
| 274 | * @off_on_delay: guard time (in uS), before re-enabling a regulator | 282 | * @off_on_delay: guard time (in uS), before re-enabling a regulator |
| @@ -318,6 +326,10 @@ struct regulator_desc { | |||
| 318 | unsigned int bypass_mask; | 326 | unsigned int bypass_mask; |
| 319 | unsigned int bypass_val_on; | 327 | unsigned int bypass_val_on; |
| 320 | unsigned int bypass_val_off; | 328 | unsigned int bypass_val_off; |
| 329 | unsigned int active_discharge_on; | ||
| 330 | unsigned int active_discharge_off; | ||
| 331 | unsigned int active_discharge_mask; | ||
| 332 | unsigned int active_discharge_reg; | ||
| 321 | 333 | ||
| 322 | unsigned int enable_time; | 334 | unsigned int enable_time; |
| 323 | 335 | ||
| @@ -450,6 +462,8 @@ int regulator_set_voltage_time_sel(struct regulator_dev *rdev, | |||
| 450 | int regulator_set_bypass_regmap(struct regulator_dev *rdev, bool enable); | 462 | int regulator_set_bypass_regmap(struct regulator_dev *rdev, bool enable); |
| 451 | int regulator_get_bypass_regmap(struct regulator_dev *rdev, bool *enable); | 463 | int regulator_get_bypass_regmap(struct regulator_dev *rdev, bool *enable); |
| 452 | 464 | ||
| 465 | int regulator_set_active_discharge_regmap(struct regulator_dev *rdev, | ||
| 466 | bool enable); | ||
| 453 | void *regulator_get_init_drvdata(struct regulator_init_data *reg_init_data); | 467 | void *regulator_get_init_drvdata(struct regulator_init_data *reg_init_data); |
| 454 | 468 | ||
| 455 | #endif | 469 | #endif |
