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/marvell-orion-net.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 Marvell Orion/Discovery ethernet controller
    2 =============================================
    3 
    4 The Marvell Discovery ethernet controller can be found on Marvell Orion SoCs
    5 (Kirkwood, Dove, Orion5x, and Discovery Innovation) and as part of Marvell
    6 Discovery system controller chips (mv64[345]60).
    7 
    8 The Discovery ethernet controller is described with two levels of nodes. The
    9 first level describes the ethernet controller itself and the second level
   10 describes up to 3 ethernet port nodes within that controller. The reason for
   11 the multiple levels is that the port registers are interleaved within a single
   12 set of controller registers. Each port node describes port-specific properties.
   13 
   14 Note: The above separation is only true for Discovery system controllers.
   15 For Orion SoCs we stick to the separation, although there each controller has
   16 only one port associated. Multiple ports are implemented as multiple single-port
   17 controllers. As Kirkwood has some issues with proper initialization after reset,
   18 an extra compatible string is added for it.
   19 
   20 * Ethernet controller node
   21 
   22 Required controller properties:
   23  - #address-cells: shall be 1.
   24  - #size-cells: shall be 0.
   25  - compatible: shall be one of "marvell,orion-eth", "marvell,kirkwood-eth".
   26  - reg: address and length of the controller registers.
   27 
   28 Optional controller properties:
   29  - clocks: phandle reference to the controller clock.
   30  - marvell,tx-checksum-limit: max tx packet size for hardware checksum.
   31 
   32 * Ethernet port node
   33 
   34 Required port properties:
   35  - compatible: shall be one of "marvell,orion-eth-port",
   36       "marvell,kirkwood-eth-port".
   37  - reg: port number relative to ethernet controller, shall be 0, 1, or 2.
   38  - interrupts: port interrupt.
   39  - local-mac-address: See ethernet.txt file in the same directory.
   40 
   41 Optional port properties:
   42  - marvell,tx-queue-size: size of the transmit ring buffer.
   43  - marvell,tx-sram-addr: address of transmit descriptor buffer located in SRAM.
   44  - marvell,tx-sram-size: size of transmit descriptor buffer located in SRAM.
   45  - marvell,rx-queue-size: size of the receive ring buffer.
   46  - marvell,rx-sram-addr: address of receive descriptor buffer located in SRAM.
   47  - marvell,rx-sram-size: size of receive descriptor buffer located in SRAM.
   48 
   49 and
   50 
   51  - phy-handle: See ethernet.txt file in the same directory.
   52  - phy-mode: See ethernet.txt file in the same directory.
   53 
   54 or
   55 
   56  - speed: port speed if no PHY connected.
   57  - duplex: port mode if no PHY connected.
   58 
   59 * Node example:
   60 
   61 mdio-bus {
   62         ...
   63         ethphy: ethernet-phy@8 {
   64                 ...
   65         };
   66 };
   67 
   68 eth: ethernet-controller@72000 {
   69         compatible = "marvell,orion-eth";
   70         #address-cells = <1>;
   71         #size-cells = <0>;
   72         reg = <0x72000 0x2000>;
   73         clocks = <&gate_clk 2>;
   74         marvell,tx-checksum-limit = <1600>;
   75 
   76         ethernet@0 {
   77                 compatible = "marvell,orion-eth-port";
   78                 reg = <0>;
   79                 interrupts = <29>;
   80                 phy-handle = <&ethphy>;
   81                 local-mac-address = [00 00 00 00 00 00];
   82         };
   83 };

Cache object: 6ee3085dcfbcb1dcd2f4cbb61fb57175


[ 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.