Merge tag 'for-5.3/dm-changes-2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / interrupt-controller / csky,mpintc.txt
1 ===========================================
2 C-SKY Multi-processors Interrupt Controller
3 ===========================================
4
5 C-SKY Multi-processors Interrupt Controller is designed for ck807/ck810/ck860
6 SMP soc, and it also could be used in non-SMP system.
7
8 Interrupt number definition:
9   0-15  : software irq, and we use 15 as our IPI_IRQ.
10  16-31  : private  irq, and we use 16 as the co-processor timer.
11  31-1024: common irq for soc ip.
12
13 Interrupt triger mode: (Defined in dt-bindings/interrupt-controller/irq.h)
14  IRQ_TYPE_LEVEL_HIGH (default)
15  IRQ_TYPE_LEVEL_LOW
16  IRQ_TYPE_EDGE_RISING
17  IRQ_TYPE_EDGE_FALLING
18
19 =============================
20 intc node bindings definition
21 =============================
22
23         Description: Describes SMP interrupt controller
24
25         PROPERTIES
26
27         - compatible
28                 Usage: required
29                 Value type: <string>
30                 Definition: must be "csky,mpintc"
31         - #interrupt-cells
32                 Usage: required
33                 Value type: <u32>
34                 Definition: <2>
35         - interrupt-controller:
36                 Usage: required
37
38 Examples: ("interrupts = <irq_num IRQ_TYPE_XXX>")
39 ---------
40 #include <dt-bindings/interrupt-controller/irq.h>
41
42         intc: interrupt-controller {
43                 compatible = "csky,mpintc";
44                 #interrupt-cells = <2>;
45                 interrupt-controller;
46         };
47
48         device: device-example {
49                 ...
50                 interrupts = <34 IRQ_TYPE_EDGE_RISING>;
51                 interrupt-parent = <&intc>;
52         };