hostapd: wolfssl: add RNG to EC key
[openwrt/staging/ynezz.git] / target / linux / generic / backport-5.10 / 610-v5.13-37-net-ethernet-mtk_eth_soc-fix-RX-VLAN-offload.patch
1 From 3f57d8c40fea9b20543cab4da12f4680d2ef182c Mon Sep 17 00:00:00 2001
2 From: Felix Fietkau <nbd@nbd.name>
3 Date: Thu, 22 Apr 2021 22:20:54 -0700
4 Subject: [PATCH] net: ethernet: mtk_eth_soc: fix RX VLAN offload
5
6 The VLAN ID in the rx descriptor is only valid if the RX_DMA_VTAG bit is
7 set. Fixes frames wrongly marked with VLAN tags.
8
9 Signed-off-by: Felix Fietkau <nbd@nbd.name>
10 [Ilya: fix commit message]
11 Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
12 Signed-off-by: David S. Miller <davem@davemloft.net>
13 ---
14 drivers/net/ethernet/mediatek/mtk_eth_soc.c | 2 +-
15 drivers/net/ethernet/mediatek/mtk_eth_soc.h | 1 +
16 2 files changed, 2 insertions(+), 1 deletion(-)
17
18 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
19 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
20 @@ -1319,7 +1319,7 @@ static int mtk_poll_rx(struct napi_struc
21 skb->protocol = eth_type_trans(skb, netdev);
22
23 if (netdev->features & NETIF_F_HW_VLAN_CTAG_RX &&
24 - RX_DMA_VID(trxd.rxd3))
25 + (trxd.rxd2 & RX_DMA_VTAG))
26 __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
27 RX_DMA_VID(trxd.rxd3));
28 skb_record_rx_queue(skb, 0);
29 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
30 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
31 @@ -300,6 +300,7 @@
32 #define RX_DMA_LSO BIT(30)
33 #define RX_DMA_PLEN0(_x) (((_x) & 0x3fff) << 16)
34 #define RX_DMA_GET_PLEN0(_x) (((_x) >> 16) & 0x3fff)
35 +#define RX_DMA_VTAG BIT(15)
36
37 /* QDMA descriptor rxd3 */
38 #define RX_DMA_VID(_x) ((_x) & 0xfff)