Commit ef591d74 authored by Lorenzo Bianconi's avatar Lorenzo Bianconi Committed by Felix Fietkau
Browse files

wifi: mt76: move ampdu_state in mt76_wcid



ampdu_state field is used by most of the drivers, so move it in
mt76_wcid structure.

Signed-off-by: default avatarLorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent d17a2fe8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -316,6 +316,7 @@ struct mt76_wcid {
	int inactive_count;

	struct rate_info rate;
	unsigned long ampdu_state;

	u16 idx;
	u8 hw_key_idx;
+1 −1
Original line number Diff line number Diff line
@@ -863,7 +863,7 @@ mt7915_tx_check_aggr(struct ieee80211_sta *sta, __le32 *txwi)
		return;

	msta = (struct mt7915_sta *)sta->drv_priv;
	if (!test_and_set_bit(tid, &msta->ampdu_state))
	if (!test_and_set_bit(tid, &msta->wcid.ampdu_state))
		ieee80211_start_tx_ba_session(sta, tid, 0);
}

+3 −3
Original line number Diff line number Diff line
@@ -836,16 +836,16 @@ mt7915_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
	case IEEE80211_AMPDU_TX_STOP_FLUSH:
	case IEEE80211_AMPDU_TX_STOP_FLUSH_CONT:
		mtxq->aggr = false;
		clear_bit(tid, &msta->ampdu_state);
		clear_bit(tid, &msta->wcid.ampdu_state);
		ret = mt7915_mcu_add_tx_ba(dev, params, false);
		break;
	case IEEE80211_AMPDU_TX_START:
		set_bit(tid, &msta->ampdu_state);
		set_bit(tid, &msta->wcid.ampdu_state);
		ret = IEEE80211_AMPDU_TX_START_IMMEDIATE;
		break;
	case IEEE80211_AMPDU_TX_STOP_CONT:
		mtxq->aggr = false;
		clear_bit(tid, &msta->ampdu_state);
		clear_bit(tid, &msta->wcid.ampdu_state);
		ret = mt7915_mcu_add_tx_ba(dev, params, false);
		ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid);
		break;
+0 −1
Original line number Diff line number Diff line
@@ -144,7 +144,6 @@ struct mt7915_sta {

	unsigned long changed;
	unsigned long jiffies;
	unsigned long ampdu_state;
	struct mt76_connac_sta_key_conf bip;

	struct {
+1 −1
Original line number Diff line number Diff line
@@ -531,7 +531,7 @@ static void mt7921_tx_check_aggr(struct ieee80211_sta *sta, __le32 *txwi)
		return;

	msta = (struct mt7921_sta *)sta->drv_priv;
	if (!test_and_set_bit(tid, &msta->ampdu_state))
	if (!test_and_set_bit(tid, &msta->wcid.ampdu_state))
		ieee80211_start_tx_ba_session(sta, tid, 0);
}

Loading