1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/interrupt-controller/fsl,ls-msi.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: Freescale Layerscape SCFG PCIe MSI controller 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel Vadotdescription: | 10*0e8011faSEmmanuel Vadot This interrupt controller hardware is a second level interrupt controller that 11*0e8011faSEmmanuel Vadot is hooked to a parent interrupt controller: e.g: ARM GIC for ARM-based 12*0e8011faSEmmanuel Vadot platforms. If interrupt-parent is not provided, the default parent interrupt 13*0e8011faSEmmanuel Vadot controller will be used. 14*0e8011faSEmmanuel Vadot 15*0e8011faSEmmanuel Vadot Each PCIe node needs to have property msi-parent that points to 16*0e8011faSEmmanuel Vadot MSI controller node 17*0e8011faSEmmanuel Vadot 18*0e8011faSEmmanuel Vadotmaintainers: 19*0e8011faSEmmanuel Vadot - Frank Li <Frank.Li@nxp.com> 20*0e8011faSEmmanuel Vadot 21*0e8011faSEmmanuel Vadotproperties: 22*0e8011faSEmmanuel Vadot compatible: 23*0e8011faSEmmanuel Vadot enum: 24*0e8011faSEmmanuel Vadot - fsl,ls1012a-msi 25*0e8011faSEmmanuel Vadot - fsl,ls1021a-msi 26*0e8011faSEmmanuel Vadot - fsl,ls1043a-msi 27*0e8011faSEmmanuel Vadot - fsl,ls1043a-v1.1-msi 28*0e8011faSEmmanuel Vadot - fsl,ls1046a-msi 29*0e8011faSEmmanuel Vadot 30*0e8011faSEmmanuel Vadot reg: 31*0e8011faSEmmanuel Vadot maxItems: 1 32*0e8011faSEmmanuel Vadot 33*0e8011faSEmmanuel Vadot '#msi-cells': 34*0e8011faSEmmanuel Vadot const: 1 35*0e8011faSEmmanuel Vadot 36*0e8011faSEmmanuel Vadot interrupts: 37*0e8011faSEmmanuel Vadot items: 38*0e8011faSEmmanuel Vadot - description: Shared MSI interrupt group 0 39*0e8011faSEmmanuel Vadot - description: Shared MSI interrupt group 1 40*0e8011faSEmmanuel Vadot - description: Shared MSI interrupt group 2 41*0e8011faSEmmanuel Vadot - description: Shared MSI interrupt group 3 42*0e8011faSEmmanuel Vadot minItems: 1 43*0e8011faSEmmanuel Vadot 44*0e8011faSEmmanuel Vadotrequired: 45*0e8011faSEmmanuel Vadot - compatible 46*0e8011faSEmmanuel Vadot - reg 47*0e8011faSEmmanuel Vadot - msi-controller 48*0e8011faSEmmanuel Vadot - interrupts 49*0e8011faSEmmanuel Vadot 50*0e8011faSEmmanuel VadotallOf: 51*0e8011faSEmmanuel Vadot - $ref: msi-controller.yaml 52*0e8011faSEmmanuel Vadot - if: 53*0e8011faSEmmanuel Vadot properties: 54*0e8011faSEmmanuel Vadot compatible: 55*0e8011faSEmmanuel Vadot contains: 56*0e8011faSEmmanuel Vadot enum: 57*0e8011faSEmmanuel Vadot - fsl,ls1046a-msi 58*0e8011faSEmmanuel Vadot then: 59*0e8011faSEmmanuel Vadot properties: 60*0e8011faSEmmanuel Vadot interrupts: 61*0e8011faSEmmanuel Vadot minItems: 4 62*0e8011faSEmmanuel Vadot else: 63*0e8011faSEmmanuel Vadot properties: 64*0e8011faSEmmanuel Vadot interrupts: 65*0e8011faSEmmanuel Vadot maxItems: 1 66*0e8011faSEmmanuel Vadot 67*0e8011faSEmmanuel VadotunevaluatedProperties: false 68*0e8011faSEmmanuel Vadot 69*0e8011faSEmmanuel Vadotexamples: 70*0e8011faSEmmanuel Vadot - | 71*0e8011faSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 72*0e8011faSEmmanuel Vadot 73*0e8011faSEmmanuel Vadot interrupt-controller@1571000 { 74*0e8011faSEmmanuel Vadot compatible = "fsl,ls1043a-msi"; 75*0e8011faSEmmanuel Vadot reg = <0x1571000 0x8>; 76*0e8011faSEmmanuel Vadot msi-controller; 77*0e8011faSEmmanuel Vadot #msi-cells = <1>; 78*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 79*0e8011faSEmmanuel Vadot }; 80