Message ID | 1631800770-371-3-git-send-email-sibis@codeaurora.org (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | Use qmp_send to update co-processor load state | expand |
On Thu, 16 Sep 2021 19:29:19 +0530, Sibi Sankar wrote: > 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(-) > Reviewed-by: Rob Herring <robh@kernel.org>
On Thu, 16 Sep 2021 19:29:19 +0530, Sibi Sankar wrote: > 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. > > [...] Applied, thanks! [02/13] dt-bindings: remoteproc: qcom: pas: Add QMP property commit: e73c632b18a936b5489068d2418a58ea95b49469 Best regards,
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>