Internal NF calibration should not occur in parallel with any other
calibration. Ensure that the NF calibration completes before continuing with the rest of the calibration setup process.
This commit is contained in:
parent
2666ce6d51
commit
6a989e2e78
@ -24,6 +24,8 @@
|
||||
|
||||
#include "ah_eeprom_v14.h"
|
||||
|
||||
#include "ar5212/ar5212.h" /* for NF cal related declarations */
|
||||
|
||||
#include "ar5416/ar5416.h"
|
||||
#include "ar5416/ar5416reg.h"
|
||||
#include "ar5416/ar5416phy.h"
|
||||
@ -220,7 +222,16 @@ ar5416InitCal(struct ath_hal *ah, const struct ieee80211_channel *chan)
|
||||
* triggered at the same time.
|
||||
*/
|
||||
OS_REG_SET_BIT(ah, AR_PHY_AGC_CONTROL, AR_PHY_AGC_CONTROL_NF);
|
||||
|
||||
/*
|
||||
* Try to make sure the above NF cal completes, just so
|
||||
* it doesn't clash with subsequent percals -adrian
|
||||
*/
|
||||
if (! ar5212WaitNFCalComplete(ah, 10000)) {
|
||||
HALDEBUG(ah, HAL_DEBUG_ANY, "%s: initial NF calibration did "
|
||||
"not complete in time; noisy environment?\n", __func__);
|
||||
return AH_FALSE;
|
||||
}
|
||||
|
||||
/* Initialize list pointers */
|
||||
cal->cal_list = cal->cal_last = cal->cal_curr = AH_NULL;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user