regulator: s5m8767: Convert to regulator_[get|set]_voltage_sel_regmap
PATCH 1/1 regulator: s5m8767: Convert to regulator_[get|set]_voltage_sel_regmap
Signed-off-by Axel Lin <[email protected]>
--- drivers/regulator/s5m8767.c | 50 +++++++++++-------------------------------- 1 file changed, 12 insertions(+), 38 deletions(-)
drivers/regulator/s5m8767.c +12 -38
@@ -255,10 +255,8 @@ static int s5m8767_reg_disable(struct regulator_dev *rdev)return sec_reg_update (s5m8767->iodev, reg, ~mask, mask); } -static int s5m8767_get_voltage_register (struct regulator_dev *rdev,int *_reg) +static int s5m8767_get_vsel_reg (int reg_id,struct s5m8767_info *s5m8767) { -struct s5m8767_info *s5m8767 =rdev_get_drvdata (rdev); -int reg_id =rdev_get_id (rdev);int reg;switch (reg_id) {
@@ -296,31 +294,7 @@ static int s5m8767_get_voltage_register(struct regulator_dev *rdev, int *_reg)return -EINVAL ; } - *_reg = reg; - -return 0 ; -} - -static int s5m8767_get_voltage_sel (struct regulator_dev *rdev) -{ -struct s5m8767_info *s5m8767 =rdev_get_drvdata (rdev); -int reg, mask, ret; -int reg_id =rdev_get_id (rdev); -unsigned int val; - - ret =s5m8767_get_voltage_register (rdev, ®); -if (ret) -return ret; - - mask = (reg_id <S5M8767_BUCK1 ) ?0x3f :0xff ; - - ret =sec_reg_read (s5m8767->iodev, reg, &val); -if (ret) -return ret; - - val &= mask; - -return val; +return reg; } static int s5m8767_convert_voltage_to_sel(
@@ -373,15 +347,13 @@ static int s5m8767_set_voltage_sel(struct regulator_dev *rdev, {struct s5m8767_info *s5m8767 =rdev_get_drvdata (rdev);int reg_id =rdev_get_id (rdev); -int reg, mask, ret =0 , old_index, index =0 ; +int old_index, index =0 ;u8 *buck234_vol =NULL ;switch (reg_id) { case S5M8767_LDO1 ... S5M8767_LDO28: - mask =0x3f ;break ; case S5M8767_BUCK1 ... S5M8767_BUCK6: - mask =0xff ;if (reg_id ==S5M8767_BUCK2 && s5m8767->buck2_gpiodvs) buck234_vol = &s5m8767->buck2_vol[0 ];else if (reg_id ==S5M8767_BUCK3 && s5m8767->buck3_gpiodvs)
@@ -392,7 +364,6 @@ static int s5m8767_set_voltage_sel(struct regulator_dev *rdev, case S5M8767_BUCK7 ... S5M8767_BUCK8:return -EINVAL ;case S5M8767_BUCK9 : - mask =0xff ;break ;default :return -EINVAL ;
@@ -412,11 +383,7 @@ static int s5m8767_set_voltage_sel(struct regulator_dev *rdev,else return s5m8767_set_low (s5m8767); }else { - ret =s5m8767_get_voltage_register (rdev, ®); -if (ret) -return ret; - -return sec_reg_update (s5m8767->iodev, reg, selector, mask); +return regulator_set_voltage_sel_regmap (rdev, selector); } }
@@ -441,7 +408,7 @@ static struct regulator_ops s5m8767_ops = { .is_enabled = s5m8767_reg_is_enabled, .enable = s5m8767_reg_enable, .disable = s5m8767_reg_disable, - .get_voltage_sel = s5m8767_get_voltage_sel, + .get_voltage_sel = regulator_get_voltage_sel_regmap, .set_voltage_sel = s5m8767_set_voltage_sel, .set_voltage_time_sel = s5m8767_set_voltage_time_sel, };
@@ -760,11 +727,18 @@ static int s5m8767_pmic_probe(struct platform_device *pdev) (desc->max - desc->min) / desc->step +1 ; regulators[id].min_uV = desc->min; regulators[id].uV_step = desc->step; + regulators[id].vsel_reg = +s5m8767_get_vsel_reg (id, s5m8767); +if (id <S5M8767_BUCK1 ) + regulators[id].vsel_mask =0x3f ; +else + regulators[id].vsel_mask =0xff ; } config.dev = s5m8767->dev; config.init_data = pdata->regulators[i].initdata; config.driver_data = s5m8767; + config.regmap = iodev->regmap; rdev[i] =regulator_register (®ulators[id], &config);if (IS_ERR (rdev[i])) {
Signature · 1 line
1.7.9.5
Quoted 1 line · Axel Lin
Signed-off-by Axel Lin <[email protected]>
This doesn't apply against -rc2, can you please regenerate.
Quoted 3 lines · Axel Lin
2013/1/8 Mark Brown <[email protected]>
Or do you mean Linus' current tree? ( This looks not a 3.8 material. )
I meant Linus' tree since I was starting a new topic branch (not having seen the fix branch). No need to regenerate.