Skip to content

Commit 6aed787

Browse files
committed
Merge series "Initial Fairphone 4 support" from Luca Weiss <[email protected]>:
This series adds basic support for the recently announced Fairphone 4 smartphone, based on the Snapdragon 750G (sm7225). This adds support for UART, power & volume buttons, screen based on simple-framebuffer, regulators and USB. v2 fixes some stylistic problems in dts and corrects the situation with pm6350 regulator supplies. Luca Weiss (11): clk: qcom: add select QCOM_GDSC for SM6350 dt-bindings: regulator: qcom,rpmh: Add compatible for PM6350 regulator: qcom-rpmh: Add PM6350 regulators dt-bindings: pinctrl: qcom,pmic-gpio: Add compatible for PM6350 pinctrl: qcom: spmi-gpio: Add compatible for PM6350 arm64: dts: qcom: Add PM6350 PMIC arm64: dts: qcom: sm6350: add debug uart dt-bindings: arm: cpus: Add Kryo 570 CPUs dt-bindings: arm: qcom: Document sm7225 and fairphone,fp4 board arm64: dts: qcom: Add SM7225 device tree arm64: dts: qcom: sm7225: Add device tree for Fairphone 4 .../devicetree/bindings/arm/cpus.yaml | 1 + .../devicetree/bindings/arm/qcom.yaml | 6 + .../bindings/pinctrl/qcom,pmic-gpio.yaml | 2 + .../regulator/qcom,rpmh-regulator.yaml | 2 + arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/pm6350.dtsi | 54 +++ arch/arm64/boot/dts/qcom/sm6350.dtsi | 31 ++ .../boot/dts/qcom/sm7225-fairphone-fp4.dts | 320 ++++++++++++++++++ arch/arm64/boot/dts/qcom/sm7225.dtsi | 16 + drivers/clk/qcom/Kconfig | 1 + drivers/pinctrl/qcom/pinctrl-spmi-gpio.c | 1 + drivers/regulator/qcom-rpmh-regulator.c | 32 ++ 12 files changed, 467 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/pm6350.dtsi create mode 100644 arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts create mode 100644 arch/arm64/boot/dts/qcom/sm7225.dtsi -- 2.33.0
2 parents 79738f1 + 12271ba commit 6aed787

File tree

2 files changed

+34
-0
lines changed

2 files changed

+34
-0
lines changed

Documentation/devicetree/bindings/regulator/qcom,rpmh-regulator.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ description: |
3535
PMIC. Supported regulator node names are
3636
For PM6150, smps1 - smps5, ldo1 - ldo19
3737
For PM6150L, smps1 - smps8, ldo1 - ldo11, bob
38+
For PM6350, smps1 - smps5, ldo1 - ldo22
3839
For PM7325, smps1 - smps8, ldo1 - ldo19
3940
For PM8005, smps1 - smps4
4041
For PM8009, smps1 - smps2, ldo1 - ldo7
@@ -52,6 +53,7 @@ properties:
5253
enum:
5354
- qcom,pm6150-rpmh-regulators
5455
- qcom,pm6150l-rpmh-regulators
56+
- qcom,pm6350-rpmh-regulators
5557
- qcom,pm7325-rpmh-regulators
5658
- qcom,pm8005-rpmh-regulators
5759
- qcom,pm8009-rpmh-regulators

drivers/regulator/qcom-rpmh-regulator.c

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1047,6 +1047,34 @@ static const struct rpmh_vreg_init_data pm6150l_vreg_data[] = {
10471047
{}
10481048
};
10491049

1050+
static const struct rpmh_vreg_init_data pm6350_vreg_data[] = {
1051+
RPMH_VREG("smps1", "smp%s1", &pmic5_ftsmps510, NULL),
1052+
RPMH_VREG("smps2", "smp%s2", &pmic5_hfsmps510, NULL),
1053+
/* smps3 - smps5 not configured */
1054+
RPMH_VREG("ldo1", "ldo%s1", &pmic5_nldo, NULL),
1055+
RPMH_VREG("ldo2", "ldo%s2", &pmic5_pldo, NULL),
1056+
RPMH_VREG("ldo3", "ldo%s3", &pmic5_pldo, NULL),
1057+
RPMH_VREG("ldo4", "ldo%s4", &pmic5_nldo, NULL),
1058+
RPMH_VREG("ldo5", "ldo%s5", &pmic5_pldo, NULL),
1059+
RPMH_VREG("ldo6", "ldo%s6", &pmic5_pldo, NULL),
1060+
RPMH_VREG("ldo7", "ldo%s7", &pmic5_pldo, NULL),
1061+
RPMH_VREG("ldo8", "ldo%s8", &pmic5_pldo, NULL),
1062+
RPMH_VREG("ldo9", "ldo%s9", &pmic5_pldo, NULL),
1063+
RPMH_VREG("ldo10", "ldo%s10", &pmic5_pldo, NULL),
1064+
RPMH_VREG("ldo11", "ldo%s11", &pmic5_pldo, NULL),
1065+
RPMH_VREG("ldo12", "ldo%s12", &pmic5_pldo, NULL),
1066+
RPMH_VREG("ldo13", "ldo%s13", &pmic5_nldo, NULL),
1067+
RPMH_VREG("ldo14", "ldo%s14", &pmic5_pldo, NULL),
1068+
RPMH_VREG("ldo15", "ldo%s15", &pmic5_nldo, NULL),
1069+
RPMH_VREG("ldo16", "ldo%s16", &pmic5_nldo, NULL),
1070+
/* ldo17 not configured */
1071+
RPMH_VREG("ldo18", "ldo%s18", &pmic5_nldo, NULL),
1072+
RPMH_VREG("ldo19", "ldo%s19", &pmic5_nldo, NULL),
1073+
RPMH_VREG("ldo20", "ldo%s20", &pmic5_nldo, NULL),
1074+
RPMH_VREG("ldo21", "ldo%s21", &pmic5_nldo, NULL),
1075+
RPMH_VREG("ldo22", "ldo%s22", &pmic5_nldo, NULL),
1076+
};
1077+
10501078
static const struct rpmh_vreg_init_data pmx55_vreg_data[] = {
10511079
RPMH_VREG("smps1", "smp%s1", &pmic5_ftsmps510, "vdd-s1"),
10521080
RPMH_VREG("smps2", "smp%s2", &pmic5_hfsmps510, "vdd-s2"),
@@ -1201,6 +1229,10 @@ static const struct of_device_id __maybe_unused rpmh_regulator_match_table[] = {
12011229
.compatible = "qcom,pm6150l-rpmh-regulators",
12021230
.data = pm6150l_vreg_data,
12031231
},
1232+
{
1233+
.compatible = "qcom,pm6350-rpmh-regulators",
1234+
.data = pm6350_vreg_data,
1235+
},
12041236
{
12051237
.compatible = "qcom,pmc8180-rpmh-regulators",
12061238
.data = pm8150_vreg_data,

0 commit comments

Comments
 (0)