regulator: qcom_smd: Avoid overlapping linear voltage ranges
authorStephen Boyd <sboyd@codeaurora.org>
Mon, 11 Jul 2016 21:50:09 +0000 (14:50 -0700)
committerMark Brown <broonie@kernel.org>
Tue, 12 Jul 2016 09:01:36 +0000 (10:01 +0100)
The pm8x41_hfsmps ranges overlap. The first range is from 375000
to 1562500:

 375000 + (95 * 12500) == 1562500

and the second range starts at 1550000. Interestingly, the second
range ends at the correct value when it's set to be the
appropriate start value, 1575000:

 1575000 + ((158 - 96) * 25000) == 3125000

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Reviewed-by: Andy Gross <andy.gross@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/qcom_smd-regulator.c

index 6c7fe4778793758478d9a27e3f9d11f6d4b4a1b2..5022fa8d10c6bc399970c26b2392fcea5dd54385 100644 (file)
@@ -211,7 +211,7 @@ static const struct regulator_desc pma8084_switch = {
 static const struct regulator_desc pm8x41_hfsmps = {
        .linear_ranges = (struct regulator_linear_range[]) {
                REGULATOR_LINEAR_RANGE( 375000,  0,  95, 12500),
-               REGULATOR_LINEAR_RANGE(1550000, 96, 158, 25000),
+               REGULATOR_LINEAR_RANGE(1575000, 96, 158, 25000),
        },
        .n_linear_ranges = 2,
        .n_voltages = 159,