[LEDE-DEV] [RFC 3/4] mt76: fix compatibility with mac80211 from 4.13-rc6
Hauke Mehrtens
hauke at hauke-m.de
Thu Aug 24 14:40:33 PDT 2017
This fixes some compatibility problems with backports-4.13-rc6.
Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
.../kernel/mt76/patches/001-backport-4.13.patch | 86 ++++++++++++++++++++++
1 file changed, 86 insertions(+)
create mode 100644 package/kernel/mt76/patches/001-backport-4.13.patch
diff --git a/package/kernel/mt76/patches/001-backport-4.13.patch b/package/kernel/mt76/patches/001-backport-4.13.patch
new file mode 100644
index 0000000000..6cff15b196
--- /dev/null
+++ b/package/kernel/mt76/patches/001-backport-4.13.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;
--
2.11.0
More information about the Lede-dev
mailing list