Commit 4ea44bee authored by wujing's avatar wujing

skip eNB_TX if num_pdcch_symbos == 0

parent 8b0fddac
......@@ -1782,7 +1782,7 @@ void oai_subframe_ind(uint16_t sfn, uint16_t sf) {
int subframe_ret = nfapi_pnf_p7_subframe_ind(p7_config_g, p7_config_g->phy_id, sfn_sf_tx);
if (subframe_ret) {
NFAPI_TRACE(NFAPI_TRACE_INFO, "[PNF] %s(frame:%u subframe:%u) SFN/SF(TX):%u - PROBLEM with pnf_p7_subframe_ind()\n", __FUNCTION__, sfn, sf, sfn_sf_tx, NFAPI_SFNSF2DEC(sfn_sf_tx));
LOG_E(PHY, "[PNF] %s(frame:%u subframe:%u) SFN/SF(TX):%u - PROBLEM with pnf_p7_subframe_ind()\n", __FUNCTION__, sfn, sf, sfn_sf_tx, NFAPI_SFNSF2DEC(sfn_sf_tx));
} else {
//NFAPI_TRACE(NFAPI_TRACE_INFO, "***NFAPI subframe handler finished *** \n");
}
......
......@@ -495,7 +495,10 @@ void phy_procedures_eNB_TX(PHY_VARS_eNB *eNB,
0,fp->ofdm_symbol_size*(fp->symbols_per_tti)*sizeof(int32_t));
}
if (nfapi_mode == 1 && eNB->pdcch_vars[subframe&1].num_pdcch_symbols == 0) {
LOG_E(PHY, "eNB->pdcch_vars[%d].num_pdcch_symbols == 0: frame %d subframe %d\n",subframe&1,frame,subframe);
return ;
}
if (nfapi_mode == 0 || nfapi_mode == 1) {
if (is_pmch_subframe(frame,subframe,fp)) {
......
......@@ -894,7 +894,7 @@ void release_UE_in_freeList(module_id_t mod_id) {
eNB_MAC_INST *eNB_MAC = RC.mac[mod_id];
boolean_t remove_UEContext;
rnti_t rnti;
int head, tail, ue_num;
int head, tail, ue_num, ue_num_tmp;
pthread_mutex_lock(&lock_ue_freelist);
head = eNB_MAC->UE_free_list.head_freelist;
tail = eNB_MAC->UE_free_list.tail_freelist;
......@@ -911,11 +911,12 @@ void release_UE_in_freeList(module_id_t mod_id) {
pthread_mutex_unlock(&lock_ue_freelist);
for(ue_num = head; ue_num < tail; ue_num++) {
ue_num = ue_num % (NUMBER_OF_UE_MAX+1);
rnti = eNB_MAC->UE_free_list.UE_free_ctrl[ue_num].rnti;
ue_num_tmp = ue_num % (NUMBER_OF_UE_MAX+1);
rnti = eNB_MAC->UE_free_list.UE_free_ctrl[ue_num_tmp].rnti;
if(rnti != 0) {
remove_UEContext = eNB_MAC->UE_free_list.UE_free_ctrl[ue_num].removeContextFlg;
remove_UEContext = eNB_MAC->UE_free_list.UE_free_ctrl[ue_num_tmp].removeContextFlg;
remove_UE_from_freelist(mod_id, rnti);
PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, mod_id, ENB_FLAG_YES, rnti, 0, 0,mod_id);
for (CC_id = 0; CC_id < MAX_NUM_CCs; CC_id++) {
......@@ -992,7 +993,6 @@ void release_UE_in_freeList(module_id_t mod_id) {
}
LOG_I(RRC, "[release_UE_in_freeList] remove UE %x from freeList\n", rnti);
remove_UE_from_freelist(mod_id, rnti);
}
}
}
......
......@@ -197,7 +197,7 @@ static inline int rxtx(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc, char *thread_name
}
if (nfapi_mode == 1 && eNB->pdcch_vars[proc->subframe_tx&1].num_pdcch_symbols == 0) {
LOG_E(PHY, "eNB->pdcch_vars[proc->subframe_tx&1].num_pdcch_symbols == 0");
LOG_E(PHY, "eNB->pdcch_vars[%d].num_pdcch_symbols == 0: frame %d subframe %d\n",proc->subframe_tx&1,proc->frame_tx,proc->subframe_tx);
return 0;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment