Luis R. Rodriguez | 10 Jul 2009 20:08
Picon
Gravatar

Re: [PATCH] ath9k: Fix enabling OFDM weak signal detection

On Fri, Jul 10, 2009 at 11:02 AM, Luis R. Rodriguez<mcgrof <at> gmail.com> wrote:
> On Thu, Jul 9, 2009 at 2:12 PM, Steven Luo<steven <at> steven676.net> wrote:
>> From: Steven Luo <steven <at> steven676.net>
>>
>> It seems that OFDM weak signal detection should be enabled after an ANI
>> state reset, as indicated by the initial setting of ofdmWeakSigDetectOff
>> and what the open Atheros HAL does.  Unfortunately, the reversed sense
>> of ofdmWeakSigDetectOff (true if weak signal detection is NOT enabled)
>> seems to have resulted in a mixup here, causing weak signal detection to
>> be disabled.
>>
>> This patch significantly improves reception and throughput from distant
>> stations for my AR5416-based AP running compat-wireless 2009-06-25.
>>
>> Signed-off-by: Steven Luo <steven <at> steven676.net>
>> Cc: stable <at> kernel.org
>> ---
>
> NACK for now, please give us a chance to review this -- this may
> actually be correct.

Benny, Jouni indicated this matches current Fusion, know Fusion
correct? Do we know if AR5416 should have OFDM weak signal detection
enabled after an ANI state reset? It seemed to help this particular
user. Or do we know for sure it should be disabled for all 11n cards?

Since this may come up for legacy cards, how about for that case?

  Luis

>  Luis
>
>> --- a/drivers/net/wireless/ath/ath9k/ani.c      2009-06-24 21:14:00.000000000 -0700
>> +++ b/drivers/net/wireless/ath/ath9k/ani.c      2009-07-06 02:45:57.000000000 -0700
>>  <at>  <at>  -482,7 +482,7  <at>  <at>  void ath9k_ani_reset(struct ath_hw *ah)
>>                ath9k_hw_ani_control(ah, ATH9K_ANI_SPUR_IMMUNITY_LEVEL, 0);
>>                ath9k_hw_ani_control(ah, ATH9K_ANI_FIRSTEP_LEVEL, 0);
>>                ath9k_hw_ani_control(ah, ATH9K_ANI_OFDM_WEAK_SIGNAL_DETECTION,
>> -                                    !ATH9K_ANI_USE_OFDM_WEAK_SIG);
>> +                                    ATH9K_ANI_USE_OFDM_WEAK_SIG);
>>                ath9k_hw_ani_control(ah, ATH9K_ANI_CCK_WEAK_SIGNAL_THR,
>>                                     ATH9K_ANI_CCK_WEAK_SIG_THR);
>>
>>
>> _______________________________________________
>> ath9k-devel mailing list
>> ath9k-devel <at> lists.ath9k.org
>> https://lists.ath9k.org/mailman/listinfo/ath9k-devel
>>
>
_______________________________________________
ath9k-devel mailing list
ath9k-devel <at> lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Gmane