Commit | Line | Data |
---|---|---|
752b1b94 MJ |
1 | Hisilicon mbigen device tree bindings. |
2 | ======================================= | |
3 | ||
4 | Mbigen means: message based interrupt generator. | |
5 | ||
6 | MBI is kind of msi interrupt only used on Non-PCI devices. | |
7 | ||
8 | To reduce the wired interrupt number connected to GIC, | |
9 | Hisilicon designed mbigen to collect and generate interrupt. | |
10 | ||
11 | ||
12 | Non-pci devices can connect to mbigen and generate the | |
13 | interrupt by writing ITS register. | |
14 | ||
15 | The mbigen chip and devices connect to mbigen have the following properties: | |
16 | ||
17 | Mbigen 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 | ||
46 | Examples: | |
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 | ||
57 | Devices 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 | ||
65 | Examples: | |
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 | }; |