Skip to content

Commit

Permalink
mt76: mt7915: limit minimum twt duration
Browse files Browse the repository at this point in the history
The minimum twt duration supported by mt7915 is 64 according to hardware
design. Reply station with TWT_SETUP_CMD_DICTATE if min_twt_dur smaller
than 64.

Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
  • Loading branch information
Peter Chiu authored and nbd168 committed May 5, 2022
1 parent d39368f commit 4718ed0
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 0 deletions.
6 changes: 6 additions & 0 deletions mt7915/mac.c
Expand Up @@ -2743,6 +2743,12 @@ void mt7915_mac_add_twt_setup(struct ieee80211_hw *hw,
if (hweight8(msta->twt.flowid_mask) == ARRAY_SIZE(msta->twt.flow))
goto unlock;

if (twt_agrt->min_twt_dur < MT7915_MIN_TWT_DUR) {
setup_cmd = TWT_SETUP_CMD_DICTATE;
twt_agrt->min_twt_dur = MT7915_MIN_TWT_DUR;
goto unlock;
}

flowid = ffs(~msta->twt.flowid_mask) - 1;
le16p_replace_bits(&twt_agrt->req_type, flowid,
IEEE80211_TWT_REQTYPE_FLOWID);
Expand Down
1 change: 1 addition & 0 deletions mt7915/mt7915.h
Expand Up @@ -66,6 +66,7 @@

#define MT7915_MAX_TWT_AGRT 16
#define MT7915_MAX_STA_TWT_AGRT 8
#define MT7915_MIN_TWT_DUR 64
#define MT7915_MAX_QUEUE (__MT_RXQ_MAX + __MT_MCUQ_MAX + 2)

struct mt7915_vif;
Expand Down

0 comments on commit 4718ed0

Please sign in to comment.