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/econet,en751221-intc.yaml# 5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadottitle: EcoNet EN751221 Interrupt Controller 8*ae5de77eSEmmanuel Vadot 9*ae5de77eSEmmanuel Vadotmaintainers: 10*ae5de77eSEmmanuel Vadot - Caleb James DeLisle <cjd@cjdns.fr> 11*ae5de77eSEmmanuel Vadot 12*ae5de77eSEmmanuel Vadotdescription: 13*ae5de77eSEmmanuel Vadot The EcoNet EN751221 Interrupt Controller is a simple interrupt controller 14*ae5de77eSEmmanuel Vadot designed for the MIPS 34Kc MT SMP processor with 2 VPEs. Each interrupt can 15*ae5de77eSEmmanuel Vadot be routed to either VPE but not both, so to support per-CPU interrupts, a 16*ae5de77eSEmmanuel Vadot secondary IRQ number is allocated to control masking/unmasking on VPE#1. For 17*ae5de77eSEmmanuel Vadot lack of a better term we call these "shadow interrupts". The assignment of 18*ae5de77eSEmmanuel Vadot shadow interrupts is defined by the SoC integrator when wiring the interrupt 19*ae5de77eSEmmanuel Vadot lines, so they are configurable in the device tree. 20*ae5de77eSEmmanuel Vadot 21*ae5de77eSEmmanuel VadotallOf: 22*ae5de77eSEmmanuel Vadot - $ref: /schemas/interrupt-controller.yaml# 23*ae5de77eSEmmanuel Vadot 24*ae5de77eSEmmanuel Vadotproperties: 25*ae5de77eSEmmanuel Vadot compatible: 26*ae5de77eSEmmanuel Vadot const: econet,en751221-intc 27*ae5de77eSEmmanuel Vadot 28*ae5de77eSEmmanuel Vadot reg: 29*ae5de77eSEmmanuel Vadot maxItems: 1 30*ae5de77eSEmmanuel Vadot 31*ae5de77eSEmmanuel Vadot "#interrupt-cells": 32*ae5de77eSEmmanuel Vadot const: 1 33*ae5de77eSEmmanuel Vadot 34*ae5de77eSEmmanuel Vadot interrupt-controller: true 35*ae5de77eSEmmanuel Vadot 36*ae5de77eSEmmanuel Vadot interrupts: 37*ae5de77eSEmmanuel Vadot maxItems: 1 38*ae5de77eSEmmanuel Vadot description: Interrupt line connecting this controller to its parent. 39*ae5de77eSEmmanuel Vadot 40*ae5de77eSEmmanuel Vadot econet,shadow-interrupts: 41*ae5de77eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-matrix 42*ae5de77eSEmmanuel Vadot description: 43*ae5de77eSEmmanuel Vadot An array of interrupt number pairs where each pair represents a shadow 44*ae5de77eSEmmanuel Vadot interrupt relationship. The first number in each pair is the primary IRQ, 45*ae5de77eSEmmanuel Vadot and the second is its shadow IRQ used for VPE#1 control. For example, 46*ae5de77eSEmmanuel Vadot <8 3> means IRQ 8 is shadowed by IRQ 3, so IRQ 3 cannot be mapped, but 47*ae5de77eSEmmanuel Vadot when VPE#1 requests IRQ 8, it will manipulate the IRQ 3 mask bit. 48*ae5de77eSEmmanuel Vadot minItems: 1 49*ae5de77eSEmmanuel Vadot maxItems: 20 50*ae5de77eSEmmanuel Vadot items: 51*ae5de77eSEmmanuel Vadot items: 52*ae5de77eSEmmanuel Vadot - description: primary per-CPU IRQ 53*ae5de77eSEmmanuel Vadot - description: shadow IRQ number 54*ae5de77eSEmmanuel Vadot 55*ae5de77eSEmmanuel Vadotrequired: 56*ae5de77eSEmmanuel Vadot - compatible 57*ae5de77eSEmmanuel Vadot - reg 58*ae5de77eSEmmanuel Vadot - interrupt-controller 59*ae5de77eSEmmanuel Vadot - "#interrupt-cells" 60*ae5de77eSEmmanuel Vadot - interrupts 61*ae5de77eSEmmanuel Vadot 62*ae5de77eSEmmanuel VadotadditionalProperties: false 63*ae5de77eSEmmanuel Vadot 64*ae5de77eSEmmanuel Vadotexamples: 65*ae5de77eSEmmanuel Vadot - | 66*ae5de77eSEmmanuel Vadot interrupt-controller@1fb40000 { 67*ae5de77eSEmmanuel Vadot compatible = "econet,en751221-intc"; 68*ae5de77eSEmmanuel Vadot reg = <0x1fb40000 0x100>; 69*ae5de77eSEmmanuel Vadot 70*ae5de77eSEmmanuel Vadot interrupt-controller; 71*ae5de77eSEmmanuel Vadot #interrupt-cells = <1>; 72*ae5de77eSEmmanuel Vadot 73*ae5de77eSEmmanuel Vadot interrupt-parent = <&cpuintc>; 74*ae5de77eSEmmanuel Vadot interrupts = <2>; 75*ae5de77eSEmmanuel Vadot 76*ae5de77eSEmmanuel Vadot econet,shadow-interrupts = <7 2>, <8 3>, <13 12>, <30 29>; 77*ae5de77eSEmmanuel Vadot }; 78*ae5de77eSEmmanuel Vadot... 79