dt-bindings: Documents the mbigen bindings
[linux-2.6-block.git] / Documentation / devicetree / bindings / interrupt-controller / hisilicon,mbigen-v2.txt
CommitLineData
752b1b94
MJ
1Hisilicon mbigen device tree bindings.
2=======================================
3
4Mbigen means: message based interrupt generator.
5
6MBI is kind of msi interrupt only used on Non-PCI devices.
7
8To reduce the wired interrupt number connected to GIC,
9Hisilicon designed mbigen to collect and generate interrupt.
10
11
12Non-pci devices can connect to mbigen and generate the
13interrupt by writing ITS register.
14
15The mbigen chip and devices connect to mbigen have the following properties:
16
17Mbigen main node required properties:
18-------------------------------------------
19- compatible: Should be "hisilicon,mbigen-v2"
20
21- reg: Specifies the base physical address and size of the Mbigen
22 registers.
23
24- interrupt controller: Identifies the node as an interrupt controller
25
26- msi-parent: Specifies the MSI controller this mbigen use.
27 For more detail information,please refer to the generic msi-parent binding in
28 Documentation/devicetree/bindings/interrupt-controller/msi.txt.
29
30- num-pins: the total number of pins implemented in this Mbigen
31 instance.
32
33- #interrupt-cells : Specifies the number of cells needed to encode an
34 interrupt source. The value must be 2.
35
36 The 1st cell is hardware pin number of the interrupt.This number is local to
37 each mbigen chip and in the range from 0 to the maximum interrupts number
38 of the mbigen.
39
40 The 2nd cell is the interrupt trigger type.
41 The value of this cell should be:
42 1: rising edge triggered
43 or
44 4: high level triggered
45
46Examples:
47
48 mbigen_device_gmac:intc {
49 compatible = "hisilicon,mbigen-v2";
50 reg = <0x0 0xc0080000 0x0 0x10000>;
51 interrupt-controller;
52 msi-parent = <&its_dsa 0x40b1c>;
53 num-pins = <9>;
54 #interrupt-cells = <2>;
55 };
56
57Devices connect to mbigen required properties:
58----------------------------------------------------
59-interrupt-parent: Specifies the mbigen device node which device connected.
60
61-interrupts:Specifies the interrupt source.
62 For the specific information of each cell in this property,please refer to
63 the "interrupt-cells" description mentioned above.
64
65Examples:
66 gmac0: ethernet@c2080000 {
67 #address-cells = <1>;
68 #size-cells = <0>;
69 reg = <0 0xc2080000 0 0x20000>,
70 <0 0xc0000000 0 0x1000>;
71 interrupt-parent = <&mbigen_device_gmac>;
72 interrupts = <656 1>,
73 <657 1>;
74 };