Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d9da2c87 authored by Jose Abreu's avatar Jose Abreu Committed by David S. Miller
Browse files

net: stmmac: Limit max speeds of XGMAC if asked to



We may have some SoCs that can't achieve XGMAC max speed. Limit it if
asked to.

Signed-off-by: default avatarJose Abreu <joabreu@synopsys.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5f8475da
Loading
Loading
Loading
Loading
+16 −9
Original line number Diff line number Diff line
@@ -831,8 +831,14 @@ static void stmmac_validate(struct phylink_config *config,
		phylink_set(mask, 1000baseT_Full);
		phylink_set(mask, 1000baseX_Full);
	} else if (priv->plat->has_xgmac) {
		if (!max_speed || (max_speed >= 2500)) {
			phylink_set(mac_supported, 2500baseT_Full);
			phylink_set(mac_supported, 2500baseX_Full);
		}
		if (!max_speed || (max_speed >= 5000)) {
			phylink_set(mac_supported, 5000baseT_Full);
		}
		if (!max_speed || (max_speed >= 10000)) {
			phylink_set(mac_supported, 10000baseSR_Full);
			phylink_set(mac_supported, 10000baseLR_Full);
			phylink_set(mac_supported, 10000baseER_Full);
@@ -841,6 +847,7 @@ static void stmmac_validate(struct phylink_config *config,
			phylink_set(mac_supported, 10000baseKX4_Full);
			phylink_set(mac_supported, 10000baseKR_Full);
		}
	}

	/* Half-Duplex can only work with single queue */
	if (tx_cnt > 1) {