Commit 32eafc13 authored by Louis Adrien Dufrene's avatar Louis Adrien Dufrene

Some format before testing locally

parent 57a5a26e
...@@ -3254,11 +3254,15 @@ nfapi_ul_config_request_pdu_t *has_ul_grant(module_id_t module_idP, ...@@ -3254,11 +3254,15 @@ nfapi_ul_config_request_pdu_t *has_ul_grant(module_id_t module_idP,
return (NULL); // no ul grant at all for this UE return (NULL); // no ul grant at all for this UE
} }
//-----------------------------------------------------------------------------
boolean_t boolean_t
CCE_allocation_infeasible(int module_idP, CCE_allocation_infeasible(int module_idP,
int CC_idP, int CC_idP,
int format_flag, int format_flag,
int subframe, int aggregation, int rnti) int subframe,
int aggregation,
int rnti)
//-----------------------------------------------------------------------------
{ {
nfapi_dl_config_request_body_t *DL_req = &RC.mac[module_idP]->DL_req[CC_idP].dl_config_request_body; nfapi_dl_config_request_body_t *DL_req = &RC.mac[module_idP]->DL_req[CC_idP].dl_config_request_body;
nfapi_dl_config_request_pdu_t *dl_config_pdu = &DL_req->dl_config_pdu_list[DL_req->number_pdu]; nfapi_dl_config_request_pdu_t *dl_config_pdu = &DL_req->dl_config_pdu_list[DL_req->number_pdu];
...@@ -3269,9 +3273,12 @@ CCE_allocation_infeasible(int module_idP, ...@@ -3269,9 +3273,12 @@ CCE_allocation_infeasible(int module_idP,
if (format_flag != 2) { // DL DCI if (format_flag != 2) { // DL DCI
if (DL_req->number_pdu == MAX_NUM_DL_PDU) { if (DL_req->number_pdu == MAX_NUM_DL_PDU) {
LOG_W(MAC, LOG_W(MAC, "Subframe %d: FAPI DL structure is full, skip scheduling UE %d\n",
"Subframe %d: FAPI DL structure is full, skip scheduling UE %d\n", subframe,
subframe, rnti); rnti);
res = TRUE;
} else { } else {
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.tl.tag = NFAPI_DL_CONFIG_REQUEST_DCI_DL_PDU_REL8_TAG; dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.tl.tag = NFAPI_DL_CONFIG_REQUEST_DCI_DL_PDU_REL8_TAG;
dl_config_pdu->pdu_type = NFAPI_DL_CONFIG_DCI_DL_PDU_TYPE; dl_config_pdu->pdu_type = NFAPI_DL_CONFIG_DCI_DL_PDU_TYPE;
...@@ -3279,22 +3286,29 @@ CCE_allocation_infeasible(int module_idP, ...@@ -3279,22 +3286,29 @@ CCE_allocation_infeasible(int module_idP,
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.rnti_type = (format_flag == 0) ? 2 : 1; dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.rnti_type = (format_flag == 0) ? 2 : 1;
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.aggregation_level = aggregation; dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.aggregation_level = aggregation;
DL_req->number_pdu++; DL_req->number_pdu++;
LOG_D(MAC,
"Subframe %d: Checking CCE feasibility format %d : (%x,%d) (%x,%d,%d)\n", LOG_D(MAC, "Subframe %d: Checking CCE feasibility format %d : (%x,%d) \n",
subframe, format_flag, rnti, aggregation, subframe,
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.rnti, format_flag,
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8. rnti,
aggregation_level, aggregation);
dl_config_pdu->dci_dl_pdu.dci_dl_pdu_rel8.rnti_type);
ret = allocate_CCEs(module_idP, CC_idP, 0, subframe, 0); ret = allocate_CCEs(module_idP, CC_idP, 0, subframe, 0);
if (ret == -1) res = TRUE;
if (ret == -1) {
res = TRUE;
}
DL_req->number_pdu--; DL_req->number_pdu--;
} }
} else { // ue-specific UL DCI } else { // ue-specific UL DCI
if (HI_DCI0_req->number_of_dci + HI_DCI0_req->number_of_hi == MAX_NUM_HI_DCI0_PDU) { if (HI_DCI0_req->number_of_dci + HI_DCI0_req->number_of_hi == MAX_NUM_HI_DCI0_PDU) {
LOG_W(MAC, LOG_W(MAC, "Subframe %d: FAPI UL structure is full, skip scheduling UE %d\n",
"Subframe %d: FAPI UL structure is full, skip scheduling UE %d\n", subframe,
subframe, rnti); rnti);
res = TRUE;
} else { } else {
hi_dci0_pdu->pdu_type = NFAPI_HI_DCI0_DCI_PDU_TYPE; hi_dci0_pdu->pdu_type = NFAPI_HI_DCI0_DCI_PDU_TYPE;
hi_dci0_pdu->dci_pdu.dci_pdu_rel8.tl.tag = NFAPI_HI_DCI0_REQUEST_DCI_PDU_REL8_TAG; hi_dci0_pdu->dci_pdu.dci_pdu_rel8.tl.tag = NFAPI_HI_DCI0_REQUEST_DCI_PDU_REL8_TAG;
...@@ -3302,13 +3316,18 @@ CCE_allocation_infeasible(int module_idP, ...@@ -3302,13 +3316,18 @@ CCE_allocation_infeasible(int module_idP,
hi_dci0_pdu->dci_pdu.dci_pdu_rel8.aggregation_level = aggregation; hi_dci0_pdu->dci_pdu.dci_pdu_rel8.aggregation_level = aggregation;
HI_DCI0_req->number_of_dci++; HI_DCI0_req->number_of_dci++;
ret = allocate_CCEs(module_idP, CC_idP, 0, subframe, 0); ret = allocate_CCEs(module_idP, CC_idP, 0, subframe, 0);
if (ret == -1) res = TRUE;
if (ret == -1) {
res = TRUE;
}
HI_DCI0_req->number_of_dci--; HI_DCI0_req->number_of_dci--;
} }
} }
return res; return res;
} }
void get_retransmission_timing(LTE_TDD_Config_t *tdd_Config, frame_t *frameP, void get_retransmission_timing(LTE_TDD_Config_t *tdd_Config, frame_t *frameP,
sub_frame_t *subframeP) sub_frame_t *subframeP)
{ {
......
This diff is collapsed.
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