aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch')
-rw-r--r--target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch50
1 files changed, 0 insertions, 50 deletions
diff --git a/target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch b/target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch
deleted file mode 100644
index 8163e4475d..0000000000
--- a/target/linux/mediatek/patches-4.14/0042-net-next-mediatek-honour-special-tag-bit-inside-RX-D.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From a306af3b97c56b9e224a2f9ee04838a2d32ff60b Mon Sep 17 00:00:00 2001
-From: John Crispin <john@phrozen.org>
-Date: Wed, 9 Aug 2017 14:44:07 +0200
-Subject: [PATCH 42/57] net-next: mediatek: honour special tag bit inside RX
- DMA descriptor
-
-For HW NAT/QoS to work the DSA driver needs to turn the special tag bit
-inside the ingress control register on. This has the side effect that
-the code working out which ingress gmac we have breaks. Fix this by
-honouring the special tag bit inside the RX free descriptor.
-
-Signed-off-by: John Crispin <john@phrozen.org>
----
- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 14 ++++++++++----
- drivers/net/ethernet/mediatek/mtk_eth_soc.h | 1 +
- 2 files changed, 11 insertions(+), 4 deletions(-)
-
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -999,10 +999,16 @@ static int mtk_poll_rx(struct napi_struc
- if (!(trxd.rxd2 & RX_DMA_DONE))
- break;
-
-- /* find out which mac the packet come from. values start at 1 */
-- mac = (trxd.rxd4 >> RX_DMA_FPORT_SHIFT) &
-- RX_DMA_FPORT_MASK;
-- mac--;
-+ /* find out which mac the packet comes from. If the special tag is
-+ * we can assume that the traffic is coming from the builtin mt7530
-+ * and the DSA driver has loaded. FPORT will be the physical switch
-+ * port in this case rather than the FE forward port id. */
-+ if (!(trxd.rxd4 & RX_DMA_SP_TAG)) {
-+ /* values start at 1 */
-+ mac = (trxd.rxd4 >> RX_DMA_FPORT_SHIFT) &
-+ RX_DMA_FPORT_MASK;
-+ mac--;
-+ }
-
- if (unlikely(mac < 0 || mac >= MTK_MAC_COUNT ||
- !eth->netdev[mac]))
---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
-+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
-@@ -287,6 +287,7 @@
-
- /* QDMA descriptor rxd4 */
- #define RX_DMA_L4_VALID BIT(24)
-+#define RX_DMA_SP_TAG BIT(22)
- #define RX_DMA_FPORT_SHIFT 19
- #define RX_DMA_FPORT_MASK 0x7
-