Re: [PATCH v2 3/7] regulator: rk808: Migrate to regulator core's simplified DT parsing code

From: Wadim Egorov
Date: Fri Apr 22 2016 - 05:03:40 EST




On 21.04.2016 18:01, Mark Brown wrote:
> On Thu, Apr 21, 2016 at 03:12:37PM +0200, Wadim Egorov wrote:
>
>> +static int rk808_set_suspend_voltage(struct regulator_dev *rdev, int uv)
>> +{
>> + unsigned int reg;
>> + int sel = regulator_map_voltage_linear(rdev, uv, uv);
>> +
>> + if (sel < 0)
>> + return -EINVAL;
>> +
>> + reg = rdev->desc->vsel_reg + RK808_SLP_REG_OFFSET;
>> +
>> + return regmap_update_bits(rdev->regmap, reg,
>> + rdev->desc->vsel_mask,
>> + sel);
>> +}
> This is fine but is adding a new feature and not part of the refactoring
> that the changelog talked about so should be in a separate commit.

This is not really a new feature.
rk808_set_suspend_voltage() was using regulator_map_voltage_linear_range().
I have just renamed the function to rk808_set_suspend_voltage_range()
and added an ops struct for ranges.
Yes, I have also added rk808_set_suspend_voltage(), but this is just a split
for the two types of ops that the driver needs now.
This was needed, because the driver used only linear ranges.
IMO it should be a part of the refactoring.