Add subframe in some proc calls
git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7480 818b1a75-f10b-46b9-bf7c-635c3b92a50f
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -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 & \
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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];
|
||||
|
||||
}
|
||||
|
||||
// }
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user