2023-09-24 02:11:43

by Linus Walleij

[permalink] [raw]
Subject: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

As we don't specify the MTU in the driver, the framework
will fall back to 1500 bytes and this doesn't work very
well when we try to attach a DSA switch:

eth1: mtu greater than device maximum
ixp4xx_eth c800a000.ethernet eth1: error -22 setting
MTU to 1504 to include DSA overhead

I checked the developer docs and the hardware can actually
do really big frames, so update the driver accordingly.

Signed-off-by: Linus Walleij <[email protected]>
---
drivers/net/ethernet/xscale/ixp4xx_eth.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/drivers/net/ethernet/xscale/ixp4xx_eth.c b/drivers/net/ethernet/xscale/ixp4xx_eth.c
index 3b0c5f177447..8f40287c8d58 100644
--- a/drivers/net/ethernet/xscale/ixp4xx_eth.c
+++ b/drivers/net/ethernet/xscale/ixp4xx_eth.c
@@ -24,6 +24,7 @@
#include <linux/dma-mapping.h>
#include <linux/dmapool.h>
#include <linux/etherdevice.h>
+#include <linux/if_vlan.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/net_tstamp.h>
@@ -1488,6 +1489,13 @@ static int ixp4xx_eth_probe(struct platform_device *pdev)
ndev->dev.dma_mask = dev->dma_mask;
ndev->dev.coherent_dma_mask = dev->coherent_dma_mask;

+ /* Maximum frame size is 16320 bytes and includes VLAN and
+ * ethernet headers. See "IXP400 Software Programmer's Guide"
+ * section 10.3.2, page 161.
+ */
+ ndev->min_mtu = ETH_MIN_MTU;
+ ndev->max_mtu = 16320 - VLAN_ETH_HLEN;
+
netif_napi_add_weight(ndev, &port->napi, eth_poll, NAPI_WEIGHT);

if (!(port->npe = npe_request(NPE_ID(port->id))))

---
base-commit: 0bb80ecc33a8fb5a682236443c1e740d5c917d1d
change-id: 20230923-ixp4xx-eth-mtu-c041d7efe932

Best regards,
--
Linus Walleij <[email protected]>


2023-10-03 09:40:33

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

Hello:

This patch was applied to netdev/net-next.git (main)
by Paolo Abeni <[email protected]>:

On Sat, 23 Sep 2023 20:38:22 +0200 you wrote:
> As we don't specify the MTU in the driver, the framework
> will fall back to 1500 bytes and this doesn't work very
> well when we try to attach a DSA switch:
>
> eth1: mtu greater than device maximum
> ixp4xx_eth c800a000.ethernet eth1: error -22 setting
> MTU to 1504 to include DSA overhead
>
> [...]

Here is the summary with links:
- [net-next] net: ixp4xx_eth: Specify min/max MTU
https://git.kernel.org/netdev/net-next/c/13efc44ca644

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html


2023-10-03 21:55:11

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

On Tue, Oct 3, 2023 at 11:40 AM <[email protected]> wrote:

> This patch was applied to netdev/net-next.git (main)
> by Paolo Abeni <[email protected]>:

Sorry Paolo, this is the latest version of this patch, which sadly changed
Subject in the process:
https://lore.kernel.org/netdev/[email protected]/

If it causes trouble for you to replace the patch I can rebase
this work on top of your branch, just tell me.

Yours,
Linus Walleij

2023-10-04 17:26:24

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

On Tue, 3 Oct 2023 23:54:49 +0200 Linus Walleij wrote:
> Sorry Paolo, this is the latest version of this patch, which sadly changed
> Subject in the process:
> https://lore.kernel.org/netdev/[email protected]/
>
> If it causes trouble for you to replace the patch I can rebase
> this work on top of your branch, just tell me.

Yes, please! Sorry about the mess, we're a bit backlogged after we
all went to Kernel Recipes :(

2023-10-05 15:13:27

by Paolo Abeni

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

On Tue, 2023-10-03 at 23:54 +0200, Linus Walleij wrote:
> On Tue, Oct 3, 2023 at 11:40 AM <[email protected]> wrote:
>
> > This patch was applied to netdev/net-next.git (main)
> > by Paolo Abeni <[email protected]>:
>
> Sorry Paolo, this is the latest version of this patch, which sadly changed
> Subject in the process:
> https://lore.kernel.org/netdev/[email protected]/

Ouch, my bad :(

The change of subject baffled both me and patchwork. As I process the
backlog fifo, and was unable to reach the most recent versions due to
the backlog size, I missed the newer revisions.

In the future, please try to avoid subject change. If the subject chane
is needed, please explicitly mark the old version as superseded, it
will help us a lot, thanks!

Paolo

2023-10-05 20:26:36

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH net-next] net: ixp4xx_eth: Specify min/max MTU

On Thu, Oct 5, 2023 at 9:37 AM Paolo Abeni <[email protected]> wrote:

> > Sorry Paolo, this is the latest version of this patch, which sadly changed
> > Subject in the process:
> > https://lore.kernel.org/netdev/[email protected]/
>
> Ouch, my bad :(


It's chill, I already rebased and resent the patch, it's life.

> The change of subject baffled both me and patchwork. As I process the
> backlog fifo, and was unable to reach the most recent versions due to
> the backlog size, I missed the newer revisions.
>
> In the future, please try to avoid subject change. If the subject chane
> is needed, please explicitly mark the old version as superseded, it
> will help us a lot, thanks!

OK in patchwork I guess, I don't understand that tool very well otherwise
I would have done it right, I'll try not to confuse it more.

BR
Linus Walleij