LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Sibi Sankar <sibis@codeaurora.org>
To: mka@chromium.org, swboyd@chromium.org,
	bjorn.andersson@linaro.org, robh+dt@kernel.org
Cc: ulf.hansson@linaro.org, rjw@rjwysocki.net, agross@kernel.org,
	ohad@wizery.com, mathieu.poirier@linaro.org,
	linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	dianders@chromium.org, rishabhb@codeaurora.org,
	sidgup@codeaurora.org, Sibi Sankar <sibis@codeaurora.org>
Subject: [PATCH v7 02/13] dt-bindings: remoteproc: qcom: pas: Add QMP property
Date: Thu, 16 Sep 2021 19:29:19 +0530	[thread overview]
Message-ID: <1631800770-371-3-git-send-email-sibis@codeaurora.org> (raw)
In-Reply-To: <1631800770-371-1-git-send-email-sibis@codeaurora.org>

The load state power-domain, used by the co-processors to notify the
Always on Subsystem (AOSS) that a particular co-processor is up/down,
suffers from the side-effect of changing states during suspend/resume.
However the co-processors enter low-power modes independent to that of
the application processor and their states are expected to remain
unaltered across system suspend/resume cycles. To achieve this behavior
let's drop the load state power-domain and replace them with the qmp
property for all SoCs supporting low power mode signalling.

Due to the current broken load state implementation, we can afford the
binding breakage that ensues and the remoteproc functionality will remain
the same when using newer kernels with older dtbs.

Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
---

v7:
 * Set "qcom,qmp" property to false for unsupported devices. [Rob]

 .../devicetree/bindings/remoteproc/qcom,adsp.yaml  | 54 ++++++++++------------
 1 file changed, 24 insertions(+), 30 deletions(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
index 0c112f3264a9..ff265aa365de 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml
@@ -93,6 +93,10 @@ properties:
     maxItems: 1
     description: Reference to the reserved-memory for the Hexagon core
 
+  qcom,qmp:
+    $ref: /schemas/types.yaml#/definitions/phandle
+    description: Reference to the AOSS side-channel message RAM.
+
   qcom,smem-states:
     $ref: /schemas/types.yaml#/definitions/phandle-array
     description: States used by the AP to signal the Hexagon core
@@ -369,13 +373,11 @@ allOf:
       properties:
         power-domains:
           items:
-            - description: Load State power domain
             - description: CX power domain
             - description: MX power domain
             - description: MSS power domain
         power-domain-names:
           items:
-            - const: load_state
             - const: cx
             - const: mx
             - const: mss
@@ -391,43 +393,20 @@ allOf:
       properties:
         power-domains:
           items:
-            - description: Load State power domain
             - description: CX power domain
-        power-domain-names:
-          items:
-            - const: load_state
-            - const: cx
 
   - if:
       properties:
         compatible:
           contains:
             enum:
+              - qcom,sdx55-mpss-pas
               - qcom,sm8150-mpss-pas
               - qcom,sm8350-mpss-pas
     then:
       properties:
         power-domains:
           items:
-            - description: Load State power domain
-            - description: CX power domain
-            - description: MSS power domain
-        power-domain-names:
-          items:
-            - const: load_state
-            - const: cx
-            - const: mss
-
-  - if:
-      properties:
-        compatible:
-          contains:
-            enum:
-              - qcom,sdx55-mpss-pas
-    then:
-      properties:
-        power-domains:
-          items:
             - description: CX power domain
             - description: MSS power domain
         power-domain-names:
@@ -451,12 +430,10 @@ allOf:
       properties:
         power-domains:
           items:
-            - description: Load State power domain
             - description: LCX power domain
             - description: LMX power domain
         power-domain-names:
           items:
-            - const: load_state
             - const: lcx
             - const: lmx
 
@@ -470,12 +447,10 @@ allOf:
       properties:
         power-domains:
           items:
-            - description: Load State power domain
             - description: CX power domain
             - description: MXC power domain
         power-domain-names:
           items:
-            - const: load_state
             - const: cx
             - const: mxc
 
@@ -511,6 +486,25 @@ allOf:
             - const: mss_restart
             - const: pdc_reset
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,msm8974-adsp-pil
+              - qcom,msm8996-adsp-pil
+              - qcom,msm8996-slpi-pil
+              - qcom,msm8998-adsp-pas
+              - qcom,msm8998-slpi-pas
+              - qcom,qcs404-adsp-pas
+              - qcom,qcs404-cdsp-pas
+              - qcom,qcs404-wcss-pas
+              - qcom,sdm660-adsp-pas
+              - qcom,sdx55-mpss-pas
+    then:
+      properties:
+        qcom,qmp: false
+
 examples:
   - |
     #include <dt-bindings/clock/qcom,rpmcc.h>
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


  parent reply	other threads:[~2021-09-16 14:00 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-16 13:59 [PATCH v7 00/13] Use qmp_send to update co-processor load state Sibi Sankar
2021-09-16 13:59 ` [PATCH v7 01/13] dt-bindings: soc: qcom: aoss: Drop the load state power-domain Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` Sibi Sankar [this message]
2021-09-21 22:06   ` [PATCH v7 02/13] dt-bindings: remoteproc: qcom: pas: Add QMP property Rob Herring
2021-09-27 20:54   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 03/13] dt-bindings: remoteproc: qcom: " Sibi Sankar
2021-09-27 20:54   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 04/13] remoteproc: qcom: q6v5: Use qmp_send to update co-processor load state Sibi Sankar
2021-09-27 20:54   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 05/13] arm64: dts: qcom: sc7180: Use QMP property to control " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 06/13] arm64: dts: qcom: sc7280: " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 07/13] arm64: dts: qcom: sdm845: " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 08/13] arm64: dts: qcom: sm8150: " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 09/13] arm64: dts: qcom: sm8250: " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 10/13] arm64: dts: qcom: sm8350: " Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 11/13] soc: qcom: aoss: Drop power domain support Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 12/13] dt-bindings: msm/dp: Remove aoss-qmp header Sibi Sankar
2021-09-27 20:53   ` (subset) " Bjorn Andersson
2021-09-16 13:59 ` [PATCH v7 13/13] dt-bindings: soc: qcom: aoss: Delete unused power-domain definitions Sibi Sankar
2021-09-27 20:54   ` (subset) " Bjorn Andersson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1631800770-371-3-git-send-email-sibis@codeaurora.org \
    --to=sibis@codeaurora.org \
    --cc=agross@kernel.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dianders@chromium.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=mka@chromium.org \
    --cc=ohad@wizery.com \
    --cc=rishabhb@codeaurora.org \
    --cc=rjw@rjwysocki.net \
    --cc=robh+dt@kernel.org \
    --cc=sidgup@codeaurora.org \
    --cc=swboyd@chromium.org \
    --cc=ulf.hansson@linaro.org \
    --subject='Re: [PATCH v7 02/13] dt-bindings: remoteproc: qcom: pas: Add QMP property' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).