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/interrupt-controller/snps,dw-apb-ictl.yaml# 5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadottitle: Synopsys DesignWare APB interrupt controller 8*ae5de77eSEmmanuel Vadot 9*ae5de77eSEmmanuel Vadotmaintainers: 10*ae5de77eSEmmanuel Vadot - Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> 11*ae5de77eSEmmanuel Vadot - Zhen Lei <thunder.leizhen@huawei.com> 12*ae5de77eSEmmanuel Vadot 13*ae5de77eSEmmanuel Vadotdescription: 14*ae5de77eSEmmanuel Vadot Synopsys DesignWare provides interrupt controller IP for APB known as 15*ae5de77eSEmmanuel Vadot dw_apb_ictl. The IP is used as secondary interrupt controller in some SoCs 16*ae5de77eSEmmanuel Vadot with APB bus, e.g. Marvell Armada 1500. It can also be used as primary 17*ae5de77eSEmmanuel Vadot interrupt controller in some SoCs, e.g. Hisilicon SD5203. 18*ae5de77eSEmmanuel Vadot 19*ae5de77eSEmmanuel Vadotproperties: 20*ae5de77eSEmmanuel Vadot compatible: 21*ae5de77eSEmmanuel Vadot const: snps,dw-apb-ictl 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 description: > 34*ae5de77eSEmmanuel Vadot Interrupt input connected to the primary interrupt controller when used 35*ae5de77eSEmmanuel Vadot as a secondary controller. The interrupt specifier maps to bits in the 36*ae5de77eSEmmanuel Vadot low and high interrupt registers (0⇒bit 0 low, 1⇒bit 1 low, 32⇒bit 0 high, 37*ae5de77eSEmmanuel Vadot 33⇒bit 1 high, fast interrupts start at 64). 38*ae5de77eSEmmanuel Vadot 39*ae5de77eSEmmanuel Vadotrequired: 40*ae5de77eSEmmanuel Vadot - compatible 41*ae5de77eSEmmanuel Vadot - reg 42*ae5de77eSEmmanuel Vadot - interrupt-controller 43*ae5de77eSEmmanuel Vadot - '#interrupt-cells' 44*ae5de77eSEmmanuel Vadot 45*ae5de77eSEmmanuel VadotadditionalProperties: false 46*ae5de77eSEmmanuel Vadot 47*ae5de77eSEmmanuel Vadotexamples: 48*ae5de77eSEmmanuel Vadot - | 49*ae5de77eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 50*ae5de77eSEmmanuel Vadot 51*ae5de77eSEmmanuel Vadot interrupt-controller@3000 { 52*ae5de77eSEmmanuel Vadot compatible = "snps,dw-apb-ictl"; 53*ae5de77eSEmmanuel Vadot reg = <0x3000 0xc00>; 54*ae5de77eSEmmanuel Vadot interrupt-controller; 55*ae5de77eSEmmanuel Vadot #interrupt-cells = <1>; 56*ae5de77eSEmmanuel Vadot interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 57*ae5de77eSEmmanuel Vadot }; 58*ae5de77eSEmmanuel Vadot - | 59*ae5de77eSEmmanuel Vadot interrupt-controller@10130000 { 60*ae5de77eSEmmanuel Vadot compatible = "snps,dw-apb-ictl"; 61*ae5de77eSEmmanuel Vadot reg = <0x10130000 0x1000>; 62*ae5de77eSEmmanuel Vadot interrupt-controller; 63*ae5de77eSEmmanuel Vadot #interrupt-cells = <1>; 64*ae5de77eSEmmanuel Vadot }; 65