Merge branch 'sp3_tdd_config1' of http://takoyaki.np1s.css.fujitsu.com:8000/gitlab/vran/release_enb into sp3_tdd_config1
This commit is contained in:
@@ -1832,7 +1832,6 @@ void schedule_ulsch_rnti(module_id_t module_idP,
|
|||||||
} else {
|
} else {
|
||||||
tpc = 1; //0
|
tpc = 1; //0
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tpc!=1) {
|
if (tpc!=1) {
|
||||||
LOG_D(MAC,"[eNB %d] ULSCH scheduler: frame %d, subframe %d, harq_pid %d, tpc %d, accumulated %d, normalized/target rx power %d/%d\n",
|
LOG_D(MAC,"[eNB %d] ULSCH scheduler: frame %d, subframe %d, harq_pid %d, tpc %d, accumulated %d, normalized/target rx power %d/%d\n",
|
||||||
module_idP,frameP,subframeP,harq_pid,tpc,
|
module_idP,frameP,subframeP,harq_pid,tpc,
|
||||||
@@ -1917,6 +1916,11 @@ void schedule_ulsch_rnti(module_id_t module_idP,
|
|||||||
hi_dci0_pdu->dci_pdu.dci_pdu_rel8.harq_pid = harq_pid;
|
hi_dci0_pdu->dci_pdu.dci_pdu_rel8.harq_pid = harq_pid;
|
||||||
|
|
||||||
hi_dci0_req->number_of_dci++;
|
hi_dci0_req->number_of_dci++;
|
||||||
|
hi_dci0_req->sfnsf = sfnsf_add_subframe(sched_frame, sched_subframeP, 0); //(frameP, subframeP, 4)
|
||||||
|
hi_dci0_req->tl.tag = NFAPI_HI_DCI0_REQUEST_BODY_TAG;
|
||||||
|
nfapi_hi_dci0_request_t *nfapi_hi_dci0_req = &eNB->HI_DCI0_req[CC_id][subframeP];
|
||||||
|
nfapi_hi_dci0_req->sfn_sf = frameP<<4|subframeP; // sfnsf_add_subframe(sched_frame, sched_subframeP, 0); // sunday!
|
||||||
|
nfapi_hi_dci0_req->header.message_id = NFAPI_HI_DCI0_REQUEST;
|
||||||
|
|
||||||
LOG_D(MAC,"[PUSCH %d] Frame %d, Subframe %d: Adding UL CONFIG.Request for UE %d/%x, ulsch_frame %d, ulsch_subframe %d\n",
|
LOG_D(MAC,"[PUSCH %d] Frame %d, Subframe %d: Adding UL CONFIG.Request for UE %d/%x, ulsch_frame %d, ulsch_subframe %d\n",
|
||||||
harq_pid,frameP,subframeP,UE_id,rnti,sched_frame,sched_subframeP);
|
harq_pid,frameP,subframeP,UE_id,rnti,sched_frame,sched_subframeP);
|
||||||
@@ -2042,6 +2046,11 @@ void schedule_ulsch_rnti(module_id_t module_idP,
|
|||||||
hi_dci0_pdu->hi_pdu.hi_pdu_rel8.hi_value = 0;
|
hi_dci0_pdu->hi_pdu.hi_pdu_rel8.hi_value = 0;
|
||||||
hi_dci0_req->number_of_hi++;
|
hi_dci0_req->number_of_hi++;
|
||||||
|
|
||||||
|
hi_dci0_req->sfnsf = sfnsf_add_subframe(sched_frame, sched_subframeP, 0); //(frameP, subframeP, 4)
|
||||||
|
nfapi_hi_dci0_request_t *nfapi_hi_dci0_req = &eNB->HI_DCI0_req[CC_id][subframeP];
|
||||||
|
nfapi_hi_dci0_req->sfn_sf = frameP<<4|subframeP; // sfnsf_add_subframe(sched_frame, sched_subframeP, 0); // sunday!
|
||||||
|
nfapi_hi_dci0_req->header.message_id = NFAPI_HI_DCI0_REQUEST;
|
||||||
|
|
||||||
LOG_D(MAC,"[eNB %d][PUSCH %d/%x] CC_id %d Frame %d subframeP %d Scheduled (PHICH) UE %d (mcs %d, first rb %d, nb_rb %d, TBS %d, round %d)\n",
|
LOG_D(MAC,"[eNB %d][PUSCH %d/%x] CC_id %d Frame %d subframeP %d Scheduled (PHICH) UE %d (mcs %d, first rb %d, nb_rb %d, TBS %d, round %d)\n",
|
||||||
module_idP,harq_pid,rnti,CC_id,frameP,subframeP,UE_id,UE_template->mcs_UL[harq_pid],
|
module_idP,harq_pid,rnti,CC_id,frameP,subframeP,UE_id,UE_template->mcs_UL[harq_pid],
|
||||||
ulsch_ue_select[CC_id].list[ulsch_ue_num].start_rb, ulsch_ue_select[CC_id].list[ulsch_ue_num].nb_rb,
|
ulsch_ue_select[CC_id].list[ulsch_ue_num].start_rb, ulsch_ue_select[CC_id].list[ulsch_ue_num].nb_rb,
|
||||||
|
|||||||
@@ -2509,7 +2509,13 @@ void ulsch_scheduler_pre_ue_select(
|
|||||||
}
|
}
|
||||||
if ( (ulsch_ue_select[CC_id].ue_num+ul_inactivity_num[CC_id] ) < ulsch_ue_max_num[CC_id] ) {
|
if ( (ulsch_ue_select[CC_id].ue_num+ul_inactivity_num[CC_id] ) < ulsch_ue_max_num[CC_id] ) {
|
||||||
UE_sched_ctl = &UE_list->UE_sched_ctrl[UE_id];
|
UE_sched_ctl = &UE_list->UE_sched_ctrl[UE_id];
|
||||||
if ( ((UE_sched_ctl->ul_inactivity_timer>20)&&(UE_sched_ctl->ul_scheduled==0)) ||
|
uint8_t ul_period = 0;
|
||||||
|
if (cc->tdd_Config) {
|
||||||
|
ul_period = 50;
|
||||||
|
} else {
|
||||||
|
ul_period = 20;
|
||||||
|
}
|
||||||
|
if ( ((UE_sched_ctl->ul_inactivity_timer>ul_period)&&(UE_sched_ctl->ul_scheduled==0)) ||
|
||||||
((UE_sched_ctl->ul_inactivity_timer>10)&&(UE_sched_ctl->ul_scheduled==0)&&(mac_eNB_get_rrc_status(module_idP,UE_RNTI(module_idP,UE_id)) < RRC_CONNECTED))) {
|
((UE_sched_ctl->ul_inactivity_timer>10)&&(UE_sched_ctl->ul_scheduled==0)&&(mac_eNB_get_rrc_status(module_idP,UE_RNTI(module_idP,UE_id)) < RRC_CONNECTED))) {
|
||||||
ul_inactivity_id[CC_id][ul_inactivity_num[CC_id]]= UE_id;
|
ul_inactivity_id[CC_id][ul_inactivity_num[CC_id]]= UE_id;
|
||||||
ul_inactivity_num[CC_id] ++;
|
ul_inactivity_num[CC_id] ++;
|
||||||
@@ -2615,7 +2621,13 @@ void ulsch_scheduler_pre_ue_select(
|
|||||||
//inactivity UE
|
//inactivity UE
|
||||||
if ( (ulsch_ue_select[CC_id].ue_num+ul_inactivity_num[CC_id]) < ulsch_ue_max_num[CC_id] ) {
|
if ( (ulsch_ue_select[CC_id].ue_num+ul_inactivity_num[CC_id]) < ulsch_ue_max_num[CC_id] ) {
|
||||||
UE_sched_ctl = &UE_list->UE_sched_ctrl[UE_id];
|
UE_sched_ctl = &UE_list->UE_sched_ctrl[UE_id];
|
||||||
if ( ((UE_sched_ctl->ul_inactivity_timer>20)&&(UE_sched_ctl->ul_scheduled==0)) ||
|
uint8_t ul_period = 0;
|
||||||
|
if (cc->tdd_Config) {
|
||||||
|
ul_period = 50;
|
||||||
|
} else {
|
||||||
|
ul_period = 20;
|
||||||
|
}
|
||||||
|
if ( ((UE_sched_ctl->ul_inactivity_timer>ul_period)&&(UE_sched_ctl->ul_scheduled==0)) ||
|
||||||
((UE_sched_ctl->ul_inactivity_timer>10)&&(UE_sched_ctl->ul_scheduled==0)&&(mac_eNB_get_rrc_status(module_idP,UE_RNTI(module_idP,UE_id)) < RRC_CONNECTED))) {
|
((UE_sched_ctl->ul_inactivity_timer>10)&&(UE_sched_ctl->ul_scheduled==0)&&(mac_eNB_get_rrc_status(module_idP,UE_RNTI(module_idP,UE_id)) < RRC_CONNECTED))) {
|
||||||
ul_inactivity_id[CC_id][ul_inactivity_num[CC_id]]= UE_id;
|
ul_inactivity_id[CC_id][ul_inactivity_num[CC_id]]= UE_id;
|
||||||
ul_inactivity_num[CC_id]++;
|
ul_inactivity_num[CC_id]++;
|
||||||
|
|||||||
Reference in New Issue
Block a user