dt-bindings: irqchip: ti, sci-intr: Update bindings to drop the usage of gic as parent
authorLokesh Vutla <lokeshvutla@ti.com>
Thu, 6 Aug 2020 07:48:17 +0000 (13:18 +0530)
committerMarc Zyngier <maz@kernel.org>
Sun, 16 Aug 2020 21:00:23 +0000 (22:00 +0100)
Drop the firmware related dt-bindings and use the hardware specified
interrupt numbers within Interrupt Router. This ensures interrupt router
DT node need not assume any interrupt parent type.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20200806074826.24607-5-lokeshvutla@ti.com
Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt

index 178fca0..c7046f3 100644 (file)
@@ -44,15 +44,17 @@ Required Properties:
                        4: If intr supports level triggered interrupts.
 - interrupt-controller:        Identifies the node as an interrupt controller
 - #interrupt-cells:    Specifies the number of cells needed to encode an
-                       interrupt source. The value should be 2.
-                       First cell should contain the TISCI device ID of source
-                       Second cell should contain the interrupt source offset
-                       within the device.
+                       interrupt source. The value should be 1.
+                       First cell should contain interrupt router input number
+                       as specified by hardware.
 - ti,sci:              Phandle to TI-SCI compatible System controller node.
-- ti,sci-dst-id:       TISCI device ID of the destination IRQ controller.
-- ti,sci-rm-range-girq:        Array of TISCI subtype ids representing the host irqs
-                       assigned to this interrupt router. Each subtype id
-                       corresponds to a range of host irqs.
+- ti,sci-dev-id:       TISCI device id of interrupt controller.
+- ti,interrupt-ranges: Set of triplets containing ranges that convert
+                       the INTR output interrupt numbers to parent's
+                       interrupt number. Each triplet has following entries:
+                       - First entry specifies the base for intr output irq
+                       - Second entry specifies the base for parent irqs
+                       - Third entry specifies the limit
 
 For more details on TISCI IRQ resource management refer:
 https://downloads.ti.com/tisci/esd/latest/2_tisci_msgs/rm/rm_irq.html
@@ -62,21 +64,20 @@ Example:
 The following example demonstrates both interrupt router node and the consumer
 node(main gpio) on the AM654 SoC:
 
-main_intr: interrupt-controller0 {
+main_gpio_intr: interrupt-controller0 {
        compatible = "ti,sci-intr";
        ti,intr-trigger-type = <1>;
        interrupt-controller;
        interrupt-parent = <&gic500>;
-       #interrupt-cells = <2>;
+       #interrupt-cells = <1>;
        ti,sci = <&dmsc>;
-       ti,sci-dst-id = <56>;
-       ti,sci-rm-range-girq = <0x1>;
+       ti,sci-dev-id = <131>;
+       ti,interrupt-ranges = <0 360 32>;
 };
 
 main_gpio0: gpio@600000 {
        ...
-       interrupt-parent = <&main_intr>;
-       interrupts = <57 256>, <57 257>, <57 258>,
-                    <57 259>, <57 260>, <57 261>;
+       interrupt-parent = <&main_gpio_intr>;
+       interrupts = <192>, <193>, <194>, <195>, <196>, <197>;
        ...
 };