Lines Matching full:ee
26 getPcdacInterceptsFromPcdacMinMax(HAL_EEPROM *ee, in getPcdacInterceptsFromPcdacMinMax() argument
33 const uint16_t *ip = ee->ee_version < AR_EEPROM_VER3_2 ? in getPcdacInterceptsFromPcdacMinMax()
46 fbin2freq(HAL_EEPROM *ee, uint16_t fbin) in fbin2freq() argument
50 return ee->ee_version <= AR_EEPROM_VER3_2 ? in fbin2freq()
56 fbin2freq_2p4(HAL_EEPROM *ee, uint16_t fbin) in fbin2freq_2p4() argument
60 return ee->ee_version <= AR_EEPROM_VER3_2 ? in fbin2freq_2p4()
69 readEepromFreqPierInfo(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromFreqPierInfo() argument
78 if (ee->ee_version >= AR_EEPROM_VER4_0 && in readEepromFreqPierInfo()
79 ee->ee_eepMap && !ee->ee_Amode) { in readEepromFreqPierInfo()
86 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readEepromFreqPierInfo()
88 for (i = 0; i < ee->ee_numChannels11a; i += 2) { in readEepromFreqPierInfo()
90 ee->ee_channels11a[i] = (eeval >> 8) & FREQ_MASK_3_3; in readEepromFreqPierInfo()
91 ee->ee_channels11a[i+1] = eeval & FREQ_MASK_3_3; in readEepromFreqPierInfo()
97 ee->ee_channels11a[0] = (eeval >> 9) & FREQ_MASK; in readEepromFreqPierInfo()
98 ee->ee_channels11a[1] = (eeval >> 2) & FREQ_MASK; in readEepromFreqPierInfo()
99 ee->ee_channels11a[2] = (eeval << 5) & FREQ_MASK; in readEepromFreqPierInfo()
102 ee->ee_channels11a[2] |= (eeval >> 11) & 0x1f; in readEepromFreqPierInfo()
103 ee->ee_channels11a[3] = (eeval >> 4) & FREQ_MASK; in readEepromFreqPierInfo()
104 ee->ee_channels11a[4] = (eeval << 3) & FREQ_MASK; in readEepromFreqPierInfo()
107 ee->ee_channels11a[4] |= (eeval >> 13) & 0x7; in readEepromFreqPierInfo()
108 ee->ee_channels11a[5] = (eeval >> 6) & FREQ_MASK; in readEepromFreqPierInfo()
109 ee->ee_channels11a[6] = (eeval << 1) & FREQ_MASK; in readEepromFreqPierInfo()
112 ee->ee_channels11a[6] |= (eeval >> 15) & 0x1; in readEepromFreqPierInfo()
113 ee->ee_channels11a[7] = (eeval >> 8) & FREQ_MASK; in readEepromFreqPierInfo()
114 ee->ee_channels11a[8] = (eeval >> 1) & FREQ_MASK; in readEepromFreqPierInfo()
115 ee->ee_channels11a[9] = (eeval << 6) & FREQ_MASK; in readEepromFreqPierInfo()
118 ee->ee_channels11a[9] |= (eeval >> 10) & 0x3f; in readEepromFreqPierInfo()
121 for (i = 0; i < ee->ee_numChannels11a; i++) in readEepromFreqPierInfo()
122 ee->ee_channels11a[i] = fbin2freq(ee, ee->ee_channels11a[i]); in readEepromFreqPierInfo()
275 readEepromRawPowerCalInfo5112(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromRawPowerCalInfo5112() argument
292 HALASSERT(ee->ee_version >= AR_EEPROM_VER4_0); in readEepromRawPowerCalInfo5112()
298 if (!ee->ee_Amode) /* no 11a calibration data */ in readEepromRawPowerCalInfo5112()
304 freq[numPiers++] = fbin2freq(ee, in readEepromRawPowerCalInfo5112()
309 freq[numPiers++] = fbin2freq(ee, in readEepromRawPowerCalInfo5112()
314 if (!ee->ee_Bmode) /* no 11b calibration data */ in readEepromRawPowerCalInfo5112()
317 if (ee->ee_calPier11b[i] != CHANNEL_UNUSED) in readEepromRawPowerCalInfo5112()
318 freq[numPiers++] = ee->ee_calPier11b[i]; in readEepromRawPowerCalInfo5112()
321 if (!ee->ee_Gmode) /* no 11g calibration data */ in readEepromRawPowerCalInfo5112()
324 if (ee->ee_calPier11g[i] != CHANNEL_UNUSED) in readEepromRawPowerCalInfo5112()
325 freq[numPiers++] = ee->ee_calPier11g[i]; in readEepromRawPowerCalInfo5112()
369 if (ee->ee_version >= AR_EEPROM_VER4_3) { in readEepromRawPowerCalInfo5112()
381 eePower.xpdMask = ee->ee_xgain[mode]; in readEepromRawPowerCalInfo5112()
383 if (!eepromAllocExpnPower5112(ah, &eePower, &ee->ee_modePowerArray5112[mode])) { in readEepromRawPowerCalInfo5112()
388 if (!eepromExpandPower5112(ah, &eePower, &ee->ee_modePowerArray5112[mode])) { in readEepromRawPowerCalInfo5112()
399 freeEepromRawPowerCalInfo5112(struct ath_hal *ah, HAL_EEPROM *ee) in freeEepromRawPowerCalInfo5112() argument
406 &ee->ee_modePowerArray5112[mode]; in freeEepromRawPowerCalInfo5112()
441 ar2413ReadCalDataset(struct ath_hal *ah, HAL_EEPROM *ee, in ar2413ReadCalDataset() argument
465 freq[numPiers++] = fbin2freq(ee, (eeval & freqmask)); in ar2413ReadCalDataset()
467 freq[numPiers++] = fbin2freq_2p4(ee, (eeval & freqmask)); in ar2413ReadCalDataset()
472 freq[numPiers++] = fbin2freq(ee, (eeval >> 8) & freqmask); in ar2413ReadCalDataset()
474 freq[numPiers++] = fbin2freq_2p4(ee, (eeval >> 8) & freqmask); in ar2413ReadCalDataset()
731 readEepromRawPowerCalInfo2413(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromRawPowerCalInfo2413() argument
741 HALASSERT(ee->ee_version >= AR_EEPROM_VER5_0); in readEepromRawPowerCalInfo2413()
742 HALASSERT(ee->ee_eepMap == 2); in readEepromRawPowerCalInfo2413()
748 off = ee->ee_eepMap2PowerCalStart; in readEepromRawPowerCalInfo2413()
749 if (ee->ee_Amode) { in readEepromRawPowerCalInfo2413()
751 pCal->xpd_mask = ee->ee_xgain[headerInfo11A]; in readEepromRawPowerCalInfo2413()
752 if (!ar2413ReadCalDataset(ah, ee, pCal, off, in readEepromRawPowerCalInfo2413()
756 pRaw = &ee->ee_rawDataset2413[headerInfo11A]; in readEepromRawPowerCalInfo2413()
757 pRaw->xpd_mask = ee->ee_xgain[headerInfo11A]; in readEepromRawPowerCalInfo2413()
767 if (ee->ee_Bmode) { in readEepromRawPowerCalInfo2413()
769 pCal->xpd_mask = ee->ee_xgain[headerInfo11B]; in readEepromRawPowerCalInfo2413()
770 if (!ar2413ReadCalDataset(ah, ee, pCal, off, in readEepromRawPowerCalInfo2413()
774 pRaw = &ee->ee_rawDataset2413[headerInfo11B]; in readEepromRawPowerCalInfo2413()
775 pRaw->xpd_mask = ee->ee_xgain[headerInfo11B]; in readEepromRawPowerCalInfo2413()
785 if (ee->ee_Gmode) { in readEepromRawPowerCalInfo2413()
787 pCal->xpd_mask = ee->ee_xgain[headerInfo11G]; in readEepromRawPowerCalInfo2413()
788 if (!ar2413ReadCalDataset(ah, ee, pCal, off, in readEepromRawPowerCalInfo2413()
792 pRaw = &ee->ee_rawDataset2413[headerInfo11G]; in readEepromRawPowerCalInfo2413()
793 pRaw->xpd_mask = ee->ee_xgain[headerInfo11G]; in readEepromRawPowerCalInfo2413()
811 readEepromRawPowerCalInfo(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromRawPowerCalInfo() argument
821 if (ee->ee_version >= AR_EEPROM_VER4_0 && ee->ee_eepMap == 1) in readEepromRawPowerCalInfo()
822 return readEepromRawPowerCalInfo5112(ah, ee); in readEepromRawPowerCalInfo()
823 if (ee->ee_version >= AR_EEPROM_VER5_0 && ee->ee_eepMap == 2) in readEepromRawPowerCalInfo()
824 return readEepromRawPowerCalInfo2413(ah, ee); in readEepromRawPowerCalInfo()
837 off = ee->ee_version >= AR_EEPROM_VER3_3 ? in readEepromRawPowerCalInfo()
842 nchan = ee->ee_numChannels11a; in readEepromRawPowerCalInfo()
843 pChannelData = ee->ee_dataPerChannel11a; in readEepromRawPowerCalInfo()
844 pChannels = ee->ee_channels11a; in readEepromRawPowerCalInfo()
847 if (!ee->ee_Bmode) in readEepromRawPowerCalInfo()
850 nchan = ee->ee_numChannels2_4; in readEepromRawPowerCalInfo()
851 pChannelData = ee->ee_dataPerChannel11b; in readEepromRawPowerCalInfo()
852 pChannels = ee->ee_channels11b; in readEepromRawPowerCalInfo()
855 if (!ee->ee_Gmode) in readEepromRawPowerCalInfo()
858 nchan = ee->ee_numChannels2_4; in readEepromRawPowerCalInfo()
859 pChannelData = ee->ee_dataPerChannel11g; in readEepromRawPowerCalInfo()
860 pChannels = ee->ee_channels11g; in readEepromRawPowerCalInfo()
896 getPcdacInterceptsFromPcdacMinMax(ee, in readEepromRawPowerCalInfo()
917 readEepromTargetPowerCalInfo(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromTargetPowerCalInfo() argument
927 enable24 = ee->ee_Bmode || ee->ee_Gmode; in readEepromTargetPowerCalInfo()
932 off = ee->ee_version >= AR_EEPROM_VER4_0 ? in readEepromTargetPowerCalInfo()
933 ee->ee_targetPowersStart - GROUP5_OFFSET : in readEepromTargetPowerCalInfo()
934 ee->ee_version >= AR_EEPROM_VER3_3 ? in readEepromTargetPowerCalInfo()
940 pPowerInfo = ee->ee_trgtPwr_11a; in readEepromTargetPowerCalInfo()
941 pNumTrgtChannels = &ee->ee_numTargetPwr_11a; in readEepromTargetPowerCalInfo()
948 pPowerInfo = ee->ee_trgtPwr_11b; in readEepromTargetPowerCalInfo()
949 pNumTrgtChannels = &ee->ee_numTargetPwr_11b; in readEepromTargetPowerCalInfo()
956 pPowerInfo = ee->ee_trgtPwr_11g; in readEepromTargetPowerCalInfo()
957 pNumTrgtChannels = &ee->ee_numTargetPwr_11g; in readEepromTargetPowerCalInfo()
967 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readEepromTargetPowerCalInfo()
976 pPowerInfo->testChannel = fbin2freq(ee, pPowerInfo->testChannel); in readEepromTargetPowerCalInfo()
978 pPowerInfo->testChannel = fbin2freq_2p4(ee, pPowerInfo->testChannel); in readEepromTargetPowerCalInfo()
981 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readEepromTargetPowerCalInfo()
990 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readEepromTargetPowerCalInfo()
1013 readEepromCTLInfo(struct ath_hal *ah, HAL_EEPROM *ee) in readEepromCTLInfo() argument
1024 rep = ee->ee_rdEdgesPower; in readEepromCTLInfo()
1027 (ee->ee_version >= AR_EEPROM_VER4_0 ? in readEepromCTLInfo()
1028 ee->ee_targetPowersStart - GROUP5_OFFSET : in readEepromCTLInfo()
1029 ee->ee_version >= AR_EEPROM_VER3_3 ? in readEepromCTLInfo()
1031 for (i = 0; i < ee->ee_numCtls; i++) { in readEepromCTLInfo()
1032 if (ee->ee_ctl[i] == 0) { in readEepromCTLInfo()
1034 off += (ee->ee_version >= AR_EEPROM_VER3_3 ? 8 : 7); in readEepromCTLInfo()
1038 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readEepromCTLInfo()
1092 if ((ee->ee_ctl[i] & CTL_MODE_M) == CTL_11A || in readEepromCTLInfo()
1093 (ee->ee_ctl[i] & CTL_MODE_M) == CTL_TURBO) { in readEepromCTLInfo()
1094 rep[j].rdEdge = fbin2freq(ee, rep[j].rdEdge); in readEepromCTLInfo()
1096 rep[j].rdEdge = fbin2freq_2p4(ee, rep[j].rdEdge); in readEepromCTLInfo()
1110 readHeaderInfo(struct ath_hal *ah, HAL_EEPROM *ee) in readHeaderInfo() argument
1142 ee->ee_cckOfdmGainDelta = CCK_OFDM_GAIN_DELTA; in readHeaderInfo()
1143 ee->ee_scaledCh14FilterCckDelta = TENX_CH14_FILTER_CCK_DELTA_INIT; in readHeaderInfo()
1145 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readHeaderInfo()
1147 ee->ee_numCtls = NUM_CTLS_3_3; in readHeaderInfo()
1150 ee->ee_numCtls = NUM_CTLS; in readHeaderInfo()
1152 HALASSERT(ee->ee_numCtls <= NUM_CTLS_MAX); in readHeaderInfo()
1155 ee->ee_turbo5Disable = (eeval >> 15) & 0x01; in readHeaderInfo()
1156 ee->ee_rfKill = (eeval >> 14) & 0x01; in readHeaderInfo()
1157 ee->ee_deviceType = (eeval >> 11) & 0x07; in readHeaderInfo()
1158 ee->ee_turbo2WMaxPower5 = (eeval >> 4) & 0x7F; in readHeaderInfo()
1159 if (ee->ee_version >= AR_EEPROM_VER4_0) in readHeaderInfo()
1160 ee->ee_turbo2Disable = (eeval >> 3) & 0x01; in readHeaderInfo()
1162 ee->ee_turbo2Disable = 1; in readHeaderInfo()
1163 ee->ee_Gmode = (eeval >> 2) & 0x01; in readHeaderInfo()
1164 ee->ee_Bmode = (eeval >> 1) & 0x01; in readHeaderInfo()
1165 ee->ee_Amode = (eeval & 0x01); in readHeaderInfo()
1169 ee->ee_antennaGainMax[0] = (int8_t)((eeval >> 8) & 0xFF); in readHeaderInfo()
1170 ee->ee_antennaGainMax[1] = (int8_t)(eeval & 0xFF); in readHeaderInfo()
1171 if (ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1173 ee->ee_eepMap = (eeval>>14) & 0x3; in readHeaderInfo()
1174 ee->ee_disableXr5 = (eeval>>13) & 0x1; in readHeaderInfo()
1175 ee->ee_disableXr2 = (eeval>>12) & 0x1; in readHeaderInfo()
1176 ee->ee_earStart = eeval & 0xfff; in readHeaderInfo()
1179 ee->ee_targetPowersStart = eeval & 0xfff; in readHeaderInfo()
1180 ee->ee_exist32kHzCrystal = (eeval>>14) & 0x1; in readHeaderInfo()
1182 if (ee->ee_version >= AR_EEPROM_VER5_0) { in readHeaderInfo()
1185 ee->ee_eepMap2PowerCalStart = (eeval >> 4) & 0xfff; in readHeaderInfo()
1196 ee->ee_switchSettling[i] = (eeval >> 8) & 0x7f; in readHeaderInfo()
1197 ee->ee_txrxAtten[i] = (eeval >> 2) & 0x3f; in readHeaderInfo()
1198 ee->ee_antennaControl[0][i] = (eeval << 4) & 0x3f; in readHeaderInfo()
1201 ee->ee_antennaControl[0][i] |= (eeval >> 12) & 0x0f; in readHeaderInfo()
1202 ee->ee_antennaControl[1][i] = (eeval >> 6) & 0x3f; in readHeaderInfo()
1203 ee->ee_antennaControl[2][i] = eeval & 0x3f; in readHeaderInfo()
1206 ee->ee_antennaControl[3][i] = (eeval >> 10) & 0x3f; in readHeaderInfo()
1207 ee->ee_antennaControl[4][i] = (eeval >> 4) & 0x3f; in readHeaderInfo()
1208 ee->ee_antennaControl[5][i] = (eeval << 2) & 0x3f; in readHeaderInfo()
1211 ee->ee_antennaControl[5][i] |= (eeval >> 14) & 0x03; in readHeaderInfo()
1212 ee->ee_antennaControl[6][i] = (eeval >> 8) & 0x3f; in readHeaderInfo()
1213 ee->ee_antennaControl[7][i] = (eeval >> 2) & 0x3f; in readHeaderInfo()
1214 ee->ee_antennaControl[8][i] = (eeval << 4) & 0x3f; in readHeaderInfo()
1217 ee->ee_antennaControl[8][i] |= (eeval >> 12) & 0x0f; in readHeaderInfo()
1218 ee->ee_antennaControl[9][i] = (eeval >> 6) & 0x3f; in readHeaderInfo()
1219 ee->ee_antennaControl[10][i] = eeval & 0x3f; in readHeaderInfo()
1222 ee->ee_adcDesiredSize[i] = (int8_t)((eeval >> 8) & 0xff); in readHeaderInfo()
1225 ee->ee_ob4 = (eeval >> 5) & 0x07; in readHeaderInfo()
1226 ee->ee_db4 = (eeval >> 2) & 0x07; in readHeaderInfo()
1227 ee->ee_ob3 = (eeval << 1) & 0x07; in readHeaderInfo()
1230 ee->ee_obFor24 = (eeval >> 4) & 0x07; in readHeaderInfo()
1231 ee->ee_dbFor24 = eeval & 0x07; in readHeaderInfo()
1234 ee->ee_obFor24g = (eeval >> 4) & 0x07; in readHeaderInfo()
1235 ee->ee_dbFor24g = eeval & 0x07; in readHeaderInfo()
1241 ee->ee_ob3 |= (eeval >> 15) & 0x01; in readHeaderInfo()
1242 ee->ee_db3 = (eeval >> 12) & 0x07; in readHeaderInfo()
1243 ee->ee_ob2 = (eeval >> 9) & 0x07; in readHeaderInfo()
1244 ee->ee_db2 = (eeval >> 6) & 0x07; in readHeaderInfo()
1245 ee->ee_ob1 = (eeval >> 3) & 0x07; in readHeaderInfo()
1246 ee->ee_db1 = eeval & 0x07; in readHeaderInfo()
1250 ee->ee_txEndToXLNAOn[i] = (eeval >> 8) & 0xff; in readHeaderInfo()
1251 ee->ee_thresh62[i] = eeval & 0xff; in readHeaderInfo()
1254 ee->ee_txEndToXPAOff[i] = (eeval >> 8) & 0xff; in readHeaderInfo()
1255 ee->ee_txFrameToXPAOn[i] = eeval & 0xff; in readHeaderInfo()
1258 ee->ee_pgaDesiredSize[i] = (int8_t)((eeval >> 8) & 0xff); in readHeaderInfo()
1259 ee->ee_noiseFloorThresh[i] = eeval & 0xff; in readHeaderInfo()
1260 if (ee->ee_noiseFloorThresh[i] & 0x80) { in readHeaderInfo()
1261 ee->ee_noiseFloorThresh[i] = 0 - in readHeaderInfo()
1262 ((ee->ee_noiseFloorThresh[i] ^ 0xff) + 1); in readHeaderInfo()
1266 ee->ee_xlnaGain[i] = (eeval >> 5) & 0xff; in readHeaderInfo()
1267 ee->ee_xgain[i] = (eeval >> 1) & 0x0f; in readHeaderInfo()
1268 ee->ee_xpd[i] = eeval & 0x01; in readHeaderInfo()
1269 if (ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1272 ee->ee_fixedBias5 = (eeval >> 13) & 0x1; in readHeaderInfo()
1275 ee->ee_fixedBias2 = (eeval >> 13) & 0x1; in readHeaderInfo()
1280 if (ee->ee_version >= AR_EEPROM_VER3_3) { in readHeaderInfo()
1282 ee->ee_falseDetectBackoff[i] = (eeval >> 6) & 0x7F; in readHeaderInfo()
1285 ee->ee_ob2GHz[0] = eeval & 0x7; in readHeaderInfo()
1286 ee->ee_db2GHz[0] = (eeval >> 3) & 0x7; in readHeaderInfo()
1289 ee->ee_ob2GHz[1] = eeval & 0x7; in readHeaderInfo()
1290 ee->ee_db2GHz[1] = (eeval >> 3) & 0x7; in readHeaderInfo()
1293 ee->ee_xrTargetPower5 = eeval & 0x3f; in readHeaderInfo()
1297 if (ee->ee_version >= AR_EEPROM_VER3_4) { in readHeaderInfo()
1298 ee->ee_gainI[i] = (eeval >> 13) & 0x07; in readHeaderInfo()
1301 ee->ee_gainI[i] |= (eeval << 3) & 0x38; in readHeaderInfo()
1303 ee->ee_cckOfdmPwrDelta = (eeval >> 3) & 0xFF; in readHeaderInfo()
1304 if (ee->ee_version >= AR_EEPROM_VER4_6) in readHeaderInfo()
1305 ee->ee_scaledCh14FilterCckDelta = in readHeaderInfo()
1309 ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1310 ee->ee_iqCalI[0] = (eeval >> 8 ) & 0x3f; in readHeaderInfo()
1311 ee->ee_iqCalQ[0] = (eeval >> 3 ) & 0x1f; in readHeaderInfo()
1314 ee->ee_gainI[i] = 10; in readHeaderInfo()
1315 ee->ee_cckOfdmPwrDelta = TENX_OFDM_CCK_DELTA_INIT; in readHeaderInfo()
1317 if (ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1321 ee->ee_calPier11b[0] = in readHeaderInfo()
1322 fbin2freq_2p4(ee, eeval&0xff); in readHeaderInfo()
1323 ee->ee_calPier11b[1] = in readHeaderInfo()
1324 fbin2freq_2p4(ee, (eeval >> 8)&0xff); in readHeaderInfo()
1326 ee->ee_calPier11b[2] = in readHeaderInfo()
1327 fbin2freq_2p4(ee, eeval&0xff); in readHeaderInfo()
1328 if (ee->ee_version >= AR_EEPROM_VER4_1) in readHeaderInfo()
1329 ee->ee_rxtxMargin[headerInfo11B] = in readHeaderInfo()
1334 ee->ee_calPier11g[0] = in readHeaderInfo()
1335 fbin2freq_2p4(ee, eeval & 0xff); in readHeaderInfo()
1336 ee->ee_calPier11g[1] = in readHeaderInfo()
1337 fbin2freq_2p4(ee, (eeval >> 8) & 0xff); in readHeaderInfo()
1340 ee->ee_turbo2WMaxPower2 = eeval & 0x7F; in readHeaderInfo()
1341 ee->ee_xrTargetPower2 = (eeval >> 7) & 0x3f; in readHeaderInfo()
1344 ee->ee_calPier11g[2] = in readHeaderInfo()
1345 fbin2freq_2p4(ee, eeval & 0xff); in readHeaderInfo()
1346 if (ee->ee_version >= AR_EEPROM_VER4_1) in readHeaderInfo()
1347 ee->ee_rxtxMargin[headerInfo11G] = in readHeaderInfo()
1351 ee->ee_iqCalI[1] = (eeval >> 5) & 0x3F; in readHeaderInfo()
1352 ee->ee_iqCalQ[1] = eeval & 0x1F; in readHeaderInfo()
1354 if (ee->ee_version >= AR_EEPROM_VER4_2) { in readHeaderInfo()
1356 ee->ee_cckOfdmGainDelta = in readHeaderInfo()
1358 if (ee->ee_version >= AR_EEPROM_VER5_0) { in readHeaderInfo()
1359 ee->ee_switchSettlingTurbo[1] = in readHeaderInfo()
1361 ee->ee_txrxAttenTurbo[1] = in readHeaderInfo()
1364 ee->ee_txrxAttenTurbo[1] |= in readHeaderInfo()
1366 ee->ee_rxtxMarginTurbo[1] = in readHeaderInfo()
1368 ee->ee_adcDesiredSizeTurbo[1] = in readHeaderInfo()
1371 ee->ee_adcDesiredSizeTurbo[1] |= in readHeaderInfo()
1373 ee->ee_pgaDesiredSizeTurbo[1] = in readHeaderInfo()
1379 if (ee->ee_version >= AR_EEPROM_VER4_1) { in readHeaderInfo()
1381 ee->ee_rxtxMargin[headerInfo11A] = in readHeaderInfo()
1383 if (ee->ee_version >= AR_EEPROM_VER5_0) { in readHeaderInfo()
1384 ee->ee_switchSettlingTurbo[0] = in readHeaderInfo()
1386 ee->ee_txrxAttenTurbo[0] = in readHeaderInfo()
1389 ee->ee_txrxAttenTurbo[0] |= in readHeaderInfo()
1391 ee->ee_rxtxMarginTurbo[0] = in readHeaderInfo()
1393 ee->ee_adcDesiredSizeTurbo[0] = in readHeaderInfo()
1396 ee->ee_adcDesiredSizeTurbo[0] |= in readHeaderInfo()
1398 ee->ee_pgaDesiredSizeTurbo[0] = in readHeaderInfo()
1406 if (ee->ee_version < AR_EEPROM_VER3_3) { in readHeaderInfo()
1409 ee->ee_ob2GHz[0] = eeval & 0x7; in readHeaderInfo()
1410 ee->ee_db2GHz[0] = (eeval >> 3) & 0x7; in readHeaderInfo()
1413 ee->ee_ob2GHz[1] = eeval & 0x7; in readHeaderInfo()
1414 ee->ee_db2GHz[1] = (eeval >> 3) & 0x7; in readHeaderInfo()
1418 ee->ee_cornerCal.clip = 4; in readHeaderInfo()
1419 ee->ee_cornerCal.pd90 = 1; in readHeaderInfo()
1420 ee->ee_cornerCal.pd84 = 1; in readHeaderInfo()
1421 ee->ee_cornerCal.gSel = 0; in readHeaderInfo()
1429 for (i = 0; i < ee->ee_numCtls; i += 2) { in readHeaderInfo()
1431 ee->ee_ctl[i] = (eeval >> 8) & 0xff; in readHeaderInfo()
1432 ee->ee_ctl[i+1] = eeval & 0xff; in readHeaderInfo()
1435 if (ee->ee_version < AR_EEPROM_VER5_3) { in readHeaderInfo()
1437 ee->ee_spurChans[0][1] = AR_SPUR_5413_1; in readHeaderInfo()
1438 ee->ee_spurChans[1][1] = AR_SPUR_5413_2; in readHeaderInfo()
1439 ee->ee_spurChans[2][1] = AR_NO_SPUR; in readHeaderInfo()
1440 ee->ee_spurChans[0][0] = AR_NO_SPUR; in readHeaderInfo()
1445 ee->ee_spurChans[i][0] = eeval; in readHeaderInfo()
1447 ee->ee_spurChans[i][1] = eeval; in readHeaderInfo()
1453 if (ee->ee_version <= AR_EEPROM_VER3_2) { in readHeaderInfo()
1454 ee->ee_noiseFloorThresh[headerInfo11A] = -54; in readHeaderInfo()
1455 ee->ee_noiseFloorThresh[headerInfo11B] = -1; in readHeaderInfo()
1456 ee->ee_noiseFloorThresh[headerInfo11G] = -1; in readHeaderInfo()
1459 if (ee->ee_version <= AR_EEPROM_VER3_2) { in readHeaderInfo()
1460 ee->ee_thresh62[headerInfo11A] = 15; /* 11A */ in readHeaderInfo()
1461 ee->ee_thresh62[headerInfo11B] = 28; /* 11B */ in readHeaderInfo()
1462 ee->ee_thresh62[headerInfo11G] = 28; /* 11G */ in readHeaderInfo()
1466 if (ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1472 ee->ee_regCap = eeval; in readHeaderInfo()
1474 if (ee->ee_Amode == 0) { in readHeaderInfo()
1476 if (ee->ee_version >= AR_EEPROM_VER4_0) { in readHeaderInfo()
1477 ee->ee_Amode = (ee->ee_regCap & AR_EEPROM_EEREGCAP_EN_KK_NEW_11A)?1:0; in readHeaderInfo()
1479 ee->ee_Amode = (ee->ee_regCap & AR_EEPROM_EEREGCAP_EN_KK_NEW_11A_PRE4_0)?1:0; in readHeaderInfo()
1483 if (ee->ee_version >= AR_EEPROM_VER5_1) in readHeaderInfo()
1487 ee->ee_opCap = eeval; in readHeaderInfo()
1490 ee->ee_regdomain = eeval; in readHeaderInfo()
1500 legacyEepromReadContents(struct ath_hal *ah, HAL_EEPROM *ee) in legacyEepromReadContents() argument
1503 if (!readHeaderInfo(ah, ee)) in legacyEepromReadContents()
1507 if (IS_5112(ah) && !ee->ee_eepMap) { in legacyEepromReadContents()
1522 if (!readEepromFreqPierInfo(ah, ee)) in legacyEepromReadContents()
1532 if (!readEepromRawPowerCalInfo(ah, ee)) in legacyEepromReadContents()
1542 if (!readEepromTargetPowerCalInfo(ah, ee)) in legacyEepromReadContents()
1553 return readEepromCTLInfo(ah, ee); in legacyEepromReadContents()
1559 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in legacyEepromGet() local
1567 *(uint16_t *) val = ee->ee_opCap; in legacyEepromGet()
1570 *(uint16_t *) val = ee->ee_regdomain; in legacyEepromGet()
1600 return ee->ee_rfKill ? HAL_OK : HAL_EIO; in legacyEepromGet()
1603 return ee->ee_Amode ? HAL_OK : HAL_EIO; in legacyEepromGet()
1606 return ee->ee_Bmode ? HAL_OK : HAL_EIO; in legacyEepromGet()
1609 return ee->ee_Gmode ? HAL_OK : HAL_EIO; in legacyEepromGet()
1612 return ee->ee_turbo5Disable ? HAL_OK : HAL_EIO; in legacyEepromGet()
1615 return ee->ee_turbo2Disable ? HAL_OK : HAL_EIO; in legacyEepromGet()
1618 return (ee->ee_version >= AR_EEPROM_VER5_4 && in legacyEepromGet()
1623 return ee->ee_exist32kHzCrystal ? HAL_OK : HAL_EIO; in legacyEepromGet()
1626 return (ee->ee_opCap & AR_EEPROM_EEPCAP_COMPRESS_DIS) == 0 ? in legacyEepromGet()
1630 return (ee->ee_opCap & AR_EEPROM_EEPCAP_FASTFRAME_DIS) == 0 ? in legacyEepromGet()
1634 return (ee->ee_opCap & AR_EEPROM_EEPCAP_AES_DIS) == 0 ? in legacyEepromGet()
1638 return (ee->ee_opCap & AR_EEPROM_EEPCAP_BURST_DIS) == 0 ? in legacyEepromGet()
1641 if (ee->ee_opCap & AR_EEPROM_EEPCAP_MAXQCU) { in legacyEepromGet()
1643 MS(ee->ee_opCap, AR_EEPROM_EEPCAP_MAXQCU); in legacyEepromGet()
1648 if (ee->ee_opCap & AR_EEPROM_EEPCAP_KC_ENTRIES) { in legacyEepromGet()
1650 1 << MS(ee->ee_opCap, AR_EEPROM_EEPCAP_KC_ENTRIES); in legacyEepromGet()
1655 *(int8_t *) val = ee->ee_antennaGainMax[0]; in legacyEepromGet()
1658 *(int8_t *) val = ee->ee_antennaGainMax[1]; in legacyEepromGet()
1662 return (ee->ee_protect & AR_EEPROM_PROTECT_WP_128_191) ? in legacyEepromGet()
1671 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in legacyEepromSet() local
1675 ee->ee_Amode = v; in legacyEepromSet()
1678 ee->ee_Bmode = v; in legacyEepromSet()
1681 ee->ee_Gmode = v; in legacyEepromSet()
1684 ee->ee_turbo5Disable = v; in legacyEepromSet()
1687 ee->ee_turbo2Disable = v; in legacyEepromSet()
1691 ee->ee_opCap &= ~AR_EEPROM_EEPCAP_COMPRESS_DIS; in legacyEepromSet()
1693 ee->ee_opCap |= AR_EEPROM_EEPCAP_COMPRESS_DIS; in legacyEepromSet()
1697 ee->ee_opCap &= ~AR_EEPROM_EEPCAP_FASTFRAME_DIS; in legacyEepromSet()
1699 ee->ee_opCap |= AR_EEPROM_EEPCAP_FASTFRAME_DIS; in legacyEepromSet()
1703 ee->ee_opCap &= ~AR_EEPROM_EEPCAP_AES_DIS; in legacyEepromSet()
1705 ee->ee_opCap |= AR_EEPROM_EEPCAP_AES_DIS; in legacyEepromSet()
1709 ee->ee_opCap &= ~AR_EEPROM_EEPCAP_BURST_DIS; in legacyEepromSet()
1711 ee->ee_opCap |= AR_EEPROM_EEPCAP_BURST_DIS; in legacyEepromSet()
1721 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in legacyEepromDiag() local
1726 *result = ee; in legacyEepromDiag()
1727 *resultsize = sizeof(*ee); in legacyEepromDiag()
1732 pe = &ee->ee_modePowerArray5112[ in legacyEepromDiag()
1747 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in legacyEepromGetSpurChan() local
1750 return ee->ee_spurChans[ix][is2GHz]; in legacyEepromGetSpurChan()
1759 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in legacyEepromDetach() local
1761 if (ee->ee_version >= AR_EEPROM_VER4_0 && ee->ee_eepMap == 1) in legacyEepromDetach()
1762 freeEepromRawPowerCalInfo5112(ah, ee); in legacyEepromDetach()
1763 ath_hal_free(ee); in legacyEepromDetach()
1777 HAL_EEPROM *ee = AH_PRIVATE(ah)->ah_eeprom; in ath_hal_legacyEepromAttach() local
1782 HALASSERT(ee == AH_NULL); in ath_hal_legacyEepromAttach()
1835 ee = ath_hal_malloc(sizeof(HAL_EEPROM)); in ath_hal_legacyEepromAttach()
1836 if (ee == AH_NULL) { in ath_hal_legacyEepromAttach()
1841 ee->ee_protect = eeprotect; in ath_hal_legacyEepromAttach()
1842 ee->ee_version = eeversion; in ath_hal_legacyEepromAttach()
1844 ee->ee_numChannels11a = NUM_11A_EEPROM_CHANNELS; in ath_hal_legacyEepromAttach()
1845 ee->ee_numChannels2_4 = NUM_2_4_EEPROM_CHANNELS; in ath_hal_legacyEepromAttach()
1848 ee->ee_dataPerChannel11a[i].numPcdacValues = NUM_PCDAC_VALUES; in ath_hal_legacyEepromAttach()
1852 ee->ee_channels11b[i] = channels11b[i]; in ath_hal_legacyEepromAttach()
1855 ee->ee_channels11g[i] = channels11b[i]; in ath_hal_legacyEepromAttach()
1857 ee->ee_channels11g[i] = channels11g[i]; in ath_hal_legacyEepromAttach()
1858 ee->ee_dataPerChannel11b[i].numPcdacValues = NUM_PCDAC_VALUES; in ath_hal_legacyEepromAttach()
1859 ee->ee_dataPerChannel11g[i].numPcdacValues = NUM_PCDAC_VALUES; in ath_hal_legacyEepromAttach()
1862 if (!legacyEepromReadContents(ah, ee)) { in ath_hal_legacyEepromAttach()
1864 ath_hal_free(ee); in ath_hal_legacyEepromAttach()
1868 AH_PRIVATE(ah)->ah_eeprom = ee; in ath_hal_legacyEepromAttach()