diff mbox series

dt-bindings: mtd: brcm,brcmnand: update interrupts description

Message ID 20221104085316.24499-1-zajec5@gmail.com
State New
Headers show
Series dt-bindings: mtd: brcm,brcmnand: update interrupts description | expand

Commit Message

Rafał Miłecki Nov. 4, 2022, 8:53 a.m. UTC
From: Rafał Miłecki <rafal@milecki.pl>

1. DMA and EDU are mutually exclusive: don't allow both at the same time
2. Require interrupt-names for 2+ interrupts to avoid /guessing/

Reported-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
I also thought of something like:
  interrupts:
    minItems: 1
    items:
      - description: NAND CTLRDY interrupt
      - anyOf:
          - description: FLASH_DMA_DONE if flash DMA is available
          - description: FLASH_EDU_DONE if EDU is available
(to avoid text-form "or" in "description") but that didn't work:
  CHKDT   Documentation/devicetree/bindings/processed-schema.json
./Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml: error checking schema file
  SCHEMA  Documentation/devicetree/bindings/processed-schema.json
Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml: ignoring, error in schema: properties: interrupts
---
 .../devicetree/bindings/mtd/brcm,brcmnand.yaml   | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

Comments

Rob Herring (Arm) Nov. 7, 2022, 8:17 p.m. UTC | #1
On Fri, 04 Nov 2022 09:53:16 +0100, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
> 
> 1. DMA and EDU are mutually exclusive: don't allow both at the same time
> 2. Require interrupt-names for 2+ interrupts to avoid /guessing/
> 
> Reported-by: Florian Fainelli <f.fainelli@gmail.com>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
> I also thought of something like:
>   interrupts:
>     minItems: 1
>     items:
>       - description: NAND CTLRDY interrupt
>       - anyOf:
>           - description: FLASH_DMA_DONE if flash DMA is available
>           - description: FLASH_EDU_DONE if EDU is available
> (to avoid text-form "or" in "description") but that didn't work:
>   CHKDT   Documentation/devicetree/bindings/processed-schema.json
> ./Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml: error checking schema file
>   SCHEMA  Documentation/devicetree/bindings/processed-schema.json
> Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml: ignoring, error in schema: properties: interrupts
> ---
>  .../devicetree/bindings/mtd/brcm,brcmnand.yaml   | 16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
> 

Reviewed-by: Rob Herring <robh@kernel.org>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml b/Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml
index dd5a64969e37..cd606a21b53b 100644
--- a/Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml
+++ b/Documentation/devicetree/bindings/mtd/brcm,brcmnand.yaml
@@ -86,15 +86,15 @@  properties:
     minItems: 1
     items:
       - description: NAND CTLRDY interrupt
-      - description: FLASH_DMA_DONE if flash DMA is available
-      - description: FLASH_EDU_DONE if EDU is available
+      - description: FLASH_DMA_DONE (if flash DMA is available) or FLASH_EDU_DONE (if EDU is available)
 
   interrupt-names:
     minItems: 1
     items:
       - const: nand_ctlrdy
-      - const: flash_dma_done
-      - const: flash_edu_done
+      - enum:
+          - flash_dma_done
+          - flash_edu_done
 
   clocks:
     maxItems: 1
@@ -173,6 +173,13 @@  allOf:
             - const: nand
             - const: iproc-idm
             - const: iproc-ext
+  - if:
+      properties:
+        interrupts:
+          minItems: 2
+    then:
+      required:
+        - interrupt-names
 
 unevaluatedProperties: false
 
@@ -190,6 +197,7 @@  examples:
             reg-names = "nand", "flash-dma";
             interrupt-parent = <&hif_intr2_intc>;
             interrupts = <24>, <4>;
+            interrupt-names = "nand_ctlrdy", "flash_dma_done";
 
             #address-cells = <1>;
             #size-cells = <0>;