]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dt-bindings: memory-controllers: fsl,ifc: split child node differences
authorFrank Li <Frank.Li@nxp.com>
Mon, 9 Sep 2024 16:53:57 +0000 (12:53 -0400)
committerKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Mon, 30 Sep 2024 10:45:23 +0000 (12:45 +0200)
ifc can connect nor, nand and fpag. Split "^.*@..." into "nand@..." and
"(flash|fpga|board-control|cpld)@..." to better describe the child's node
binding requirements.

Fix below warning:
arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dtb: /soc/memory-controller@1530000/nand@1,0:
failed to match any schema with compatible: ['fsl,ifc-nand']

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20240909165358.2384975-1-Frank.Li@nxp.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Documentation/devicetree/bindings/memory-controllers/fsl/fsl,ifc.yaml

index d1c3421bee107b27b2fa740c8a0784e9dba12e37..f7cf0f91c1c02052e2f0f3bbeba09b158bc3901b 100644 (file)
@@ -58,17 +58,39 @@ properties:
       access window as configured.
 
 patternProperties:
-  "^.*@[a-f0-9]+(,[a-f0-9]+)+$":
+  "^nand@[a-f0-9]+(,[a-f0-9]+)+$":
     type: object
-    description: |
-      Child device nodes describe the devices connected to IFC such as NOR (e.g.
-      cfi-flash) and NAND (fsl,ifc-nand). There might be board specific devices
-      like FPGAs, CPLDs, etc.
+    properties:
+      compatible:
+        const: fsl,ifc-nand
+
+      reg:
+        maxItems: 1
+
+      "#address-cells":
+        const: 1
+
+      "#size-cells":
+        const: 1
+
+    patternProperties:
+      "^partition@[0-9a-f]+":
+        $ref: /schemas/mtd/partitions/partition.yaml#
+        deprecated: true
 
     required:
       - compatible
       - reg
 
+    additionalProperties: false
+
+  "(flash|fpga|board-control|cpld)@[a-f0-9]+(,[a-f0-9]+)+$":
+    type: object
+    oneOf:
+      - $ref: /schemas/board/fsl,fpga-qixis.yaml#
+      - $ref: /schemas/mtd/mtd-physmap.yaml#
+    unevaluatedProperties: false
+
 required:
   - compatible
   - reg