]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
regulator: bd718x7: Fix voltages scaled by resistor divider
authorMaud Spierings <maudspierings@gocontroll.com>
Thu, 30 Oct 2025 06:35:38 +0000 (07:35 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 30 Oct 2025 11:30:23 +0000 (11:30 +0000)
The .min_sel and .max_sel fields remained uninitialized in the new
linear_range, causing an error further down the line. Copy the old
values of these fields to the new one as they represent the range of
register values, which does not change.

Fixes: d2ad981151b3a ("regulator: bd718x7: Support external connection to scale voltages")
Signed-off-by: Maud Spierings <maudspierings@gocontroll.com>
Reviewed-by: Matti Vaittinen <mazziesaccount@gmail.com>
Link: https://patch.msgid.link/20251030-mini_iv-v3-2-ef56c4d9f219@gocontroll.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/bd718x7-regulator.c

index 022d98f3c32a2dfa8f52cdd3c125d41bda8c91a2..ea9c4058ee6a5ea8fdf26bdd83fa31b104b1e054 100644 (file)
@@ -1613,6 +1613,8 @@ static int setup_feedback_loop(struct device *dev, struct device_node *np,
                                step /= r1;
 
                                new[j].min = min;
+                               new[j].min_sel = desc->linear_ranges[j].min_sel;
+                               new[j].max_sel = desc->linear_ranges[j].max_sel;
                                new[j].step = step;
 
                                dev_dbg(dev, "%s: old range min %d, step %d\n",