Message ID | 20201218105538.30563-2-rasmus.villemoes@prevas.dk |
---|---|
State | New |
Headers | show |
Series | ucc_geth fixes | expand |
On Fri, Dec 18, 2020 at 11:55:36AM +0100, Rasmus Villemoes wrote: > All the buffers and registers are already set up appropriately for an > MTU slightly above 1500, so we just need to expose this to the > networking stack. AFAICT, there's no need to implement .ndo_change_mtu > when the receive buffers are always set up to support the max_mtu. > > This fixes several warnings during boot on our mpc8309-board with an > embedded mv88e6250 switch: > > mv88e6085 mdio@e0102120:10: nonfatal error -34 setting MTU 1500 on port 0 > ... > mv88e6085 mdio@e0102120:10: nonfatal error -34 setting MTU 1500 on port 4 > ucc_geth e0102000.ethernet eth1: error -22 setting MTU to 1504 to include DSA overhead > > The last line explains what the DSA stack tries to do: achieving an MTU > of 1500 on-the-wire requires that the master netdevice connected to > the CPU port supports an MTU of 1500+the tagging overhead. > > Fixes: bfcb813203e6 ("net: dsa: configure the MTU for switch ports") > Cc: Vladimir Oltean <vladimir.oltean@nxp.com> > Reviewed-by: Andrew Lunn <andrew@lunn.ch> > Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> > --- Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
diff --git a/drivers/net/ethernet/freescale/ucc_geth.c b/drivers/net/ethernet/freescale/ucc_geth.c index 714b501be7d0..380c1f09adaf 100644 --- a/drivers/net/ethernet/freescale/ucc_geth.c +++ b/drivers/net/ethernet/freescale/ucc_geth.c @@ -3889,6 +3889,7 @@ static int ucc_geth_probe(struct platform_device* ofdev) INIT_WORK(&ugeth->timeout_work, ucc_geth_timeout_work); netif_napi_add(dev, &ugeth->napi, ucc_geth_poll, 64); dev->mtu = 1500; + dev->max_mtu = 1518; ugeth->msg_enable = netif_msg_init(debug.msg_enable, UGETH_MSG_DEFAULT); ugeth->phy_interface = phy_interface;