fix as i can a error detected by cppcheck, w[lprime] is only 0, 1 or -1
This commit is contained in:
committed by
Robert Schmidt
parent
3190ad47b1
commit
bc238f9b2f
@@ -262,7 +262,6 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
mDCI_ALLOC_t *mdci;
|
mDCI_ALLOC_t *mdci;
|
||||||
int coded_bits;
|
int coded_bits;
|
||||||
LTE_DL_FRAME_PARMS *fp = &eNB->frame_parms;
|
LTE_DL_FRAME_PARMS *fp = &eNB->frame_parms;
|
||||||
int i;
|
|
||||||
int gain_lin_QPSK;
|
int gain_lin_QPSK;
|
||||||
uint16_t *mpdcchtab;
|
uint16_t *mpdcchtab;
|
||||||
uint32_t x1 = 0, x2 = 0, s = 0;
|
uint32_t x1 = 0, x2 = 0, s = 0;
|
||||||
@@ -277,7 +276,7 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
int *w;
|
int *w;
|
||||||
LOG_D(PHY, "generate_mdci_top: num_dci %d\n", mpdcch->num_dci);
|
LOG_D(PHY, "generate_mdci_top: num_dci %d\n", mpdcch->num_dci);
|
||||||
|
|
||||||
for (i = 0; i < mpdcch->num_dci; i++) {
|
for (int i = 0; i < mpdcch->num_dci; i++) {
|
||||||
mdci = &mpdcch->mdci_alloc[i];
|
mdci = &mpdcch->mdci_alloc[i];
|
||||||
AssertFatal(fp->frame_type == FDD, "TDD is not yet supported for MPDCCH\n");
|
AssertFatal(fp->frame_type == FDD, "TDD is not yet supported for MPDCCH\n");
|
||||||
AssertFatal(fp->Ncp == NORMAL, "Extended Prefix not yet supported for MPDCCH\n");
|
AssertFatal(fp->Ncp == NORMAL, "Extended Prefix not yet supported for MPDCCH\n");
|
||||||
@@ -358,14 +357,14 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
if (re_offset > fp->ofdm_symbol_size)
|
if (re_offset > fp->ofdm_symbol_size)
|
||||||
re_offset -= (fp->ofdm_symbol_size - 1);
|
re_offset -= (fp->ofdm_symbol_size - 1);
|
||||||
|
|
||||||
int32_t *txF = &txdataF[0][symbol_offset+re_offset];
|
c16_t *txF = (c16_t *)&txdataF[0][symbol_offset + re_offset];
|
||||||
int32_t yIQ;
|
c16_t yIQ;
|
||||||
|
|
||||||
for (i = 0; i < (coded_bits >> 1); i++) {
|
for (int i = 0; i < (coded_bits >> 1); i++) {
|
||||||
// QPSK modulation to yIQ
|
// QPSK modulation to yIQ
|
||||||
((int16_t *) & yIQ)[0] = (*e_ptr == 1) ? -gain_lin_QPSK : gain_lin_QPSK;
|
yIQ.r = *e_ptr == 1 ? -gain_lin_QPSK : gain_lin_QPSK;
|
||||||
e_ptr++;
|
e_ptr++;
|
||||||
((int16_t *) & yIQ)[1] = (*e_ptr == 1) ? -gain_lin_QPSK : gain_lin_QPSK;
|
yIQ.i = *e_ptr == 1 ? -gain_lin_QPSK : gain_lin_QPSK;
|
||||||
e_ptr++;
|
e_ptr++;
|
||||||
txF[mpdcchtab[i]] = yIQ;
|
txF[mpdcchtab[i]] = yIQ;
|
||||||
/*
|
/*
|
||||||
@@ -406,7 +405,7 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
int last_prb = (mdci->narrowband*6) + nb_i0 + 5;
|
int last_prb = (mdci->narrowband*6) + nb_i0 + 5;
|
||||||
int soffset[4] = {5,6,12,13};
|
int soffset[4] = {5,6,12,13};
|
||||||
|
|
||||||
for (int lprime=0,i=0; lprime<4; lprime++) {
|
for (int lprime=0,ii=0; lprime<4; lprime++) {
|
||||||
for (int nprb=0; nprb<110; nprb++) {
|
for (int nprb=0; nprb<110; nprb++) {
|
||||||
if (nprb<fp->N_RB_DL) {
|
if (nprb<fp->N_RB_DL) {
|
||||||
re_offset = fp->first_carrier_offset + (12 * nprb);
|
re_offset = fp->first_carrier_offset + (12 * nprb);
|
||||||
@@ -414,11 +413,11 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
if (re_offset > fp->ofdm_symbol_size)
|
if (re_offset > fp->ofdm_symbol_size)
|
||||||
re_offset -= (fp->ofdm_symbol_size - 1);
|
re_offset -= (fp->ofdm_symbol_size - 1);
|
||||||
|
|
||||||
txF = &txdataF[0][symbol_offset + re_offset + fp->ofdm_symbol_size*soffset[lprime]];
|
txF = (c16_t *)&txdataF[0][symbol_offset + re_offset + fp->ofdm_symbol_size * soffset[lprime]];
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int mprime=0; mprime<3; mprime++,i+=2) {
|
for (int mprime=0; mprime<3; mprime++,ii+=2) {
|
||||||
if ((i & 0x1f) == 0) {
|
if ((ii & 0x1f) == 0) {
|
||||||
s = lte_gold_generic(&x1, &x2, reset);
|
s = lte_gold_generic(&x1, &x2, reset);
|
||||||
reset = 0;
|
reset = 0;
|
||||||
}
|
}
|
||||||
@@ -426,8 +425,8 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
// select PRBs corresponding to narrowband
|
// select PRBs corresponding to narrowband
|
||||||
if ((nprb>= first_prb) &&
|
if ((nprb>= first_prb) &&
|
||||||
(nprb<= last_prb)) {
|
(nprb<= last_prb)) {
|
||||||
((int16_t *) & yIQ)[0] = (((s >> (i & 0x1f)) & 1) == 1) ? -gain_lin_QPSK : gain_lin_QPSK;
|
yIQ.r = (s >> (ii & 0x1f)) & 1 ? -gain_lin_QPSK : gain_lin_QPSK;
|
||||||
((int16_t *) & yIQ)[1] = (((s >> ((i + 1) & 0x1f)) & 1) == 1) ? -gain_lin_QPSK : gain_lin_QPSK;
|
yIQ.i = (s >> ((ii + 1) & 0x1f)) & 1 ? -gain_lin_QPSK : gain_lin_QPSK;
|
||||||
AssertFatal(mdci->transmission_type==1,"transmission_type %d!=1, handle this ...\n",mdci->transmission_type);
|
AssertFatal(mdci->transmission_type==1,"transmission_type %d!=1, handle this ...\n",mdci->transmission_type);
|
||||||
|
|
||||||
if (mdci->transmission_type==1) { // same thing on both 107 and 109
|
if (mdci->transmission_type==1) { // same thing on both 107 and 109
|
||||||
@@ -435,9 +434,9 @@ void generate_mdci_top(PHY_VARS_eNB *eNB, int frame, int subframe, int16_t amp,
|
|||||||
txF[1+(5*mprime)] = yIQ;
|
txF[1+(5*mprime)] = yIQ;
|
||||||
} else { // put on selected antenna port with w sequence
|
} else { // put on selected antenna port with w sequence
|
||||||
if (((mprime+nprb)&1) == 0)
|
if (((mprime+nprb)&1) == 0)
|
||||||
txF[off+(5*mprime)] = yIQ*w[lprime];
|
txF[off + (5 * mprime)] = (c16_t){yIQ.r * w[lprime], yIQ.i * w[lprime]};
|
||||||
else
|
else
|
||||||
txF[off+(5*mprime)] = yIQ*w[3-lprime];
|
txF[off + (5 * mprime)] = (c16_t){yIQ.r * w[3 - lprime], yIQ.i * w[3 - lprime]};
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user