diff mbox

[LEDE-DEV,RFC,3/4] mt76: fix compatibility with mac80211 from 4.13-rc6

Message ID 20170824214034.9309-4-hauke@hauke-m.de
State RFC
Headers show

Commit Message

Hauke Mehrtens Aug. 24, 2017, 9:40 p.m. UTC
This fixes some compatibility problems with backports-4.13-rc6.

Signed-off-by: Hauke Mehrtens <hauke@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 mbox

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;