[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