regulator: lp8788: Implement list_voltage for lp8788_ldo_voltage_fixed_ops
For fixed voltage, we can just set min_uV and use regulator_list_voltage_linear for list_voltage callback. Regulator core will call list_voltage(rdev, 0) if both get_voltage get_voltage_sel are not implemented. Thus we can also remove lp8788_ldo_fixed_get_voltage() function. Signed-off-by: Axel Lin <axel.lin@ingics.com> Acked-by: Milo Kim <milo.kim@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
80abd60d98
commit
b5366e5edc
1 changed files with 9 additions and 18 deletions
|
@ -170,23 +170,6 @@ static int lp8788_ldo_enable_time(struct regulator_dev *rdev)
|
|||
return ENABLE_TIME_USEC * val;
|
||||
}
|
||||
|
||||
static int lp8788_ldo_fixed_get_voltage(struct regulator_dev *rdev)
|
||||
{
|
||||
enum lp8788_ldo_id id = rdev_get_id(rdev);
|
||||
|
||||
switch (id) {
|
||||
case ALDO2 ... ALDO5:
|
||||
return 2850000;
|
||||
case DLDO12:
|
||||
case ALDO8 ... ALDO9:
|
||||
return 2500000;
|
||||
case ALDO10:
|
||||
return 1100000;
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
static struct regulator_ops lp8788_ldo_voltage_table_ops = {
|
||||
.list_voltage = regulator_list_voltage_table,
|
||||
.set_voltage_sel = regulator_set_voltage_sel_regmap,
|
||||
|
@ -198,7 +181,7 @@ static struct regulator_ops lp8788_ldo_voltage_table_ops = {
|
|||
};
|
||||
|
||||
static struct regulator_ops lp8788_ldo_voltage_fixed_ops = {
|
||||
.get_voltage = lp8788_ldo_fixed_get_voltage,
|
||||
.list_voltage = regulator_list_voltage_linear,
|
||||
.enable = regulator_enable_regmap,
|
||||
.disable = regulator_disable_regmap,
|
||||
.is_enabled = regulator_is_enabled_regmap,
|
||||
|
@ -358,6 +341,7 @@ static struct regulator_desc lp8788_dldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_B,
|
||||
.enable_mask = LP8788_EN_DLDO12_M,
|
||||
.min_uV = 2500000,
|
||||
},
|
||||
};
|
||||
|
||||
|
@ -384,6 +368,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_B,
|
||||
.enable_mask = LP8788_EN_ALDO2_M,
|
||||
.min_uV = 2850000,
|
||||
},
|
||||
{
|
||||
.name = "aldo3",
|
||||
|
@ -394,6 +379,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_B,
|
||||
.enable_mask = LP8788_EN_ALDO3_M,
|
||||
.min_uV = 2850000,
|
||||
},
|
||||
{
|
||||
.name = "aldo4",
|
||||
|
@ -404,6 +390,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_B,
|
||||
.enable_mask = LP8788_EN_ALDO4_M,
|
||||
.min_uV = 2850000,
|
||||
},
|
||||
{
|
||||
.name = "aldo5",
|
||||
|
@ -414,6 +401,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_C,
|
||||
.enable_mask = LP8788_EN_ALDO5_M,
|
||||
.min_uV = 2850000,
|
||||
},
|
||||
{
|
||||
.name = "aldo6",
|
||||
|
@ -450,6 +438,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_C,
|
||||
.enable_mask = LP8788_EN_ALDO8_M,
|
||||
.min_uV = 2500000,
|
||||
},
|
||||
{
|
||||
.name = "aldo9",
|
||||
|
@ -460,6 +449,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_C,
|
||||
.enable_mask = LP8788_EN_ALDO9_M,
|
||||
.min_uV = 2500000,
|
||||
},
|
||||
{
|
||||
.name = "aldo10",
|
||||
|
@ -470,6 +460,7 @@ static struct regulator_desc lp8788_aldo_desc[] = {
|
|||
.owner = THIS_MODULE,
|
||||
.enable_reg = LP8788_EN_LDO_C,
|
||||
.enable_mask = LP8788_EN_ALDO10_M,
|
||||
.min_uV = 1100000,
|
||||
},
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue