diff options
author | Thomas Huehn <thomas@net.t-labs.tu-berlin.de> | 2012-07-23 15:33:42 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2012-07-31 10:18:39 -0400 |
commit | 36323f817af0376c78612cfdab714b0feb05fea5 (patch) | |
tree | 9821c1805175a79006799e458f1efa238af671f7 /drivers/net/wireless/rtlwifi/rtl8192se | |
parent | ab09587740fddf6b4116be7b6716ab47f34d2634 (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/rtlwifi/rtl8192se')
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192se/trx.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192se/trx.h | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/trx.c b/drivers/net/wireless/rtlwifi/rtl8192se/trx.c index 36d1cb3aef8a..28c53fb12aeb 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192se/trx.c +++ b/drivers/net/wireless/rtlwifi/rtl8192se/trx.c | |||
@@ -591,14 +591,15 @@ bool rtl92se_rx_query_desc(struct ieee80211_hw *hw, struct rtl_stats *stats, | |||
591 | 591 | ||
592 | void rtl92se_tx_fill_desc(struct ieee80211_hw *hw, | 592 | void rtl92se_tx_fill_desc(struct ieee80211_hw *hw, |
593 | struct ieee80211_hdr *hdr, u8 *pdesc_tx, | 593 | struct ieee80211_hdr *hdr, u8 *pdesc_tx, |
594 | struct ieee80211_tx_info *info, struct sk_buff *skb, | 594 | struct ieee80211_tx_info *info, |
595 | struct ieee80211_sta *sta, | ||
596 | struct sk_buff *skb, | ||
595 | u8 hw_queue, struct rtl_tcb_desc *ptcb_desc) | 597 | u8 hw_queue, struct rtl_tcb_desc *ptcb_desc) |
596 | { | 598 | { |
597 | struct rtl_priv *rtlpriv = rtl_priv(hw); | 599 | struct rtl_priv *rtlpriv = rtl_priv(hw); |
598 | struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); | 600 | struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); |
599 | struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); | 601 | struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); |
600 | struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); | 602 | struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); |
601 | struct ieee80211_sta *sta = info->control.sta; | ||
602 | u8 *pdesc = pdesc_tx; | 603 | u8 *pdesc = pdesc_tx; |
603 | u16 seq_number; | 604 | u16 seq_number; |
604 | __le16 fc = hdr->frame_control; | 605 | __le16 fc = hdr->frame_control; |
diff --git a/drivers/net/wireless/rtlwifi/rtl8192se/trx.h b/drivers/net/wireless/rtlwifi/rtl8192se/trx.h index 011e7b0695f2..64dd66f287c1 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192se/trx.h +++ b/drivers/net/wireless/rtlwifi/rtl8192se/trx.h | |||
@@ -31,6 +31,7 @@ | |||
31 | 31 | ||
32 | void rtl92se_tx_fill_desc(struct ieee80211_hw *hw, struct ieee80211_hdr *hdr, | 32 | void rtl92se_tx_fill_desc(struct ieee80211_hw *hw, struct ieee80211_hdr *hdr, |
33 | u8 *pdesc, struct ieee80211_tx_info *info, | 33 | u8 *pdesc, struct ieee80211_tx_info *info, |
34 | struct ieee80211_sta *sta, | ||
34 | struct sk_buff *skb, u8 hw_queue, | 35 | struct sk_buff *skb, u8 hw_queue, |
35 | struct rtl_tcb_desc *ptcb_desc); | 36 | struct rtl_tcb_desc *ptcb_desc); |
36 | void rtl92se_tx_fill_cmddesc(struct ieee80211_hw *hw, u8 *pdesc, bool firstseg, | 37 | void rtl92se_tx_fill_cmddesc(struct ieee80211_hw *hw, u8 *pdesc, bool firstseg, |