diff options
author | Felix Fietkau <nbd@nbd.name> | 2022-11-23 11:33:44 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2022-11-23 11:34:43 +0100 |
commit | eaba63cddee44e0761cee1b0f82e3dd359e2dac1 (patch) | |
tree | b2b790b497e194da61e0dd8963057896759b62eb /target/linux/generic | |
parent | 4e1a6ee903369cec5de1eb435ce614d4ff77beb0 (diff) | |
download | upstream-eaba63cddee44e0761cee1b0f82e3dd359e2dac1.tar.gz upstream-eaba63cddee44e0761cee1b0f82e3dd359e2dac1.tar.bz2 upstream-eaba63cddee44e0761cee1b0f82e3dd359e2dac1.zip |
kernel: fix regression on mt7986
The CDMQ ingress special tag flag needs to be set for 7986 even without DSA
untag offload, otherwise tx checksum offload seems to break
Fixes: 9b482ee22f3f ("kernel: add more fixes for mtk_eth_soc")
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'target/linux/generic')
-rw-r--r-- | target/linux/generic/pending-5.15/732-14-net-ethernet-mtk_eth_soc-drop-generic-vlan-rx-offloa.patch | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/target/linux/generic/pending-5.15/732-14-net-ethernet-mtk_eth_soc-drop-generic-vlan-rx-offloa.patch b/target/linux/generic/pending-5.15/732-14-net-ethernet-mtk_eth_soc-drop-generic-vlan-rx-offloa.patch index 4339321a96..1a32c02f1d 100644 --- a/target/linux/generic/pending-5.15/732-14-net-ethernet-mtk_eth_soc-drop-generic-vlan-rx-offloa.patch +++ b/target/linux/generic/pending-5.15/732-14-net-ethernet-mtk_eth_soc-drop-generic-vlan-rx-offloa.patch @@ -151,16 +151,8 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> return 0; } -@@ -3503,15 +3481,15 @@ static int mtk_hw_init(struct mtk_eth *e - /* Indicates CDM to parse the MTK special tag from CPU - * which also is working out for untag packets. - */ -- val = mtk_r32(eth, MTK_CDMQ_IG_CTRL); -- mtk_w32(eth, val | MTK_CDMQ_STAG_EN, MTK_CDMQ_IG_CTRL); +@@ -3508,10 +3486,9 @@ static int mtk_hw_init(struct mtk_eth *e if (!MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) { -+ val = mtk_r32(eth, MTK_CDMQ_IG_CTRL); -+ mtk_w32(eth, val | MTK_CDMQ_STAG_EN, MTK_CDMQ_IG_CTRL); -+ val = mtk_r32(eth, MTK_CDMP_IG_CTRL); mtk_w32(eth, val | MTK_CDMP_STAG_EN, MTK_CDMP_IG_CTRL); - } @@ -172,7 +164,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /* set interrupt delays based on current Net DIM sample */ mtk_dim_rx(ð->rx_dim.work); -@@ -4132,7 +4110,7 @@ static int mtk_add_mac(struct mtk_eth *e +@@ -4132,7 +4109,7 @@ static int mtk_add_mac(struct mtk_eth *e eth->netdev[id]->hw_features |= NETIF_F_LRO; eth->netdev[id]->vlan_features = eth->soc->hw_features & |