1*ae5de77eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*ae5de77eSEmmanuel Vadot%YAML 1.2 3*ae5de77eSEmmanuel Vadot--- 4*ae5de77eSEmmanuel Vadot$id: http://devicetree.org/schemas/ti,keystone-irq.yaml# 5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadottitle: Keystone 2 IRQ controller IP 8*ae5de77eSEmmanuel Vadot 9*ae5de77eSEmmanuel Vadotmaintainers: 10*ae5de77eSEmmanuel Vadot - Grygorii Strashko <grygorii.strashko@ti.com> 11*ae5de77eSEmmanuel Vadot 12*ae5de77eSEmmanuel Vadotdescription: 13*ae5de77eSEmmanuel Vadot On Keystone SOCs, DSP cores can send interrupts to ARM host using the IRQ 14*ae5de77eSEmmanuel Vadot controller IP. It provides 28 IRQ signals to ARM. The IRQ handler running on 15*ae5de77eSEmmanuel Vadot HOST OS can identify DSP signal source by analyzing SRCCx bits in IPCARx 16*ae5de77eSEmmanuel Vadot registers. This is one of the component used by the IPC mechanism used on 17*ae5de77eSEmmanuel Vadot Keystone SOCs. 18*ae5de77eSEmmanuel Vadot 19*ae5de77eSEmmanuel Vadotproperties: 20*ae5de77eSEmmanuel Vadot compatible: 21*ae5de77eSEmmanuel Vadot const: ti,keystone-irq 22*ae5de77eSEmmanuel Vadot 23*ae5de77eSEmmanuel Vadot reg: 24*ae5de77eSEmmanuel Vadot maxItems: 1 25*ae5de77eSEmmanuel Vadot 26*ae5de77eSEmmanuel Vadot interrupt-controller: true 27*ae5de77eSEmmanuel Vadot 28*ae5de77eSEmmanuel Vadot '#interrupt-cells': 29*ae5de77eSEmmanuel Vadot const: 1 30*ae5de77eSEmmanuel Vadot 31*ae5de77eSEmmanuel Vadot interrupts: 32*ae5de77eSEmmanuel Vadot maxItems: 1 33*ae5de77eSEmmanuel Vadot 34*ae5de77eSEmmanuel Vadot ti,syscon-dev: 35*ae5de77eSEmmanuel Vadot description: Phandle and offset to syscon device 36*ae5de77eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle-array 37*ae5de77eSEmmanuel Vadot items: 38*ae5de77eSEmmanuel Vadot - items: 39*ae5de77eSEmmanuel Vadot - description: Phandle to syscon device control registers 40*ae5de77eSEmmanuel Vadot - description: Offset to control register 41*ae5de77eSEmmanuel Vadot 42*ae5de77eSEmmanuel Vadotrequired: 43*ae5de77eSEmmanuel Vadot - compatible 44*ae5de77eSEmmanuel Vadot - reg 45*ae5de77eSEmmanuel Vadot - interrupt-controller 46*ae5de77eSEmmanuel Vadot - '#interrupt-cells' 47*ae5de77eSEmmanuel Vadot - interrupts 48*ae5de77eSEmmanuel Vadot - ti,syscon-dev 49*ae5de77eSEmmanuel Vadot 50*ae5de77eSEmmanuel VadotadditionalProperties: false 51*ae5de77eSEmmanuel Vadot 52*ae5de77eSEmmanuel Vadotexamples: 53*ae5de77eSEmmanuel Vadot - | 54*ae5de77eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 55*ae5de77eSEmmanuel Vadot 56*ae5de77eSEmmanuel Vadot interrupt-controller@2a0 { 57*ae5de77eSEmmanuel Vadot compatible = "ti,keystone-irq"; 58*ae5de77eSEmmanuel Vadot reg = <0x2a0 0x4>; 59*ae5de77eSEmmanuel Vadot ti,syscon-dev = <&devctrl 0x2a0>; 60*ae5de77eSEmmanuel Vadot interrupts = <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>; 61*ae5de77eSEmmanuel Vadot interrupt-controller; 62*ae5de77eSEmmanuel Vadot #interrupt-cells = <1>; 63*ae5de77eSEmmanuel Vadot }; 64