diff mbox series

arm64: dts: qcom: add IPA qcom,qmp property

Message ID 20220201140723.467431-1-elder@linaro.org (mailing list archive)
State Superseded
Headers show
Series arm64: dts: qcom: add IPA qcom,qmp property | expand

Commit Message

Alex Elder Feb. 1, 2022, 2:07 p.m. UTC
At least three platforms require the "qcom,qmp" property to be
specified, so the IPA driver can request register retention across
power collapse.  Update DTS files accordingly.

Signed-off-by: Alex Elder <elder@linaro.org>
---

Dave, Jakub, please let Bjorn take this through the Qualcomm tree.

 arch/arm64/boot/dts/qcom/sc7180.dtsi | 2 ++
 arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 ++
 arch/arm64/boot/dts/qcom/sm8350.dtsi | 2 ++
 3 files changed, 6 insertions(+)

Comments

Jakub Kicinski Feb. 3, 2022, 5:06 a.m. UTC | #1
On Tue,  1 Feb 2022 08:07:23 -0600 Alex Elder wrote:
> At least three platforms require the "qcom,qmp" property to be
> specified, so the IPA driver can request register retention across
> power collapse.  Update DTS files accordingly.
> 
> Signed-off-by: Alex Elder <elder@linaro.org>
> ---
> 
> Dave, Jakub, please let Bjorn take this through the Qualcomm tree.

I don't know much about DT but the patch defining the property is
targeting net - will it not cause validation errors? Or Bjorn knows 
to wait for the fixes to propagate? Or it doesn't matter? :)
Alex Elder Feb. 3, 2022, 11:27 a.m. UTC | #2
On 2/2/22 11:06 PM, Jakub Kicinski wrote:
> On Tue,  1 Feb 2022 08:07:23 -0600 Alex Elder wrote:
>> At least three platforms require the "qcom,qmp" property to be
>> specified, so the IPA driver can request register retention across
>> power collapse.  Update DTS files accordingly.
>>
>> Signed-off-by: Alex Elder <elder@linaro.org>
>> ---
>>
>> Dave, Jakub, please let Bjorn take this through the Qualcomm tree.
> 
> I don't know much about DT but the patch defining the property is
> targeting net - will it not cause validation errors? Or Bjorn knows
> to wait for the fixes to propagate? Or it doesn't matter? :)

It might matter sometimes, but in this case it does not.

If the DT property is present but never referenced by the
code, it doesn't matter.

The code in this patch looks up the DT property, and its
behavior is affected by whether the property is there
or not.  If it's not there, it's treated as an error
that can be safely ignored.

In the case this fix is actually needed, we'll need
both the code present and DT property defined.  If
the code is there but not the property, it's OK, but
the bug won't be fixed quite yet.

					-Alex
Rob Herring Feb. 3, 2022, 2:44 p.m. UTC | #3
On Thu, Feb 3, 2022 at 5:27 AM Alex Elder <elder@linaro.org> wrote:
>
> On 2/2/22 11:06 PM, Jakub Kicinski wrote:
> > On Tue,  1 Feb 2022 08:07:23 -0600 Alex Elder wrote:
> >> At least three platforms require the "qcom,qmp" property to be
> >> specified, so the IPA driver can request register retention across
> >> power collapse.  Update DTS files accordingly.
> >>
> >> Signed-off-by: Alex Elder <elder@linaro.org>
> >> ---
> >>
> >> Dave, Jakub, please let Bjorn take this through the Qualcomm tree.
> >
> > I don't know much about DT but the patch defining the property is
> > targeting net - will it not cause validation errors? Or Bjorn knows
> > to wait for the fixes to propagate? Or it doesn't matter? :)
>
> It might matter sometimes, but in this case it does not.
>
> If the DT property is present but never referenced by the
> code, it doesn't matter.
>
> The code in this patch looks up the DT property, and its
> behavior is affected by whether the property is there
> or not.  If it's not there, it's treated as an error
> that can be safely ignored.
>
> In the case this fix is actually needed, we'll need
> both the code present and DT property defined.  If
> the code is there but not the property, it's OK, but
> the bug won't be fixed quite yet.

If there's only one possible node that qcom,qmp points to, you can
just get the node by its compatible (of_find_compatible_node()). Then
you don't need a DT update to make things work. Of course, this
doesn't work too well if there are 10 possible compatibles without a
common fallback compatible.

