aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/main.c
diff options
context:
space:
mode:
authorThomas Huehn <thomas@net.t-labs.tu-berlin.de>2012-07-23 15:33:42 -0400
committerJohannes Berg <johannes.berg@intel.com>2012-07-31 10:18:39 -0400
commit36323f817af0376c78612cfdab714b0feb05fea5 (patch)
tree9821c1805175a79006799e458f1efa238af671f7 /drivers/net/wireless/ath/ath9k/main.c
parentab09587740fddf6b4116be7b6716ab47f34d2634 (diff)
mac80211: move TX station pointer and restructure TX
Remove the control.sta pointer from ieee80211_tx_info to free up sufficient space in the TX skb control buffer for the upcoming Transmit Power Control (TPC). Instead, the pointer is now on the stack in a new control struct that is passed as a function parameter to the drivers' tx method. Signed-off-by: Thomas Huehn <thomas@net.t-labs.tu-berlin.de> Signed-off-by: Alina Friedrichsen <x-alina@gmx.net> Signed-off-by: Felix Fietkau <nbd@openwrt.org> [reworded commit message] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/main.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 6049d8b82855..4d8dc9ff5a75 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -694,7 +694,9 @@ mutex_unlock:
694 return r; 694 return r;
695} 695}
696 696
697static void ath9k_tx(struct ieee80211_hw *hw, struct sk_buff *skb) 697static void ath9k_tx(struct ieee80211_hw *hw,
698 struct ieee80211_tx_control *control,
699 struct sk_buff *skb)
698{ 700{
699 struct ath_softc *sc = hw->priv; 701 struct ath_softc *sc = hw->priv;
700 struct ath_common *common = ath9k_hw_common(sc->sc_ah); 702 struct ath_common *common = ath9k_hw_common(sc->sc_ah);
@@ -754,6 +756,7 @@ static void ath9k_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
754 756
755 memset(&txctl, 0, sizeof(struct ath_tx_control)); 757 memset(&txctl, 0, sizeof(struct ath_tx_control));
756 txctl.txq = sc->tx.txq_map[skb_get_queue_mapping(skb)]; 758 txctl.txq = sc->tx.txq_map[skb_get_queue_mapping(skb)];
759 txctl.sta = control->sta;
757 760
758 ath_dbg(common, XMIT, "transmitting packet, skb: %p\n", skb); 761 ath_dbg(common, XMIT, "transmitting packet, skb: %p\n", skb);
759 762