diff options
author | Thomas Nixon <tom@tomn.co.uk> | 2021-07-09 22:58:18 +0000 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2022-01-16 20:51:14 +0100 |
commit | 255268ce1a218a670e653dc5c83067f704164b7c (patch) | |
tree | c460ac7e5735dc241e508ad3abd214e6156540f7 /target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch | |
parent | 607f06f81cc630448484800e47830fbf0cbc1e24 (diff) | |
download | upstream-255268ce1a218a670e653dc5c83067f704164b7c.tar.gz upstream-255268ce1a218a670e653dc5c83067f704164b7c.tar.bz2 upstream-255268ce1a218a670e653dc5c83067f704164b7c.zip |
lantiq: xrx200: enable use of baby jumbo frames
xrx200 max MTU is reduced so that it works correctly when set to the
max, and the max MTU of the switch is increased to match.
In 5.10, the switch driver now enables non-standard MTUs on a per-port
basis, with the overall frame size set based on the cpu port. When the
MTU is not used, this should have no effect. The maximum packet size is
limited as large packets cause the switch to lock up.
0702-net-lantiq-add-support-for-jumbo-frames.patch comes from net-next
commit 998ac358019e491217e752bc6dcbb3afb2a6fa3e.
In 5.4, all switch ports are configured to accept the max MTU, as 5.4
does not have port_max_mtu/port_change_mtu callbacks.
Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
Diffstat (limited to 'target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch')
-rw-r--r-- | target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch b/target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch index 0b68179a48..7448af8c26 100644 --- a/target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch +++ b/target/linux/lantiq/patches-5.10/0711-v5.16-net-lantiq_xrx200-Hardcode-the-burst-length-value.patch @@ -15,15 +15,15 @@ Signed-off-by: David S. Miller <davem@davemloft.net> --- a/drivers/net/ethernet/lantiq_xrx200.c +++ b/drivers/net/ethernet/lantiq_xrx200.c -@@ -23,6 +23,7 @@ - #define XRX200_DMA_DATA_LEN 0x600 +@@ -25,6 +25,7 @@ + #define XRX200_DMA_DATA_LEN (SZ_64K - 1) #define XRX200_DMA_RX 0 #define XRX200_DMA_TX 1 +#define XRX200_DMA_BURST_LEN 8 - /* cpu port mac */ - #define PMAC_RX_IPG 0x0024 -@@ -71,9 +72,6 @@ struct xrx200_priv { + #define XRX200_DMA_PACKET_COMPLETE 0 + #define XRX200_DMA_PACKET_IN_PROGRESS 1 +@@ -81,9 +82,6 @@ struct xrx200_priv { struct net_device *net_dev; struct device *dev; @@ -33,7 +33,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> __iomem void *pmac_reg; }; -@@ -320,7 +318,7 @@ static netdev_tx_t xrx200_start_xmit(str +@@ -367,7 +365,7 @@ static netdev_tx_t xrx200_start_xmit(str goto err_drop; /* dma needs to start on a burst length value aligned address */ @@ -42,7 +42,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> desc->addr = mapping - byte_offset; /* Make sure the address is written before we give it to HW */ -@@ -372,7 +370,8 @@ static int xrx200_dma_init(struct xrx200 +@@ -468,7 +466,8 @@ static int xrx200_dma_init(struct xrx200 int ret = 0; int i; @@ -52,7 +52,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> ch_rx->dma.nr = XRX200_DMA_RX; ch_rx->dma.dev = priv->dev; -@@ -490,18 +489,6 @@ static int xrx200_probe(struct platform_ +@@ -587,18 +586,6 @@ static int xrx200_probe(struct platform_ if (err) eth_hw_addr_random(net_dev); |