aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2500pci.c
diff options
context:
space:
mode:
authorMattias Nissler <mattias.nissler@gmx.de>2007-10-27 07:43:49 -0400
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:03:04 -0500
commit2700f8b0489e00cb6eead31e58f5461812dd31a6 (patch)
tree5e76ce54410eea89aa593bf39f18a40475ff1af1 /drivers/net/wireless/rt2x00/rt2500pci.c
parent3d82346c5d0ff0a413c387c6edaadc0ca29a0971 (diff)
rt2x00: Correctly set ACK bit in tx descriptors
Add a flag to struct txdata_entry_desc that specifies whether an ack for the frame is to be expected. Use this flag to set the ACK bit in the tx descriptor. Previously, the ACK bit could be set incorrectly on CTS-to-self frames, so they caused retries and were reported to be failed in the txdone handlers. Signed-off-by: Mattias Nissler <mattias.nissler@gmx.de> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2500pci.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2500pci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
index 1dea9d800d47..e6a0c37d9195 100644
--- a/drivers/net/wireless/rt2x00/rt2500pci.c
+++ b/drivers/net/wireless/rt2x00/rt2500pci.c
@@ -1203,7 +1203,7 @@ static void rt2500pci_write_tx_desc(struct rt2x00_dev *rt2x00dev,
1203 rt2x00_set_field32(&word, TXD_W0_MORE_FRAG, 1203 rt2x00_set_field32(&word, TXD_W0_MORE_FRAG,
1204 test_bit(ENTRY_TXD_MORE_FRAG, &desc->flags)); 1204 test_bit(ENTRY_TXD_MORE_FRAG, &desc->flags));
1205 rt2x00_set_field32(&word, TXD_W0_ACK, 1205 rt2x00_set_field32(&word, TXD_W0_ACK,
1206 !(control->flags & IEEE80211_TXCTL_NO_ACK)); 1206 test_bit(ENTRY_TXD_ACK, &desc->flags));
1207 rt2x00_set_field32(&word, TXD_W0_TIMESTAMP, 1207 rt2x00_set_field32(&word, TXD_W0_TIMESTAMP,
1208 test_bit(ENTRY_TXD_REQ_TIMESTAMP, &desc->flags)); 1208 test_bit(ENTRY_TXD_REQ_TIMESTAMP, &desc->flags));
1209 rt2x00_set_field32(&word, TXD_W0_OFDM, 1209 rt2x00_set_field32(&word, TXD_W0_OFDM,