wifi: mt76: mt7915: disable tx worker during tx BA session enable/disable

Avoids firmware race condition.

Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
Felix Fietkau
2024-08-12 21:08:34 +02:00
parent 891031ee05
commit 4eea0786d8
+7 -3
View File
@@ -690,13 +690,17 @@ int mt7915_mcu_add_tx_ba(struct mt7915_dev *dev,
{
struct mt7915_sta *msta = (struct mt7915_sta *)params->sta->drv_priv;
struct mt7915_vif *mvif = msta->vif;
int ret;
mt76_worker_disable(&dev->mt76.tx_worker);
if (enable && !params->amsdu)
msta->wcid.amsdu = false;
ret = mt76_connac_mcu_sta_ba(&dev->mt76, &mvif->mt76, params,
MCU_EXT_CMD(STA_REC_UPDATE),
enable, true);
mt76_worker_enable(&dev->mt76.tx_worker);
return mt76_connac_mcu_sta_ba(&dev->mt76, &mvif->mt76, params,
MCU_EXT_CMD(STA_REC_UPDATE),
enable, true);
return ret;
}
int mt7915_mcu_add_rx_ba(struct mt7915_dev *dev,