1*f2e3df34SRob Herring (Arm)# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*f2e3df34SRob Herring (Arm)# Copyright (C) 2015, 2024, Intel Corporation 3*f2e3df34SRob Herring (Arm)%YAML 1.2 4*f2e3df34SRob Herring (Arm)--- 5*f2e3df34SRob Herring (Arm)$id: http://devicetree.org/schemas/interrupt-controller/altr,msi-controller.yaml# 6*f2e3df34SRob Herring (Arm)$schema: http://devicetree.org/meta-schemas/core.yaml# 7*f2e3df34SRob Herring (Arm) 8*f2e3df34SRob Herring (Arm)title: Altera PCIe MSI controller 9*f2e3df34SRob Herring (Arm) 10*f2e3df34SRob Herring (Arm)maintainers: 11*f2e3df34SRob Herring (Arm) - Matthew Gerlach <matthew.gerlach@linux.intel.com> 12*f2e3df34SRob Herring (Arm) 13*f2e3df34SRob Herring (Arm)properties: 14*f2e3df34SRob Herring (Arm) compatible: 15*f2e3df34SRob Herring (Arm) enum: 16*f2e3df34SRob Herring (Arm) - altr,msi-1.0 17*f2e3df34SRob Herring (Arm) 18*f2e3df34SRob Herring (Arm) reg: 19*f2e3df34SRob Herring (Arm) items: 20*f2e3df34SRob Herring (Arm) - description: CSR registers 21*f2e3df34SRob Herring (Arm) - description: Vectors slave port region 22*f2e3df34SRob Herring (Arm) 23*f2e3df34SRob Herring (Arm) reg-names: 24*f2e3df34SRob Herring (Arm) items: 25*f2e3df34SRob Herring (Arm) - const: csr 26*f2e3df34SRob Herring (Arm) - const: vector_slave 27*f2e3df34SRob Herring (Arm) 28*f2e3df34SRob Herring (Arm) interrupts: 29*f2e3df34SRob Herring (Arm) maxItems: 1 30*f2e3df34SRob Herring (Arm) 31*f2e3df34SRob Herring (Arm) msi-controller: true 32*f2e3df34SRob Herring (Arm) 33*f2e3df34SRob Herring (Arm) num-vectors: 34*f2e3df34SRob Herring (Arm) description: number of vectors 35*f2e3df34SRob Herring (Arm) $ref: /schemas/types.yaml#/definitions/uint32 36*f2e3df34SRob Herring (Arm) minimum: 1 37*f2e3df34SRob Herring (Arm) maximum: 32 38*f2e3df34SRob Herring (Arm) 39*f2e3df34SRob Herring (Arm)required: 40*f2e3df34SRob Herring (Arm) - compatible 41*f2e3df34SRob Herring (Arm) - reg 42*f2e3df34SRob Herring (Arm) - reg-names 43*f2e3df34SRob Herring (Arm) - interrupts 44*f2e3df34SRob Herring (Arm) - msi-controller 45*f2e3df34SRob Herring (Arm) - num-vectors 46*f2e3df34SRob Herring (Arm) 47*f2e3df34SRob Herring (Arm)allOf: 48*f2e3df34SRob Herring (Arm) - $ref: /schemas/interrupt-controller/msi-controller.yaml# 49*f2e3df34SRob Herring (Arm) 50*f2e3df34SRob Herring (Arm)unevaluatedProperties: false 51*f2e3df34SRob Herring (Arm) 52*f2e3df34SRob Herring (Arm)examples: 53*f2e3df34SRob Herring (Arm) - | 54*f2e3df34SRob Herring (Arm) #include <dt-bindings/interrupt-controller/arm-gic.h> 55*f2e3df34SRob Herring (Arm) #include <dt-bindings/interrupt-controller/irq.h> 56*f2e3df34SRob Herring (Arm) msi@ff200000 { 57*f2e3df34SRob Herring (Arm) compatible = "altr,msi-1.0"; 58*f2e3df34SRob Herring (Arm) reg = <0xff200000 0x00000010>, 59*f2e3df34SRob Herring (Arm) <0xff200010 0x00000080>; 60*f2e3df34SRob Herring (Arm) reg-names = "csr", "vector_slave"; 61*f2e3df34SRob Herring (Arm) interrupt-parent = <&hps_0_arm_gic_0>; 62*f2e3df34SRob Herring (Arm) interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 63*f2e3df34SRob Herring (Arm) msi-controller; 64*f2e3df34SRob Herring (Arm) num-vectors = <32>; 65*f2e3df34SRob Herring (Arm) }; 66