mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 06:03:36 -04:00
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (40 commits) regulator: set constraints.apply_uV to 0 in of_get_fixed_voltage_config regulator: max8925: fix enabled/disabled judgement mistake regulator: add regulator_bulk_force_disable function regulator: pass regulator_register of_node in fixed voltage driver regulator: add regulator_force_disable() definition for !CONFIG_REGULATOR regulator: Enable supply regulator if child rail is enabled. regulator: mc13892: Convert to devm_kzalloc() regulator: mc13783: Convert to devm_kzalloc() regulator: Fix checking return value of create_regulator regulator: Fix the error handling if create_regulator fails regulator: Export regulator_is_supported_voltage() regulator: mc13892: add device tree probe support regulator: mc13892: remove the unnecessary prefix from regulator name regulator: Convert wm831x regulator drivers to devm_kzalloc() regulator: da9052: Staticize non-exported symbols regulator: Replace kzalloc with devm_kzalloc and if-else with a switch-case for da9052-regulator regulator: Update da9052-regulator for DT changes regulator: DA9052/53 Regulator support regulator: pass device_node to of_get_regulator_init_data() regulator: If a single voltage is set with device tree then set apply_uV ...
This commit is contained in:
commit
269d430131
57 changed files with 1368 additions and 341 deletions
|
|
@ -69,6 +69,7 @@ struct regulator_init_data;
|
|||
struct mc13xxx_regulator_init_data {
|
||||
int id;
|
||||
struct regulator_init_data *init_data;
|
||||
struct device_node *node;
|
||||
};
|
||||
|
||||
struct mc13xxx_regulator_platform_data {
|
||||
|
|
|
|||
|
|
@ -740,6 +740,34 @@
|
|||
#define TPS65910_GPIO_STS BIT(1)
|
||||
#define TPS65910_GPIO_SET BIT(0)
|
||||
|
||||
/* Regulator Index Definitions */
|
||||
#define TPS65910_REG_VRTC 0
|
||||
#define TPS65910_REG_VIO 1
|
||||
#define TPS65910_REG_VDD1 2
|
||||
#define TPS65910_REG_VDD2 3
|
||||
#define TPS65910_REG_VDD3 4
|
||||
#define TPS65910_REG_VDIG1 5
|
||||
#define TPS65910_REG_VDIG2 6
|
||||
#define TPS65910_REG_VPLL 7
|
||||
#define TPS65910_REG_VDAC 8
|
||||
#define TPS65910_REG_VAUX1 9
|
||||
#define TPS65910_REG_VAUX2 10
|
||||
#define TPS65910_REG_VAUX33 11
|
||||
#define TPS65910_REG_VMMC 12
|
||||
|
||||
#define TPS65911_REG_VDDCTRL 4
|
||||
#define TPS65911_REG_LDO1 5
|
||||
#define TPS65911_REG_LDO2 6
|
||||
#define TPS65911_REG_LDO3 7
|
||||
#define TPS65911_REG_LDO4 8
|
||||
#define TPS65911_REG_LDO5 9
|
||||
#define TPS65911_REG_LDO6 10
|
||||
#define TPS65911_REG_LDO7 11
|
||||
#define TPS65911_REG_LDO8 12
|
||||
|
||||
/* Max number of TPS65910/11 regulators */
|
||||
#define TPS65910_NUM_REGS 13
|
||||
|
||||
/**
|
||||
* struct tps65910_board
|
||||
* Board platform data may be used to initialize regulators.
|
||||
|
|
@ -751,7 +779,7 @@ struct tps65910_board {
|
|||
int irq_base;
|
||||
int vmbch_threshold;
|
||||
int vmbch2_threshold;
|
||||
struct regulator_init_data *tps65910_pmic_init_data;
|
||||
struct regulator_init_data *tps65910_pmic_init_data[TPS65910_NUM_REGS];
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -149,6 +149,8 @@ int regulator_bulk_enable(int num_consumers,
|
|||
struct regulator_bulk_data *consumers);
|
||||
int regulator_bulk_disable(int num_consumers,
|
||||
struct regulator_bulk_data *consumers);
|
||||
int regulator_bulk_force_disable(int num_consumers,
|
||||
struct regulator_bulk_data *consumers);
|
||||
void regulator_bulk_free(int num_consumers,
|
||||
struct regulator_bulk_data *consumers);
|
||||
|
||||
|
|
@ -212,6 +214,11 @@ static inline int regulator_disable(struct regulator *regulator)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline int regulator_force_disable(struct regulator *regulator)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int regulator_disable_deferred(struct regulator *regulator,
|
||||
int ms)
|
||||
{
|
||||
|
|
@ -242,6 +249,12 @@ static inline int regulator_bulk_disable(int num_consumers,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline int regulator_bulk_force_disable(int num_consumers,
|
||||
struct regulator_bulk_data *consumers)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline void regulator_bulk_free(int num_consumers,
|
||||
struct regulator_bulk_data *consumers)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -154,6 +154,7 @@ enum regulator_type {
|
|||
* this type.
|
||||
*
|
||||
* @name: Identifying name for the regulator.
|
||||
* @supply_name: Identifying the regulator supply
|
||||
* @id: Numerical identifier for the regulator.
|
||||
* @n_voltages: Number of selectors available for ops.list_voltage().
|
||||
* @ops: Regulator operations table.
|
||||
|
|
@ -163,6 +164,7 @@ enum regulator_type {
|
|||
*/
|
||||
struct regulator_desc {
|
||||
const char *name;
|
||||
const char *supply_name;
|
||||
int id;
|
||||
unsigned n_voltages;
|
||||
struct regulator_ops *ops;
|
||||
|
|
@ -212,7 +214,7 @@ struct regulator_dev {
|
|||
|
||||
struct regulator_dev *regulator_register(struct regulator_desc *regulator_desc,
|
||||
struct device *dev, const struct regulator_init_data *init_data,
|
||||
void *driver_data);
|
||||
void *driver_data, struct device_node *of_node);
|
||||
void regulator_unregister(struct regulator_dev *rdev);
|
||||
|
||||
int regulator_notifier_call_chain(struct regulator_dev *rdev,
|
||||
|
|
|
|||
22
include/linux/regulator/of_regulator.h
Normal file
22
include/linux/regulator/of_regulator.h
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
/*
|
||||
* OpenFirmware regulator support routines
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_OF_REG_H
|
||||
#define __LINUX_OF_REG_H
|
||||
|
||||
#if defined(CONFIG_OF)
|
||||
extern struct regulator_init_data
|
||||
*of_get_regulator_init_data(struct device *dev,
|
||||
struct device_node *node);
|
||||
#else
|
||||
static inline struct regulator_init_data
|
||||
*of_get_regulator_init_data(struct device *dev,
|
||||
struct device_node *node)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
#endif /* CONFIG_OF */
|
||||
|
||||
#endif /* __LINUX_OF_REG_H */
|
||||
Loading…
Reference in a new issue