OSDN Git Service

net: dsa: mv88e6xxx: Default ports 9/10 6390X CMODE to 1000BaseX
authorAndrew Lunn <andrew@lunn.ch>
Sat, 10 Nov 2018 23:32:16 +0000 (00:32 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sun, 11 Nov 2018 18:17:46 +0000 (10:17 -0800)
commit787799a9d5557f9494bf79b7052d3b9ee68f3b80
treea23cbae2d1d80da3dab85fdb5bfebc10cb610297
parentfdc71eea8c0aefab80020044f8abf5c3c6814b44
net: dsa: mv88e6xxx: Default ports 9/10 6390X CMODE to 1000BaseX

The 6390X family has 8 SERDES interfaces. This allows ports 9 and 10
to support up to 10Gbps using 4 SERDES interfaces. However, when lower
speeds are used, which need fewer SERDES interfaces, the unused SERDES
interfaces can be used by ports 2-8.

The hardware defaults to ports 9 and 10 having all 4 SERDES interfaces
assigned to them. This only gets changed when the interface is
configured after what the SFP supports has been determined, or the 10G
PHY completes auto-neg.

For hardware designs which limit ports 9 and 10 to one or two SERDES
interfaces, and place SFPs on the lower interfaces, this is too
late. Those ports with SFP should not wait until ports 9/10 are up in
order to get access to the SERDES interface. So change the default
configuration when the driver is initialised. Configure ports 9 and 10
to 1000BaseX, so they use a single SERDES interface, freeing up the
others. They can steal them back if they need them.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx/port.c