Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/interrupt-controller/fsl,irqsteer.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Freescale IRQSTEER Interrupt Multiplexer
0008 
0009 maintainers:
0010   - Lucas Stach <l.stach@pengutronix.de>
0011 
0012 properties:
0013   compatible:
0014     oneOf:
0015       - const: fsl,imx-irqsteer
0016       - items:
0017           - const: fsl,imx8m-irqsteer
0018           - const: fsl,imx-irqsteer
0019 
0020   reg:
0021     maxItems: 1
0022 
0023   interrupts:
0024     description: |
0025       should contain the up to 8 parent interrupt lines used to multiplex
0026       the input interrupts. They should be specified sequentially from
0027       output 0 to 7.
0028     items:
0029       - description: output interrupt 0
0030       - description: output interrupt 1
0031       - description: output interrupt 2
0032       - description: output interrupt 3
0033       - description: output interrupt 4
0034       - description: output interrupt 5
0035       - description: output interrupt 6
0036       - description: output interrupt 7
0037     minItems: 1
0038 
0039   clocks:
0040     maxItems: 1
0041 
0042   clock-names:
0043     const: ipg
0044 
0045   interrupt-controller: true
0046 
0047   "#interrupt-cells":
0048     const: 1
0049 
0050   fsl,channel:
0051     $ref: '/schemas/types.yaml#/definitions/uint32'
0052     description: |
0053       u32 value representing the output channel that all input IRQs should be
0054       steered into.
0055 
0056   fsl,num-irqs:
0057     $ref: '/schemas/types.yaml#/definitions/uint32'
0058     description: |
0059       u32 value representing the number of input interrupts of this channel,
0060       should be multiple of 32 input interrupts and up to 512 interrupts.
0061 
0062 required:
0063   - compatible
0064   - reg
0065   - interrupts
0066   - clocks
0067   - clock-names
0068   - interrupt-controller
0069   - "#interrupt-cells"
0070   - fsl,channel
0071   - fsl,num-irqs
0072 
0073 additionalProperties: false
0074 
0075 examples:
0076   - |
0077     #include <dt-bindings/clock/imx8mq-clock.h>
0078     #include <dt-bindings/interrupt-controller/arm-gic.h>
0079 
0080     interrupt-controller@32e2d000 {
0081         compatible = "fsl,imx-irqsteer";
0082         reg = <0x32e2d000 0x1000>;
0083         interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
0084         clocks = <&clk IMX8MQ_CLK_DISP_APB_ROOT>;
0085         clock-names = "ipg";
0086         fsl,channel = <0>;
0087         fsl,num-irqs = <64>;
0088         interrupt-controller;
0089         #interrupt-cells = <1>;
0090     };