xref: /freebsd-src/sys/contrib/device-tree/Bindings/interrupt-controller/mstar,mst-intc.yaml (revision 6be3386466ab79a84b48429ae66244f21526d3df)
1*6be33864SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*6be33864SEmmanuel Vadot%YAML 1.2
3*6be33864SEmmanuel Vadot---
4*6be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/interrupt-controller/mstar,mst-intc.yaml#
5*6be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*6be33864SEmmanuel Vadot
7*6be33864SEmmanuel Vadottitle: MStar Interrupt Controller
8*6be33864SEmmanuel Vadot
9*6be33864SEmmanuel Vadotmaintainers:
10*6be33864SEmmanuel Vadot  - Mark-PK Tsai <mark-pk.tsai@mediatek.com>
11*6be33864SEmmanuel Vadot
12*6be33864SEmmanuel Vadotdescription: |+
13*6be33864SEmmanuel Vadot  MStar, SigmaStar and Mediatek TV SoCs contain multiple legacy
14*6be33864SEmmanuel Vadot  interrupt controllers that routes interrupts to the GIC.
15*6be33864SEmmanuel Vadot
16*6be33864SEmmanuel Vadot  The HW block exposes a number of interrupt controllers, each
17*6be33864SEmmanuel Vadot  can support up to 64 interrupts.
18*6be33864SEmmanuel Vadot
19*6be33864SEmmanuel Vadotproperties:
20*6be33864SEmmanuel Vadot  compatible:
21*6be33864SEmmanuel Vadot    const: mstar,mst-intc
22*6be33864SEmmanuel Vadot
23*6be33864SEmmanuel Vadot  interrupt-controller: true
24*6be33864SEmmanuel Vadot
25*6be33864SEmmanuel Vadot  "#interrupt-cells":
26*6be33864SEmmanuel Vadot    const: 3
27*6be33864SEmmanuel Vadot    description: |
28*6be33864SEmmanuel Vadot      Use the same format as specified by GIC in arm,gic.yaml.
29*6be33864SEmmanuel Vadot
30*6be33864SEmmanuel Vadot  reg:
31*6be33864SEmmanuel Vadot    maxItems: 1
32*6be33864SEmmanuel Vadot
33*6be33864SEmmanuel Vadot  mstar,irqs-map-range:
34*6be33864SEmmanuel Vadot    description: |
35*6be33864SEmmanuel Vadot      The range <start, end> of parent interrupt controller's interrupt
36*6be33864SEmmanuel Vadot      lines that are hardwired to mstar interrupt controller.
37*6be33864SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32-matrix
38*6be33864SEmmanuel Vadot    items:
39*6be33864SEmmanuel Vadot      minItems: 2
40*6be33864SEmmanuel Vadot      maxItems: 2
41*6be33864SEmmanuel Vadot
42*6be33864SEmmanuel Vadot  mstar,intc-no-eoi:
43*6be33864SEmmanuel Vadot    description:
44*6be33864SEmmanuel Vadot      Mark this controller has no End Of Interrupt(EOI) implementation.
45*6be33864SEmmanuel Vadot    type: boolean
46*6be33864SEmmanuel Vadot
47*6be33864SEmmanuel Vadotrequired:
48*6be33864SEmmanuel Vadot  - compatible
49*6be33864SEmmanuel Vadot  - reg
50*6be33864SEmmanuel Vadot  - mstar,irqs-map-range
51*6be33864SEmmanuel Vadot
52*6be33864SEmmanuel VadotadditionalProperties: false
53*6be33864SEmmanuel Vadot
54*6be33864SEmmanuel Vadotexamples:
55*6be33864SEmmanuel Vadot  - |
56*6be33864SEmmanuel Vadot    mst_intc0: interrupt-controller@1f2032d0 {
57*6be33864SEmmanuel Vadot      compatible = "mstar,mst-intc";
58*6be33864SEmmanuel Vadot      interrupt-controller;
59*6be33864SEmmanuel Vadot      #interrupt-cells = <3>;
60*6be33864SEmmanuel Vadot      interrupt-parent = <&gic>;
61*6be33864SEmmanuel Vadot      reg = <0x1f2032d0 0x30>;
62*6be33864SEmmanuel Vadot      mstar,irqs-map-range = <0 63>;
63*6be33864SEmmanuel Vadot    };
64*6be33864SEmmanuel Vadot...
65