linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ath5k] Incorrect value for ACK_TIMEOUT
@ 2010-09-15  1:56 Jonathan Guerin
  2010-09-15  2:30 ` [ath5k-devel] " Bruno Randolf
  0 siblings, 1 reply; 14+ messages in thread
From: Jonathan Guerin @ 2010-09-15  1:56 UTC (permalink / raw)
  To: ath5k-devel, linux-wireless

According to the 802.11-2007 spec document, the ACKTimeout value is
(Section 9.2.8 ACK procedure):
ACKTimeout = aSIFSTime + aSlotTime + aPHY-RX-START-Delay

>From Table 17-15—OFDM PHY characteristics, the values are:
aSIFSTime = 16
aSlotTime = 9
aPHY-RX-START-Delay = 25

Therefore, ACKTimeout = 50

In the driver source, this appears to be initialised to:

$$ ath5k.h
#define AR5K_INIT_ACK_CTS_TIMEOUT		1024

$$ reg.h
/*
 * ACK/CTS timeout register
 */
#define AR5K_TIME_OUT		0x8014			/* Register Address */
#define AR5K_TIME_OUT_ACK	0x00001fff	/* ACK timeout mask */
#define AR5K_TIME_OUT_ACK_S	0
#define AR5K_TIME_OUT_CTS	0x1fff0000	/* CTS timeout mask */
#define AR5K_TIME_OUT_CTS_S	16

Taking the value of the register (1024), masking it with the ACK
Timeout Mask (0x1fff) and dividing it by the clock rate (40), we get a
much smaller ACK Timeout value:
1024 & 0x1fff = 1024
1024/40 = 25us


Am I understanding this right? Is the driver actually setting the ACK
Timeout to be much smaller than even a DIFS, let alone matching the
spec?



Thanks,

--
Jonathan Guerin

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2010-09-15 10:41 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-15  1:56 [ath5k] Incorrect value for ACK_TIMEOUT Jonathan Guerin
2010-09-15  2:30 ` [ath5k-devel] " Bruno Randolf
2010-09-15  3:01   ` Jonathan Guerin
2010-09-15  3:09     ` Jonathan Guerin
2010-09-15  3:16     ` Bruno Randolf
2010-09-15  3:28       ` Jonathan Guerin
2010-09-15  3:45         ` Bruno Randolf
2010-09-15  4:11           ` Jonathan Guerin
2010-09-15  7:17             ` Kalle Valo
2010-09-15  7:27               ` Jonathan Guerin
2010-09-15  7:32                 ` Bruno Randolf
2010-09-15  7:36                 ` Kalle Valo
2010-09-15 10:00                   ` Jonathan Guerin
2010-09-15 10:41                     ` Kalle Valo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).