My hunch was spot on!
Both mt76 update commits were reverted. I'm now trying to narrow it down even further to the problematic patch -
3 files changed, 343 insertions(+), 6 deletions(-)
create mode 100644 package/kernel/mt76/patches/100-api_update.patch
create mode 100644 package/kernel/mt76/patches/110-wifi-mt76-ignore-key-disable-commands.patch
commit 22f1b777
package/kernel/mt76/patches/100-api_update.patch
(transmit related)
--- a/tx.c
+++ b/tx.c
@@ -330,7 +330,7 @@ mt76_tx(struct mt76_phy *phy, struct iee
if ((dev->drv->drv_flags & MT_DRV_HW_MGMT_TXQ) &&
!(info->flags & IEEE80211_TX_CTL_HW_80211_ENCAP) &&
!ieee80211_is_data(hdr->frame_control) &&
- !ieee80211_is_bufferable_mmpdu(hdr->frame_control)) {
+ !ieee80211_is_bufferable_mmpdu(skb)) {
qid = MT_TXQ_PSD;
}
commit efa44cb5
package/kernel/mt76/patches/110-wifi-mt76-ignore-key-disable-commands.patch
(mt7915 related)
--- a/mt7915/main.c
+++ b/mt7915/main.c
@@ -410,16 +410,15 @@ static int mt7915_set_key(struct ieee802
mt7915_mcu_add_bss_info(phy, vif, true);
}
- if (cmd == SET_KEY)
+ if (cmd == SET_KEY) {
*wcid_keyidx = idx;
- else if (idx == *wcid_keyidx)
- *wcid_keyidx = -1;
- else
+ } else {
+ if (idx == *wcid_keyidx)
+ *wcid_keyidx = -1;
goto out;
+ }
- mt76_wcid_key_setup(&dev->mt76, wcid,
- cmd == SET_KEY ? key : NULL);
-
+ mt76_wcid_key_setup(&dev->mt76, wcid, key);
err = mt76_connac_mcu_add_key(&dev->mt76, vif, &msta->bip,
key, MCU_EXT_CMD(STA_REC_UPDATE),
&msta->wcid, cmd);