xref: /openbmc/linux/Documentation/devicetree/bindings/infiniband/hisilicon-hns-roce.txt (revision 69bafce8077bc3515eb8a1b2ac8f87dd39cf6838)
1*69bafce8SoulijunHisilicon RoCE DT description
2*69bafce8Soulijun
3*69bafce8SoulijunHisilicon RoCE engine is a part of network subsystem.
4*69bafce8SoulijunIt works depending on other part of network wubsytem, such as, gmac and
5*69bafce8Soulijundsa fabric.
6*69bafce8Soulijun
7*69bafce8SoulijunAdditional properties are described here:
8*69bafce8Soulijun
9*69bafce8SoulijunRequired properties:
10*69bafce8Soulijun- compatible: Should contain "hisilicon,hns-roce-v1".
11*69bafce8Soulijun- reg: Physical base address of the RoCE driver and
12*69bafce8Soulijunlength of memory mapped region.
13*69bafce8Soulijun- eth-handle: phandle, specifies a reference to a node
14*69bafce8Soulijunrepresenting a ethernet device.
15*69bafce8Soulijun- dsaf-handle: phandle, specifies a reference to a node
16*69bafce8Soulijunrepresenting a dsaf device.
17*69bafce8Soulijun- #address-cells: must be 2
18*69bafce8Soulijun- #size-cells: must be 2
19*69bafce8SoulijunOptional properties:
20*69bafce8Soulijun- dma-coherent: Present if DMA operations are coherent.
21*69bafce8Soulijun- interrupt-parent: the interrupt parent of this device.
22*69bafce8Soulijun- interrupts: should contain 32 completion event irq,1 async event irq
23*69bafce8Soulijunand 1 event overflow irq.
24*69bafce8Soulijun- interrupt-names:should be one of 34 irqs for roce device
25*69bafce8Soulijun  - hns-roce-comp-0 ~ hns-roce-comp-31: 32 complete event irq
26*69bafce8Soulijun  - hns-roce-async: 1 async event irq
27*69bafce8Soulijun  - hns-roce-common: named common exception warning irq
28*69bafce8SoulijunExample:
29*69bafce8Soulijun	infiniband@c4000000 {
30*69bafce8Soulijun			compatible = "hisilicon,hns-roce-v1";
31*69bafce8Soulijun			reg = <0x0 0xc4000000 0x0 0x100000>;
32*69bafce8Soulijun			dma-coherent;
33*69bafce8Soulijun			eth-handle = <&eth2 &eth3 &eth4 &eth5 &eth6 &eth7>;
34*69bafce8Soulijun			dsaf-handle = <&soc0_dsa>;
35*69bafce8Soulijun			#address-cells = <2>;
36*69bafce8Soulijun			#size-cells = <2>;
37*69bafce8Soulijun			interrupt-parent = <&mbigen_dsa>;
38*69bafce8Soulijun			interrupts = <722 1>,
39*69bafce8Soulijun					<723 1>,
40*69bafce8Soulijun					<724 1>,
41*69bafce8Soulijun					<725 1>,
42*69bafce8Soulijun					<726 1>,
43*69bafce8Soulijun					<727 1>,
44*69bafce8Soulijun					<728 1>,
45*69bafce8Soulijun					<729 1>,
46*69bafce8Soulijun					<730 1>,
47*69bafce8Soulijun					<731 1>,
48*69bafce8Soulijun					<732 1>,
49*69bafce8Soulijun					<733 1>,
50*69bafce8Soulijun					<734 1>,
51*69bafce8Soulijun					<735 1>,
52*69bafce8Soulijun					<736 1>,
53*69bafce8Soulijun					<737 1>,
54*69bafce8Soulijun					<738 1>,
55*69bafce8Soulijun					<739 1>,
56*69bafce8Soulijun					<740 1>,
57*69bafce8Soulijun					<741 1>,
58*69bafce8Soulijun					<742 1>,
59*69bafce8Soulijun					<743 1>,
60*69bafce8Soulijun					<744 1>,
61*69bafce8Soulijun					<745 1>,
62*69bafce8Soulijun					<746 1>,
63*69bafce8Soulijun					<747 1>,
64*69bafce8Soulijun					<748 1>,
65*69bafce8Soulijun					<749 1>,
66*69bafce8Soulijun					<750 1>,
67*69bafce8Soulijun					<751 1>,
68*69bafce8Soulijun					<752 1>,
69*69bafce8Soulijun					<753 1>,
70*69bafce8Soulijun					<785 1>,
71*69bafce8Soulijun					<754 4>;
72*69bafce8Soulijun
73*69bafce8Soulijun			interrupt-names = "hns-roce-comp-0",
74*69bafce8Soulijun					"hns-roce-comp-1",
75*69bafce8Soulijun					"hns-roce-comp-2",
76*69bafce8Soulijun					"hns-roce-comp-3",
77*69bafce8Soulijun					"hns-roce-comp-4",
78*69bafce8Soulijun					"hns-roce-comp-5",
79*69bafce8Soulijun					"hns-roce-comp-6",
80*69bafce8Soulijun					"hns-roce-comp-7",
81*69bafce8Soulijun					"hns-roce-comp-8",
82*69bafce8Soulijun					"hns-roce-comp-9",
83*69bafce8Soulijun					"hns-roce-comp-10",
84*69bafce8Soulijun					"hns-roce-comp-11",
85*69bafce8Soulijun					"hns-roce-comp-12",
86*69bafce8Soulijun					"hns-roce-comp-13",
87*69bafce8Soulijun					"hns-roce-comp-14",
88*69bafce8Soulijun					"hns-roce-comp-15",
89*69bafce8Soulijun					"hns-roce-comp-16",
90*69bafce8Soulijun					"hns-roce-comp-17",
91*69bafce8Soulijun					"hns-roce-comp-18",
92*69bafce8Soulijun					"hns-roce-comp-19",
93*69bafce8Soulijun					"hns-roce-comp-20",
94*69bafce8Soulijun					"hns-roce-comp-21",
95*69bafce8Soulijun					"hns-roce-comp-22",
96*69bafce8Soulijun					"hns-roce-comp-23",
97*69bafce8Soulijun					"hns-roce-comp-24",
98*69bafce8Soulijun					"hns-roce-comp-25",
99*69bafce8Soulijun					"hns-roce-comp-26",
100*69bafce8Soulijun					"hns-roce-comp-27",
101*69bafce8Soulijun					"hns-roce-comp-28",
102*69bafce8Soulijun					"hns-roce-comp-29",
103*69bafce8Soulijun					"hns-roce-comp-30",
104*69bafce8Soulijun					"hns-roce-comp-31",
105*69bafce8Soulijun					"hns-roce-async",
106*69bafce8Soulijun					"hns-roce-common";
107*69bafce8Soulijun		};
108