uint8_t indexTable = 0;
uint32_t freq = 0;
- for(indexTable = 0; indexTable < 4; indexTable++)
+ for(indexTable = 0; indexTable < 3; indexTable++)
{
if(arfcn <= arfcnFreqTable[indexTable][4])
{
- freq = arfcnFreqTable[indexTable][2] + (arfcnFreqTable[indexTable][1] * (arfcn - arfcnFreqTable[indexTable][3]));
- return (freq*1000);
+ freq = (arfcnFreqTable[indexTable][2] * 1000) + (arfcnFreqTable[indexTable][1] * (arfcn - arfcnFreqTable[indexTable][3]));
+ return (freq);
}
}
DU_LOG("ERROR --> DUAPP: ARFCN vaid range is between 0 and 3279165");
- return (freq*1000);
+ return (freq);
}
* 3GPP TS 38.104, Table 5.4.2.1-1
* Formula: NREF = NREF-Offs + (FREF – FREF-Offs) / ΔFGlobal
*
-* @params[in] uint32_t Freq(MHZ)
+* @params[in] uint32_t Freq(kHZ)
*
* @return [out] uint32_t ARFCN(number)
*
uint8_t indexTable = 0;
uint32_t arfcn = 0;
- for(indexTable = 0; indexTable < 4; indexTable++)
+ for(indexTable = 0; indexTable < 3; indexTable++)
{
if(freq < arfcnFreqTable[indexTable][0])
{
- arfcn = arfcnFreqTable[indexTable][3] + ((freq - arfcnFreqTable[indexTable][2]) / (arfcnFreqTable[indexTable][1]));
+ arfcn = arfcnFreqTable[indexTable][3] + ((freq - (arfcnFreqTable[indexTable][2] * 1000)) / (arfcnFreqTable[indexTable][1]));
return (arfcn);
}
}