~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/hisilicon-hns-dsaf.txt

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 Hisilicon DSA Fabric device controller
  2 
  3 Required properties:
  4 - compatible: should be "hisilicon,hns-dsaf-v1" or "hisilicon,hns-dsaf-v2".
  5   "hisilicon,hns-dsaf-v1" is for hip05.
  6   "hisilicon,hns-dsaf-v2" is for Hi1610 and Hi1612.
  7 - mode: dsa fabric mode string. only support one of dsaf modes like these:
  8                 "2port-64vf",
  9                 "6port-16rss",
 10                 "6port-16vf",
 11                 "single-port".
 12 - interrupts: should contain the DSA Fabric and rcb interrupt.
 13 - reg: specifies base physical address(es) and size of the device registers.
 14   The first region is external interface control register base and size(optional,
 15   only used when subctrl-syscon does not exist). It is recommended using
 16   subctrl-syscon rather than this address.
 17   The second region is SerDes base register and size(optional, only used when
 18   serdes-syscon in port node does not exist). It is recommended using
 19   serdes-syscon rather than this address.
 20   The third region is the PPE register base and size.
 21   The fourth region is dsa fabric base register and size. It is not required for
 22   single-port mode.
 23 - reg-names: may be ppe-base and(or) dsaf-base. It is used to find the
 24   corresponding reg's index.
 25 
 26 - phy-handle: phy handle of physical port, 0 if not any phy device. It is optional
 27   attribute. If port node exists, phy-handle in each port node will be used.
 28   see ethernet.txt [1].
 29 - subctrl-syscon: is syscon handle for external interface control register.
 30 - reset-field-offset: is offset of reset field. Its value depends on the hardware
 31   user manual.
 32 - buf-size: rx buffer size, should be 16-1024.
 33 - desc-num: number of description in TX and RX queue, should be 512, 1024, 2048 or 4096.
 34 
 35 - port: subnodes of dsaf. A dsaf node may contain several port nodes(Depending
 36   on mode of dsaf). Port node contain some attributes listed below:
 37 - reg: is physical port index in one dsaf.
 38 - phy-handle: phy handle of physical port. It is not required if there isn't
 39   phy device. see ethernet.txt [1].
 40 - serdes-syscon: is syscon handle for SerDes register.
 41 - cpld-syscon: is syscon handle + register offset pair for cpld register. It is
 42   not required if there isn't cpld device.
 43 - port-rst-offset: is offset of reset field for each port in dsaf. Its value
 44   depends on the hardware user manual.
 45 - port-mode-offset: is offset of port mode field for each port in dsaf. Its
 46   value depends on the hardware user manual.
 47 - mc-mac-mask: mask of multicast address, determines bit in multicast address
 48   to set:
 49   1 stands for this bit will be precisely matched, TCAM will check this bit of
 50     MAC address.
 51   0 stands for this bit will be fuzzy matched, TCAM won't care about this bit
 52     of MAC address.
 53 
 54 [1] Documentation/devicetree/bindings/net/phy.txt
 55 
 56 Example:
 57 
 58 dsaf0: dsa@c7000000 {
 59         compatible = "hisilicon,hns-dsaf-v1";
 60         mode = "6port-16rss";
 61         interrupt-parent = <&mbigen_dsa>;
 62         reg = <0x0 0xc5000000 0x0 0x890000
 63                0x0 0xc7000000 0x0 0x60000>;
 64         reg-names = "ppe-base", "dsaf-base";
 65         subctrl-syscon = <&subctrl>;
 66         reset-field-offset = 0;
 67         interrupts = <131 4>,<132 4>, <133 4>,<134 4>,
 68                      <135 4>,<136 4>, <137 4>,<138 4>,
 69                      <139 4>,<140 4>, <141 4>,<142 4>,
 70                      <143 4>,<144 4>, <145 4>,<146 4>,
 71                      <147 4>,<148 4>, <384 1>,<385 1>,
 72                      <386 1>,<387 1>, <388 1>,<389 1>,
 73                      <390 1>,<391 1>,
 74         buf-size = <4096>;
 75         desc-num = <1024>;
 76         dma-coherent;
 77 
 78         port@0 {
 79                 reg = 0;
 80                 phy-handle = <&phy0>;
 81                 serdes-syscon = <&serdes>;
 82                 mc-mac-mask = [ff f0 00 00 00 00];
 83         };
 84 
 85         port@1 {
 86                 reg = 1;
 87                 serdes-syscon = <&serdes>;
 88                 mc-mac-mask = [ff f0 00 00 00 00];
 89         };
 90 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php