net: dsa: felix: Use PHY_INTERFACE_MODE_INTERNAL instead of GMII
phy-mode = "gmii" is confusing because it may mean that the port supports the 8-bit-wide parallel data interface pinout, which it doesn't. It may also be confusing because one of the "gmii" internal ports is actually overclocked to run at 2.5Gbps (even though, yes, as far as the switch MAC is concerned, it still thinks it's gigabit). So use the phy-mode = "internal" property to describe the internal ports inside the NXP LS1028A chip (the ones facing the ENETC). The change should be fine, because the device tree bindings document is yet to be introduced, and there are no stable DT blobs in use. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Michael Walle <michael@walle.cc> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c102b6fddc
commit
28a134f5a0
|
@ -176,8 +176,7 @@ static void felix_phylink_validate(struct dsa_switch *ds, int port,
|
|||
phylink_set(mask, 100baseT_Full);
|
||||
phylink_set(mask, 1000baseT_Full);
|
||||
|
||||
/* The internal ports that run at 2.5G are overclocked GMII */
|
||||
if (state->interface == PHY_INTERFACE_MODE_GMII ||
|
||||
if (state->interface == PHY_INTERFACE_MODE_INTERNAL ||
|
||||
state->interface == PHY_INTERFACE_MODE_2500BASEX ||
|
||||
state->interface == PHY_INTERFACE_MODE_USXGMII) {
|
||||
phylink_set(mask, 2500baseT_Full);
|
||||
|
|
|
@ -955,8 +955,7 @@ static int vsc9959_prevalidate_phy_mode(struct ocelot *ocelot, int port,
|
|||
phy_interface_t phy_mode)
|
||||
{
|
||||
switch (phy_mode) {
|
||||
case PHY_INTERFACE_MODE_GMII:
|
||||
/* Only supported on internal to-CPU ports */
|
||||
case PHY_INTERFACE_MODE_INTERNAL:
|
||||
if (port != 4 && port != 5)
|
||||
return -ENOTSUPP;
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue