| * AMD 10GbE driver (amd-xgbe) |
| |
| Required properties: |
| - compatible: Should be "amd,xgbe-seattle-v1a" |
| - reg: Address and length of the register sets for the device |
| - MAC registers |
| - PCS registers |
| - interrupt-parent: Should be the phandle for the interrupt controller |
| that services interrupts for this device |
| - interrupts: Should contain the amd-xgbe interrupt(s). The first interrupt |
| listed is required and is the general device interrupt. If the optional |
| amd,per-channel-interrupt property is specified, then one additional |
| interrupt for each DMA channel supported by the device should be specified |
| - clocks: |
| - DMA clock for the amd-xgbe device (used for calculating the |
| correct Rx interrupt watchdog timer value on a DMA channel |
| for coalescing) |
| - PTP clock for the amd-xgbe device |
| - clock-names: Should be the names of the clocks |
| - "dma_clk" for the DMA clock |
| - "ptp_clk" for the PTP clock |
| - phy-handle: See ethernet.txt file in the same directory |
| - phy-mode: See ethernet.txt file in the same directory |
| |
| Optional properties: |
| - mac-address: mac address to be assigned to the device. Can be overridden |
| by UEFI. |
| - dma-coherent: Present if dma operations are coherent |
| - amd,per-channel-interrupt: Indicates that Rx and Tx complete will generate |
| a unique interrupt for each DMA channel - this requires an additional |
| interrupt be configured for each DMA channel |
| |
| Example: |
| xgbe@e0700000 { |
| compatible = "amd,xgbe-seattle-v1a"; |
| reg = <0 0xe0700000 0 0x80000>, |
| <0 0xe0780000 0 0x80000>; |
| interrupt-parent = <&gic>; |
| interrupts = <0 325 4>, |
| <0 326 1>, <0 327 1>, <0 328 1>, <0 329 1>; |
| amd,per-channel-interrupt; |
| clocks = <&xgbe_dma_clk>, <&xgbe_ptp_clk>; |
| clock-names = "dma_clk", "ptp_clk"; |
| phy-handle = <&phy>; |
| phy-mode = "xgmii"; |
| mac-address = [ 02 a1 a2 a3 a4 a5 ]; |
| }; |