diff mbox series

[v2,2/3] dt-bindings: remoteproc: qcom: Add SC7280 WPSS support

Message ID 1628618483-664-3-git-send-email-pillair@codeaurora.org
State New
Headers show
Series Add support for sc7280 WPSS PIL loading | expand

Commit Message

Rakesh Pillai Aug. 10, 2021, 6:01 p.m. UTC
Add WPSS PIL loading support for SC7280 SoCs.

Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
---
 .../bindings/remoteproc/qcom,hexagon-v56.yaml      | 79 ++++++++++++++++++++--
 1 file changed, 74 insertions(+), 5 deletions(-)

Comments

Rob Herring Aug. 11, 2021, 5:37 p.m. UTC | #1
On Tue, Aug 10, 2021 at 11:31:22PM +0530, Rakesh Pillai wrote:
> Add WPSS PIL loading support for SC7280 SoCs.
> 
> Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
> ---
>  .../bindings/remoteproc/qcom,hexagon-v56.yaml      | 79 ++++++++++++++++++++--
>  1 file changed, 74 insertions(+), 5 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
> index 5f3558e..9ae433c6 100644
> --- a/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
> +++ b/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
> @@ -17,6 +17,7 @@ properties:
>    compatible:
>      enum:
>        - qcom,qcs404-cdsp-pil
> +      - qcom,sc7280-wpss-pil
>        - qcom,sdm845-adsp-pil
>  
>    reg:
> @@ -26,25 +27,30 @@ properties:
>  
>    interrupts-extended:
>      minItems: 5
> -    maxItems: 5
> +    maxItems: 6
>  
>    interrupt-names:
>      minItems: 5
> -    maxItems: 5
> +    maxItems: 6
>  
>    clocks:
> -    minItems: 7
> +    minItems: 3

Patch 1 shows 3 clocks are valid...

>      maxItems: 8
>      description:
>        List of phandles and clock specifier pairs for the Hexagon,
>        per clock-names below.
>  
>    clock-names:
> -    minItems: 7
> +    minItems: 3
>      maxItems: 8
>  
>    power-domains:
> -    maxItems: 1
> +    minItems: 1
> +    maxItems: 2
> +
> +  power-domain-names:
> +    minItems: 1
> +    maxItems: 2
>  
>    resets:
>      minItems: 1
> @@ -92,6 +98,7 @@ required:
>    - clocks
>    - clock-names
>    - power-domains
> +  - power-domain-names

It's not backwards compatible to add a required property.

>    - qcom,halt-regs
>    - memory-region
>    - qcom,smem-states
> @@ -129,6 +136,31 @@ allOf:
>          compatible:
>            contains:
>              enum:
> +              - qcom,sc7280-wpss-pil
> +    then:
> +      properties:
> +        interrupts-extended:
> +          items:
> +            - description: Watchdog interrupt
> +            - description: Fatal interrupt
> +            - description: Ready interrupt
> +            - description: Handover interrupt
> +            - description: Stop acknowledge interrupt
> +            - description: Shutdown acknowledge interrupt
> +        interrupt-names:
> +          items:
> +            - const: wdog
> +            - const: fatal
> +            - const: ready
> +            - const: handover
> +            - const: stop-ack
> +            - const: shutdown-ack

The items lists can go in the main section with 'minItems: 5' and just 
'minItems: 6' here.

> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
>                - qcom,sdm845-adsp-pil
>      then:
>        properties:
> @@ -211,6 +243,26 @@ allOf:
>          power-domains:
>            items:
>              - description: CX power domain
> +        power-domain-names:
> +          items:
> +            - const: cx
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,sc7280-wpss-pil
> +    then:
> +      properties:
> +        power-domains:
> +          items:
> +            - description: CX power domain
> +            - description: MX power domain
> +        power-domain-names:
> +          items:
> +            - const: cx
> +            - const: mx

As 'cx' is always the first entry, the 'items' lists here can be moved 
to the main section and you just need minItems or maxItems in the 
if/then.

>  
>    - if:
>        properties:
> @@ -244,6 +296,23 @@ allOf:
>            items:
>              - const: restart
>  
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - qcom,sc7280-wpss-pil
> +    then:
> +      properties:
> +        resets:
> +          items:
> +            - description: AOSS restart
> +            - description: PDC SYNC
> +        reset-names:
> +          items:
> +            - const: restart
> +            - const: pdc_sync
> +
>  examples:
>    - |
>      #include <dt-bindings/interrupt-controller/arm-gic.h>
> -- 
> 2.7.4
> 
>
Rakesh Pillai Sept. 9, 2021, 8:36 a.m. UTC | #2
> -----Original Message-----

> From: Rob Herring <robh@kernel.org>

