aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorIvo van Doorn <IvDoorn@gmail.com>2008-06-03 14:29:57 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-06-14 12:17:55 -0400
commit772a249d3348e06427ccd790a989f59cc67574f6 (patch)
tree2a1a085fa094e7fc99f162692925dec00f29a8a9 /drivers/net/wireless
parent475433be3d8f4d840e2930eef96671b7f8d11053 (diff)
rt2x00: Remove CTS/RTS check in tx()
mac80211 doesn't send RTS or CTS-to-self frames through the tx() callback functions so we don't need to check it. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00mac.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c
index b02dbc8a666e..97d9095037b9 100644
--- a/drivers/net/wireless/rt2x00/rt2x00mac.c
+++ b/drivers/net/wireless/rt2x00/rt2x00mac.c
@@ -135,18 +135,16 @@ int rt2x00mac_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
135 } 135 }
136 136
137 /* 137 /*
138 * If CTS/RTS is required. and this frame is not CTS or RTS, 138 * If CTS/RTS is required. create and queue that frame first.
139 * create and queue that frame first. But make sure we have 139 * Make sure we have at least enough entries available to send
140 * at least enough entries available to send this CTS/RTS 140 * this CTS/RTS frame as well as the data frame.
141 * frame as well as the data frame.
142 * Note that when the driver has set the set_rts_threshold() 141 * Note that when the driver has set the set_rts_threshold()
143 * callback function it doesn't need software generation of 142 * callback function it doesn't need software generation of
144 * neither RTS or CTS-to-self frames and handles everything 143 * either RTS or CTS-to-self frame and handles everything
145 * inside the hardware. 144 * inside the hardware.
146 */ 145 */
147 frame_control = le16_to_cpu(ieee80211hdr->frame_control); 146 frame_control = le16_to_cpu(ieee80211hdr->frame_control);
148 if (!is_rts_frame(frame_control) && !is_cts_frame(frame_control) && 147 if ((tx_info->flags & (IEEE80211_TX_CTL_USE_RTS_CTS |
149 (tx_info->flags & (IEEE80211_TX_CTL_USE_RTS_CTS |
150 IEEE80211_TX_CTL_USE_CTS_PROTECT)) && 148 IEEE80211_TX_CTL_USE_CTS_PROTECT)) &&
151 !rt2x00dev->ops->hw->set_rts_threshold) { 149 !rt2x00dev->ops->hw->set_rts_threshold) {
152 if (rt2x00queue_available(queue) <= 1) { 150 if (rt2x00queue_available(queue) <= 1) {