Message ID | 20180428054248.22387-2-bjorn.andersson@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Quoting Bjorn Andersson (2018-04-27 22:42:48) > diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi > index d6665e4f801f..ccbf6347aacb 100644 > --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi > @@ -220,6 +220,16 @@ > method = "smc"; > }; > > + rpm_glink: rpm-glink { > + compatible = "qcom,glink-rpm"; > + > + interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; > + > + qcom,rpm-msg-ram = <&rpm_msg_ram>; > + > + mboxes = <&apcs_glb 0>; Why so many newlines? > + }; > + > soc: soc {}; > }; > > @@ -337,4 +347,77 @@ > #interrupt-cells = <4>; > cell-index = <0>; > }; > + > + rpm_msg_ram: memory@68000 { unit address doesn't match reg property. > + compatible = "qcom,rpm-msg-ram"; > + reg = <0x778000 0x7000>; > + }; > + > + apcs_glb: mailbox@9820000 { unit address doesn't match reg property. > + compatible = "qcom,msm8998-apcs-hmss-global"; > + reg = <0x17911000 0x1000>; > + > + #mbox-cells = <1>; > + }; > +}; > + > +&rpm_glink { > + rpm_requests { > + compatible = "qcom,rpm-msm8998"; > + qcom,glink-channels = "rpm_requests"; > + > + pm8998-regulators { > + compatible = "qcom,rpm-pm8998-regulators"; > + > + pm8998_s1: s1 {}; > + pm8998_s2: s2 {}; > + pm8998_s3: s3 {}; > + pm8998_s4: s4 {}; > + pm8998_s5: s5 {}; > + pm8998_s6: s6 {}; > + pm8998_s7: s7 {}; > + pm8998_s8: s8 {}; > + pm8998_s9: s9 {}; > + pm8998_s10: s10 {}; > + pm8998_s11: s11 {}; > + pm8998_s12: s12 {}; > + pm8998_s13: s13 {}; > + pm8998_l1: l1 {}; > + pm8998_l2: l2 {}; > + pm8998_l3: l3 {}; > + pm8998_l4: l4 {}; > + pm8998_l5: l5 {}; > + pm8998_l6: l6 {}; > + pm8998_l7: l7 {}; > + pm8998_l8: l8 {}; > + pm8998_l9: l9 {}; > + pm8998_l10: l10 {}; > + pm8998_l11: l11 {}; > + pm8998_l12: l12 {}; > + pm8998_l13: l13 {}; > + pm8998_l14: l14 {}; > + pm8998_l15: l15 {}; > + pm8998_l16: l16 {}; > + pm8998_l17: l17 {}; > + pm8998_l18: l18 {}; > + pm8998_l19: l19 {}; > + pm8998_l20: l20 {}; > + pm8998_l21: l21 {}; > + pm8998_l22: l22 {}; > + pm8998_l23: l23 {}; > + pm8998_l24: l24 {}; > + pm8998_l25: l25 {}; > + pm8998_l26: l26 {}; > + pm8998_l27: l27 {}; > + pm8998_l28: l28 {}; > + pm8998_lvs1: lvs1 {}; > + pm8998_lvs2: lvs2 {}; What's the benefit to having the nodes here instead of in each board? > + }; > + > + pmi8998-regulators { > + compatible = "qcom,rpm-pmi8998-regulators"; > + > + pmi8998_bob: bob {}; > + }; These may be board specific? So each regulator container would need status = "disabled" and then status = "okay" in the board file.
On Mon 07 May 16:04 PDT 2018, Stephen Boyd wrote: > Quoting Bjorn Andersson (2018-04-27 22:42:48) > > diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi > > index d6665e4f801f..ccbf6347aacb 100644 > > --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi > > +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi > > @@ -220,6 +220,16 @@ > > method = "smc"; > > }; > > > > + rpm_glink: rpm-glink { > > + compatible = "qcom,glink-rpm"; > > + > > + interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; > > + > > + qcom,rpm-msg-ram = <&rpm_msg_ram>; > > + > > + mboxes = <&apcs_glb 0>; > > Why so many newlines? > No particular reason... > > + }; > > + > > soc: soc {}; > > }; > > > > @@ -337,4 +347,77 @@ > > #interrupt-cells = <4>; > > cell-index = <0>; > > }; > > + > > + rpm_msg_ram: memory@68000 { > > unit address doesn't match reg property. > Doh... > > + compatible = "qcom,rpm-msg-ram"; > > + reg = <0x778000 0x7000>; > > + }; [..] > > +&rpm_glink { > > + rpm_requests { > > + compatible = "qcom,rpm-msm8998"; > > + qcom,glink-channels = "rpm_requests"; > > + > > + pm8998-regulators { > > + compatible = "qcom,rpm-pm8998-regulators"; > > + > > + pm8998_s1: s1 {}; [..] > > + pm8998_lvs2: lvs2 {}; > > What's the benefit to having the nodes here instead of in each board? > That's how we've done it in the previous boards, but I had a discussion regarding this with Doug the other day and agree that it might make sense to just leave them out. In particular Doug wanted to use labels based on names in the schematics for his board... > > + }; > > + > > + pmi8998-regulators { > > + compatible = "qcom,rpm-pmi8998-regulators"; > > + > > + pmi8998_bob: bob {}; > > + }; > > These may be board specific? So each regulator container would need > status = "disabled" and then status = "okay" in the board file. > Right, we haven't really seen the need for this before, but it seems to make more sense to move all regulators and their references to the board file. Regards, Bjorn
diff --git a/arch/arm64/boot/dts/qcom/msm8998-mtp.dtsi b/arch/arm64/boot/dts/qcom/msm8998-mtp.dtsi index e30c95f63a05..4780751b560e 100644 --- a/arch/arm64/boot/dts/qcom/msm8998-mtp.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8998-mtp.dtsi @@ -18,3 +18,145 @@ status = "okay"; }; }; + +&rpm_glink { + rpm_requests { + pm8998-regulators { + s2 { + regulator-min-microvolt = <1128000>; + regulator-max-microvolt = <1128000>; + }; + s3 { + regulator-min-microvolt = <1352000>; + regulator-max-microvolt = <1352000>; + }; + s4 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + s5 { + regulator-min-microvolt = <1904000>; + regulator-max-microvolt = <2040000>; + }; + s7 { + regulator-min-microvolt = <900000>; + regulator-max-microvolt = <1028000>; + }; + s8 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <800000>; + }; + l1 { + regulator-min-microvolt = <880000>; + regulator-max-microvolt = <880000>; + }; + l2 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + }; + l3 { + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + }; + l5 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <800000>; + }; + l6 { + regulator-min-microvolt = <1808000>; + regulator-max-microvolt = <1808000>; + }; + l7 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + l8 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + }; + l9 { + regulator-min-microvolt = <1808000>; + regulator-max-microvolt = <2960000>; + }; + l10 { + regulator-min-microvolt = <1808000>; + regulator-max-microvolt = <2960000>; + }; + l11 { + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + }; + l12 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + l13 { + regulator-min-microvolt = <1808000>; + regulator-max-microvolt = <2960000>; + }; + l14 { + regulator-min-microvolt = <1880000>; + regulator-max-microvolt = <1880000>; + }; + l15 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + l16 { + regulator-min-microvolt = <2704000>; + regulator-max-microvolt = <2704000>; + }; + l17 { + regulator-min-microvolt = <1304000>; + regulator-max-microvolt = <1304000>; + }; + l18 { + regulator-min-microvolt = <2704000>; + regulator-max-microvolt = <2704000>; + }; + l19 { + regulator-min-microvolt = <3008000>; + regulator-max-microvolt = <3008000>; + }; + l20 { + regulator-min-microvolt = <2960000>; + regulator-max-microvolt = <2960000>; + }; + l21 { + regulator-min-microvolt = <2960000>; + regulator-max-microvolt = <2960000>; + }; + l22 { + regulator-min-microvolt = <2864000>; + regulator-max-microvolt = <2864000>; + }; + l23 { + regulator-min-microvolt = <3312000>; + regulator-max-microvolt = <3312000>; + }; + l24 { + regulator-min-microvolt = <3088000>; + regulator-max-microvolt = <3088000>; + }; + l25 { + regulator-min-microvolt = <3104000>; + regulator-max-microvolt = <3312000>; + }; + l26 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + }; + l28 { + regulator-min-microvolt = <3008000>; + regulator-max-microvolt = <3008000>; + }; + }; + + pmi8998-regulators { + bob { + regulator-min-microvolt = <3312000>; + regulator-max-microvolt = <3600000>; + }; + }; + }; +}; diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi index d6665e4f801f..ccbf6347aacb 100644 --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi @@ -220,6 +220,16 @@ method = "smc"; }; + rpm_glink: rpm-glink { + compatible = "qcom,glink-rpm"; + + interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; + + qcom,rpm-msg-ram = <&rpm_msg_ram>; + + mboxes = <&apcs_glb 0>; + }; + soc: soc {}; }; @@ -337,4 +347,77 @@ #interrupt-cells = <4>; cell-index = <0>; }; + + rpm_msg_ram: memory@68000 { + compatible = "qcom,rpm-msg-ram"; + reg = <0x778000 0x7000>; + }; + + apcs_glb: mailbox@9820000 { + compatible = "qcom,msm8998-apcs-hmss-global"; + reg = <0x17911000 0x1000>; + + #mbox-cells = <1>; + }; +}; + +&rpm_glink { + rpm_requests { + compatible = "qcom,rpm-msm8998"; + qcom,glink-channels = "rpm_requests"; + + pm8998-regulators { + compatible = "qcom,rpm-pm8998-regulators"; + + pm8998_s1: s1 {}; + pm8998_s2: s2 {}; + pm8998_s3: s3 {}; + pm8998_s4: s4 {}; + pm8998_s5: s5 {}; + pm8998_s6: s6 {}; + pm8998_s7: s7 {}; + pm8998_s8: s8 {}; + pm8998_s9: s9 {}; + pm8998_s10: s10 {}; + pm8998_s11: s11 {}; + pm8998_s12: s12 {}; + pm8998_s13: s13 {}; + pm8998_l1: l1 {}; + pm8998_l2: l2 {}; + pm8998_l3: l3 {}; + pm8998_l4: l4 {}; + pm8998_l5: l5 {}; + pm8998_l6: l6 {}; + pm8998_l7: l7 {}; + pm8998_l8: l8 {}; + pm8998_l9: l9 {}; + pm8998_l10: l10 {}; + pm8998_l11: l11 {}; + pm8998_l12: l12 {}; + pm8998_l13: l13 {}; + pm8998_l14: l14 {}; + pm8998_l15: l15 {}; + pm8998_l16: l16 {}; + pm8998_l17: l17 {}; + pm8998_l18: l18 {}; + pm8998_l19: l19 {}; + pm8998_l20: l20 {}; + pm8998_l21: l21 {}; + pm8998_l22: l22 {}; + pm8998_l23: l23 {}; + pm8998_l24: l24 {}; + pm8998_l25: l25 {}; + pm8998_l26: l26 {}; + pm8998_l27: l27 {}; + pm8998_l28: l28 {}; + pm8998_lvs1: lvs1 {}; + pm8998_lvs2: lvs2 {}; + }; + + pmi8998-regulators { + compatible = "qcom,rpm-pmi8998-regulators"; + + pmi8998_bob: bob {}; + }; + }; };
This adds the rpm and rpm regulators to the msm8998 platform and mtp. Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> --- arch/arm64/boot/dts/qcom/msm8998-mtp.dtsi | 142 ++++++++++++++++++++++++++++++ arch/arm64/boot/dts/qcom/msm8998.dtsi | 83 +++++++++++++++++ 2 files changed, 225 insertions(+)