Commit b8fb9f0f authored by wujing's avatar wujing

revert to 31f98332

parent 4d521a00
...@@ -1867,7 +1867,6 @@ typedef struct { ...@@ -1867,7 +1867,6 @@ typedef struct {
nfapi_tl_t tl; nfapi_tl_t tl;
uint32_t handle; uint32_t handle;
uint16_t rnti; uint16_t rnti;
uint16_t ue_id;
} nfapi_ul_config_ue_information_rel8_t; } nfapi_ul_config_ue_information_rel8_t;
#define NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG 0x2013 #define NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG 0x2013
......
...@@ -326,8 +326,6 @@ typedef struct { ...@@ -326,8 +326,6 @@ typedef struct {
uint8_t subframe; uint8_t subframe;
/// corresponding UE RNTI /// corresponding UE RNTI
uint16_t rnti; uint16_t rnti;
/// UE ID from Layer2
uint16_t ue_id;
/// Type (SR,HARQ,CQI,HARQ_SR,HARQ_CQI,SR_CQI,HARQ_SR_CQI) /// Type (SR,HARQ,CQI,HARQ_SR,HARQ_CQI,SR_CQI,HARQ_SR_CQI)
UCI_type_t type; UCI_type_t type;
/// SRS active flag /// SRS active flag
......
...@@ -41,19 +41,15 @@ int16_t find_uci(uint16_t rnti, int frame, int subframe, PHY_VARS_eNB *eNB,find_ ...@@ -41,19 +41,15 @@ int16_t find_uci(uint16_t rnti, int frame, int subframe, PHY_VARS_eNB *eNB,find_
uint16_t i; uint16_t i;
int16_t first_free_index=-1; int16_t first_free_index=-1;
AssertFatal(eNB!=NULL,"eNB is null\n"); AssertFatal(eNB!=NULL,"eNB is null\n");
for (i=0; i<NUMBER_OF_UCI_VARS_MAX; i++) { for (i=0; i<NUMBER_OF_UE_MAX; i++) {
if ((eNB->uci_vars[i].active >0) && if ((eNB->uci_vars[i].active >0) &&
(eNB->uci_vars[i].rnti==rnti) && (eNB->uci_vars[i].rnti==rnti) &&
(eNB->uci_vars[i].frame==frame) && (eNB->uci_vars[i].frame==frame) &&
(eNB->uci_vars[i].subframe==subframe)) return(i); (eNB->uci_vars[i].subframe==subframe)) return(i);
else if ((eNB->uci_vars[i].active == 0) && (first_free_index==-1)) first_free_index=i; else if ((eNB->uci_vars[i].active == 0) && (first_free_index==-1)) first_free_index=i;
} }
if (type == SEARCH_EXIST){ if (type == SEARCH_EXIST) return(-1);
return(-1); else return(first_free_index);
}
else{
return(first_free_index);
}
} }
......
...@@ -942,7 +942,7 @@ typedef struct PHY_VARS_eNB_s { ...@@ -942,7 +942,7 @@ typedef struct PHY_VARS_eNB_s {
LTE_eNB_PRACH prach_vars_br; LTE_eNB_PRACH prach_vars_br;
#endif #endif
LTE_eNB_COMMON common_vars; LTE_eNB_COMMON common_vars;
LTE_eNB_UCI uci_vars[NUMBER_OF_UCI_VARS_MAX]; LTE_eNB_UCI uci_vars[NUMBER_OF_UE_MAX];
LTE_eNB_SRS srs_vars[NUMBER_OF_UE_MAX]; LTE_eNB_SRS srs_vars[NUMBER_OF_UE_MAX];
LTE_eNB_PBCH pbch; LTE_eNB_PBCH pbch;
LTE_eNB_PUSCH *pusch_vars[NUMBER_OF_UE_MAX]; LTE_eNB_PUSCH *pusch_vars[NUMBER_OF_UE_MAX];
......
...@@ -501,7 +501,6 @@ void handle_uci_sr_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_pdu_t ...@@ -501,7 +501,6 @@ void handle_uci_sr_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_pdu_t
uci->frame = frame; uci->frame = frame;
uci->subframe = subframe; uci->subframe = subframe;
uci->rnti = ul_config_pdu->uci_sr_pdu.ue_information.ue_information_rel8.rnti; uci->rnti = ul_config_pdu->uci_sr_pdu.ue_information.ue_information_rel8.rnti;
uci->ue_id = ul_config_pdu->uci_sr_pdu.ue_information.ue_information_rel8.ue_id;
uci->type = SR; uci->type = SR;
uci->pucch_fmt = pucch_format1; uci->pucch_fmt = pucch_format1;
uci->num_antenna_ports = 1; uci->num_antenna_ports = 1;
...@@ -521,7 +520,6 @@ void handle_uci_sr_harq_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_ ...@@ -521,7 +520,6 @@ void handle_uci_sr_harq_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_
uci->frame = frame; uci->frame = frame;
uci->subframe = subframe; uci->subframe = subframe;
uci->rnti = ul_config_pdu->uci_sr_harq_pdu.ue_information.ue_information_rel8.rnti; uci->rnti = ul_config_pdu->uci_sr_harq_pdu.ue_information.ue_information_rel8.rnti;
uci->ue_id = ul_config_pdu->uci_sr_harq_pdu.ue_information.ue_information_rel8.ue_id;
uci->type = HARQ_SR; uci->type = HARQ_SR;
uci->num_antenna_ports = 1; uci->num_antenna_ports = 1;
uci->num_pucch_resources = 1; uci->num_pucch_resources = 1;
...@@ -540,7 +538,6 @@ void handle_uci_harq_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_pdu ...@@ -540,7 +538,6 @@ void handle_uci_harq_pdu(PHY_VARS_eNB *eNB,int UE_id,nfapi_ul_config_request_pdu
uci->frame = frame; uci->frame = frame;
uci->subframe = subframe; uci->subframe = subframe;
uci->rnti = ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.rnti; uci->rnti = ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.rnti;
uci->ue_id = ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.ue_id;
uci->type = HARQ; uci->type = HARQ;
uci->srs_active = srs_active; uci->srs_active = srs_active;
uci->num_antenna_ports = ul_config_pdu->uci_harq_pdu.harq_information.harq_information_rel11.num_ant_ports; uci->num_antenna_ports = ul_config_pdu->uci_harq_pdu.harq_information.harq_information_rel11.num_ant_ports;
......
...@@ -731,7 +731,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -731,7 +731,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
LTE_eNB_UCI *uci; LTE_eNB_UCI *uci;
uint16_t tdd_multiplexing_mask=0; uint16_t tdd_multiplexing_mask=0;
for (i=0;i<NUMBER_OF_UCI_VARS_MAX;i++) { for (i=0;i<NUMBER_OF_UE_MAX;i++) {
uci = &eNB->uci_vars[i]; uci = &eNB->uci_vars[i];
if ((uci->active == 1) && if ((uci->active == 1) &&
...@@ -775,7 +775,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -775,7 +775,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
metric_SR = rx_pucch(eNB, metric_SR = rx_pucch(eNB,
uci->pucch_fmt, uci->pucch_fmt,
uci->ue_id, i,
uci->n_pucch_1_0_sr[0], uci->n_pucch_1_0_sr[0],
0, // n2_pucch 0, // n2_pucch
uci->srs_active, // shortened format uci->srs_active, // shortened format
...@@ -810,7 +810,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -810,7 +810,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
metric[0] = rx_pucch(eNB, metric[0] = rx_pucch(eNB,
uci->pucch_fmt, uci->pucch_fmt,
uci->ue_id, i,
uci->n_pucch_1[0][0], uci->n_pucch_1[0][0],
0, //n2_pucch 0, //n2_pucch
uci->srs_active, // shortened format uci->srs_active, // shortened format
...@@ -830,7 +830,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -830,7 +830,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
metric[0]=rx_pucch(eNB, metric[0]=rx_pucch(eNB,
uci->pucch_fmt, uci->pucch_fmt,
uci->ue_id, i,
uci->n_pucch_1_0_sr[0], uci->n_pucch_1_0_sr[0],
0, //n2_pucch 0, //n2_pucch
uci->srs_active, // shortened format uci->srs_active, // shortened format
...@@ -860,7 +860,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -860,7 +860,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
#if 1 #if 1
metric[0] = rx_pucch(eNB, metric[0] = rx_pucch(eNB,
uci->pucch_fmt, uci->pucch_fmt,
uci->ue_id, i,
uci->n_pucch_1[0][0], uci->n_pucch_1[0][0],
0, //n2_pucch 0, //n2_pucch
uci->srs_active, // shortened format uci->srs_active, // shortened format
...@@ -875,7 +875,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -875,7 +875,7 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
SR_payload = 1; SR_payload = 1;
metric[0] = rx_pucch(eNB, metric[0] = rx_pucch(eNB,
pucch_format1b, pucch_format1b,
uci->ue_id, i,
uci->n_pucch_1_0_sr[0], uci->n_pucch_1_0_sr[0],
0, //n2_pucch 0, //n2_pucch
uci->srs_active, // shortened format uci->srs_active, // shortened format
...@@ -1241,13 +1241,13 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc) ...@@ -1241,13 +1241,13 @@ void uci_procedures(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc)
LOG_D(PHY,"[eNB %d][SR %x] Frame %d subframe %d Got SR for PUSCH, transmitting to MAC\n",eNB->Mod_id, LOG_D(PHY,"[eNB %d][SR %x] Frame %d subframe %d Got SR for PUSCH, transmitting to MAC\n",eNB->Mod_id,
uci->rnti,frame,subframe); uci->rnti,frame,subframe);
if (eNB->first_sr[uci->ue_id] == 1) { // this is the first request for uplink after Connection Setup, so clear HARQ process 0 use for Msg4 if (eNB->first_sr[i] == 1) { // this is the first request for uplink after Connection Setup, so clear HARQ process 0 use for Msg4
eNB->first_sr[uci->ue_id] = 0; eNB->first_sr[i] = 0;
eNB->dlsch[uci->ue_id][0]->harq_processes[0]->round=0; eNB->dlsch[i][0]->harq_processes[0]->round=0;
eNB->dlsch[uci->ue_id][0]->harq_processes[0]->status=SCH_IDLE; eNB->dlsch[i][0]->harq_processes[0]->status=SCH_IDLE;
LOG_D(PHY,"[eNB %d][SR %x] Frame %d subframe %d First SR\n", LOG_D(PHY,"[eNB %d][SR %x] Frame %d subframe %d First SR\n",
eNB->Mod_id, eNB->Mod_id,
eNB->ulsch[uci->ue_id]->rnti,frame,subframe); eNB->ulsch[i]->rnti,frame,subframe);
} }
} }
} }
......
...@@ -338,7 +338,6 @@ schedule_SR(module_id_t module_idP, frame_t frameP, sub_frame_t subframeP) ...@@ -338,7 +338,6 @@ schedule_SR(module_id_t module_idP, frame_t frameP, sub_frame_t subframeP)
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].pdu_type = NFAPI_UL_CONFIG_UCI_SR_PDU_TYPE; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].pdu_type = NFAPI_UL_CONFIG_UCI_SR_PDU_TYPE;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel8.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel8.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel8.rnti = UE_list->UE_template[CC_id][UE_id].rnti; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel8.rnti = UE_list->UE_template[CC_id][UE_id].rnti;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel8.ue_id = UE_id;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel11.tl.tag = 0; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel11.tl.tag = 0;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel13.tl.tag = 0; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.ue_information.ue_information_rel13.tl.tag = 0;
ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.sr_information = sr; ul_req_body->ul_config_pdu_list[ul_req_body->number_of_pdus].uci_sr_pdu.sr_information = sr;
......
...@@ -972,7 +972,6 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP, ...@@ -972,7 +972,6 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP,
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG; ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL8_TAG;
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.handle = 0; // don't know how to use this ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.handle = 0; // don't know how to use this
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.rnti = ra->rnti; ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.rnti = ra->rnti;
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel8.ue_id = UE_id;
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL13_TAG; ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.tl.tag = NFAPI_UL_CONFIG_REQUEST_UE_INFORMATION_REL13_TAG;
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.ue_type = (ra->rach_resource_type < 3) ? 1 : 2; ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.ue_type = (ra->rach_resource_type < 3) ? 1 : 2;
ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.empty_symbols = 0; ul_config_pdu->uci_harq_pdu.ue_information.ue_information_rel13.empty_symbols = 0;
......
...@@ -930,11 +930,9 @@ void release_UE_in_freeList(module_id_t mod_id) { ...@@ -930,11 +930,9 @@ void release_UE_in_freeList(module_id_t mod_id) {
clean_eNb_ulsch(ulsch); clean_eNb_ulsch(ulsch);
} }
for(j = 0;j < NUMBER_OF_UCI_VARS_MAX;j++){ if(eNB_PHY->uci_vars[i].rnti == rnti) {
if(eNB_PHY->uci_vars[j].rnti == rnti){ LOG_I(MAC, "clean eNb uci_vars[%d] UE %x \n",i, rnti);
LOG_I(MAC, "clean eNb uci_vars[%d] UE %x \n",j, rnti); memset(&eNB_PHY->uci_vars[i],0,sizeof(LTE_eNB_UCI));
memset(&eNB_PHY->uci_vars[j],0,sizeof(LTE_eNB_UCI));
}
} }
} }
......
...@@ -12,16 +12,13 @@ ...@@ -12,16 +12,13 @@
// This problem will be fixed in the future. // This problem will be fixed in the future.
# ifndef UESIM_EXPANSION # ifndef UESIM_EXPANSION
# define NUMBER_OF_UE_MAX 16 # define NUMBER_OF_UE_MAX 16
# define NUMBER_OF_UCI_VARS_MAX 24
# define NUMBER_OF_CONNECTED_eNB_MAX 3 # define NUMBER_OF_CONNECTED_eNB_MAX 3
# else # else
# define NUMBER_OF_UE_MAX 256 # define NUMBER_OF_UE_MAX 256
# define NUMBER_OF_UCI_VARS_MAX 256
# define NUMBER_OF_CONNECTED_eNB_MAX 1 # define NUMBER_OF_CONNECTED_eNB_MAX 1
# endif # endif
# else # else
# define NUMBER_OF_UE_MAX 256 # define NUMBER_OF_UE_MAX 256
# define NUMBER_OF_UCI_VARS_MAX 256
# define NUMBER_OF_CONNECTED_eNB_MAX 1 # define NUMBER_OF_CONNECTED_eNB_MAX 1
# endif # endif
#else #else
...@@ -35,16 +32,13 @@ and the other are using MAX_MOBILES_PER_ENB in for-loop. ...@@ -35,16 +32,13 @@ and the other are using MAX_MOBILES_PER_ENB in for-loop.
*/ */
# ifndef UESIM_EXPANSION # ifndef UESIM_EXPANSION
# define NUMBER_OF_UE_MAX 16 # define NUMBER_OF_UE_MAX 16
# define NUMBER_OF_UCI_VARS_MAX 24
# define NUMBER_OF_CONNECTED_eNB_MAX 3 # define NUMBER_OF_CONNECTED_eNB_MAX 3
# else # else
# define NUMBER_OF_UE_MAX 256 # define NUMBER_OF_UE_MAX 256
# define NUMBER_OF_UCI_VARS_MAX 256
# define NUMBER_OF_CONNECTED_eNB_MAX 1 # define NUMBER_OF_CONNECTED_eNB_MAX 1
# endif # endif
# else # else
# define NUMBER_OF_UE_MAX 256 # define NUMBER_OF_UE_MAX 256
# define NUMBER_OF_UCI_VARS_MAX 256
# define NUMBER_OF_CONNECTED_eNB_MAX 1 # define NUMBER_OF_CONNECTED_eNB_MAX 1
# endif # endif
# if defined(STANDALONE) && STANDALONE==1 # if defined(STANDALONE) && STANDALONE==1
......
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