xref: /freebsd/sys/contrib/device-tree/Bindings/interrupt-controller/brcm,bcm2836-l1-intc.yaml (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1*b2d2a78aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*b2d2a78aSEmmanuel Vadot%YAML 1.2
3*b2d2a78aSEmmanuel Vadot---
4*b2d2a78aSEmmanuel Vadot$id: http://devicetree.org/schemas/interrupt-controller/brcm,bcm2836-l1-intc.yaml#
5*b2d2a78aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*b2d2a78aSEmmanuel Vadot
7*b2d2a78aSEmmanuel Vadottitle: BCM2836 per-CPU interrupt controller
8*b2d2a78aSEmmanuel Vadot
9*b2d2a78aSEmmanuel Vadotmaintainers:
10*b2d2a78aSEmmanuel Vadot  - Stefan Wahren <wahrenst@gmx.net>
11*b2d2a78aSEmmanuel Vadot  - Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>
12*b2d2a78aSEmmanuel Vadot
13*b2d2a78aSEmmanuel Vadotdescription:
14*b2d2a78aSEmmanuel Vadot  The BCM2836 has a per-cpu interrupt controller for the timer, PMU
15*b2d2a78aSEmmanuel Vadot  events, and SMP IPIs. One of the CPUs may receive interrupts for the
16*b2d2a78aSEmmanuel Vadot  peripheral (GPU) events, which chain to the BCM2835-style interrupt
17*b2d2a78aSEmmanuel Vadot  controller.
18*b2d2a78aSEmmanuel Vadot
19*b2d2a78aSEmmanuel VadotallOf:
20*b2d2a78aSEmmanuel Vadot  - $ref: /schemas/interrupt-controller.yaml#
21*b2d2a78aSEmmanuel Vadot
22*b2d2a78aSEmmanuel Vadotproperties:
23*b2d2a78aSEmmanuel Vadot  compatible:
24*b2d2a78aSEmmanuel Vadot    const: brcm,bcm2836-l1-intc
25*b2d2a78aSEmmanuel Vadot
26*b2d2a78aSEmmanuel Vadot  reg:
27*b2d2a78aSEmmanuel Vadot    maxItems: 1
28*b2d2a78aSEmmanuel Vadot
29*b2d2a78aSEmmanuel Vadot  interrupt-controller: true
30*b2d2a78aSEmmanuel Vadot
31*b2d2a78aSEmmanuel Vadot  '#interrupt-cells':
32*b2d2a78aSEmmanuel Vadot    const: 2
33*b2d2a78aSEmmanuel Vadot
34*b2d2a78aSEmmanuel Vadotrequired:
35*b2d2a78aSEmmanuel Vadot  - compatible
36*b2d2a78aSEmmanuel Vadot  - reg
37*b2d2a78aSEmmanuel Vadot  - interrupt-controller
38*b2d2a78aSEmmanuel Vadot  - '#interrupt-cells'
39*b2d2a78aSEmmanuel Vadot
40*b2d2a78aSEmmanuel VadotadditionalProperties: false
41*b2d2a78aSEmmanuel Vadot
42*b2d2a78aSEmmanuel Vadotexamples:
43*b2d2a78aSEmmanuel Vadot  - |
44*b2d2a78aSEmmanuel Vadot    local_intc: interrupt-controller@40000000 {
45*b2d2a78aSEmmanuel Vadot        compatible = "brcm,bcm2836-l1-intc";
46*b2d2a78aSEmmanuel Vadot        reg = <0x40000000 0x100>;
47*b2d2a78aSEmmanuel Vadot        interrupt-controller;
48*b2d2a78aSEmmanuel Vadot        #interrupt-cells = <2>;
49*b2d2a78aSEmmanuel Vadot        interrupt-parent = <&local_intc>;
50*b2d2a78aSEmmanuel Vadot    };
51*b2d2a78aSEmmanuel Vadot...
52