On Wed, May 20, 2020 at 06:14:46PM +0530, Lokesh Vutla wrote: > 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. I didn't like this binding to begin with, but now you're breaking compatibility. > Signed-off-by: Lokesh Vutla <lokeshvutla@xxxxxx> > --- > .../interrupt-controller/ti,sci-intr.txt | 31 ++++++++++--------- > 1 file changed, 16 insertions(+), 15 deletions(-) > > diff --git a/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt b/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt > index 1a8718f8855d..8b56b2de1c73 100644 > --- a/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt > +++ b/Documentation/devicetree/bindings/interrupt-controller/ti,sci-intr.txt > @@ -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 Humm, sounds like what interrupt-map does. > > For more details on TISCI IRQ resource management refer: > http://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>; > ... > }; > -- > 2.17.1 >