mt76: add mt76_default_basic_rate more devices can rely on

add mt76_default_basic_rate to mt76 core more devices can rely on
to send frames which require the rate in the basic rates.

Suggested-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
Sean Wang 2021-07-14 04:15:59 +08:00 committed by Felix Fietkau
parent bce8445847
commit e486722543
2 changed files with 15 additions and 0 deletions

View File

@ -1351,3 +1351,17 @@ mt76_init_queue(struct mt76_dev *dev, int qid, int idx, int n_desc,
return hwq;
}
EXPORT_SYMBOL_GPL(mt76_init_queue);
u16 mt76_default_basic_rate(struct mt76_phy *phy, struct ieee80211_vif *vif)
{
int i = ffs(vif->bss_conf.basic_rates) - 1, offset = 0;
struct ieee80211_rate *rate;
if (phy->chandef.chan->band == NL80211_BAND_5GHZ)
offset = 4;
rate = &mt76_rates[offset + i];
return rate->hw_value;
}
EXPORT_SYMBOL_GPL(mt76_default_basic_rate);

View File

@ -891,6 +891,7 @@ int mt76_get_of_eeprom(struct mt76_dev *dev, void *data, int offset, int len);
struct mt76_queue *
mt76_init_queue(struct mt76_dev *dev, int qid, int idx, int n_desc,
int ring_base);
u16 mt76_default_basic_rate(struct mt76_phy *phy, struct ieee80211_vif *vif);
static inline int mt76_init_tx_queue(struct mt76_phy *phy, int qid, int idx,
int n_desc, int ring_base)
{