diff --git a/core/rtw_mp.c b/core/rtw_mp.c index 351f4fd..7137dae 100644 --- a/core/rtw_mp.c +++ b/core/rtw_mp.c @@ -3359,7 +3359,7 @@ void PMAC_Nsym_generator( UCHAR TX_RATE = pPMacTxInfo->TX_RATE; UINT R, R_list[10] = {0, 0, 2, 0, 2, 1, 2, 3, 2, 3}; - double CR = 0; + UINT CR12 = 0; UINT N_SD, N_BPSC_list[10] = {1, 2, 2, 4, 4, 6, 6, 6, 8, 8}; UINT N_BPSC = 0, N_CBPS = 0, N_DBPS = 0, N_ES = 0, N_SYM = 0, N_pld = 0, N_TCB = 0; int D_R = 0; @@ -3389,22 +3389,22 @@ void PMAC_Nsym_generator( switch (R) { case 0: - CR = .5; + CR12 = 6; break; case 1: - CR = 2. / 3.; + CR12 = 8; break; case 2: - CR = 3. / 4.; + CR12 = 9; break; case 3: - CR = 5. / 6.; + CR12 = 10; break; } N_BPSC = N_BPSC_list[MCS_temp]; N_CBPS = N_BPSC * N_SD * pPMacPktInfo->Nss; - N_DBPS = (UINT)((double)N_CBPS * CR); + N_DBPS = N_CBPS * CR12 / 12; if (pPMacTxInfo->bLDPC == FALSE) { N_ES = ceil_divide(N_DBPS * pPMacPktInfo->Nss, 1200); @@ -3435,21 +3435,21 @@ void PMAC_Nsym_generator( switch (R) { case 0: - CR = .5; + CR12 = 6; break; case 1: - CR = 2. / 3.; + CR12 = 8; break; case 2: - CR = 3. / 4.; + CR12 = 9; break; case 3: - CR = 5. / 6.; + CR12 = 10; break; } N_BPSC = N_BPSC_list[pPMacPktInfo->MCS]; N_CBPS = N_BPSC * N_SD * pPMacPktInfo->Nss; - N_DBPS = (UINT)((double)N_CBPS * CR); + N_DBPS = N_CBPS * CR12 / 12; if (pPMacTxInfo->bLDPC == FALSE) { if (pPMacTxInfo->bSGI) N_ES = ceil_divide(N_DBPS, 2160);