19ecee1d6SAnson Huang# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
29ecee1d6SAnson Huang%YAML 1.2
39ecee1d6SAnson Huang---
49ecee1d6SAnson Huang$id: http://devicetree.org/schemas/interrupt-controller/fsl,irqsteer.yaml#
59ecee1d6SAnson Huang$schema: http://devicetree.org/meta-schemas/core.yaml#
69ecee1d6SAnson Huang
79ecee1d6SAnson Huangtitle: Freescale IRQSTEER Interrupt Multiplexer
89ecee1d6SAnson Huang
99ecee1d6SAnson Huangmaintainers:
109ecee1d6SAnson Huang  - Lucas Stach <l.stach@pengutronix.de>
119ecee1d6SAnson Huang
129ecee1d6SAnson Huangproperties:
139ecee1d6SAnson Huang  compatible:
142b5ee687SKrzysztof Kozlowski    oneOf:
152b5ee687SKrzysztof Kozlowski      - const: fsl,imx-irqsteer
162b5ee687SKrzysztof Kozlowski      - items:
172b5ee687SKrzysztof Kozlowski          - const: fsl,imx8m-irqsteer
182b5ee687SKrzysztof Kozlowski          - const: fsl,imx-irqsteer
199ecee1d6SAnson Huang
209ecee1d6SAnson Huang  reg:
219ecee1d6SAnson Huang    maxItems: 1
229ecee1d6SAnson Huang
239ecee1d6SAnson Huang  interrupts:
249ecee1d6SAnson Huang    description: |
259ecee1d6SAnson Huang      should contain the up to 8 parent interrupt lines used to multiplex
269ecee1d6SAnson Huang      the input interrupts. They should be specified sequentially from
279ecee1d6SAnson Huang      output 0 to 7.
289ecee1d6SAnson Huang    items:
299ecee1d6SAnson Huang      - description: output interrupt 0
309ecee1d6SAnson Huang      - description: output interrupt 1
319ecee1d6SAnson Huang      - description: output interrupt 2
329ecee1d6SAnson Huang      - description: output interrupt 3
339ecee1d6SAnson Huang      - description: output interrupt 4
349ecee1d6SAnson Huang      - description: output interrupt 5
359ecee1d6SAnson Huang      - description: output interrupt 6
369ecee1d6SAnson Huang      - description: output interrupt 7
379ecee1d6SAnson Huang    minItems: 1
389ecee1d6SAnson Huang    maxItems: 8
399ecee1d6SAnson Huang
409ecee1d6SAnson Huang  clocks:
419ecee1d6SAnson Huang    maxItems: 1
429ecee1d6SAnson Huang
439ecee1d6SAnson Huang  clock-names:
449ecee1d6SAnson Huang    const: ipg
459ecee1d6SAnson Huang
469ecee1d6SAnson Huang  interrupt-controller: true
479ecee1d6SAnson Huang
489ecee1d6SAnson Huang  "#interrupt-cells":
499ecee1d6SAnson Huang    const: 1
509ecee1d6SAnson Huang
519ecee1d6SAnson Huang  fsl,channel:
529ecee1d6SAnson Huang    $ref: '/schemas/types.yaml#/definitions/uint32'
539ecee1d6SAnson Huang    description: |
549ecee1d6SAnson Huang      u32 value representing the output channel that all input IRQs should be
559ecee1d6SAnson Huang      steered into.
569ecee1d6SAnson Huang
579ecee1d6SAnson Huang  fsl,num-irqs:
589ecee1d6SAnson Huang    $ref: '/schemas/types.yaml#/definitions/uint32'
599ecee1d6SAnson Huang    description: |
609ecee1d6SAnson Huang      u32 value representing the number of input interrupts of this channel,
619ecee1d6SAnson Huang      should be multiple of 32 input interrupts and up to 512 interrupts.
629ecee1d6SAnson Huang
639ecee1d6SAnson Huangrequired:
649ecee1d6SAnson Huang  - compatible
659ecee1d6SAnson Huang  - reg
669ecee1d6SAnson Huang  - interrupts
679ecee1d6SAnson Huang  - clocks
689ecee1d6SAnson Huang  - clock-names
699ecee1d6SAnson Huang  - interrupt-controller
709ecee1d6SAnson Huang  - "#interrupt-cells"
719ecee1d6SAnson Huang  - fsl,channel
729ecee1d6SAnson Huang  - fsl,num-irqs
739ecee1d6SAnson Huang
749ecee1d6SAnson HuangadditionalProperties: false
759ecee1d6SAnson Huang
769ecee1d6SAnson Huangexamples:
779ecee1d6SAnson Huang  - |
789ecee1d6SAnson Huang    #include <dt-bindings/clock/imx8mq-clock.h>
799ecee1d6SAnson Huang    #include <dt-bindings/interrupt-controller/arm-gic.h>
809ecee1d6SAnson Huang
819ecee1d6SAnson Huang    interrupt-controller@32e2d000 {
829ecee1d6SAnson Huang        compatible = "fsl,imx-irqsteer";
839ecee1d6SAnson Huang        reg = <0x32e2d000 0x1000>;
849ecee1d6SAnson Huang        interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
859ecee1d6SAnson Huang        clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>;
869ecee1d6SAnson Huang        clock-names = "ipg";
879ecee1d6SAnson Huang        fsl,channel = <0>;
889ecee1d6SAnson Huang        fsl,num-irqs = <64>;
899ecee1d6SAnson Huang        interrupt-controller;
909ecee1d6SAnson Huang        #interrupt-cells = <1>;
919ecee1d6SAnson Huang    };
92