Commit b0615f1d authored by Javier Martinez Canillas's avatar Javier Martinez Canillas Committed by Mark Brown

regulator: max77802: Split regulator operations for BUCKs

Not all the max77802 BUCKs regulators have the same functionality, for
example BUCKs 2-4 support the output to be configured as normal or Low
Power Mode by the PWRREQ enable pin while the other BUCKs only support
their output to be set ON or OFF by PWRREQ. As a preparation for adding
a set_suspend_mode function handler for all the regulators that support
Low Power Mode by PWRREQ, split the operations for BUCKs regulators.
Signed-off-by: default avatarJavier Martinez Canillas <javier.martinez@collabora.co.uk>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent e6fb2aac
...@@ -286,7 +286,22 @@ static struct regulator_ops max77802_buck_16_dvs_ops = { ...@@ -286,7 +286,22 @@ static struct regulator_ops max77802_buck_16_dvs_ops = {
.set_suspend_disable = max77802_set_suspend_disable, .set_suspend_disable = max77802_set_suspend_disable,
}; };
/* BUCKs 2-4, 5, 7-10 */ /* BUCKs 2-4 */
static struct regulator_ops max77802_buck_234_ops = {
.list_voltage = regulator_list_voltage_linear,
.map_voltage = regulator_map_voltage_linear,
.is_enabled = regulator_is_enabled_regmap,
.enable = max77802_enable,
.disable = regulator_disable_regmap,
.get_voltage_sel = regulator_get_voltage_sel_regmap,
.set_voltage_sel = regulator_set_voltage_sel_regmap,
.set_voltage_time_sel = regulator_set_voltage_time_sel,
.set_ramp_delay = max77802_set_ramp_delay_2bit,
.set_suspend_enable = max77802_enable,
.set_suspend_disable = max77802_set_suspend_disable,
};
/* BUCKs 5, 7-10 */
static struct regulator_ops max77802_buck_dvs_ops = { static struct regulator_ops max77802_buck_dvs_ops = {
.list_voltage = regulator_list_voltage_linear, .list_voltage = regulator_list_voltage_linear,
.map_voltage = regulator_map_voltage_linear, .map_voltage = regulator_map_voltage_linear,
...@@ -360,7 +375,7 @@ static struct regulator_ops max77802_buck_dvs_ops = { ...@@ -360,7 +375,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
.name = "BUCK"#num, \ .name = "BUCK"#num, \
.id = MAX77802_BUCK##num, \ .id = MAX77802_BUCK##num, \
.supply_name = "inb"#num, \ .supply_name = "inb"#num, \
.ops = &max77802_buck_dvs_ops, \ .ops = &max77802_buck_234_ops, \
.type = REGULATOR_VOLTAGE, \ .type = REGULATOR_VOLTAGE, \
.owner = THIS_MODULE, \ .owner = THIS_MODULE, \
.min_uV = 600000, \ .min_uV = 600000, \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment