mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
wifi: mt76: move rate info in mt76_vif
This is a preliminary patch to introduce mt76_connac3 mac library used by WiFi7 chipsets (e.g. mt7996). Signed-off-by: Lorenzo Bianconi <[email protected]> Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
committed by
Felix Fietkau
parent
7e44467469
commit
39a70710dd
+5
-5
@@ -1009,7 +1009,7 @@ void mt7996_mac_write_txwi(struct mt7996_dev *dev, __le32 *txwi,
|
||||
{
|
||||
struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
|
||||
struct ieee80211_vif *vif = info->control.vif;
|
||||
struct mt7996_vif *mvif;
|
||||
struct mt76_vif *mvif;
|
||||
struct mt76_phy *mphy = &dev->mphy;
|
||||
u8 band_idx = (info->hw_queue & MT_TX_HW_QUEUE_PHY) >> 2;
|
||||
u8 p_fmt, q_idx, omac_idx = 0, wmm_idx = 0;
|
||||
@@ -1021,11 +1021,11 @@ void mt7996_mac_write_txwi(struct mt7996_dev *dev, __le32 *txwi,
|
||||
bool inband_disc = !!(changed & (BSS_CHANGED_UNSOL_BCAST_PROBE_RESP |
|
||||
BSS_CHANGED_FILS_DISCOVERY));
|
||||
|
||||
mvif = vif ? (struct mt7996_vif *)vif->drv_priv : NULL;
|
||||
mvif = vif ? (struct mt76_vif *)vif->drv_priv : NULL;
|
||||
if (mvif) {
|
||||
omac_idx = mvif->mt76.omac_idx;
|
||||
wmm_idx = mvif->mt76.wmm_idx;
|
||||
band_idx = mvif->mt76.band_idx;
|
||||
omac_idx = mvif->omac_idx;
|
||||
wmm_idx = mvif->wmm_idx;
|
||||
band_idx = mvif->band_idx;
|
||||
}
|
||||
|
||||
mphy = mt76_dev_phy(&dev->mt76, band_idx);
|
||||
|
||||
+5
-5
@@ -223,9 +223,9 @@ static int mt7996_add_interface(struct ieee80211_hw *hw,
|
||||
vif->offload_flags |= IEEE80211_OFFLOAD_ENCAP_4ADDR;
|
||||
|
||||
if (phy->mt76->chandef.chan->band != NL80211_BAND_2GHZ)
|
||||
mvif->basic_rates_idx = MT7996_BASIC_RATES_TBL + 4;
|
||||
mvif->mt76.basic_rates_idx = MT7996_BASIC_RATES_TBL + 4;
|
||||
else
|
||||
mvif->basic_rates_idx = MT7996_BASIC_RATES_TBL;
|
||||
mvif->mt76.basic_rates_idx = MT7996_BASIC_RATES_TBL;
|
||||
|
||||
mt7996_init_bitrate_mask(vif);
|
||||
|
||||
@@ -505,7 +505,7 @@ static u8
|
||||
mt7996_get_rates_table(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
bool beacon, bool mcast)
|
||||
{
|
||||
struct mt7996_vif *mvif = (struct mt7996_vif *)vif->drv_priv;
|
||||
struct mt76_vif *mvif = (struct mt76_vif *)vif->drv_priv;
|
||||
struct mt76_phy *mphy = hw->priv;
|
||||
u16 rate;
|
||||
u8 i, idx, ht;
|
||||
@@ -517,7 +517,7 @@ mt7996_get_rates_table(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
struct mt7996_dev *dev = mt7996_hw_dev(hw);
|
||||
|
||||
/* must odd index */
|
||||
idx = MT7996_BEACON_RATES_TBL + 2 * (mvif->mt76.idx % 20);
|
||||
idx = MT7996_BEACON_RATES_TBL + 2 * (mvif->idx % 20);
|
||||
mt7996_mac_set_fixed_rate_table(dev, idx, rate);
|
||||
return idx;
|
||||
}
|
||||
@@ -555,7 +555,7 @@ static void mt7996_bss_info_changed(struct ieee80211_hw *hw,
|
||||
struct ieee80211_bss_conf *info,
|
||||
u64 changed)
|
||||
{
|
||||
struct mt7996_vif *mvif = (struct mt7996_vif *)vif->drv_priv;
|
||||
struct mt76_vif *mvif = (struct mt76_vif *)vif->drv_priv;
|
||||
struct mt7996_phy *phy = mt7996_hw_phy(hw);
|
||||
struct mt7996_dev *dev = mt7996_hw_dev(hw);
|
||||
|
||||
|
||||
+1
-1
@@ -604,7 +604,7 @@ static void
|
||||
mt7996_mcu_bss_bmc_tlv(struct sk_buff *skb, struct ieee80211_vif *vif,
|
||||
struct mt7996_phy *phy)
|
||||
{
|
||||
struct mt7996_vif *mvif = (struct mt7996_vif *)vif->drv_priv;
|
||||
struct mt76_vif *mvif = (struct mt76_vif *)vif->drv_priv;
|
||||
struct bss_rate_tlv *bmc;
|
||||
struct cfg80211_chan_def *chandef = &phy->mt76->chandef;
|
||||
enum nl80211_band band = chandef->chan->band;
|
||||
|
||||
@@ -128,10 +128,6 @@ struct mt7996_vif {
|
||||
|
||||
struct ieee80211_tx_queue_params queue_params[IEEE80211_NUM_ACS];
|
||||
struct cfg80211_bitrate_mask bitrate_mask;
|
||||
|
||||
u8 basic_rates_idx;
|
||||
u8 mcast_rates_idx;
|
||||
u8 beacon_rates_idx;
|
||||
};
|
||||
|
||||
/* crash-dump */
|
||||
|
||||
Reference in New Issue
Block a user