All of lore.kernel.org
 help / color / mirror / Atom feed
* [ath9k-devel] [PATCH] ath9k: Avoid acktimeout wraps around at bootstrap
@ 2010-04-27 11:09 Lorenzo Bianconi
  2010-04-27 19:28 ` Benoit PAPILLAULT
  0 siblings, 1 reply; 3+ messages in thread
From: Lorenzo Bianconi @ 2010-04-27 11:09 UTC (permalink / raw)
  To: ath9k-devel

Hi all,

I am using ath9k/mac80211 on a PC Engines Alix with a Mikrotik R52n
card (AR9280 chipset), OpenWrt r21030 (kernel 2.6.32.10) and
compat-wireless-2010-04-21. I am injecting packets using a VAP in
monitor mode.
I have a doubt on ath9k_hw_init_defaults() in hw.c. In particular
during the bootstrap ah->slottime in ath9k_hw_init_defaults() is set
to " (u32) -1", so after a HW reset (for example as a result of a
channel change) in the function ath9k_hw_init_global_settings() the
acktimeout variable wraps around as ah->slottime is 0xFFFFFFFF and

acktimeout = sifstime + ah->slottime + 3 * ah->coverage_class

In this way we obtain that acktimout is set to 15 us (assuming
ah->coverage_class set to 0) in the 5GHZ band so less than one of its
summands (sifstime = 16).
I wrote this simple patch in order to set ah->slottime to standard
value for OFDM PHY layer during bootstrap.

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@gmail.com>
---
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -425,7 +425,7 @@
 	ah->sta_id1_defaults = AR_STA_ID1_CRPT_MIC_ENABLE;
 	ah->beacon_interval = 100;
 	ah->enable_32kHz_clock = DONT_USE_32KHZ;
-	ah->slottime = (u32) -1;
+	ah->slottime = 20;
 	ah->globaltxtimeout = (u32) -1;
 	ah->power_mode = ATH9K_PM_UNDEFINED;
 }
--

Regards

Lorenzo

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

end of thread, other threads:[~2010-04-27 21:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-27 11:09 [ath9k-devel] [PATCH] ath9k: Avoid acktimeout wraps around at bootstrap Lorenzo Bianconi
2010-04-27 19:28 ` Benoit PAPILLAULT
2010-04-27 21:46   ` Lorenzo Bianconi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.