Patch "regulator: qcom_smd: Fix pm8916_pldo range" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    regulator: qcom_smd: Fix pm8916_pldo range

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     regulator-qcom_smd-fix-pm8916_pldo-range.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 1898e8d140308b852275158b80587af9defad9e8
Author: Stephan Gerhold <stephan.gerhold@xxxxxxxxxxxxxxx>
Date:   Thu Jun 23 11:46:12 2022 +0200

    regulator: qcom_smd: Fix pm8916_pldo range
    
    [ Upstream commit e8977917e116d1571dacb8e9864474551c1c12bd ]
    
    The PM8916 device specification [1] documents a programmable range of
    1.75V to 3.337V with 12.5mV steps for the PMOS LDOs in PM8916. This
    range is also used when controlling the regulator directly using the
    qcom_spmi-regulator driver ("ult_pldo" there).
    
    However, for some reason the qcom_smd-regulator driver allows a much
    larger range for the same hardware component. This could be simply a
    typo, since the start of the range is essentially just missing a '1'.
    
    In practice this does not cause any major problems, since the driver
    just sends the actual voltage to the RPM firmware instead of making use
    of the incorrect voltage selector. Still, having the wrong range there
    is confusing and prevents the regulator core from validating requests
    correctly.
    
    [1]: https://developer.qualcomm.com/download/sd410/pm8916pm8916-1-power-management-ic-device-specification.pdf
    
    Fixes: 57d6567680ed ("regulator: qcom-smd: Add PM8916 support")
    Signed-off-by: Stephan Gerhold <stephan.gerhold@xxxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220623094614.1410180-2-stephan.gerhold@xxxxxxxxxxxxxxx
    Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/regulator/qcom_smd-regulator.c b/drivers/regulator/qcom_smd-regulator.c
index 05d227f9d2f2..0295d7b160e5 100644
--- a/drivers/regulator/qcom_smd-regulator.c
+++ b/drivers/regulator/qcom_smd-regulator.c
@@ -313,10 +313,10 @@ static const struct regulator_desc pm8941_switch = {
 
 static const struct regulator_desc pm8916_pldo = {
 	.linear_ranges = (struct linear_range[]) {
-		REGULATOR_LINEAR_RANGE(750000, 0, 208, 12500),
+		REGULATOR_LINEAR_RANGE(1750000, 0, 127, 12500),
 	},
 	.n_linear_ranges = 1,
-	.n_voltages = 209,
+	.n_voltages = 128,
 	.ops = &rpm_smps_ldo_ops,
 };
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux