mac80211: backport brcmfmac fixes from 4.16
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / 319-v4.17-0002-mac80211-support-AP-4-addr-mode-fast-rx.patch
1 From: Felix Fietkau <nbd@nbd.name>
2 Date: Fri, 23 Feb 2018 10:00:22 +0100
3 Subject: [PATCH] mac80211: support AP 4-addr mode fast-rx
4
5 Signed-off-by: Felix Fietkau <nbd@nbd.name>
6 ---
7
8 --- a/net/mac80211/rx.c
9 +++ b/net/mac80211/rx.c
10 @@ -3774,6 +3774,15 @@ void ieee80211_check_fast_rx(struct sta_
11 !(sdata->flags & IEEE80211_SDATA_DONT_BRIDGE_PACKETS) &&
12 (sdata->vif.type != NL80211_IFTYPE_AP_VLAN ||
13 !sdata->u.vlan.sta);
14 +
15 + if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN &&
16 + sdata->u.vlan.sta) {
17 + fastrx.expected_ds_bits |=
18 + cpu_to_le16(IEEE80211_FCTL_FROMDS);
19 + fastrx.sa_offs = offsetof(struct ieee80211_hdr, addr4);
20 + fastrx.internal_forward = 0;
21 + }
22 +
23 break;
24 default:
25 goto clear;