aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mt76/patches/001-mac80211-4-14-api.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2017-08-22 23:59:48 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2017-10-01 12:49:11 +0200
commita8f63a0717f553e0a1b37ee9212fc4cb2a801426 (patch)
tree9016b975706f35b98075167f2cf6b15add308c9b /package/kernel/mt76/patches/001-mac80211-4-14-api.patch
parent1114f5dc10755e3c92b5711b420818cf9e366874 (diff)
downloadupstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.gz
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.bz2
upstream-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.zip
mac80211: update to backports-4.14-rc2
This updates mac80211 to backprots-4.14-rc2. This was compile and runtime tested with ath9k, ath10k and b43 with multiple stations and ieee80211w and in different scenarios by many other people. To create the backports-4.14-rc2-1.tar.xz use this repository: https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git from tag v4.14-rc2-1 Then run this: ./gentree.py --git-revision v4.14-rc2 --clean <path to linux repo> ../backports-4.14-rc2-1 This also adapts the ath10k-ct and mt76 driver to the changed cfg80211 APIs and syncs the nl80211.h file in iw with the new version from backports-4.14-rc2. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mt76/patches/001-mac80211-4-14-api.patch')
-rw-r--r--package/kernel/mt76/patches/001-mac80211-4-14-api.patch86
1 files changed, 86 insertions, 0 deletions
diff --git a/package/kernel/mt76/patches/001-mac80211-4-14-api.patch b/package/kernel/mt76/patches/001-mac80211-4-14-api.patch
new file mode 100644
index 0000000000..6cff15b196
--- /dev/null
+++ b/package/kernel/mt76/patches/001-mac80211-4-14-api.patch
@@ -0,0 +1,86 @@
+--- a/mt76x2_mac.c
++++ b/mt76x2_mac.c
+@@ -46,7 +46,7 @@ mt76x2_mac_process_rate(struct ieee80211
+ case MT_PHY_TYPE_CCK:
+ if (idx >= 8) {
+ idx -= 8;
+- status->flag |= RX_FLAG_SHORTPRE;
++ status->enc_flags |= RX_ENC_FLAG_SHORTPRE;
+ }
+
+ if (idx >= 4)
+@@ -55,16 +55,16 @@ mt76x2_mac_process_rate(struct ieee80211
+ status->rate_idx = idx;
+ return;
+ case MT_PHY_TYPE_HT_GF:
+- status->flag |= RX_FLAG_HT_GF;
++ status->enc_flags |= RX_ENC_FLAG_HT_GF;
+ /* fall through */
+ case MT_PHY_TYPE_HT:
+- status->flag |= RX_FLAG_HT;
++ status->encoding = RX_ENC_HT;
+ status->rate_idx = idx;
+ break;
+ case MT_PHY_TYPE_VHT:
+- status->flag |= RX_FLAG_VHT;
++ status->encoding = RX_ENC_VHT;
+ status->rate_idx = FIELD_GET(MT_RATE_INDEX_VHT_IDX, idx);
+- status->vht_nss = FIELD_GET(MT_RATE_INDEX_VHT_NSS, idx) + 1;
++ status->nss = FIELD_GET(MT_RATE_INDEX_VHT_NSS, idx) + 1;
+ break;
+ default:
+ WARN_ON(1);
+@@ -72,22 +72,22 @@ mt76x2_mac_process_rate(struct ieee80211
+ }
+
+ if (rate & MT_RXWI_RATE_LDPC)
+- status->flag |= RX_FLAG_LDPC;
++ status->enc_flags |= RX_ENC_FLAG_LDPC;
+
+ if (rate & MT_RXWI_RATE_SGI)
+- status->flag |= RX_FLAG_SHORT_GI;
++ status->enc_flags |= RX_ENC_FLAG_SHORT_GI;
+
+ if (rate & MT_RXWI_RATE_STBC)
+- status->flag |= 1 << RX_FLAG_STBC_SHIFT;
++ status->enc_flags |= 1 << RX_ENC_FLAG_STBC_SHIFT;
+
+ switch (FIELD_GET(MT_RXWI_RATE_BW, rate)) {
+ case MT_PHY_BW_20:
+ break;
+ case MT_PHY_BW_40:
+- status->flag |= RX_FLAG_40MHZ;
++ status->bw = RATE_INFO_BW_40;
+ break;
+ case MT_PHY_BW_80:
+- status->vht_flag |= RX_VHT_FLAG_80MHZ;
++ status->bw = RATE_INFO_BW_80;
+ break;
+ default:
+ break;
+--- a/mt7603_mac.c
++++ b/mt7603_mac.c
+@@ -411,19 +411,19 @@ mt7603_mac_fill_rx(struct mt7603_dev *de
+ break;
+ case MT_PHY_TYPE_HT_GF:
+ case MT_PHY_TYPE_HT:
+- status->flag |= RX_FLAG_HT;
++ status->encoding = RX_ENC_HT;
+ break;
+ case MT_PHY_TYPE_VHT:
+- status->flag |= RX_FLAG_VHT;
++ status->encoding = RX_ENC_VHT;
+ break;
+ default:
+ WARN_ON(1);
+ }
+
+ if (rxdg0 & MT_RXV1_HT_SHORT_GI)
+- status->flag |= RX_FLAG_SHORT_GI;
++ status->enc_flags |= RX_ENC_FLAG_SHORT_GI;
+
+- status->flag |= RX_FLAG_STBC_MASK *
++ status->enc_flags |= RX_ENC_FLAG_STBC_MASK *
+ FIELD_GET(MT_RXV1_HT_STBC, rxdg0);
+
+ status->rate_idx = i;