The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/net/apm-xgene-enet.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 APM X-Gene SoC Ethernet nodes
    2 
    3 Ethernet nodes are defined to describe on-chip ethernet interfaces in
    4 APM X-Gene SoC.
    5 
    6 Required properties for all the ethernet interfaces:
    7 - compatible: Should state binding information from the following list,
    8   - "apm,xgene-enet":    RGMII based 1G interface
    9   - "apm,xgene1-sgenet": SGMII based 1G interface
   10   - "apm,xgene1-xgenet": XFI based 10G interface
   11 - reg: Address and length of the register set for the device. It contains the
   12   information of registers in the same order as described by reg-names
   13 - reg-names: Should contain the register set names
   14   - "enet_csr": Ethernet control and status register address space
   15   - "ring_csr": Descriptor ring control and status register address space
   16   - "ring_cmd": Descriptor ring command register address space
   17 - interrupts: Two interrupt specifiers can be specified.
   18   - First is the Rx interrupt.  This irq is mandatory.
   19   - Second is the Tx completion interrupt.
   20     This is supported only on SGMII based 1GbE and 10GbE interfaces.
   21 - channel: Ethernet to CPU, start channel (prefetch buffer) number
   22   - Must map to the first irq and irqs must be sequential
   23 - port-id: Port number (0 or 1)
   24 - clocks: Reference to the clock entry.
   25 - local-mac-address: MAC address assigned to this device
   26 - phy-connection-type: Interface type between ethernet device and PHY device
   27 
   28 Required properties for ethernet interfaces that have external PHY:
   29 - phy-handle: Reference to a PHY node connected to this device
   30 
   31 - mdio: Device tree subnode with the following required properties:
   32   - compatible: Must be "apm,xgene-mdio".
   33   - #address-cells: Must be <1>.
   34   - #size-cells: Must be <0>.
   35 
   36   For the phy on the mdio bus, there must be a node with the following fields:
   37   - compatible: PHY identifier.  Please refer ./phy.txt for the format.
   38   - reg: The ID number for the phy.
   39 
   40 Optional properties:
   41 - status: Should be "ok" or "disabled" for enabled/disabled. Default is "ok".
   42 - tx-delay: Delay value for RGMII bridge TX clock.
   43             Valid values are between 0 to 7, that maps to
   44             417, 717, 1020, 1321, 1611, 1913, 2215, 2514 ps
   45             Default value is 4, which corresponds to 1611 ps
   46 - rx-delay: Delay value for RGMII bridge RX clock.
   47             Valid values are between 0 to 7, that maps to
   48             273, 589, 899, 1222, 1480, 1806, 2147, 2464 ps
   49             Default value is 2, which corresponds to 899 ps
   50 - rxlos-gpios: Input gpio from SFP+ module to indicate availability of
   51                incoming signal.
   52 
   53 
   54 Example:
   55         menetclk: menetclk {
   56                 compatible = "apm,xgene-device-clock";
   57                 clock-output-names = "menetclk";
   58                 status = "ok";
   59         };
   60 
   61         menet: ethernet@17020000 {
   62                 compatible = "apm,xgene-enet";
   63                 status = "disabled";
   64                 reg = <0x0 0x17020000 0x0 0xd100>,
   65                       <0x0 0x17030000 0x0 0x400>,
   66                       <0x0 0x10000000 0x0 0x200>;
   67                 reg-names = "enet_csr", "ring_csr", "ring_cmd";
   68                 interrupts = <0x0 0x3c 0x4>;
   69                 port-id = <0>;
   70                 clocks = <&menetclk 0>;
   71                 local-mac-address = [00 01 73 00 00 01];
   72                 phy-connection-type = "rgmii";
   73                 phy-handle = <&menetphy>;
   74                 mdio {
   75                         compatible = "apm,xgene-mdio";
   76                         #address-cells = <1>;
   77                         #size-cells = <0>;
   78                         menetphy: menetphy@3 {
   79                                 compatible = "ethernet-phy-id001c.c915";
   80                                 reg = <0x3>;
   81                         };
   82 
   83                 };
   84         };
   85 
   86 /* Board-specific peripheral configurations */
   87 &menet {
   88         tx-delay = <4>;
   89         rx-delay = <2>;
   90         status = "ok";
   91 };

Cache object: c0d6f34cec1cf5d1cc81192800f62980


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.