forked from Minki/linux
mt76: use mt76x02_dev instead of mt76_dev in mt76x02_txrx.c
Use mt76x02_dev data structure as reference in mt76x02_txrx.c instead of mt76_dev Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com> Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
parent
8d66af49a3
commit
91be8e8a2c
@ -136,9 +136,10 @@ int mt76x02_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
|
||||
void mt76x02_sta_rate_tbl_update(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif,
|
||||
struct ieee80211_sta *sta);
|
||||
s8 mt76x02_tx_get_max_txpwr_adj(struct mt76_dev *dev,
|
||||
s8 mt76x02_tx_get_max_txpwr_adj(struct mt76x02_dev *dev,
|
||||
const struct ieee80211_tx_rate *rate);
|
||||
s8 mt76x02_tx_get_txpwr_adj(struct mt76_dev *mdev, s8 txpwr, s8 max_txpwr_adj);
|
||||
s8 mt76x02_tx_get_txpwr_adj(struct mt76x02_dev *dev, s8 txpwr,
|
||||
s8 max_txpwr_adj);
|
||||
void mt76x02_tx_set_txpwr_auto(struct mt76x02_dev *dev, s8 txpwr);
|
||||
int mt76x02_insert_hdr_pad(struct sk_buff *skb);
|
||||
void mt76x02_remove_hdr_pad(struct sk_buff *skb, int len);
|
||||
|
@ -382,12 +382,11 @@ void mt76x02_mac_write_txwi(struct mt76x02_dev *dev, struct mt76x02_txwi *txwi,
|
||||
nss = wcid->tx_rate_nss;
|
||||
} else {
|
||||
txwi->rate = mt76x02_mac_tx_rate_val(dev, rate, &nss);
|
||||
max_txpwr_adj = mt76x02_tx_get_max_txpwr_adj(&dev->mt76, rate);
|
||||
max_txpwr_adj = mt76x02_tx_get_max_txpwr_adj(dev, rate);
|
||||
}
|
||||
spin_unlock_bh(&dev->mt76.lock);
|
||||
|
||||
txpwr_adj = mt76x02_tx_get_txpwr_adj(&dev->mt76,
|
||||
dev->mt76.txpower_conf,
|
||||
txpwr_adj = mt76x02_tx_get_txpwr_adj(dev, dev->mt76.txpower_conf,
|
||||
max_txpwr_adj);
|
||||
txwi->ctl2 = FIELD_PREP(MT_TX_PWR_ADJ, txpwr_adj);
|
||||
|
||||
|
@ -71,7 +71,7 @@ void mt76x02_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mt76x02_queue_rx_skb);
|
||||
|
||||
s8 mt76x02_tx_get_max_txpwr_adj(struct mt76_dev *dev,
|
||||
s8 mt76x02_tx_get_max_txpwr_adj(struct mt76x02_dev *dev,
|
||||
const struct ieee80211_tx_rate *rate)
|
||||
{
|
||||
s8 max_txpwr;
|
||||
@ -80,23 +80,23 @@ s8 mt76x02_tx_get_max_txpwr_adj(struct mt76_dev *dev,
|
||||
u8 mcs = ieee80211_rate_get_vht_mcs(rate);
|
||||
|
||||
if (mcs == 8 || mcs == 9) {
|
||||
max_txpwr = dev->rate_power.vht[8];
|
||||
max_txpwr = dev->mt76.rate_power.vht[8];
|
||||
} else {
|
||||
u8 nss, idx;
|
||||
|
||||
nss = ieee80211_rate_get_vht_nss(rate);
|
||||
idx = ((nss - 1) << 3) + mcs;
|
||||
max_txpwr = dev->rate_power.ht[idx & 0xf];
|
||||
max_txpwr = dev->mt76.rate_power.ht[idx & 0xf];
|
||||
}
|
||||
} else if (rate->flags & IEEE80211_TX_RC_MCS) {
|
||||
max_txpwr = dev->rate_power.ht[rate->idx & 0xf];
|
||||
max_txpwr = dev->mt76.rate_power.ht[rate->idx & 0xf];
|
||||
} else {
|
||||
enum nl80211_band band = dev->chandef.chan->band;
|
||||
enum nl80211_band band = dev->mt76.chandef.chan->band;
|
||||
|
||||
if (band == NL80211_BAND_2GHZ) {
|
||||
const struct ieee80211_rate *r;
|
||||
struct wiphy *wiphy = dev->hw->wiphy;
|
||||
struct mt76_rate_power *rp = &dev->rate_power;
|
||||
struct wiphy *wiphy = dev->mt76.hw->wiphy;
|
||||
struct mt76_rate_power *rp = &dev->mt76.rate_power;
|
||||
|
||||
r = &wiphy->bands[band]->bitrates[rate->idx];
|
||||
if (r->flags & IEEE80211_RATE_SHORT_PREAMBLE)
|
||||
@ -104,7 +104,7 @@ s8 mt76x02_tx_get_max_txpwr_adj(struct mt76_dev *dev,
|
||||
else
|
||||
max_txpwr = rp->ofdm[r->hw_value & 0x7];
|
||||
} else {
|
||||
max_txpwr = dev->rate_power.ofdm[rate->idx & 0x7];
|
||||
max_txpwr = dev->mt76.rate_power.ofdm[rate->idx & 0x7];
|
||||
}
|
||||
}
|
||||
|
||||
@ -112,10 +112,8 @@ s8 mt76x02_tx_get_max_txpwr_adj(struct mt76_dev *dev,
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mt76x02_tx_get_max_txpwr_adj);
|
||||
|
||||
s8 mt76x02_tx_get_txpwr_adj(struct mt76_dev *mdev, s8 txpwr, s8 max_txpwr_adj)
|
||||
s8 mt76x02_tx_get_txpwr_adj(struct mt76x02_dev *dev, s8 txpwr, s8 max_txpwr_adj)
|
||||
{
|
||||
struct mt76x02_dev *dev = container_of(mdev, struct mt76x02_dev, mt76);
|
||||
|
||||
txpwr = min_t(s8, txpwr, dev->mt76.txpower_conf);
|
||||
txpwr -= (dev->target_power + dev->target_power_delta[0]);
|
||||
txpwr = min_t(s8, txpwr, max_txpwr_adj);
|
||||
@ -133,7 +131,7 @@ void mt76x02_tx_set_txpwr_auto(struct mt76x02_dev *dev, s8 txpwr)
|
||||
{
|
||||
s8 txpwr_adj;
|
||||
|
||||
txpwr_adj = mt76x02_tx_get_txpwr_adj(&dev->mt76, txpwr,
|
||||
txpwr_adj = mt76x02_tx_get_txpwr_adj(dev, txpwr,
|
||||
dev->mt76.rate_power.ofdm[4]);
|
||||
mt76_rmw_field(dev, MT_PROT_AUTO_TX_CFG,
|
||||
MT_PROT_AUTO_TX_CFG_PROT_PADJ, txpwr_adj);
|
||||
|
@ -372,7 +372,7 @@ void mt76x02_sta_rate_tbl_update(struct ieee80211_hw *hw,
|
||||
rate.idx = rates->rate[0].idx;
|
||||
rate.flags = rates->rate[0].flags;
|
||||
mt76x02_mac_wcid_set_rate(dev, &msta->wcid, &rate);
|
||||
msta->wcid.max_txpwr_adj = mt76x02_tx_get_max_txpwr_adj(&dev->mt76, &rate);
|
||||
msta->wcid.max_txpwr_adj = mt76x02_tx_get_max_txpwr_adj(dev, &rate);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mt76x02_sta_rate_tbl_update);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user