From fa5d2f5e22b6a0a68140b92a71fd9a722a4ae2f0 Mon Sep 17 00:00:00 2001 From: Lionel Gauthier <lionel.gauthier@eurecom.fr> Date: Thu, 28 May 2015 13:08:53 +0000 Subject: [PATCH] Add subframe in some proc calls git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7480 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- openair1/SCHED/phy_procedures_lte_eNb.c | 6 +- openair2/COMMON/commonDef.h | 57 +++++++++++++++++++ openair2/COMMON/mac_messages_types.h | 4 ++ openair2/LAYER2/MAC/eNB_scheduler_ulsch.c | 14 +++-- openair2/LAYER2/MAC/proto.h | 2 +- openair2/LAYER2/MAC/rar_tools.c | 4 +- openair2/LAYER2/MAC/ue_procedures.c | 18 +++--- openair2/PHY_INTERFACE/defs.h | 2 +- .../L2_INTERFACE/openair_rrc_L2_interface.c | 3 +- .../L2_INTERFACE/openair_rrc_L2_interface.h | 1 + openair2/RRC/LITE/L2_interface.c | 25 ++++---- openair2/RRC/LITE/proto.h | 1 + 12 files changed, 102 insertions(+), 35 deletions(-) diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c index ed6737a884..b3cf48c5a6 100755 --- a/openair1/SCHED/phy_procedures_lte_eNb.c +++ b/openair1/SCHED/phy_procedures_lte_eNb.c @@ -3639,7 +3639,7 @@ void phy_procedures_eNB_RX(const unsigned char sched_subframe,PHY_VARS_eNB *phy_ #endif mac_xface->rx_sdu(phy_vars_eNB->Mod_id, phy_vars_eNB->CC_id, - frame, + frame,subframe, phy_vars_eNB->ulsch_eNB[i]->rnti, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->b, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->TBS>>3, @@ -3717,7 +3717,7 @@ void phy_procedures_eNB_RX(const unsigned char sched_subframe,PHY_VARS_eNB *phy_ // if (phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->calibration_flag == 0) { mac_xface->rx_sdu(phy_vars_eNB->Mod_id, phy_vars_eNB->CC_id, - frame, + frame,subframe, phy_vars_eNB->ulsch_eNB[i]->rnti, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->b, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->TBS>>3, @@ -4207,7 +4207,7 @@ void phy_procedures_eNB_RX(const unsigned char sched_subframe,PHY_VARS_eNB *phy_ if (phy_vars_eNB->cba_last_reception[i%num_active_cba_groups] == 0 ) { mac_xface->rx_sdu(phy_vars_eNB->Mod_id, phy_vars_eNB->CC_id, - frame, + frame,subframe, phy_vars_eNB->ulsch_eNB[i]->rnti, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->b, phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->TBS>>3, diff --git a/openair2/COMMON/commonDef.h b/openair2/COMMON/commonDef.h index d3efb9bb07..5c094d10fc 100644 --- a/openair2/COMMON/commonDef.h +++ b/openair2/COMMON/commonDef.h @@ -136,6 +136,32 @@ typedef struct { } u; } imsi_t; +#define NAS_IMSI2STR(iMsI_t_PtR,iMsI_sTr, MaXlEn) \ + {\ + int l_offset = 0;\ + int l_ret = 0;\ + l_ret = snprintf(iMsI_sTr + l_offset, MaXlEn - l_offset, "%u%u%u%u%u",\ + iMsI_t_PtR->u.num.digit1, iMsI_t_PtR->u.num.digit2,\ + iMsI_t_PtR->u.num.digit3, iMsI_t_PtR->u.num.digit4,\ + iMsI_t_PtR->u.num.digit5);\ + if ((iMsI_t_PtR->u.num.digit6 != 0xf) && (l_ret > 0)) {\ + l_offset += l_ret;\ + l_ret = snprintf(iMsI_sTr + l_offset, MaXlEn - l_offset, "%u", iMsI_t_PtR->u.num.digit6);\ + }\ + if (l_ret > 0) {\ + l_offset += l_ret;\ + l_ret = snprintf(iMsI_sTr + l_offset, MaXlEn - l_offset, "%u%u%u%u%u%u%u%u",\ + iMsI_t_PtR->u.num.digit7, iMsI_t_PtR->u.num.digit8,\ + iMsI_t_PtR->u.num.digit9, iMsI_t_PtR->u.num.digit10,\ + iMsI_t_PtR->u.num.digit11, iMsI_t_PtR->u.num.digit12,\ + iMsI_t_PtR->u.num.digit13, iMsI_t_PtR->u.num.digit14);\ + }\ + if ((iMsI_t_PtR->u.num.digit15 != 0xf) && (l_ret > 0)) {\ + l_offset += l_ret;\ + l_ret = snprintf(iMsI_sTr + l_offset, MaXlEn - l_offset, "%u", iMsI_t_PtR->u.num.digit15);\ + }\ + } + /* * Mobile subscriber dialing number */ @@ -230,6 +256,37 @@ typedef struct { UInt32_t m_tmsi; /* M-Temporary Mobile Subscriber Identity */ } GUTI_t; +#define GUTI2STR(GuTi_PtR, GuTi_StR, MaXlEn) \ + {\ + int l_offset = 0;\ + int l_ret = 0;\ + l_ret += snprintf(GuTi_StR + l_offset,MaXlEn-l_offset, "%03u.",\ + GuTi_PtR->gummei.plmn.MCCdigit3 * 100 +\ + GuTi_PtR->gummei.plmn.MCCdigit2 * 10 +\ + GuTi_PtR->gummei.plmn.MCCdigit1);\ + if (l_ret > 0) {\ + l_offset += l_ret;\ + } else {\ + l_offset = MaXlEn;\ + }\ + if (GuTi_PtR->gummei.plmn.MNCdigit1 != 0xf) {\ + l_ret += snprintf(GuTi_StR + l_offset,MaXlEn-l_offset, "%03u|%04x|%02x|%08x",\ + GuTi_PtR->gummei.plmn.MNCdigit3 * 100 +\ + GuTi_PtR->gummei.plmn.MNCdigit2 * 10 +\ + GuTi_PtR->gummei.plmn.MNCdigit1,\ + GuTi_PtR->gummei.MMEgid,\ + GuTi_PtR->gummei.MMEcode,\ + GuTi_PtR->m_tmsi);\ + } else {\ + l_ret += snprintf(GuTi_StR + l_offset,MaXlEn-l_offset, "%02u|%04x|%02x|%08x",\ + GuTi_PtR->gummei.plmn.MNCdigit2 * 10 +\ + GuTi_PtR->gummei.plmn.MNCdigit1,\ + GuTi_PtR->gummei.MMEgid,\ + GuTi_PtR->gummei.MMEcode,\ + GuTi_PtR->m_tmsi);\ + } + + /* Checks PLMN validity */ #define PLMN_IS_VALID(plmn) (((plmn).MCCdigit1 & \ (plmn).MCCdigit2 & \ diff --git a/openair2/COMMON/mac_messages_types.h b/openair2/COMMON/mac_messages_types.h index 9de402edb5..9b8bac373f 100644 --- a/openair2/COMMON/mac_messages_types.h +++ b/openair2/COMMON/mac_messages_types.h @@ -61,6 +61,7 @@ // Messages between RRC and MAC layers typedef struct RrcMacInSyncInd_s { uint32_t frame; + uint8_t sub_frame; uint16_t enb_index; } RrcMacInSyncInd; @@ -75,6 +76,7 @@ typedef struct RrcMacBcchDataReq_s { typedef struct RrcMacBcchDataInd_s { uint32_t frame; + uint8_t sub_frame; uint32_t sdu_size; uint8_t sdu[BCCH_SDU_SIZE]; uint8_t enb_index; @@ -95,6 +97,7 @@ typedef struct RrcMacCcchDataCnf_s { typedef struct RrcMacCcchDataInd_s { uint32_t frame; + uint8_t sub_frame; uint16_t rnti; uint32_t sdu_size; uint8_t sdu[CCCH_SDU_SIZE]; @@ -112,6 +115,7 @@ typedef struct RrcMacMcchDataReq_s { typedef struct RrcMacMcchDataInd_s { uint32_t frame; + uint8_t sub_frame; uint32_t sdu_size; uint8_t sdu[MCCH_SDU_SIZE]; uint8_t enb_index; diff --git a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c index 0191317e6e..a70a7eae9b 100644 --- a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c +++ b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c @@ -73,6 +73,7 @@ void rx_sdu( const module_id_t enb_mod_idP, const int CC_idP, const frame_t frameP, + const sub_frame_t subframeP, const rnti_t rntiP, uint8_t *sduP, const uint16_t sdu_lenP, @@ -96,8 +97,14 @@ void rx_sdu( } VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_RX_SDU,1); + if (opt_enabled == 1) { + trace_pdu(0, sduP,sdu_lenP, 0, 2, rntiP,frameP, 0,0); + LOG_D(OPT,"[eNB %d][ULSCH] Frame %d rnti %x with size %d\n", + enb_mod_idP, frameP, rntiP, rx_lengths[ii]); + } LOG_D(MAC,"[eNB %d] CC_id %d Received ULSCH sdu from PHY (rnti %x, UE_id %d), parsing header\n",enb_mod_idP,CC_idP,rntiP,UE_id); + payload_ptr = parse_ulsch_header(sduP,&num_ce,&num_sdu,rx_ces,rx_lcids,rx_lengths,sdu_lenP); // control element @@ -230,7 +237,7 @@ void rx_sdu( mac_rrc_data_ind( enb_mod_idP, CC_idP, - frameP, + frameP,subframeP, rntiP, CCCH, (uint8_t*)payload_ptr, @@ -247,9 +254,7 @@ void rx_sdu( eNB->common_channels[CC_idP].RA_template[ii].generate_Msg4 = 1; eNB->common_channels[CC_idP].RA_template[ii].wait_ack_Msg4 = 0; - } // if process is active - } // loop on RA processes break; @@ -276,7 +281,7 @@ void rx_sdu( mac_rlc_data_ind( enb_mod_idP, rntiP, - enb_mod_idP, + enb_mod_idP, frameP, ENB_FLAG_YES, MBMS_FLAG_NO, @@ -287,7 +292,6 @@ void rx_sdu( NULL);//(unsigned int*)crc_status); UE_list->eNB_UE_stats[CC_idP][UE_id].num_pdu_rx[rx_lcids[i]]+=1; UE_list->eNB_UE_stats[CC_idP][UE_id].num_bytes_rx[rx_lcids[i]]+=rx_lengths[i]; - } // } diff --git a/openair2/LAYER2/MAC/proto.h b/openair2/LAYER2/MAC/proto.h index ed6b168300..c9a00e09fe 100644 --- a/openair2/LAYER2/MAC/proto.h +++ b/openair2/LAYER2/MAC/proto.h @@ -275,7 +275,7 @@ void cancel_ra_proc(module_id_t module_idP,int CC_id,frame_t frameP, uint16_t pr @param harq_pid Index of harq process corresponding to this sdu @param msg3_flag flag indicating that this sdu is msg3 */ -void rx_sdu(const module_id_t module_idP, const int CC_id,const frame_t frameP, const rnti_t rnti, uint8_t *sdu, const uint16_t sdu_len, const int harq_pid,uint8_t *msg3_flag); +void rx_sdu(const module_id_t module_idP, const int CC_id,const frame_t frameP, const sub_frame_t subframeP, const rnti_t rnti, uint8_t *sdu, const uint16_t sdu_len, const int harq_pid,uint8_t *msg3_flag); /* \brief Function to indicate a scheduled schduling request (SR) was received by eNB. @param Mod_id Instance ID of eNB diff --git a/openair2/LAYER2/MAC/rar_tools.c b/openair2/LAYER2/MAC/rar_tools.c index 3b960c2cca..fb6dc870e6 100644 --- a/openair2/LAYER2/MAC/rar_tools.c +++ b/openair2/LAYER2/MAC/rar_tools.c @@ -123,9 +123,8 @@ unsigned short fill_rar( eNB_mac_inst[module_idP].common_channels[CC_id].RA_template[ra_idx].rnti, rarh->RAPID,eNB_mac_inst[module_idP].common_channels[CC_id].RA_template[0].preamble_index, eNB_mac_inst[module_idP].common_channels[CC_id].RA_template[ra_idx].timing_offset); -#if defined(USER_MODE) && defined(OAI_EMU) - if (oai_emulation.info.opt_enabled) { + if (opt_enabled) { trace_pdu(1, dlsch_buffer, input_buffer_length, module_idP, 2, 1, eNB_mac_inst[module_idP].subframe, 0, 0); LOG_D(OPT,"[eNB %d][RAPROC] CC_id %d RAR Frame %d trace pdu for rnti %x and rapid %d size %d\n", @@ -133,7 +132,6 @@ unsigned short fill_rar( rarh->RAPID, input_buffer_length); } -#endif return(eNB_mac_inst[module_idP].common_channels[CC_id].RA_template[ra_idx].rnti); } diff --git a/openair2/LAYER2/MAC/ue_procedures.c b/openair2/LAYER2/MAC/ue_procedures.c index 053d78052c..ceaa663537 100644 --- a/openair2/LAYER2/MAC/ue_procedures.c +++ b/openair2/LAYER2/MAC/ue_procedures.c @@ -322,14 +322,12 @@ ue_send_sdu( VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_UE_SEND_SDU, VCD_FUNCTION_IN); LOG_T(MAC,"sdu: %x.%x.%x\n",sdu[0],sdu[1],sdu[2]); -#if defined(USER_MODE) && defined(OAI_EMU) - if (oai_emulation.info.opt_enabled) { + if (opt_enabled) { trace_pdu(1, sdu, sdu_len, module_idP, 3, UE_mac_inst[module_idP].crnti, UE_mac_inst[module_idP].subframe, 0, 0); } -#endif payload_ptr = parse_header(sdu,&num_ce,&num_sdu,rx_ces,rx_lcids,rx_lengths,sdu_len); #ifdef DEBUG_HEADER_PARSING @@ -422,7 +420,7 @@ ue_send_sdu( #endif mac_rrc_data_ind(module_idP, CC_id, - frameP, + frameP,0, // unknown subframe UE_mac_inst[module_idP].crnti, CCCH, (uint8_t*)payload_ptr, @@ -500,7 +498,7 @@ void ue_decode_si(module_id_t module_idP,int CC_id,frame_t frameP, uint8_t eNB_i mac_rrc_data_ind(module_idP, CC_id, - frameP, + frameP,0, // unknown subframe SI_RNTI, BCCH, (uint8_t *)pdu, @@ -593,7 +591,7 @@ void ue_send_mch_sdu(module_id_t module_idP, uint8_t CC_id, frame_t frameP, uint LOG_I(MAC,"[UE %d] Frame %d : SDU %d MCH->MCCH for sync area %d (eNB %d, %d bytes)\n",module_idP,frameP, i, sync_area, eNB_index, rx_lengths[i]); mac_rrc_data_ind(module_idP, CC_id, - frameP, + frameP,0, // unknown subframe M_RNTI, MCCH, payload_ptr, rx_lengths[i], 0, eNB_index, sync_area); @@ -1449,15 +1447,13 @@ void ue_get_sdu(module_id_t module_idP,int CC_id,frame_t frameP,sub_frame_t subf ulsch_buffer[payload_offset+sdu_length_total+j] = (char)(taus()&0xff); } -#if defined(USER_MODE) && defined(OAI_EMU) - if (oai_emulation.info.opt_enabled) { + if (opt_enabled) { trace_pdu(0, ulsch_buffer, buflen, module_idP, 3, UE_mac_inst[module_idP].crnti, subframe, 0, 0); + LOG_D(OPT,"[UE %d][ULSCH] Frame %d trace pdu for rnti %x with size %d\n", + module_idP, frameP, UE_mac_inst[module_idP].crnti, buflen); } - LOG_D(OPT,"[UE %d][ULSCH] Frame %d trace pdu for rnti %x with size %d\n", - module_idP, frameP, UE_mac_inst[module_idP].crnti, buflen); -#endif LOG_D(MAC,"[UE %d][SR] Gave SDU to PHY, clearing any scheduling request\n", module_idP,payload_offset, sdu_length_total); diff --git a/openair2/PHY_INTERFACE/defs.h b/openair2/PHY_INTERFACE/defs.h index 003ed636df..4eddea349e 100755 --- a/openair2/PHY_INTERFACE/defs.h +++ b/openair2/PHY_INTERFACE/defs.h @@ -87,7 +87,7 @@ typedef struct { uint8_t* (*get_dlsch_sdu)(module_id_t Mod_id,int CC_id,frame_t frameP,rnti_t rnti,uint8_t TB_index); /// Send ULSCH sdu to MAC for given rnti - void (*rx_sdu)(module_id_t Mod_id,int CC_id,frame_t frameP,rnti_t rnti, uint8_t *sdu,uint16_t sdu_len, int harq_pid,uint8_t *msg3_flag); + void (*rx_sdu)(module_id_t Mod_id,int CC_id,frame_t frameP, sub_frame_t sub_frameP,rnti_t rnti, uint8_t *sdu,uint16_t sdu_len, int harq_pid,uint8_t *msg3_flag); /// Indicate failure to synch to external source void (*mrbch_phy_sync_failure) (module_id_t Mod_id,frame_t frameP, uint8_t free_eNB_index); diff --git a/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c b/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c index 203dc43650..fe71e4bd4c 100644 --- a/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c +++ b/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c @@ -120,6 +120,7 @@ mac_rrc_data_ind( const module_id_t module_idP, const int CC_idP, const frame_t frameP, + const sub_frame_t subframeP, const rnti_t rntiP, const rb_id_t srb_idP, const uint8_t *sduP, @@ -133,7 +134,7 @@ mac_rrc_data_ind( return(mac_rrc_lite_data_ind( module_idP, CC_idP, - frameP, + frameP,subframeP, rntiP, srb_idP, sduP, diff --git a/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h b/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h index c7c4b02fe0..15807ddb83 100644 --- a/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h +++ b/openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h @@ -59,6 +59,7 @@ mac_rrc_data_ind( const module_id_t module_idP, const int CC_idP, const frame_t frameP, + const sub_frame_t sub_frameP, const rnti_t rntiP, const rb_id_t srb_idP, const uint8_t *sduP, diff --git a/openair2/RRC/LITE/L2_interface.c b/openair2/RRC/LITE/L2_interface.c index 5d21bfc02c..738a30aab0 100644 --- a/openair2/RRC/LITE/L2_interface.c +++ b/openair2/RRC/LITE/L2_interface.c @@ -341,6 +341,7 @@ mac_rrc_lite_data_ind( const module_id_t module_idP, const int CC_id, const frame_t frameP, + const sub_frame_t sub_frameP, const rnti_t rntiP, const rb_id_t srb_idP, const uint8_t* sduP, @@ -357,7 +358,7 @@ mac_rrc_lite_data_ind( /* int si_window; */ - PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, module_idP, eNB_flagP, rntiP, frameP, 0,eNB_indexP); + PROTOCOL_CTXT_SET_BY_MODULE_ID(&ctxt, module_idP, eNB_flagP, rntiP, frameP, sub_frameP,eNB_indexP); if(eNB_flagP == ENB_FLAG_NO) { if(srb_idP == BCCH) { @@ -377,12 +378,13 @@ mac_rrc_lite_data_ind( message_p = itti_alloc_new_message (TASK_MAC_UE, RRC_MAC_BCCH_DATA_IND); memset (RRC_MAC_BCCH_DATA_IND (message_p).sdu, 0, BCCH_SDU_SIZE); - RRC_MAC_BCCH_DATA_IND (message_p).frame = frameP; - RRC_MAC_BCCH_DATA_IND (message_p).sdu_size = sdu_size; + RRC_MAC_BCCH_DATA_IND (message_p).frame = frameP; + RRC_MAC_BCCH_DATA_IND (message_p).sub_frame = sub_frameP; + RRC_MAC_BCCH_DATA_IND (message_p).sdu_size = sdu_size; memcpy (RRC_MAC_BCCH_DATA_IND (message_p).sdu, sduP, sdu_size); RRC_MAC_BCCH_DATA_IND (message_p).enb_index = eNB_indexP; - RRC_MAC_BCCH_DATA_IND (message_p).rsrq = 30 /* TODO change phy to report rspq */; - RRC_MAC_BCCH_DATA_IND (message_p).rsrp = 45 /* TODO change phy to report rspp */; + RRC_MAC_BCCH_DATA_IND (message_p).rsrq = 30 /* TODO change phy to report rspq */; + RRC_MAC_BCCH_DATA_IND (message_p).rsrp = 45 /* TODO change phy to report rspp */; itti_send_msg_to_task (TASK_RRC_UE, ctxt.instance, message_p); } @@ -410,8 +412,9 @@ mac_rrc_lite_data_ind( message_p = itti_alloc_new_message (TASK_MAC_UE, RRC_MAC_CCCH_DATA_IND); memset (RRC_MAC_CCCH_DATA_IND (message_p).sdu, 0, CCCH_SDU_SIZE); memcpy (RRC_MAC_CCCH_DATA_IND (message_p).sdu, sduP, sdu_size); - RRC_MAC_CCCH_DATA_IND (message_p).frame = frameP; - RRC_MAC_CCCH_DATA_IND (message_p).sdu_size = sdu_size; + RRC_MAC_CCCH_DATA_IND (message_p).frame = frameP; + RRC_MAC_CCCH_DATA_IND (message_p).sub_frame = sub_frameP; + RRC_MAC_CCCH_DATA_IND (message_p).sdu_size = sdu_size; RRC_MAC_CCCH_DATA_IND (message_p).enb_index = eNB_indexP; RRC_MAC_CCCH_DATA_IND (message_p).rnti = rntiP; itti_send_msg_to_task (TASK_RRC_UE, ctxt.instance, message_p); @@ -443,6 +446,7 @@ mac_rrc_lite_data_ind( message_p = itti_alloc_new_message (TASK_MAC_UE, RRC_MAC_MCCH_DATA_IND); RRC_MAC_MCCH_DATA_IND (message_p).frame = frameP; + RRC_MAC_MCCH_DATA_IND (message_p).sub_frame = sub_frameP; RRC_MAC_MCCH_DATA_IND (message_p).sdu_size = sdu_lenP; memset (RRC_MAC_MCCH_DATA_IND (message_p).sdu, 0, MCCH_SDU_SIZE); memcpy (RRC_MAC_MCCH_DATA_IND (message_p).sdu, sduP, sdu_lenP); @@ -474,9 +478,10 @@ mac_rrc_lite_data_ind( } message_p = itti_alloc_new_message (TASK_MAC_ENB, RRC_MAC_CCCH_DATA_IND); - RRC_MAC_CCCH_DATA_IND (message_p).frame = frameP; - RRC_MAC_CCCH_DATA_IND (message_p).rnti = rntiP; - RRC_MAC_CCCH_DATA_IND (message_p).sdu_size = sdu_size; + RRC_MAC_CCCH_DATA_IND (message_p).frame = frameP; + RRC_MAC_CCCH_DATA_IND (message_p).sub_frame = sub_frameP; + RRC_MAC_CCCH_DATA_IND (message_p).rnti = rntiP; + RRC_MAC_CCCH_DATA_IND (message_p).sdu_size = sdu_size; RRC_MAC_CCCH_DATA_IND (message_p).CC_id = CC_id; memset (RRC_MAC_CCCH_DATA_IND (message_p).sdu, 0, CCCH_SDU_SIZE); memcpy (RRC_MAC_CCCH_DATA_IND (message_p).sdu, sduP, sdu_size); diff --git a/openair2/RRC/LITE/proto.h b/openair2/RRC/LITE/proto.h index c87df0fa4c..398c126653 100644 --- a/openair2/RRC/LITE/proto.h +++ b/openair2/RRC/LITE/proto.h @@ -312,6 +312,7 @@ mac_rrc_lite_data_ind( const module_id_t module_idP, const int CC_id, const frame_t frameP, + const sub_frame_t sub_frameP, const rnti_t rntiP, const rb_id_t srb_idP, const uint8_t* sduP, -- GitLab