regulator: qcom_spmi: Add support for PM8004 regulators

This Power IC is used in combination with various PMIC combos,
generally found on boards with MSM8992, MSM8994, MSM8996,
MSM8956, MSM8976 and others, usually at address 0x5 on the SPMI
bus, and its usual usage is to provide power to the GPU and/or
to the CPU clusters (APC0/APC1).

Signed-off-by: Angelo G. Del Regno <kholk11@gmail.com>
Link: https://lore.kernel.org/r/20190921095043.62593-6-kholk11@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Angelo G. Del Regno 2019-09-21 11:50:43 +02:00 committed by Mark Brown
parent e44adca5fa
commit 2e36e140b8
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0
2 changed files with 11 additions and 0 deletions

View File

@ -4,6 +4,7 @@ Qualcomm SPMI Regulators
Usage: required Usage: required
Value type: <string> Value type: <string>
Definition: must be one of: Definition: must be one of:
"qcom,pm8004-regulators"
"qcom,pm8005-regulators" "qcom,pm8005-regulators"
"qcom,pm8841-regulators" "qcom,pm8841-regulators"
"qcom,pm8916-regulators" "qcom,pm8916-regulators"
@ -160,6 +161,9 @@ The regulator node houses sub-nodes for each regulator within the device. Each
sub-node is identified using the node's name, with valid values listed for each sub-node is identified using the node's name, with valid values listed for each
of the PMICs below. of the PMICs below.
pm8005:
s2, s5
pm8005: pm8005:
s1, s2, s3, s4 s1, s2, s3, s4

View File

@ -1960,6 +1960,12 @@ static const struct spmi_regulator_data pmi8994_regulators[] = {
{ } { }
}; };
static const struct spmi_regulator_data pm8004_regulators[] = {
{ "s2", 0x1700, "vdd_s2", },
{ "s5", 0x2000, "vdd_s5", },
{ }
};
static const struct spmi_regulator_data pm8005_regulators[] = { static const struct spmi_regulator_data pm8005_regulators[] = {
{ "s1", 0x1400, "vdd_s1", }, { "s1", 0x1400, "vdd_s1", },
{ "s2", 0x1700, "vdd_s2", }, { "s2", 0x1700, "vdd_s2", },
@ -1974,6 +1980,7 @@ static const struct spmi_regulator_data pms405_regulators[] = {
}; };
static const struct of_device_id qcom_spmi_regulator_match[] = { static const struct of_device_id qcom_spmi_regulator_match[] = {
{ .compatible = "qcom,pm8004-regulators", .data = &pm8004_regulators },
{ .compatible = "qcom,pm8005-regulators", .data = &pm8005_regulators }, { .compatible = "qcom,pm8005-regulators", .data = &pm8005_regulators },
{ .compatible = "qcom,pm8841-regulators", .data = &pm8841_regulators }, { .compatible = "qcom,pm8841-regulators", .data = &pm8841_regulators },
{ .compatible = "qcom,pm8916-regulators", .data = &pm8916_regulators }, { .compatible = "qcom,pm8916-regulators", .data = &pm8916_regulators },