Rob
Bjorn Andersson Feb. 3, 2022, 8:11 p.m. UTC | #4
On Thu 03 Feb 08:44 CST 2022, Rob Herring wrote:

> On Thu, Feb 3, 2022 at 5:27 AM Alex Elder <elder@linaro.org> wrote:
> >
> > On 2/2/22 11:06 PM, Jakub Kicinski wrote:
> > > On Tue,  1 Feb 2022 08:07:23 -0600 Alex Elder wrote:
> > >> At least three platforms require the "qcom,qmp" property to be
> > >> specified, so the IPA driver can request register retention across
> > >> power collapse.  Update DTS files accordingly.
> > >>
> > >> Signed-off-by: Alex Elder <elder@linaro.org>
> > >> ---
> > >>
> > >> Dave, Jakub, please let Bjorn take this through the Qualcomm tree.
> > >
> > > I don't know much about DT but the patch defining the property is
> > > targeting net - will it not cause validation errors? Or Bjorn knows
> > > to wait for the fixes to propagate? Or it doesn't matter? :)
> >
> > It might matter sometimes, but in this case it does not.
> >
> > If the DT property is present but never referenced by the
> > code, it doesn't matter.
> >
> > The code in this patch looks up the DT property, and its
> > behavior is affected by whether the property is there
> > or not.  If it's not there, it's treated as an error
> > that can be safely ignored.
> >
> > In the case this fix is actually needed, we'll need
> > both the code present and DT property defined.  If
> > the code is there but not the property, it's OK, but
> > the bug won't be fixed quite yet.
> 
> If there's only one possible node that qcom,qmp points to, you can
> just get the node by its compatible (of_find_compatible_node()). Then
> you don't need a DT update to make things work. Of course, this
> doesn't work too well if there are 10 possible compatibles without a
> common fallback compatible.
> 

In one of the latest platforms there's two QMP instances, so we decided
to make the reference explicit to prepare for the introduction of that.

So I intend to pick this patch through the qcom tree.

And we don't need to synchronize it with the net-changes; the two
changes can go independently and only when they are both in place will
the change take effect and the issue resolved.

Regards,
Bjorn
Bjorn Andersson Feb. 4, 2022, 6:35 p.m. UTC | #5
On Tue, 1 Feb 2022 08:07:23 -0600, Alex Elder wrote:
> At least three platforms require the "qcom,qmp" property to be
> specified, so the IPA driver can request register retention across
> power collapse.  Update DTS files accordingly.
> 
> 

Applied, thanks!

[1/1] arm64: dts: qcom: add IPA qcom,qmp property
      commit: 73419e4d2fd1b838fcb1df6a978d67b3ae1c5c01

Best regards,
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index 2151cd8c8c7ab..e1c46b80f14a0 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -1459,6 +1459,8 @@  ipa: ipa@1e40000 {
 					     "imem",
 					     "config";
 
+			qcom,qmp = <&aoss_qmp>;
+
 			qcom,smem-states = <&ipa_smp2p_out 0>,
 					   <&ipa_smp2p_out 1>;
 			qcom,smem-state-names = "ipa-clock-enabled-valid",
diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
index 937c2e0e93eb9..fe5792e7e8d7a 100644
--- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
@@ -1714,6 +1714,8 @@  ipa: ipa@1e40000 {
 			interconnect-names = "memory",
 					     "config";
 
+			qcom,qmp = <&aoss_qmp>;
+
 			qcom,smem-states = <&ipa_smp2p_out 0>,
 					   <&ipa_smp2p_out 1>;
 			qcom,smem-state-names = "ipa-clock-enabled-valid",
diff --git a/arch/arm64/boot/dts/qcom/sm8350.dtsi b/arch/arm64/boot/dts/qcom/sm8350.dtsi
index 53b39e718fb66..5c2866355e352 100644
--- a/arch/arm64/boot/dts/qcom/sm8350.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8350.dtsi
@@ -1425,6 +1425,8 @@  ipa: ipa@1e40000 {
 			interconnect-names = "memory",
 					     "config";
 
+			qcom,qmp = <&aoss_qmp>;
+
 			qcom,smem-states = <&ipa_smp2p_out 0>,
 					   <&ipa_smp2p_out 1>;
 			qcom,smem-state-names = "ipa-clock-enabled-valid",