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

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/amd-xgbe.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 * AMD 10GbE driver (amd-xgbe)
  2 
  3 Required properties:
  4 - compatible: Should be "amd,xgbe-seattle-v1a"
  5 - reg: Address and length of the register sets for the device
  6    - MAC registers
  7    - PCS registers
  8    - SerDes Rx/Tx registers
  9    - SerDes integration registers (1/2)
 10    - SerDes integration registers (2/2)
 11 - interrupts: Should contain the amd-xgbe interrupt(s). The first interrupt
 12   listed is required and is the general device interrupt. If the optional
 13   amd,per-channel-interrupt property is specified, then one additional
 14   interrupt for each DMA channel supported by the device should be specified.
 15   The last interrupt listed should be the PCS auto-negotiation interrupt.
 16 - clocks:
 17    - DMA clock for the amd-xgbe device (used for calculating the
 18      correct Rx interrupt watchdog timer value on a DMA channel
 19      for coalescing)
 20    - PTP clock for the amd-xgbe device
 21 - clock-names: Should be the names of the clocks
 22    - "dma_clk" for the DMA clock
 23    - "ptp_clk" for the PTP clock
 24 - phy-mode: See ethernet.txt file in the same directory
 25 
 26 Optional properties:
 27 - dma-coherent: Present if dma operations are coherent
 28 - amd,per-channel-interrupt: Indicates that Rx and Tx complete will generate
 29   a unique interrupt for each DMA channel - this requires an additional
 30   interrupt be configured for each DMA channel
 31 - amd,speed-set: Speed capabilities of the device
 32     0 - 1GbE and 10GbE (default)
 33     1 - 2.5GbE and 10GbE
 34 
 35 The MAC address will be determined using the optional properties defined in
 36 ethernet.txt.
 37 
 38 The following optional properties are represented by an array with each
 39 value corresponding to a particular speed. The first array value represents
 40 the setting for the 1GbE speed, the second value for the 2.5GbE speed and
 41 the third value for the 10GbE speed.  All three values are required if the
 42 property is used.
 43 - amd,serdes-blwc: Baseline wandering correction enablement
 44     0 - Off
 45     1 - On
 46 - amd,serdes-cdr-rate: CDR rate speed selection
 47 - amd,serdes-pq-skew: PQ (data sampling) skew
 48 - amd,serdes-tx-amp: TX amplitude boost
 49 - amd,serdes-dfe-tap-config: DFE taps available to run
 50 - amd,serdes-dfe-tap-enable: DFE taps to enable
 51 
 52 Example:
 53         xgbe@e0700000 {
 54                 compatible = "amd,xgbe-seattle-v1a";
 55                 reg = <0 0xe0700000 0 0x80000>,
 56                       <0 0xe0780000 0 0x80000>,
 57                       <0 0xe1240800 0 0x00400>,
 58                       <0 0xe1250000 0 0x00060>,
 59                       <0 0xe1250080 0 0x00004>;
 60                 interrupt-parent = <&gic>;
 61                 interrupts = <0 325 4>,
 62                              <0 326 1>, <0 327 1>, <0 328 1>, <0 329 1>,
 63                              <0 323 4>;
 64                 amd,per-channel-interrupt;
 65                 clocks = <&xgbe_dma_clk>, <&xgbe_ptp_clk>;
 66                 clock-names = "dma_clk", "ptp_clk";
 67                 phy-mode = "xgmii";
 68                 mac-address = [ 02 a1 a2 a3 a4 a5 ];
 69                 amd,speed-set = <0>;
 70                 amd,serdes-blwc = <1>, <1>, <0>;
 71                 amd,serdes-cdr-rate = <2>, <2>, <7>;
 72                 amd,serdes-pq-skew = <10>, <10>, <30>;
 73                 amd,serdes-tx-amp = <15>, <15>, <10>;
 74                 amd,serdes-dfe-tap-config = <3>, <3>, <1>;
 75                 amd,serdes-dfe-tap-enable = <0>, <0>, <127>;
 76         };

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