aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch')
-rw-r--r--target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch67
1 files changed, 0 insertions, 67 deletions
diff --git a/target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch b/target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch
deleted file mode 100644
index 1299f3f69b..0000000000
--- a/target/linux/mvebu/patches-5.4/015-net-mvneta-fix-XDP-support-if-sw-bm-is-used-as-fallb.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 44efc78d0e464ce70b45b165c005f8bedc17952e Mon Sep 17 00:00:00 2001
-From: Lorenzo Bianconi <lorenzo@kernel.org>
-Date: Wed, 29 Jan 2020 12:50:53 +0100
-Subject: [PATCH] net: mvneta: fix XDP support if sw bm is used as fallback
-
-In order to fix XDP support if sw buffer management is used as fallback
-for hw bm devices, define MVNETA_SKB_HEADROOM as maximum between
-XDP_PACKET_HEADROOM and NET_SKB_PAD and let the hw aligns the IP header
-to 4-byte boundary.
-Fix rx_offset_correction initialization if mvneta_bm_port_init fails in
-mvneta_resume routine
-
-Fixes: 0db51da7a8e9 ("net: mvneta: add basic XDP support")
-Tested-by: Sven Auhagen <sven.auhagen@voleatech.de>
-Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/ethernet/marvell/mvneta.c | 10 +++++++---
- 1 file changed, 7 insertions(+), 3 deletions(-)
-
---- a/drivers/net/ethernet/marvell/mvneta.c
-+++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -326,8 +326,7 @@
- ETH_HLEN + ETH_FCS_LEN, \
- cache_line_size())
-
--#define MVNETA_SKB_HEADROOM (max(XDP_PACKET_HEADROOM, NET_SKB_PAD) + \
-- NET_IP_ALIGN)
-+#define MVNETA_SKB_HEADROOM max(XDP_PACKET_HEADROOM, NET_SKB_PAD)
- #define MVNETA_SKB_PAD (SKB_DATA_ALIGN(sizeof(struct skb_shared_info) + \
- MVNETA_SKB_HEADROOM))
- #define MVNETA_SKB_SIZE(len) (SKB_DATA_ALIGN(len) + MVNETA_SKB_PAD)
-@@ -1174,6 +1173,7 @@ bm_mtu_err:
- mvneta_bm_pool_destroy(pp->bm_priv, pp->pool_short, 1 << pp->id);
-
- pp->bm_priv = NULL;
-+ pp->rx_offset_correction = MVNETA_SKB_HEADROOM;
- mvreg_write(pp, MVNETA_ACC_MODE, MVNETA_ACC_MODE_EXT1);
- netdev_info(pp->dev, "fail to update MTU, fall back to software BM\n");
- }
-@@ -4989,7 +4989,6 @@ static int mvneta_probe(struct platform_
- SET_NETDEV_DEV(dev, &pdev->dev);
-
- pp->id = global_port_id++;
-- pp->rx_offset_correction = MVNETA_SKB_HEADROOM;
-
- /* Obtain access to BM resources if enabled and already initialized */
- bm_node = of_parse_phandle(dn, "buffer-manager", 0);
-@@ -5014,6 +5013,10 @@ static int mvneta_probe(struct platform_
- }
- of_node_put(bm_node);
-
-+ /* sw buffer management */
-+ if (!pp->bm_priv)
-+ pp->rx_offset_correction = MVNETA_SKB_HEADROOM;
-+
- err = mvneta_init(&pdev->dev, pp);
- if (err < 0)
- goto err_netdev;
-@@ -5171,6 +5174,7 @@ static int mvneta_resume(struct device *
- err = mvneta_bm_port_init(pdev, pp);
- if (err < 0) {
- dev_info(&pdev->dev, "use SW buffer management\n");
-+ pp->rx_offset_correction = MVNETA_SKB_HEADROOM;
- pp->bm_priv = NULL;
- }
- }