[PATCH] dt-bindings: interrupt-controller: Convert cdns,xtensa-{mx,pic} to DT schema

Rob Herring (Arm) posted 1 patch 9 months, 1 week ago
.../interrupt-controller/cdns,xtensa-mx.txt   | 18 -------
.../interrupt-controller/cdns,xtensa-pic.txt  | 25 ----------
.../interrupt-controller/cdns,xtensa-pic.yaml | 50 +++++++++++++++++++
3 files changed, 50 insertions(+), 43 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt
delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml
[PATCH] dt-bindings: interrupt-controller: Convert cdns,xtensa-{mx,pic} to DT schema
Posted by Rob Herring (Arm) 9 months, 1 week ago
Convert the Xtensa interrupt controller bindings to DT schema. Both only
vary by the compatible string, so combine them into 1 schema doc.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
 .../interrupt-controller/cdns,xtensa-mx.txt   | 18 -------
 .../interrupt-controller/cdns,xtensa-pic.txt  | 25 ----------
 .../interrupt-controller/cdns,xtensa-pic.yaml | 50 +++++++++++++++++++
 3 files changed, 50 insertions(+), 43 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt
 delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml

diff --git a/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt b/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt
deleted file mode 100644
index d4de980e55fa..000000000000
--- a/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-* Xtensa Interrupt Distributor and Programmable Interrupt Controller (MX)
-
-Required properties:
-- compatible: Should be "cdns,xtensa-mx".
-
-Remaining properties have exact same meaning as in Xtensa PIC
-(see cdns,xtensa-pic.txt).
-
-Examples:
-	pic: pic {
-		compatible = "cdns,xtensa-mx";
-		/* one cell: internal irq number,
-		 * two cells: second cell == 0: internal irq number
-		 *            second cell == 1: external irq number
-		 */
-		#interrupt-cells = <2>;
-		interrupt-controller;
-	};
diff --git a/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt b/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt
deleted file mode 100644
index 026ef4cfc1d5..000000000000
--- a/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-* Xtensa built-in Programmable Interrupt Controller (PIC)
-
-Required properties:
-- compatible: Should be "cdns,xtensa-pic".
-- interrupt-controller: Identifies the node as an interrupt controller.
-- #interrupt-cells: The number of cells to define the interrupts.
-  It may be either 1 or 2.
-  When it's 1, the first cell is the internal IRQ number.
-  When it's 2, the first cell is the IRQ number, and the second cell
-  specifies whether it's internal (0) or external (1).
-  Periferals are usually connected to a fixed external IRQ, but for different
-  core variants it may be mapped to different internal IRQ.
-  IRQ sensitivity and priority are fixed for each core variant and may not be
-  changed at runtime.
-
-Examples:
-	pic: pic {
-		compatible = "cdns,xtensa-pic";
-		/* one cell: internal irq number,
-		 * two cells: second cell == 0: internal irq number
-		 *            second cell == 1: external irq number
-		 */
-		#interrupt-cells = <2>;
-		interrupt-controller;
-	};
diff --git a/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml b/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml
new file mode 100644
index 000000000000..6773207fee01
--- /dev/null
+++ b/Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright 2025 Max Filippov <jcmvbkbc@gmail.com>
+
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/interrupt-controller/cdns,xtensa-pic.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Xtensa Interrupt Controllers
+
+maintainers:
+  - Max Filippov <jcmvbkbc@gmail.com>
+
+description:
+  Xtensa Interrupt Distributor and Programmable Interrupt Controller (MX) and
+  Xtensa built-in Programmable Interrupt Controller (PIC)
+
+properties:
+  compatible:
+    enum:
+      - cdns,xtensa-mx
+      - cdns,xtensa-pic
+
+  '#interrupt-cells':
+    enum: [ 1, 2 ]
+    description:
+      Number of cells to define the interrupts. When 1, the first cell is the
+      internal IRQ number; when 2, the second cell specifies internal (0) or
+      external (1).
+
+  interrupt-controller: true
+
+required:
+  - compatible
+  - '#interrupt-cells'
+  - interrupt-controller
+
+additionalProperties: false
+
+examples:
+  - |
+    interrupt-controller {
+        compatible = "cdns,xtensa-pic";
+        /* one cell: internal irq number,
+         * two cells: second cell == 0: internal irq number
+         *            second cell == 1: external irq number
+         */
+        #interrupt-cells = <2>;
+        interrupt-controller;
+    };
-- 
2.47.2
Re: [PATCH] dt-bindings: interrupt-controller: Convert cdns,xtensa-{mx,pic} to DT schema
Posted by Max Filippov 9 months ago
On Mon, May 5, 2025 at 7:46 AM Rob Herring (Arm) <robh@kernel.org> wrote:
>
> Convert the Xtensa interrupt controller bindings to DT schema. Both only
> vary by the compatible string, so combine them into 1 schema doc.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
>  .../interrupt-controller/cdns,xtensa-mx.txt   | 18 -------
>  .../interrupt-controller/cdns,xtensa-pic.txt  | 25 ----------
>  .../interrupt-controller/cdns,xtensa-pic.yaml | 50 +++++++++++++++++++
>  3 files changed, 50 insertions(+), 43 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-mx.txt
>  delete mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.txt
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/cdns,xtensa-pic.yaml

Acked-by: Max Filippov <jcmvbkbc@gmail.com>

-- 
Thanks.
-- Max