These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / Documentation / devicetree / bindings / net / hisilicon-hns-dsaf.txt
diff --git a/kernel/Documentation/devicetree/bindings/net/hisilicon-hns-dsaf.txt b/kernel/Documentation/devicetree/bindings/net/hisilicon-hns-dsaf.txt
new file mode 100644 (file)
index 0000000..80411b2
--- /dev/null
@@ -0,0 +1,49 @@
+Hisilicon DSA Fabric device controller
+
+Required properties:
+- compatible: should be "hisilicon,hns-dsaf-v1" or "hisilicon,hns-dsaf-v2".
+  "hisilicon,hns-dsaf-v1" is for hip05.
+  "hisilicon,hns-dsaf-v2" is for Hi1610 and Hi1612.
+- dsa-name: dsa fabric name who provide this interface.
+  should be "dsafX", X is the dsaf id.
+- mode: dsa fabric mode string. only support one of dsaf modes like these:
+               "2port-64vf",
+               "6port-16rss",
+               "6port-16vf".
+- interrupt-parent: the interrupt parent of this device.
+- interrupts: should contain the DSA Fabric and rcb interrupt.
+- reg: specifies base physical address(es) and size of the device registers.
+  The first region is external interface control register base and size.
+  The second region is SerDes base register and size.
+  The third region is the PPE register base and size.
+  The fourth region is dsa fabric base register and size.
+  The fifth region is cpld base register and size, it is not required if do not use cpld.
+- phy-handle: phy handle of physicl port, 0 if not any phy device. see ethernet.txt [1].
+- buf-size: rx buffer size, should be 16-1024.
+- desc-num: number of description in TX and RX queue, should be 512, 1024, 2048 or 4096.
+
+[1] Documentation/devicetree/bindings/net/phy.txt
+
+Example:
+
+dsa: dsa@c7000000 {
+       compatible = "hisilicon,hns-dsaf-v1";
+       dsa_name = "dsaf0";
+       mode = "6port-16rss";
+       interrupt-parent = <&mbigen_dsa>;
+       reg = <0x0 0xC0000000 0x0 0x420000
+              0x0 0xC2000000 0x0 0x300000
+              0x0 0xc5000000 0x0 0x890000
+              0x0 0xc7000000 0x0 0x60000>;
+       phy-handle = <0 0 0 0 &soc0_phy4 &soc0_phy5 0 0>;
+       interrupts = <131 4>,<132 4>, <133 4>,<134 4>,
+                    <135 4>,<136 4>, <137 4>,<138 4>,
+                    <139 4>,<140 4>, <141 4>,<142 4>,
+                    <143 4>,<144 4>, <145 4>,<146 4>,
+                    <147 4>,<148 4>, <384 1>,<385 1>,
+                    <386 1>,<387 1>, <388 1>,<389 1>,
+                    <390 1>,<391 1>,
+       buf-size = <4096>;
+       desc-num = <1024>;
+       dma-coherent;
+};