On 05/30/2016 10:52 AM, Axel Lin wrote: > 2016-05-30 16:48 GMT+08:00 Krzysztof Kozlowski <k.kozlow...@samsung.com>: >> On 05/29/2016 01:16 PM, Axel Lin wrote: >>> Current code can set ramp delay to a wrong setting that the return value >>> from .set_voltage_time_sel is not enough for proper delay. >> >> I don't understand what yo wanted to say here. What wrong setting is >> possible? Why do you mention set_voltage_time_sel() here? >> >> Can you elaborate? >> >> The only difference I spotted is how you round up the ramp_delay values. > > Assume rdev->constraints->ramp_delay is 20000. > > Original code will set MAX8973_RAMP_12mV_PER_US. > > However, in regulator_set_voltage_time_sel() > return DIV_ROUND_UP(abs(new_volt - old_volt), ramp_delay); > > This return value is not enough if the device is using > MAX8973_RAMP_12mV_PER_US > setting.
Thanks, now it makes sense but the commit message needs improvements. The problem is that current code for .set_ramp_delay() rounds down the value written to register, while the implementation of .set_voltage_time_sel() works on original constraints (not rounded down). Please, fix the message. Best regards, Krzysztof