1
1
* AMD 10GbE driver (amd-xgbe)
2
2
3
- Required properties (ethernet device) :
3
+ Required properties:
4
4
- compatible: Should be "amd,xgbe-seattle-v1a"
5
5
- reg: Address and length of the register sets for the device
6
6
- MAC registers
7
7
- PCS registers
8
+ - SerDes Rx/Tx registers
9
+ - SerDes integration registers (1/2)
10
+ - SerDes integration registers (2/2)
8
11
- interrupt-parent: Should be the phandle for the interrupt controller
9
12
that services interrupts for this device
10
13
- interrupts: Should contain the amd-xgbe interrupt(s). The first interrupt
11
14
listed is required and is the general device interrupt. If the optional
12
15
amd,per-channel-interrupt property is specified, then one additional
13
- interrupt for each DMA channel supported by the device should be specified
16
+ interrupt for each DMA channel supported by the device should be specified.
17
+ The last interrupt listed should be the PCS auto-negotiation interrupt.
14
18
- clocks:
15
19
- DMA clock for the amd-xgbe device (used for calculating the
16
20
correct Rx interrupt watchdog timer value on a DMA channel
@@ -19,28 +23,15 @@ Required properties (ethernet device):
19
23
- clock-names: Should be the names of the clocks
20
24
- "dma_clk" for the DMA clock
21
25
- "ptp_clk" for the PTP clock
22
- - phy-handle: See ethernet.txt file in the same directory
23
26
- phy-mode: See ethernet.txt file in the same directory
24
27
25
- Optional properties (ethernet device) :
28
+ Optional properties:
26
29
- mac-address: mac address to be assigned to the device. Can be overridden
27
30
by UEFI.
28
31
- dma-coherent: Present if dma operations are coherent
29
32
- amd,per-channel-interrupt: Indicates that Rx and Tx complete will generate
30
33
a unique interrupt for each DMA channel - this requires an additional
31
34
interrupt be configured for each DMA channel
32
-
33
- Required properties (phy device):
34
- - compatible: Should be "amd,xgbe-phy-seattle-v1a"
35
- - reg: Address and length of the register sets for the device
36
- - SerDes Rx/Tx registers
37
- - SerDes integration registers (1/2)
38
- - SerDes integration registers (2/2)
39
- - interrupt-parent: Should be the phandle for the interrupt controller
40
- that services interrupts for this device
41
- - interrupts: Should contain the amd-xgbe-phy interrupt.
42
-
43
- Optional properties (phy device):
44
35
- amd,speed-set: Speed capabilities of the device
45
36
0 - 1GbE and 10GbE (default)
46
37
1 - 2.5GbE and 10GbE
@@ -63,25 +54,19 @@ Example:
63
54
xgbe@e0700000 {
64
55
compatible = "amd,xgbe-seattle-v1a";
65
56
reg = <0 0xe0700000 0 0x80000>,
66
- <0 0xe0780000 0 0x80000>;
57
+ <0 0xe0780000 0 0x80000>,
58
+ <0 0xe1240800 0 0x00400>,
59
+ <0 0xe1250000 0 0x00060>,
60
+ <0 0xe1250080 0 0x00004>;
67
61
interrupt-parent = <&gic>;
68
62
interrupts = <0 325 4>,
69
- <0 326 1>, <0 327 1>, <0 328 1>, <0 329 1>;
63
+ <0 326 1>, <0 327 1>, <0 328 1>, <0 329 1>,
64
+ <0 323 4>;
70
65
amd,per-channel-interrupt;
71
66
clocks = <&xgbe_dma_clk>, <&xgbe_ptp_clk>;
72
67
clock-names = "dma_clk", "ptp_clk";
73
- phy-handle = <&xgbe_phy>;
74
68
phy-mode = "xgmii";
75
69
mac-address = [ 02 a1 a2 a3 a4 a5 ];
76
- };
77
-
78
- xgbe_phy@e1240800 {
79
- compatible = "amd,xgbe-phy-seattle-v1a";
80
- reg = <0 0xe1240800 0 0x00400>,
81
- <0 0xe1250000 0 0x00060>,
82
- <0 0xe1250080 0 0x00004>;
83
- interrupt-parent = <&gic>;
84
- interrupts = <0 323 4>;
85
70
amd,speed-set = <0>;
86
71
amd,serdes-blwc = <1>, <1>, <0>;
87
72
amd,serdes-cdr-rate = <2>, <2>, <7>;
0 commit comments