Commit e8c5e8bf authored by matzakos's avatar matzakos

Continue unfinished merge of Merge-L1-Onnet branch with develop branch....

Continue unfinished merge of Merge-L1-Onnet branch with develop branch. Pending conflicts to resolve.
parent a6484368
......@@ -42,6 +42,20 @@ openair1/SIMULATION/ETH_TRANSPORT/multicast_link.c
openair1/SIMULATION/LTE_PHY/dlsim.c
openair2/COMMON/mac_rrc_primitives.h
openair2/COMMON/platform_types.h
openair2/COMMON/rrc_messages_types.h
openair2/ENB_APP/enb_config.c (done but not so sure)
openair2/ENB_APP/enb_paramdef.h
openair2/ENB_APP/flexran_agent_ran_api.c
openair2/LAYER2/MAC/config.c
openair2/LAYER2/MAC/config_ue.c
openair2/LAYER2/MAC/eNB_scheduler.c
openair2/LAYER2/MAC/eNB_scheduler_RA.c
openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
openair2/LAYER2/MAC/eNB_scheduler_mch.c
openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
openair2/LAYER2/MAC/mac.h
openair2/LAYER2/MAC/mac_proto.h
openair2/LAYER2/MAC/pre_processor.c
......@@ -52,20 +66,6 @@ openair2/COMMON/platform_types.h
deleted by them: openair1/PHY/TOOLS/file_output.c
deleted by them: openair1/SCHED/pusch_pc.c
both modified: openair2/COMMON/rrc_messages_types.h
both modified: openair2/ENB_APP/enb_config.c
both modified: openair2/ENB_APP/enb_paramdef.h
both modified: openair2/ENB_APP/flexran_agent_ran_api.c
both modified: openair2/LAYER2/MAC/config.c
both modified: openair2/LAYER2/MAC/config_ue.c
both modified: openair2/LAYER2/MAC/eNB_scheduler.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_RA.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_mch.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
both modified: openair2/LAYER2/MAC/mac.h
both modified: openair2/LAYER2/MAC/mac_proto.h
both modified: openair2/LAYER2/MAC/pre_processor.c
both modified: openair2/LAYER2/MAC/ra_procedures.c
both modified: openair2/LAYER2/MAC/ue_procedures.c
both modified: openair2/LAYER2/PDCP_v10.1.0/pdcp.c
......@@ -154,8 +154,8 @@ openair2/COMMON/platform_types.h
both modified: openair1/SIMULATION/ETH_TRANSPORT/multicast_link.c
both modified: openair1/SIMULATION/LTE_PHY/dlsim.c
both modified: openair2/COMMON/mac_rrc_primitives.h
both modified: openair2/COMMON/platform_types.h #We have done up to here
both modified: openair2/COMMON/rrc_messages_types.h
both modified: openair2/COMMON/platform_types.h
both modified: openair2/COMMON/rrc_messages_types.h
both modified: openair2/ENB_APP/enb_config.c
both modified: openair2/ENB_APP/enb_paramdef.h
both modified: openair2/ENB_APP/flexran_agent_ran_api.c
......@@ -166,9 +166,9 @@ openair2/COMMON/platform_types.h
both modified: openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_mch.c
both modified: openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
both modified: openair2/LAYER2/MAC/mac.h
both modified: openair2/LAYER2/MAC/mac.h
both modified: openair2/LAYER2/MAC/mac_proto.h
both modified: openair2/LAYER2/MAC/pre_processor.c
both modified: openair2/LAYER2/MAC/pre_processor.c #We have done up to here
both modified: openair2/LAYER2/MAC/ra_procedures.c
both modified: openair2/LAYER2/MAC/ue_procedures.c
both modified: openair2/LAYER2/PDCP_v10.1.0/pdcp.c
......
......@@ -26,7 +26,7 @@
* Author: winckel and Navid Nikaein
*/
#ifndef RRC_MESSAGES_TYPES_H_
#ifndef RRC_MESSAGES_TYPES_H_<<>
#define RRC_MESSAGES_TYPES_H_
#include "as_message.h"
......@@ -37,19 +37,12 @@
#else
#include "RRC/LTE/MESSAGES/LTE_SystemInformationBlockType2.h"
#endif
<<<<<<< HEAD
#include "SL-OffsetIndicator-r12.h"
#include "SubframeBitmapSL-r12.h"
#include "SL-CP-Len-r12.h"
#include "SL-PeriodComm-r12.h"
#include "SL-DiscResourcePool-r12.h"
=======
#include "LTE_SL-OffsetIndicator-r12.h"
#include "LTE_SubframeBitmapSL-r12.h"
#include "LTE_SL-CP-Len-r12.h"
#include "LTE_SL-PeriodComm-r12.h"
#include "LTE_SL-DiscResourcePool-r12.h"
>>>>>>> main/develop
//-------------------------------------------------------------------------------------------//
......@@ -183,20 +176,6 @@ typedef struct RrcConfigurationReq_s {
long ue_TimersAndConstants_n310[MAX_NUM_CCs];
long ue_TimersAndConstants_n311[MAX_NUM_CCs];
long ue_TransmissionMode[MAX_NUM_CCs];
<<<<<<< HEAD
//TTN - for D2D
//SIB18
e_SL_CP_Len_r12 rxPool_sc_CP_Len[MAX_NUM_CCs];
e_SL_PeriodComm_r12 rxPool_sc_Period[MAX_NUM_CCs];
e_SL_CP_Len_r12 rxPool_data_CP_Len[MAX_NUM_CCs];
long rxPool_ResourceConfig_prb_Num[MAX_NUM_CCs];
long rxPool_ResourceConfig_prb_Start[MAX_NUM_CCs];
long rxPool_ResourceConfig_prb_End[MAX_NUM_CCs];
SL_OffsetIndicator_r12_PR rxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long rxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
SubframeBitmapSL_r12_PR rxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
=======
long ue_multiple_max[MAX_NUM_CCs];
//TTN - for D2D
......@@ -210,70 +189,40 @@ typedef struct RrcConfigurationReq_s {
LTE_SL_OffsetIndicator_r12_PR rxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long rxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR rxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
>>>>>>> main/develop
char* rxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long rxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
//SIB19
//for discRxPool
<<<<<<< HEAD
SL_CP_Len_r12_t discRxPool_cp_Len[MAX_NUM_CCs];
e_SL_DiscResourcePool_r12__discPeriod_r12 discRxPool_discPeriod[MAX_NUM_CCs];
=======
LTE_SL_CP_Len_r12_t discRxPool_cp_Len[MAX_NUM_CCs];
e_LTE_SL_DiscResourcePool_r12__discPeriod_r12 discRxPool_discPeriod[MAX_NUM_CCs];
>>>>>>> main/develop
long discRxPool_numRetx[MAX_NUM_CCs];
long discRxPool_numRepetition[MAX_NUM_CCs];
long discRxPool_ResourceConfig_prb_Num[MAX_NUM_CCs];
long discRxPool_ResourceConfig_prb_Start[MAX_NUM_CCs];
long discRxPool_ResourceConfig_prb_End[MAX_NUM_CCs];
<<<<<<< HEAD
SL_OffsetIndicator_r12_PR discRxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
SubframeBitmapSL_r12_PR discRxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
=======
LTE_SL_OffsetIndicator_r12_PR discRxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR discRxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
>>>>>>> main/develop
char* discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long discRxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
//for discRxPoolPS
<<<<<<< HEAD
SL_CP_Len_r12_t discRxPoolPS_cp_Len[MAX_NUM_CCs];
e_SL_DiscResourcePool_r12__discPeriod_r12 discRxPoolPS_discPeriod[MAX_NUM_CCs];
=======
LTE_SL_CP_Len_r12_t discRxPoolPS_cp_Len[MAX_NUM_CCs];
e_LTE_SL_DiscResourcePool_r12__discPeriod_r12 discRxPoolPS_discPeriod[MAX_NUM_CCs];
>>>>>>> main/develop
long discRxPoolPS_numRetx[MAX_NUM_CCs];
long discRxPoolPS_numRepetition[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_prb_Num[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_prb_Start[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_prb_End[MAX_NUM_CCs];
<<<<<<< HEAD
SL_OffsetIndicator_r12_PR discRxPoolPS_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
SubframeBitmapSL_r12_PR discRxPoolPS_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
char* discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
=======
LTE_SL_OffsetIndicator_r12_PR discRxPoolPS_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR discRxPoolPS_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
char* discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
>>>>>>> main/develop
} RrcConfigurationReq;
#define MAX_NUM_NBIOT_CELEVELS 3
......
This diff is collapsed.
......@@ -346,10 +346,7 @@ typedef enum {
#define ENB_CONFIG_STRING_UETIMERS_N310 "ue_TimersAndConstants_n310"
#define ENB_CONFIG_STRING_UETIMERS_N311 "ue_TimersAndConstants_n311"
#define ENB_CONFIG_STRING_UE_TRANSMISSION_MODE "ue_TransmissionMode"
<<<<<<< HEAD
=======
#define ENB_CONFIG_STRING_UE_MULTIPLE_MAX "ue_multiple_max"
>>>>>>> main/develop
//TTN - for D2D
//SIB18
......@@ -394,11 +391,7 @@ typedef enum {
#define ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_BUF "DISCRXPOOLPS_ResourceConfig_subframeBitmap_choice_bs_buf"
#define ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_SIZE "DISCRXPOOLPS_ResourceConfig_subframeBitmap_choice_bs_size"
#define ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_ASN_BITS_UNUSED "DISCRXPOOLPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused"
<<<<<<< HEAD
=======
>>>>>>> main/develop
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/* component carriers configuration parameters */
/* optname helpstr paramflags XXXptr defXXXval type numelt */
......@@ -588,10 +581,7 @@ typedef enum {
{ENB_CONFIG_STRING_UETIMERS_N310, NULL, 0, iptr:&ue_TimersAndConstants_n310, defintval:20, TYPE_UINT, 0}, \
{ENB_CONFIG_STRING_UETIMERS_N311, NULL, 0, iptr:&ue_TimersAndConstants_n311, defintval:1, TYPE_UINT, 0}, \
{ENB_CONFIG_STRING_UE_TRANSMISSION_MODE, NULL, 0, iptr:&ue_TransmissionMode, defintval:1, TYPE_UINT, 0}, \
<<<<<<< HEAD
=======
{ENB_CONFIG_STRING_UE_MULTIPLE_MAX, NULL, 0, iptr:&ue_multiple_max, defintval:4, TYPE_UINT, 0}, \
>>>>>>> main/develop
{ENB_CONFIG_STRING_RXPOOL_SC_CP_LEN, NULL, 0, strptr:(char **)&rxPool_sc_CP_Len, defstrval:"normal", TYPE_STRING, 0}, \
{ENB_CONFIG_STRING_RXPOOL_SC_PRIOD, NULL, 0, strptr:(char **)&rxPool_sc_Period, defstrval:"sf40", TYPE_STRING, 0}, \
{ENB_CONFIG_STRING_RXPOOL_DATA_CP_LEN, NULL, 0, strptr:(char **)&rxPool_data_CP_Len, defstrval:"normal", TYPE_STRING, 0}, \
......
......@@ -157,17 +157,10 @@ rlc_buffer_occupancy_t flexran_get_tx_queue_size(mid_t mod_id, mid_t ue_id, logi
frame_t frame = flexran_get_current_frame(mod_id);
sub_frame_t subframe = flexran_get_current_subframe(mod_id);
mac_rlc_status_resp_t rlc_status = mac_rlc_status_ind(mod_id,rnti, mod_id, frame, subframe, ENB_FLAG_YES,MBMS_FLAG_NO, channel_id, 0
<<<<<<< HEAD
#ifdef Rel14
,0,0
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
>>>>>>> main/develop
return rlc_status.bytes_in_buffer;
}
......@@ -177,17 +170,10 @@ rlc_buffer_occupancy_t flexran_get_num_pdus_buffer(mid_t mod_id, mid_t ue_id, lo
frame_t frame = flexran_get_current_frame(mod_id);
sub_frame_t subframe = flexran_get_current_subframe(mod_id);
mac_rlc_status_resp_t rlc_status = mac_rlc_status_ind(mod_id,rnti, mod_id, frame, subframe, ENB_FLAG_YES,MBMS_FLAG_NO, channel_id, 0
<<<<<<< HEAD
#ifdef Rel14
,0,0
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
>>>>>>> main/develop
return rlc_status.pdus_in_buffer;
}
......@@ -197,17 +183,11 @@ frame_t flexran_get_hol_delay(mid_t mod_id, mid_t ue_id, logical_chan_id_t chann
frame_t frame = flexran_get_current_frame(mod_id);
sub_frame_t subframe = flexran_get_current_subframe(mod_id);
mac_rlc_status_resp_t rlc_status = mac_rlc_status_ind(mod_id, rnti, mod_id, frame, subframe, ENB_FLAG_YES, MBMS_FLAG_NO, channel_id, 0
<<<<<<< HEAD
#ifdef Rel14
,0,0
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
>>>>>>> main/develop
return rlc_status.head_sdu_creation_time;
}
......
......@@ -516,12 +516,7 @@ config_sib2(int Mod_idP,
LTE_PRACH_ParametersListCE_r13_t *prach_ParametersListCE_r13 = &ext4_prach->prach_ParametersListCE_r13;
<<<<<<< HEAD
PRACH_ParametersCE_r13_t *p;
=======
LTE_PRACH_ParametersCE_r13_t *p;
>>>>>>> main/develop
cfg->emtc_config.prach_ce_level_0_enable.value = 0;
cfg->emtc_config.prach_ce_level_0_enable.tl.tag=NFAPI_EMTC_CONFIG_PRACH_CE_LEVEL_0_ENABLE_TAG;
cfg->num_tlv++;
......@@ -1031,8 +1026,6 @@ rrc_mac_config_req_eNB(module_id_t Mod_idP,
}
#endif
<<<<<<< HEAD
=======
LOG_D(MAC, "%s() %s:%d RC.mac[Mod_idP]->if_inst->PHY_config_req:%p\n", __FUNCTION__, __FILE__, __LINE__, RC.mac[Mod_idP]->if_inst->PHY_config_req);
......@@ -1047,7 +1040,6 @@ rrc_mac_config_req_eNB(module_id_t Mod_idP,
printf("Waiting for PHY_config_req\n");
}
}
>>>>>>> main/develop
LOG_E(MAC, "%s() %s:%d RC.mac[Mod_idP]->if_inst->PHY_config_req:%p\n", __FUNCTION__, __FILE__, __LINE__, RC.mac[Mod_idP]->if_inst->PHY_config_req);
......@@ -1062,7 +1054,6 @@ rrc_mac_config_req_eNB(module_id_t Mod_idP,
usleep(100 * 1000);
printf("Waiting for PHY_config_req\n");
}
<<<<<<< HEAD
}
if (radioResourceConfigCommon != NULL) {
......@@ -1078,11 +1069,7 @@ rrc_mac_config_req_eNB(module_id_t Mod_idP,
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_RRC_MAC_CONFIG, VCD_FUNCTION_OUT);
}
return(0);
=======
RC.mac[Mod_idP]->scheduler_mode = global_scheduler_mode;
return(0);
>>>>>>> main/develop
}
......@@ -140,22 +140,15 @@ rrc_mac_config_req_ue(module_id_t Mod_idP,
#ifdef CBA
, uint8_t num_active_cba_groups, uint16_t cba_rnti
#endif
<<<<<<< HEAD
#if defined(Rel14)
,config_action_t config_action,
const uint32_t * const sourceL2Id,
const uint32_t * const destinationL2Id,
const uint32_t * const groupL2Id,
SL_Preconfiguration_r12_t *SL_Preconfiguration_r12,
uint32_t directFrameNumber_r12,
long directSubframeNumber_r12,
long *sl_Bandwidth_r12
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,config_action_t config_action
,const uint32_t * const sourceL2Id
,const uint32_t * const destinationL2Id
>>>>>>> main/develop
,const uint32_t * const destinationL2Id,
const uint32_t * const groupL2Id,
SL_Preconfiguration_r12_t *SL_Preconfiguration_r12,
uint32_t directFrameNumber_r12,
long directSubframeNumber_r12,
long *sl_Bandwidth_r12
#endif
)
{
......@@ -251,15 +244,9 @@ rrc_mac_config_req_ue(module_id_t Mod_idP,
LTE_MAC_MainConfig__ul_SCH_Config__maxHARQ_Tx_n5;
}
if(nfapi_mode!=3)
<<<<<<< HEAD
phy_config_harq_ue(Mod_idP, 0, eNB_index,
UE_mac_inst[Mod_idP].
scheduling_info.maxHARQ_Tx);
=======
phy_config_harq_ue(Mod_idP, 0, eNB_index,
UE_mac_inst[Mod_idP].
scheduling_info.maxHARQ_Tx);
>>>>>>> main/develop
if (mac_MainConfig->ul_SCH_Config->retxBSR_Timer) {
UE_mac_inst[Mod_idP].scheduling_info.retxBSR_Timer =
......@@ -377,15 +364,9 @@ rrc_mac_config_req_ue(module_id_t Mod_idP,
if (physicalConfigDedicated != NULL) {
<<<<<<< HEAD
if(nfapi_mode!=3)
phy_config_dedicated_ue(Mod_idP, 0, eNB_index,
physicalConfigDedicated);
=======
if(nfapi_mode!=3)
phy_config_dedicated_ue(Mod_idP, 0, eNB_index,
physicalConfigDedicated);
>>>>>>> main/develop
UE_mac_inst[Mod_idP].physicalConfigDedicated = physicalConfigDedicated; // for SR proc
}
#if (LTE_RRC_VERSION >= MAKE_VERSION(10, 0, 0))
......@@ -466,15 +447,9 @@ rrc_mac_config_req_ue(module_id_t Mod_idP,
sizeof(LTE_PUSCH_ConfigCommon_t));
if (mobilityControlInfo->radioResourceConfigCommon.phich_Config) {
<<<<<<< HEAD
// memcpy((void *)&UE_mac_inst[Mod_idP].radioResourceConfigCommon->phich_Config,
//(void *)mobilityControlInfo->radioResourceConfigCommon.phich_Config,
//sizeof(PHICH_Config_t));
=======
/* memcpy((void *)&UE_mac_inst[Mod_idP].radioResourceConfigCommon->phich_Config,
(void *)mobilityControlInfo->radioResourceConfigCommon.phich_Config,
sizeof(LTE_PHICH_Config_t)); */
>>>>>>> main/develop
}
if (mobilityControlInfo->radioResourceConfigCommon.
......
This diff is collapsed.
......@@ -175,11 +175,7 @@ add_msg3(module_id_t module_idP, int CC_id, RA_t * ra, frame_t frameP,
module_idP, frameP, subframeP, CC_id, ra->Msg3_frame,
ra->Msg3_subframe);
<<<<<<< HEAD
LOG_I(MAC,
=======
LOG_D(MAC,
>>>>>>> main/develop
"Frame %d, Subframe %d Adding Msg3 UL Config Request for (%d,%d) : (%d,%d,%d) for rnti: %d\n",
frameP, subframeP, ra->Msg3_frame, ra->Msg3_subframe,
ra->msg3_nb_rb, ra->msg3_first_rb, ra->msg3_round, ra->rnti);
......@@ -1018,11 +1014,7 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP,
#endif
{
// This is normal LTE case
<<<<<<< HEAD
LOG_I(MAC, "Generate_Msg4 1 ra->Msg4_frame SFN/SF: %d.%d, frameP SFN/SF: %d.%d FOR eNB_Mod: %d \n", ra->Msg4_frame, ra->Msg4_subframe, frameP, subframeP, module_idP);
=======
LOG_D(MAC, "generate_Msg4 1 ra->Msg4_frame SFN/SF: %d.%d, frameP SFN/SF: %d.%d FOR eNB_Mod: %d \n", ra->Msg4_frame, ra->Msg4_subframe, frameP, subframeP, module_idP);
>>>>>>> main/develop
if ((ra->Msg4_frame == frameP) && (ra->Msg4_subframe == subframeP)) {
// Get RRCConnectionSetup for Piggyback
......@@ -1039,11 +1031,6 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP,
AssertFatal(rrc_sdu_length > 0,
"[MAC][eNB Scheduler] CCCH not allocated, rrc_sdu_length: %d\n", rrc_sdu_length);
<<<<<<< HEAD
=======
>>>>>>> main/develop
LOG_D(MAC,
"[eNB %d][RAPROC] CC_id %d Frame %d, subframeP %d: Generating Msg4 with RRC Piggyback (RNTI %x)\n",
module_idP, CC_idP, frameP, subframeP, ra->rnti);
......@@ -1295,11 +1282,7 @@ check_Msg4_retransmission(module_id_t module_idP, int CC_idP,
dl_config_pdu = &dl_req_body->dl_config_pdu_list[dl_req_body->number_pdu];
N_RB_DL = to_prb(cc[CC_idP].mib->message.dl_Bandwidth);
<<<<<<< HEAD
LOG_I(MAC,
=======
LOG_D(MAC,
>>>>>>> main/develop
"[eNB %d][RAPROC] CC_id %d Frame %d, subframeP %d: Checking if Msg4 for harq_pid %d was acknowledged (round %d), UE_id: %d \n",
module_idP, CC_idP, frameP, subframeP, ra->harq_pid, round, UE_id);
......@@ -1350,11 +1333,7 @@ check_Msg4_retransmission(module_id_t module_idP, int CC_idP,
ra->rnti, round, frameP, subframeP);
// DLSCH Config
//DJP - fix this pdu_index = -1
<<<<<<< HEAD
LOG_I(MAC, "Panos:D: check_Msg4_retransmission() before fill_nfapi_dlsch_config() with pdu_index = -1 \n");
=======
LOG_D(MAC, "check_Msg4_retransmission() before fill_nfapi_dlsch_config() with pdu_index = -1 \n");
>>>>>>> main/develop
fill_nfapi_dlsch_config(mac, dl_req_body, ra->msg4_TBsize,
-1
/* retransmission, no pdu_index */
......
......@@ -866,21 +866,12 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
if (TBS - ta_len - header_length_total - sdu_length_total - 3 > 0) {
rlc_status = mac_rlc_status_ind(module_idP, rnti, module_idP, frameP, subframeP, ENB_FLAG_YES, MBMS_FLAG_NO, DCCH,
TBS - ta_len - header_length_total - sdu_length_total - 3
<<<<<<< HEAD
#ifdef Rel14
,0, 0
#endif
);
sdu_lengths[0] = 0;
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
sdu_lengths[0] = 0;
>>>>>>> main/develop
if (rlc_status.bytes_in_buffer > 0) {
LOG_D(MAC, "[eNB %d] SFN/SF %d.%d, DL-DCCH->DLSCH CC_id %d, Requesting %d bytes from RLC (RRC message)\n",
......@@ -890,21 +881,11 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
sdu_lengths[0] = mac_rlc_data_req(module_idP, rnti, module_idP, frameP, ENB_FLAG_YES, MBMS_FLAG_NO, DCCH,
TBS, //not used
(char *)&dlsch_buffer[0]
<<<<<<< HEAD
#ifdef Rel14
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
>>>>>>> main/develop
,0, 0
#endif
);
<<<<<<< HEAD
T(T_ENB_MAC_UE_DL_SDU, T_INT(module_idP),
T_INT(CC_id), T_INT(rnti), T_INT(frameP),
T_INT(subframeP), T_INT(harq_pid), T_INT(DCCH),
T_INT(sdu_lengths[0]));
=======
pthread_mutex_lock(&rrc_release_freelist);
if((rrc_release_info.num_UEs > 0) && (rlc_am_mui.rrc_mui_num > 0)){
uint16_t release_total = 0;
......@@ -960,7 +941,6 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
T_INT(CC_id), T_INT(rnti), T_INT(frameP),
T_INT(subframeP), T_INT(harq_pid), T_INT(DCCH),
T_INT(sdu_lengths[0]));
>>>>>>> main/develop
LOG_D(MAC, "[eNB %d][DCCH] CC_id %d Got %d bytes from RLC\n",
module_idP, CC_id, sdu_lengths[0]);
......@@ -995,17 +975,10 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
if (TBS - ta_len - header_length_total - sdu_length_total - 3 > 0) {
rlc_status = mac_rlc_status_ind(module_idP, rnti, module_idP, frameP, subframeP, ENB_FLAG_YES, MBMS_FLAG_NO, DCCH + 1,
TBS - ta_len - header_length_total - sdu_length_total - 3
<<<<<<< HEAD
#ifdef Rel14
,0, 0
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
>>>>>>> main/develop
// DCCH SDU
sdu_lengths[num_sdus] = 0;
......@@ -1018,11 +991,7 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
sdu_lengths[num_sdus] += mac_rlc_data_req(module_idP, rnti, module_idP, frameP, ENB_FLAG_YES, MBMS_FLAG_NO, DCCH + 1,
TBS, //not used
(char *)&dlsch_buffer[sdu_length_total]
<<<<<<< HEAD
#ifdef Rel14
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
>>>>>>> main/develop
,0, 0
#endif
);
......@@ -1077,17 +1046,10 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
MBMS_FLAG_NO,
lcid,
TBS - ta_len - header_length_total - sdu_length_total - 3
<<<<<<< HEAD
#ifdef Rel14
,0, 0
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,0, 0
#endif
);
>>>>>>> main/develop
......@@ -1102,11 +1064,7 @@ schedule_ue_spec(module_id_t module_idP, int slice_idxP,
sdu_lengths[num_sdus] = mac_rlc_data_req(module_idP, rnti, module_idP, frameP, ENB_FLAG_YES, MBMS_FLAG_NO, lcid,
TBS, //not used
(char *)&dlsch_buffer[sdu_length_total]
<<<<<<< HEAD
#ifdef Rel14
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
>>>>>>> main/develop
,0, 0
#endif
);
......
......@@ -633,11 +633,7 @@ schedule_MBMS(module_id_t module_idP, uint8_t CC_id, frame_t frameP,
MTCH,
TBS - header_len_mcch - header_len_msi -
sdu_length_total - header_len_mtch
<<<<<<< HEAD
#ifdef Rel14
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
>>>>>>> main/develop
,0, 0
#endif
);
......@@ -656,22 +652,13 @@ schedule_MBMS(module_id_t module_idP, uint8_t CC_id, frame_t frameP,
sdu_lengths[num_sdus] = mac_rlc_data_req(module_idP, 0, module_idP, frameP, ENB_FLAG_YES, MBMS_FLAG_YES, MTCH, 0, //not used
(char *)
&mch_buffer[sdu_length_total]
<<<<<<< HEAD
#ifdef Rel14
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
>>>>>>> main/develop
,0,
0
#endif
);
<<<<<<< HEAD
//sdu_lengths[num_sdus] = mac_rlc_data_req(module_idP,frameP, MBMS_FLAG_NO, MTCH+(MAX_NUM_RB*(NUMBER_OF_UE_MAX+1)), (char*)&mch_buffer[sdu_length_total]);
=======
//sdu_lengths[num_sdus] = mac_rlc_data_req(module_idP,frameP, MBMS_FLAG_NO, MTCH+(MAX_NUM_RB*(MAX_MOBILES_PER_ENB+1)), (char*)&mch_buffer[sdu_length_total]);
>>>>>>> main/develop
LOG_I(MAC,
"[eNB %d][MBMS USER-PLANE] CC_id %d Got %d bytes for MTCH %d\n",
module_idP, CC_id, sdu_lengths[num_sdus], MTCH);
......
......@@ -602,15 +602,6 @@ rx_sdu(const module_id_t enb_mod_idP,
// prepare transmission of Msg4
ra->state = MSG4;
<<<<<<< HEAD
// Program Msg4 PDCCH+DLSCH/MPDCCH transmission 4 subframes from now, // Check if this is ok for BL/CE, or if the rule is different
ra->Msg4_frame = frameP + ((subframeP > 5) ? 1 : 0);
ra->Msg4_subframe = (subframeP + 4) % 10;
LOG_D(MAC, " Received Msg4, SFN/SF:%d.%d \n", ra->Msg4_frame, ra->Msg4_subframe);
=======
if(mac->common_channels[CC_idP].tdd_Config!=NULL){
switch(mac->common_channels[CC_idP].tdd_Config->subframeAssignment){
case 1:
......@@ -625,7 +616,6 @@ rx_sdu(const module_id_t enb_mod_idP,
ra->Msg4_frame = frameP + ((subframeP > 5) ? 1 : 0);
ra->Msg4_subframe = (subframeP + 4) % 10;
}
>>>>>>> main/develop
UE_list->UE_sched_ctrl[UE_id].crnti_reconfigurationcomplete_flag = 0;
} // if process is active
......
This diff is collapsed.
......@@ -550,11 +550,7 @@ void ue_send_sl_sdu(module_id_t module_idP,
sl_discovery_flag_t sl_discovery_flag
);
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
#if defined(Rel10) || defined(Rel14)
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(10, 0, 0))
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
/* \brief Called by PHY to transfer MCH transport block to ue MAC.
@param Mod_id Index of module instance
@param frame Frame index
......@@ -592,11 +588,7 @@ void ue_get_sdu(module_id_t module_idP, int CC_id, frame_t frameP,
uint8_t * ulsch_buffer, uint16_t buflen,
uint8_t * access_mode);
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
/* \brief Called by PHY to get sdu for PSBCH/SSS/PSS transmission.
=======
/* \brief Called by PHY to get sdu for PSBCH/SSS/PSS transmission.
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
@param Mod_id Instance id of UE in machine
@param frame_tx TX frame index
@param subframe_tx TX subframe index
......@@ -604,11 +596,7 @@ void ue_get_sdu(module_id_t module_idP, int CC_id, frame_t frameP,
*/
SLSS_t *ue_get_slss(module_id_t module_idP, int CC_id,frame_t frameP, sub_frame_t subframe);
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
/* \brief Called by PHY to get sdu for PSDCH transmission.
=======
/* \brief Called by PHY to get sdu for PSDCH transmission.
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
@param Mod_id Instance id of UE in machine
@param frame_tx TX frame index
@param subframe_tx TX subframe index
......@@ -616,21 +604,13 @@ SLSS_t *ue_get_slss(module_id_t module_idP, int CC_id,frame_t frameP, sub_frame_
*/
SLDCH_t *ue_get_sldch(module_id_t module_idP, int CC_id,frame_t frameP, sub_frame_t subframe);
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
/* \brief Called by PHY to get sdu for PSSCH transmission.
=======
/* \brief Called by PHY to get sdu for PSSCH transmission.
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
@param Mod_id Instance id of UE in machine
@param frame_tx TX frame index
@param subframe_tx TX subframe index
@returns pointer to SLSCH_t descriptor
*/
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
SLSCH_t *ue_get_slsch(module_id_t module_idP, int CC_id,frame_t frameP, sub_frame_t subframe, int slsch_test);
=======
SLSCH_t *ue_get_slsch(module_id_t module_idP, int CC_id,frame_t frameP, sub_frame_t subframe);
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
/* \brief Function called by PHY to retrieve information to be transmitted using the RA procedure. If the UE is not in PUSCH mode for a particular eNB index, this is assumed to be an Msg3 and MAC attempts to retrieves the CCCH message from RRC. If the UE is in PUSCH mode for a particular eNB index and PUCCH format 0 (Scheduling Request) is not activated, the MAC may use this resource for random-access to transmit a BSR along with the C-RNTI control element (see 5.1.4 from 36.321)
@param Mod_id Index of UE instance
......@@ -1077,27 +1057,18 @@ int rrc_mac_config_req_ue(module_id_t module_idP,
,
uint8_t num_active_cba_groups, uint16_t cba_rnti
#endif
<<<<<<< HEAD:openair2/LAYER2/MAC/proto.h
#if defined(Rel14)
,config_action_t config_action,
const uint32_t * const sourceL2Id,
const uint32_t * const destinationL2Id,
const uint32_t * const groupL2Id,
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,config_action_t config_action
,const uint32_t * const sourceL2Id
,const uint32_t * const destinationL2Id,
const uint32_t * const groupL2Id,
SL_Preconfiguration_r12_t *SL_Preconfiguration_r12_t,
uint32_t directFrame_r12,
long directSubframe_r12,
long *sl_Bandwidth_r12
#endif
);
=======
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
,config_action_t config_action
,const uint32_t * const sourceL2Id
,const uint32_t * const destinationL2Id
#endif
);
>>>>>>> main/develop:openair2/LAYER2/MAC/mac_proto.h
uint16_t getRIV(uint16_t N_RB_DL, uint16_t RBstart, uint16_t Lcrbs);
......
......@@ -105,50 +105,7 @@ store_dlsch_buffer(module_id_t Mod_id,
if (!ue_dl_slice_membership(Mod_id, UE_id, slice_idx))
continue;
<<<<<<< HEAD
UE_template =
&UE_list->UE_template[UE_PCCID(Mod_id, UE_id)][UE_id];
// clear logical channel interface variables
UE_template->dl_buffer_total = 0;
UE_template->dl_pdus_total = 0;
for (i = 0; i < MAX_NUM_LCID; i++) {
UE_template->dl_buffer_info[i] = 0;
UE_template->dl_pdus_in_buffer[i] = 0;
UE_template->dl_buffer_head_sdu_creation_time[i] = 0;
UE_template->dl_buffer_head_sdu_remaining_size_to_send[i] = 0;
}
rnti = UE_RNTI(Mod_id, UE_id);
for (i = 0; i < MAX_NUM_LCID; i++) { // loop over all the logical channels
rlc_status =
mac_rlc_status_ind(Mod_id, rnti, Mod_id, frameP, subframeP,
ENB_FLAG_YES, MBMS_FLAG_NO, i, 0
#ifdef Rel14
,0, 0
#endif
);
UE_template->dl_buffer_info[i] = rlc_status.bytes_in_buffer; //storing the dlsch buffer for each logical channel
UE_template->dl_pdus_in_buffer[i] = rlc_status.pdus_in_buffer;
UE_template->dl_buffer_head_sdu_creation_time[i] =
rlc_status.head_sdu_creation_time;
UE_template->dl_buffer_head_sdu_creation_time_max =
cmax(UE_template->dl_buffer_head_sdu_creation_time_max,
rlc_status.head_sdu_creation_time);
UE_template->dl_buffer_head_sdu_remaining_size_to_send[i] =
rlc_status.head_sdu_remaining_size_to_send;
UE_template->dl_buffer_head_sdu_is_segmented[i] =
rlc_status.head_sdu_is_segmented;
UE_template->dl_buffer_total += UE_template->dl_buffer_info[i]; //storing the total dlsch buffer
UE_template->dl_pdus_total +=
UE_template->dl_pdus_in_buffer[i];
=======
UE_template = &UE_list->UE_template[UE_PCCID(Mod_id, UE_id)][UE_id];
>>>>>>> main/develop
// clear logical channel interface variables
UE_template->dl_buffer_total = 0;
......@@ -232,100 +189,6 @@ assign_rbs_required(module_id_t Mod_id,
eNB_UE_STATS *eNB_UE_stats, *eNB_UE_stats_i, *eNB_UE_stats_j;
int N_RB_DL;
<<<<<<< HEAD
// clear rb allocations across all CC_id
for (UE_id = 0; UE_id < NUMBER_OF_UE_MAX; UE_id++) {
if (UE_list->active[UE_id] != TRUE)
continue;
if (!ue_slice_membership(UE_id, slice_id))
continue;
pCCid = UE_PCCID(Mod_id, UE_id);
//update CQI information across component carriers
for (n = 0; n < UE_list->numactiveCCs[UE_id]; n++) {
CC_id = UE_list->ordered_CCids[n][UE_id];
eNB_UE_stats = &UE_list->eNB_UE_stats[CC_id][UE_id];
eNB_UE_stats->dlsch_mcs1 =cmin(cqi_to_mcs[UE_list->UE_sched_ctrl[UE_id].dl_cqi[CC_id]],
slice_maxmcs[slice_id]);
}
// provide the list of CCs sorted according to MCS
for (i = 0; i < UE_list->numactiveCCs[UE_id]; i++) {
eNB_UE_stats_i =
&UE_list->eNB_UE_stats[UE_list->
ordered_CCids[i][UE_id]][UE_id];
for (j = i + 1; j < UE_list->numactiveCCs[UE_id]; j++) {
DevAssert(j < MAX_NUM_CCs);
eNB_UE_stats_j =
&UE_list->
eNB_UE_stats[UE_list->ordered_CCids[j][UE_id]][UE_id];
if (eNB_UE_stats_j->dlsch_mcs1 >
eNB_UE_stats_i->dlsch_mcs1) {
tmp = UE_list->ordered_CCids[i][UE_id];
UE_list->ordered_CCids[i][UE_id] =
UE_list->ordered_CCids[j][UE_id];
UE_list->ordered_CCids[j][UE_id] = tmp;
}
}
}
if (UE_list->UE_template[pCCid][UE_id].dl_buffer_total > 0) {
LOG_D(MAC, "[preprocessor] assign RB for UE %d\n", UE_id);
for (i = 0; i < UE_list->numactiveCCs[UE_id]; i++) {
CC_id = UE_list->ordered_CCids[i][UE_id];
eNB_UE_stats = &UE_list->eNB_UE_stats[CC_id][UE_id];
if (eNB_UE_stats->dlsch_mcs1 == 0) {
nb_rbs_required[CC_id][UE_id] = 4; // don't let the TBS get too small
} else {
nb_rbs_required[CC_id][UE_id] = min_rb_unit[CC_id];
}
TBS =
get_TBS_DL(eNB_UE_stats->dlsch_mcs1,
nb_rbs_required[CC_id][UE_id]);
LOG_D(MAC,
"[preprocessor] start RB assignement for UE %d CC_id %d dl buffer %d (RB unit %d, MCS %d, TBS %d) \n",
UE_id, CC_id,
UE_list->UE_template[pCCid][UE_id].dl_buffer_total,
nb_rbs_required[CC_id][UE_id],
eNB_UE_stats->dlsch_mcs1, TBS);
N_RB_DL =
to_prb(RC.mac[Mod_id]->common_channels[CC_id].
mib->message.dl_Bandwidth);
UE_list->UE_sched_ctrl[UE_id].max_rbs_allowed_slice[CC_id][slice_id]= flexran_nb_rbs_allowed_slice(slice_percentage[slice_id],N_RB_DL);
/* calculating required number of RBs for each UE */
while (TBS <
UE_list->UE_template[pCCid][UE_id].
dl_buffer_total) {
nb_rbs_required[CC_id][UE_id] += min_rb_unit[CC_id];
if (nb_rbs_required[CC_id][UE_id] > UE_list->UE_sched_ctrl[UE_id].max_rbs_allowed_slice[CC_id][slice_id]) {
TBS = get_TBS_DL(eNB_UE_stats->dlsch_mcs1, UE_list->UE_sched_ctrl[UE_id].max_rbs_allowed_slice[CC_id][slice_id]);
nb_rbs_required[CC_id][UE_id] = UE_list->UE_sched_ctrl[UE_id].max_rbs_allowed_slice[CC_id][slice_id];
break;
}
TBS =
get_TBS_DL(eNB_UE_stats->dlsch_mcs1,
nb_rbs_required[CC_id][UE_id]);
} // end of while
LOG_D(MAC,
"[eNB %d] Frame %d: UE %d on CC %d: RB unit %d, nb_required RB %d (TBS %d, mcs %d)\n",
Mod_id, frameP, UE_id, CC_id, min_rb_unit[CC_id],
nb_rbs_required[CC_id][UE_id], TBS,
eNB_UE_stats->dlsch_mcs1);
}
}
=======
// clear rb allocations across all CC_id
for (UE_id = 0; UE_id < MAX_MOBILES_PER_ENB; UE_id++) {
if (UE_list->active[UE_id] != TRUE) continue;
......@@ -403,7 +266,6 @@ assign_rbs_required(module_id_t Mod_id,
sli->pre_processor_results[slice_idx].mcs[CC_id][UE_id] = eNB_UE_stats->dlsch_mcs1;
}
>>>>>>> main/develop
}
}
}
......@@ -1505,16 +1367,11 @@ dlsch_scheduler_pre_processor_reset(module_id_t module_idP,
ue_sched_ctl = &UE_list->UE_sched_ctrl[UE_id];
rnti = UE_RNTI(module_idP, UE_id);
<<<<<<< HEAD
if (ue_sched_ctl->ta_timer == 0) {
=======
if (rnti == NOT_A_RNTI)
continue;
if (UE_list->active[UE_id] != TRUE)
continue;
>>>>>>> main/develop
if (!ue_dl_slice_membership(module_idP, UE_id, slice_idx))
continue;
......
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