regulator: rt5033: Fix n_voltages settings for BUCK and LDO
authorAxel Lin <axel.lin@ingics.com>
Sun, 27 Jun 2021 08:04:18 +0000 (16:04 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 8 Aug 2021 06:53:29 +0000 (08:53 +0200)
commit0e4c9ad9e10e2cde36ca5a294d7d24aa6d17e42e
tree1ea2dad9240425fd7f6858046137cdc048333c7a
parentbc75bb210d9d7e0e791e51cfbb17e5624f7a0d57
regulator: rt5033: Fix n_voltages settings for BUCK and LDO

[ Upstream commit 6549c46af8551b346bcc0b9043f93848319acd5c ]

For linear regulators, the n_voltages should be (max - min) / step + 1.

Buck voltage from 1v to 3V, per step 100mV, and vout mask is 0x1f.
If value is from 20 to 31, the voltage will all be fixed to 3V.
And LDO also, just vout range is different from 1.2v to 3v, step is the
same. If value is from 18 to 31, the voltage will also be fixed to 3v.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-by: ChiYuan Huang <cy_huang@richtek.com>
Link: https://lore.kernel.org/r/20210627080418.1718127-1-axel.lin@ingics.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/linux/mfd/rt5033-private.h