]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: dsa: b53: fix jumbo frames on 10/100 ports
authorJonas Gorski <jonas.gorski@gmail.com>
Fri, 4 Oct 2024 08:47:21 +0000 (10:47 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Oct 2024 13:11:55 +0000 (15:11 +0200)
[ Upstream commit 2f3dcd0d39affe5b9ba1c351ce0e270c8bdd5109 ]

All modern chips support and need the 10_100 bit set for supporting jumbo
frames on 10/100 ports, so instead of enabling it only for 583XX enable
it for everything except bcm63xx, where the bit is writeable, but does
nothing.

Tested on BCM53115, where jumbo frames were dropped at 10/100 speeds
without the bit set.

Fixes: 6ae5834b983a ("net: dsa: b53: add MTU configuration support")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/dsa/b53/b53_common.c

index cc030f87890530ebc8c0f66842896eb5376f78fe..df67262c3092491c14f4fa89aff28df4f7d8fde0 100644 (file)
@@ -2231,7 +2231,7 @@ static int b53_change_mtu(struct dsa_switch *ds, int port, int mtu)
                return 0;
 
        enable_jumbo = (mtu > ETH_DATA_LEN);
-       allow_10_100 = (dev->chip_id == BCM583XX_DEVICE_ID);
+       allow_10_100 = !is63xx(dev);
 
        return b53_set_jumbo(dev, enable_jumbo, allow_10_100);
 }