summaryrefslogtreecommitdiff
path: root/drivers/regulator
diff options
context:
space:
mode:
authorMikhail Rudenko <mike.rudenko@gmail.com>2024-10-17 21:37:28 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-12-09 10:31:38 +0100
commitfd782cb8f9d3aa6369b851a58f4788d6f3efbae6 (patch)
treec7af0d16b15f0118fcf4ceef22005b01142a7380 /drivers/regulator
parentcb5bf93771026b31009fce603f64b1aed7c9295a (diff)
downloadlinux-fd782cb8f9d3aa6369b851a58f4788d6f3efbae6.tar.gz
linux-fd782cb8f9d3aa6369b851a58f4788d6f3efbae6.tar.bz2
linux-fd782cb8f9d3aa6369b851a58f4788d6f3efbae6.zip
regulator: rk808: Add apply_bit for BUCK3 on RK809
[ Upstream commit 5e53e4a66bc7430dd2d11c18a86410e3a38d2940 ] Currently, RK809's BUCK3 regulator is modelled in the driver as a configurable regulator with 0.5-2.4V voltage range. But the voltage setting is not actually applied, because when bit 6 of PMIC_POWER_CONFIG register is set to 0 (default), BUCK3 output voltage is determined by the external feedback resistor. Fix this, by setting bit 6 when voltage selection is set. Existing users which do not specify voltage constraints in their device trees will not be affected by this change, since no voltage setting is applied in those cases, and bit 6 is not enabled. Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> Link: https://patch.msgid.link/20241017-rk809-dcdc3-v1-1-e3c3de92f39c@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/rk808-regulator.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/regulator/rk808-regulator.c b/drivers/regulator/rk808-regulator.c
index 867a2cf243f6..2c83cb18d60d 100644
--- a/drivers/regulator/rk808-regulator.c
+++ b/drivers/regulator/rk808-regulator.c
@@ -1286,6 +1286,8 @@ static const struct regulator_desc rk809_reg[] = {
.n_linear_ranges = ARRAY_SIZE(rk817_buck1_voltage_ranges),
.vsel_reg = RK817_BUCK3_ON_VSEL_REG,
.vsel_mask = RK817_BUCK_VSEL_MASK,
+ .apply_reg = RK817_POWER_CONFIG,
+ .apply_bit = RK817_BUCK3_FB_RES_INTER,
.enable_reg = RK817_POWER_EN_REG(0),
.enable_mask = ENABLE_MASK(RK817_ID_DCDC3),
.enable_val = ENABLE_MASK(RK817_ID_DCDC3),