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