diff options
| -rw-r--r-- | drivers/regulator/core.c | 22 | ||||
| -rw-r--r-- | drivers/regulator/devres.c | 6 | ||||
| -rw-r--r-- | include/linux/mfd/core.h | 2 | ||||
| -rw-r--r-- | include/linux/regulator/consumer.h | 36 | 
4 files changed, 36 insertions, 30 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index d70f00f8fc66..4f0198a2524a 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -1439,9 +1439,9 @@ EXPORT_SYMBOL_GPL(regulator_get);   *   * Returns a struct regulator corresponding to the regulator producer,   * or IS_ERR() condition containing errno.  Other consumers will be - * unable to obtain this reference is held and the use count for the - * regulator will be initialised to reflect the current state of the - * regulator. + * unable to obtain this regulator while this reference is held and the + * use count for the regulator will be initialised to reflect the current + * state of the regulator.   *   * This is intended for use by consumers which cannot tolerate shared   * use of the regulator such as those which need to force the @@ -1465,10 +1465,7 @@ EXPORT_SYMBOL_GPL(regulator_get_exclusive);   * @id: Supply name or regulator ID.   *   * Returns a struct regulator corresponding to the regulator producer, - * or IS_ERR() condition containing errno.  Other consumers will be - * unable to obtain this reference is held and the use count for the - * regulator will be initialised to reflect the current state of the - * regulator. + * or IS_ERR() condition containing errno.   *   * This is intended for use by consumers for devices which can have   * some supplies unconnected in normal use, such as some MMC devices. @@ -1606,9 +1603,10 @@ EXPORT_SYMBOL_GPL(regulator_unregister_supply_alias);   * registered any aliases that were registered will be removed   * before returning to the caller.   */ -int regulator_bulk_register_supply_alias(struct device *dev, const char **id, +int regulator_bulk_register_supply_alias(struct device *dev, +					 const char *const *id,  					 struct device *alias_dev, -					 const char **alias_id, +					 const char *const *alias_id,  					 int num_id)  {  	int i; @@ -1646,7 +1644,7 @@ EXPORT_SYMBOL_GPL(regulator_bulk_register_supply_alias);   * aliases in one operation.   */  void regulator_bulk_unregister_supply_alias(struct device *dev, -					    const char **id, +					    const char *const *id,  					    int num_id)  {  	int i; @@ -2330,6 +2328,10 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev,  			    regulator_list_voltage_linear)  				ret = regulator_map_voltage_linear(rdev,  								min_uV, max_uV); +			else if (rdev->desc->ops->list_voltage == +				 regulator_list_voltage_linear_range) +				ret = regulator_map_voltage_linear_range(rdev, +								min_uV, max_uV);  			else  				ret = regulator_map_voltage_iterate(rdev,  								min_uV, max_uV); diff --git a/drivers/regulator/devres.c b/drivers/regulator/devres.c index f44818b838dc..8f785bc9e510 100644 --- a/drivers/regulator/devres.c +++ b/drivers/regulator/devres.c @@ -360,9 +360,9 @@ EXPORT_SYMBOL_GPL(devm_regulator_unregister_supply_alias);   * will be removed before returning to the caller.   */  int devm_regulator_bulk_register_supply_alias(struct device *dev, -					      const char **id, +					      const char *const *id,  					      struct device *alias_dev, -					      const char **alias_id, +					      const char *const *alias_id,  					      int num_id)  {  	int i; @@ -404,7 +404,7 @@ EXPORT_SYMBOL_GPL(devm_regulator_bulk_register_supply_alias);   * will ensure that the resource is freed.   */  void devm_regulator_bulk_unregister_supply_alias(struct device *dev, -						 const char **id, +						 const char *const *id,  						 int num_id)  {  	int i; diff --git a/include/linux/mfd/core.h b/include/linux/mfd/core.h index bdba8c61207b..f543de91ce19 100644 --- a/include/linux/mfd/core.h +++ b/include/linux/mfd/core.h @@ -63,7 +63,7 @@ struct mfd_cell {  	/* A list of regulator supplies that should be mapped to the MFD  	 * device rather than the child device when requested  	 */ -	const char		**parent_supplies; +	const char * const	*parent_supplies;  	int			num_parent_supplies;  }; diff --git a/include/linux/regulator/consumer.h b/include/linux/regulator/consumer.h index 1a4a8c157b31..ccd3d777ee03 100644 --- a/include/linux/regulator/consumer.h +++ b/include/linux/regulator/consumer.h @@ -151,11 +151,13 @@ int regulator_register_supply_alias(struct device *dev, const char *id,  				    const char *alias_id);  void regulator_unregister_supply_alias(struct device *dev, const char *id); -int regulator_bulk_register_supply_alias(struct device *dev, const char **id, +int regulator_bulk_register_supply_alias(struct device *dev, +					 const char *const *id,  					 struct device *alias_dev, -					 const char **alias_id, int num_id); +					 const char *const *alias_id, +					 int num_id);  void regulator_bulk_unregister_supply_alias(struct device *dev, -					    const char **id, int num_id); +					    const char * const *id, int num_id);  int devm_regulator_register_supply_alias(struct device *dev, const char *id,  					 struct device *alias_dev, @@ -164,12 +166,12 @@ void devm_regulator_unregister_supply_alias(struct device *dev,  					    const char *id);  int devm_regulator_bulk_register_supply_alias(struct device *dev, -					      const char **id, +					      const char *const *id,  					      struct device *alias_dev, -					      const char **alias_id, +					      const char *const *alias_id,  					      int num_id);  void devm_regulator_bulk_unregister_supply_alias(struct device *dev, -						 const char **id, +						 const char *const *id,  						 int num_id);  /* regulator output control and status */ @@ -290,17 +292,17 @@ static inline void regulator_unregister_supply_alias(struct device *dev,  }  static inline int regulator_bulk_register_supply_alias(struct device *dev, -						       const char **id, -						       struct device *alias_dev, -						       const char **alias_id, -						       int num_id) +						const char *const *id, +						struct device *alias_dev, +						const char * const *alias_id, +						int num_id)  {  	return 0;  }  static inline void regulator_bulk_unregister_supply_alias(struct device *dev, -							  const char **id, -							  int num_id) +						const char * const *id, +						int num_id)  {  } @@ -317,15 +319,17 @@ static inline void devm_regulator_unregister_supply_alias(struct device *dev,  {  } -static inline int devm_regulator_bulk_register_supply_alias( -		struct device *dev, const char **id, struct device *alias_dev, -		const char **alias_id, int num_id) +static inline int devm_regulator_bulk_register_supply_alias(struct device *dev, +						const char *const *id, +						struct device *alias_dev, +						const char *const *alias_id, +						int num_id)  {  	return 0;  }  static inline void devm_regulator_bulk_unregister_supply_alias( -		struct device *dev, const char **id, int num_id) +	struct device *dev, const char *const *id, int num_id)  {  }  | 

