lkml.org 
[lkml]   [2021]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 264/663] regulator: qcom-rpmh-regulator: add pm8009-1 chip revision
    Date
    From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

    [ Upstream commit 951384cabc5dfb09251d440dbc26058eba86f97e ]

    PM8009 has special revision (P=1), which is to be used for sm8250
    platform. The major difference is the S2 regulator which supplies 0.95 V
    instead of 2.848V. Declare regulators data to be used for this chip
    revision. The datasheet calls the chip just pm8009-1, so use the same
    name.

    Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
    Fixes: 06369bcc15a1 ("regulator: qcom-rpmh: Add support for SM8150")
    Reviewed-by: Vinod Koul <vkoul@kernel.org>
    Link: https://lore.kernel.org/r/20201231122348.637917-4-dmitry.baryshkov@linaro.org
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/regulator/qcom-rpmh-regulator.c | 26 +++++++++++++++++++++++++
    1 file changed, 26 insertions(+)

    diff --git a/drivers/regulator/qcom-rpmh-regulator.c b/drivers/regulator/qcom-rpmh-regulator.c
    index a22c4b5f64f7e..ba838c4cf2b8b 100644
    --- a/drivers/regulator/qcom-rpmh-regulator.c
    +++ b/drivers/regulator/qcom-rpmh-regulator.c
    @@ -732,6 +732,15 @@ static const struct rpmh_vreg_hw_data pmic5_hfsmps515 = {
    .of_map_mode = rpmh_regulator_pmic4_smps_of_map_mode,
    };

    +static const struct rpmh_vreg_hw_data pmic5_hfsmps515_1 = {
    + .regulator_type = VRM,
    + .ops = &rpmh_regulator_vrm_ops,
    + .voltage_range = REGULATOR_LINEAR_RANGE(900000, 0, 4, 16000),
    + .n_voltages = 5,
    + .pmic_mode_map = pmic_mode_map_pmic5_smps,
    + .of_map_mode = rpmh_regulator_pmic4_smps_of_map_mode,
    +};
    +
    static const struct rpmh_vreg_hw_data pmic5_bob = {
    .regulator_type = VRM,
    .ops = &rpmh_regulator_vrm_bypass_ops,
    @@ -878,6 +887,19 @@ static const struct rpmh_vreg_init_data pm8009_vreg_data[] = {
    {},
    };

    +static const struct rpmh_vreg_init_data pm8009_1_vreg_data[] = {
    + RPMH_VREG("smps1", "smp%s1", &pmic5_hfsmps510, "vdd-s1"),
    + RPMH_VREG("smps2", "smp%s2", &pmic5_hfsmps515_1, "vdd-s2"),
    + RPMH_VREG("ldo1", "ldo%s1", &pmic5_nldo, "vdd-l1"),
    + RPMH_VREG("ldo2", "ldo%s2", &pmic5_nldo, "vdd-l2"),
    + RPMH_VREG("ldo3", "ldo%s3", &pmic5_nldo, "vdd-l3"),
    + RPMH_VREG("ldo4", "ldo%s4", &pmic5_nldo, "vdd-l4"),
    + RPMH_VREG("ldo5", "ldo%s5", &pmic5_pldo, "vdd-l5-l6"),
    + RPMH_VREG("ldo6", "ldo%s6", &pmic5_pldo, "vdd-l5-l6"),
    + RPMH_VREG("ldo7", "ldo%s6", &pmic5_pldo_lv, "vdd-l7"),
    + {},
    +};
    +
    static const struct rpmh_vreg_init_data pm6150_vreg_data[] = {
    RPMH_VREG("smps1", "smp%s1", &pmic5_ftsmps510, "vdd-s1"),
    RPMH_VREG("smps2", "smp%s2", &pmic5_ftsmps510, "vdd-s2"),
    @@ -976,6 +998,10 @@ static const struct of_device_id __maybe_unused rpmh_regulator_match_table[] = {
    .compatible = "qcom,pm8009-rpmh-regulators",
    .data = pm8009_vreg_data,
    },
    + {
    + .compatible = "qcom,pm8009-1-rpmh-regulators",
    + .data = pm8009_1_vreg_data,
    + },
    {
    .compatible = "qcom,pm8150-rpmh-regulators",
    .data = pm8150_vreg_data,
    --
    2.27.0


    \
     
     \ /
      Last update: 2021-03-02 04:10    [W:2.197 / U:0.496 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site