> Sent: Wednesday, August 11, 2021 10:55 PM

> To: Rakesh Pillai <pillair@codeaurora.org>

> Cc: robh+dt@kernel.org; sibis@codeaurora.org; sboyd@kernel.org;

> bjorn.andersson@linaro.org; agross@kernel.org; linux-

> kernel@vger.kernel.org; devicetree@vger.kernel.org;

> mpubbise@codeaurora.org; linux-arm-msm@vger.kernel.org

> Subject: Re: [PATCH v2 2/3] dt-bindings: remoteproc: qcom: Add SC7280

> WPSS support

> 

> On Tue, 10 Aug 2021 23:31:22 +0530, Rakesh Pillai wrote:

> > Add WPSS PIL loading support for SC7280 SoCs.

> >

> > Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>

> > ---

> >  .../bindings/remoteproc/qcom,hexagon-v56.yaml      | 79

> ++++++++++++++++++++--

> >  1 file changed, 74 insertions(+), 5 deletions(-)

> >

> 

> My bot found errors running 'make DT_CHECKER_FLAGS=-m

> dt_binding_check'

> on your patch (DT_CHECKER_FLAGS is new in v5.13):

> 

> yamllint warnings/errors:

> 

> dtschema/dtc warnings/errors:

> /builds/robherring/linux-dt-

> review/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-

> v56.example.dt.yaml: remoteproc@17300000: 'power-domain-names' is a

> required property

> 	From schema: /builds/robherring/linux-dt-

> review/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-

> v56.yaml

> 

> doc reference errors (make refcheckdocs):

> 

> See https://patchwork.ozlabs.org/patch/1515482

> 

> This check can fail if there are any dependencies. The base for a patch

series
> is generally the most recent rc1.

> 

> If you already ran 'make dt_binding_check' and didn't see the above

error(s),
> then make sure 'yamllint' is installed and dt-schema is up to

> date:

> 

> pip3 install dtschema --upgrade

> 

> Please check and re-submit.


Thanks Rob, I will submit next patchset for this and fix the issues.
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
index 5f3558e..9ae433c6 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,hexagon-v56.yaml
@@ -17,6 +17,7 @@  properties:
   compatible:
     enum:
       - qcom,qcs404-cdsp-pil
+      - qcom,sc7280-wpss-pil
       - qcom,sdm845-adsp-pil
 
   reg:
@@ -26,25 +27,30 @@  properties:
 
   interrupts-extended:
     minItems: 5
-    maxItems: 5
+    maxItems: 6
 
   interrupt-names:
     minItems: 5
-    maxItems: 5
+    maxItems: 6
 
   clocks:
-    minItems: 7
+    minItems: 3
     maxItems: 8
     description:
       List of phandles and clock specifier pairs for the Hexagon,
       per clock-names below.
 
   clock-names:
-    minItems: 7
+    minItems: 3
     maxItems: 8
 
   power-domains:
-    maxItems: 1
+    minItems: 1
+    maxItems: 2
+
+  power-domain-names:
+    minItems: 1
+    maxItems: 2
 
   resets:
     minItems: 1
@@ -92,6 +98,7 @@  required:
   - clocks
   - clock-names
   - power-domains
+  - power-domain-names
   - qcom,halt-regs
   - memory-region
   - qcom,smem-states
@@ -129,6 +136,31 @@  allOf:
         compatible:
           contains:
             enum:
+              - qcom,sc7280-wpss-pil
+    then:
+      properties:
+        interrupts-extended:
+          items:
+            - description: Watchdog interrupt
+            - description: Fatal interrupt
+            - description: Ready interrupt
+            - description: Handover interrupt
+            - description: Stop acknowledge interrupt
+            - description: Shutdown acknowledge interrupt
+        interrupt-names:
+          items:
+            - const: wdog
+            - const: fatal
+            - const: ready
+            - const: handover
+            - const: stop-ack
+            - const: shutdown-ack
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
               - qcom,sdm845-adsp-pil
     then:
       properties:
@@ -211,6 +243,26 @@  allOf:
         power-domains:
           items:
             - description: CX power domain
+        power-domain-names:
+          items:
+            - const: cx
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,sc7280-wpss-pil
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: CX power domain
+            - description: MX power domain
+        power-domain-names:
+          items:
+            - const: cx
+            - const: mx
 
   - if:
       properties:
@@ -244,6 +296,23 @@  allOf:
           items:
             - const: restart
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - qcom,sc7280-wpss-pil
+    then:
+      properties:
+        resets:
+          items:
+            - description: AOSS restart
+            - description: PDC SYNC
+        reset-names:
+          items:
+            - const: restart
+            - const: pdc_sync
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>