Thread: [Madwifi-devel] Rate control on AR5416 incorrect
Status: Beta
Brought to you by:
otaku
From: Pavel R. <pr...@gn...> - 2009-04-20 21:46:49
|
Hello! Values for AR_XmitRate* and AR_XmitDataTries* hardcoded in ath_rate/sample/sample.h and ath_rate/minstrel/minstrel.h are incorrect for cards of version AR5416 (that is, all supported 802.11n capable cards). That means that both algorithms malfunction for such devices. Moreover, it appears that there is no easy way to check if a card is of version AR5416. I believe ar_device() in ath/if_ath_hal_extensions.c should do it, but it never returns 5416. An while at that, using numbers is not a good idea, we should be using enum. Also, it should be in struct ath_softc to avoid calling ar_device() several times for every packet. It's hard for me to believe that we don't do any special processing for AR5416 except in the HAL. In case I'm missing something obvious, please correct me. Otherwise I'll go ahead and fix that mess. -- Regards, Pavel Roskin |
From: Pavel R. <pr...@gn...> - 2009-04-22 22:12:52
|
Hello! No answer from anyone :-( On Mon, 2009-04-20 at 17:46 -0400, Pavel Roskin wrote: > Hello! > > Values for AR_XmitRate* and AR_XmitDataTries* hardcoded in > ath_rate/sample/sample.h and ath_rate/minstrel/minstrel.h are incorrect > for cards of version AR5416 (that is, all supported 802.11n capable > cards). That means that both algorithms malfunction for such devices. FreeBSD has a fix for that in sample.c. > Moreover, it appears that there is no easy way to check if a card is of > version AR5416. I believe ar_device() in ath/if_ath_hal_extensions.c > should do it, but it never returns 5416. An while at that, using > numbers is not a good idea, we should be using enum. Also, it should be > in struct ath_softc to avoid calling ar_device() several times for every > packet. FreeBSD compares sc->sc_ah->ah_magic to 0x20065416. > It's hard for me to believe that we don't do any special processing for > AR5416 except in the HAL. In case I'm missing something obvious, please > correct me. Otherwise I'll go ahead and fix that mess. Perhaps most AR5416 users use ath9k. -- Regards, Pavel Roskin |