Re: [PATCH] regulator: scmi: Fix off-by-one for linear regulators .n_voltages setting

From: Cristian Marussi
Date: Fri May 21 2021 - 14:26:13 EST


Hi,

On Fri, May 21, 2021 at 03:30:20PM +0800, Axel Lin wrote:
> For linear regulators, the .n_voltages is (max_uv - min_uv) / uv_step + 1.
>
> Fixes: 0fbeae70ee7c ("regulator: add SCMI driver")
> Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
> ---

Right. Good catch.

Reviewed-by: Cristian Marussi <cristian.marussi@xxxxxxx>

Thanks,
Cristian

> drivers/regulator/scmi-regulator.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/regulator/scmi-regulator.c b/drivers/regulator/scmi-regulator.c
> index bbadf72b94e8..1f02f60ad136 100644
> --- a/drivers/regulator/scmi-regulator.c
> +++ b/drivers/regulator/scmi-regulator.c
> @@ -173,7 +173,7 @@ scmi_config_linear_regulator_mappings(struct scmi_regulator *sreg,
> sreg->desc.uV_step =
> vinfo->levels_uv[SCMI_VOLTAGE_SEGMENT_STEP];
> sreg->desc.linear_min_sel = 0;
> - sreg->desc.n_voltages = delta_uV / sreg->desc.uV_step;
> + sreg->desc.n_voltages = (delta_uV / sreg->desc.uV_step) + 1;
> sreg->desc.ops = &scmi_reg_linear_ops;
> }
>
> --
> 2.25.1
>