regulator: anatop: Convert to set_voltage_sel and regulator_map_voltage_linear
PATCH 1/1 regulator: anatop: Convert to set_voltage_sel and regulator_map_voltage_linear
Signed-off-by Axel Lin <[email protected]>
--- drivers/regulator/anatop-regulator.c | 29 ++++++----------------------- 1 file changed, 6 insertions(+), 23 deletions(-)
drivers/regulator/anatop-regulator.c +6 -23
@@ -43,33 +43,15 @@ struct anatop_regulator {struct regulator_init_data *initdata; }; -static int anatop_set_voltage (struct regulator_dev *reg,int min_uV, -int max_uV,unsigned *selector) +static int anatop_set_voltage_sel (struct regulator_dev *reg,unsigned selector) {struct anatop_regulator *anatop_reg =rdev_get_drvdata (reg); -u32 val, sel, mask; -int uv; - - uv = min_uV; -dev_dbg (®->dev,"%s: uv %d, min %d, max %d\n" , __func__, - uv, anatop_reg->min_voltage, - anatop_reg->max_voltage); - -if (uv < anatop_reg->min_voltage) { -if (max_uV > anatop_reg->min_voltage) - uv = anatop_reg->min_voltage; -else -return -EINVAL ; - } +u32 val, mask;if (!anatop_reg->control_reg)return -ENOTSUPP ; - sel =DIV_ROUND_UP (uv - anatop_reg->min_voltage,25000 ); -if (sel *25000 + anatop_reg->min_voltage > anatop_reg->max_voltage) -return -EINVAL ; - val = anatop_reg->min_bit_val + sel; - *selector = sel; + val = anatop_reg->min_bit_val + selector;dev_dbg (®->dev,"%s: calculated val %d\n" , __func__, val); mask = ((1 << anatop_reg->vol_bit_width) -1 ) << anatop_reg->vol_bit_shift;
@@ -95,9 +77,10 @@ static int anatop_get_voltage_sel(struct regulator_dev *reg) }static struct regulator_ops anatop_rops = { - .set_voltage = anatop_set_voltage, + .set_voltage_sel = anatop_set_voltage_sel, .get_voltage_sel = anatop_get_voltage_sel, - .list_voltage = regulator_list_voltage_linear, + .list_voltage = regulator_list_voltage_linear, + .map_voltage = regulator_map_voltage_linear, };static int __devinit anatop_regulator_probe (struct platform_device *pdev)
Signature · 1 line
1.7.9.5
Mark Brown
AppliedQuoted 1 line · Axel Lin
Signed-off-by Axel Lin <[email protected]>
Applied, thanks.