Adding support for PMIC MP5496 on IPQ9574 SoC Co-developed-by: Praveenkumar I <quic_ipkumar@xxxxxxxxxxx> Signed-off-by: Praveenkumar I <quic_ipkumar@xxxxxxxxxxx> Signed-off-by: devi priya <quic_devipriy@xxxxxxxxxxx> --- drivers/regulator/qcom_smd-regulator.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/drivers/regulator/qcom_smd-regulator.c b/drivers/regulator/qcom_smd-regulator.c index 9f2b58458841..1eb17d378897 100644 --- a/drivers/regulator/qcom_smd-regulator.c +++ b/drivers/regulator/qcom_smd-regulator.c @@ -767,6 +767,15 @@ static const struct regulator_desc mp5496_ldoa2 = { .ops = &rpm_mp5496_ops, }; +static const struct regulator_desc ipq9574_mp5496_smpa1 = { + .linear_ranges = (struct linear_range[]) { + REGULATOR_LINEAR_RANGE(600000, 0, 37, 12500), + }, + .n_linear_ranges = 1, + .n_voltages = 38, + .ops = &rpm_mp5496_ops, +}; + static const struct regulator_desc pm2250_lvftsmps = { .linear_ranges = (struct linear_range[]) { REGULATOR_LINEAR_RANGE(320000, 0, 269, 4000), @@ -799,6 +808,11 @@ static const struct rpm_regulator_data rpm_mp5496_regulators[] = { {} }; +static const struct rpm_regulator_data rpm_ipq9574_mp5496_regulators[] = { + { "s1", QCOM_SMD_RPM_SMPA, 1, &ipq9574_mp5496_smpa1, "s1" }, + {} +}; + static const struct rpm_regulator_data rpm_pm2250_regulators[] = { { "s1", QCOM_SMD_RPM_SMPA, 1, &pm2250_lvftsmps, "vdd_s1" }, { "s2", QCOM_SMD_RPM_SMPA, 2, &pm2250_lvftsmps, "vdd_s2" }, @@ -1320,6 +1334,8 @@ static const struct rpm_regulator_data rpm_pms405_regulators[] = { }; static const struct of_device_id rpm_of_match[] = { + { .compatible = "qcom,rpm-ipq9574-mp5496-regulators", + .data = &rpm_ipq9574_mp5496_regulators }, { .compatible = "qcom,rpm-mp5496-regulators", .data = &rpm_mp5496_regulators }, { .compatible = "qcom,rpm-pm2250-regulators", .data = &rpm_pm2250_regulators }, { .compatible = "qcom,rpm-pm6125-regulators", .data = &rpm_pm6125_regulators }, -- 2.17.1