diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c index 7f9017201a7c7ba53cc9a03bec42235d266bc720..8c7abe963ca477276ef56a7fab2b239b2c7ba811 100755 --- a/openair2/LAYER2/PDCP_v10.1.0/pdcp.c +++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp.c @@ -1065,7 +1065,7 @@ rrc_pdcp_config_asn1_req ( #ifdef Rel10 ,PMCH_InfoList_r9_t* const pmch_InfoList_r9_pP #endif - ,rb_id_t *const defaultDRB // 2016-05-28 wilson : remember the default DRB + ,rb_id_t *const defaultDRB ) //----------------------------------------------------------------------------- { @@ -1087,10 +1087,8 @@ rrc_pdcp_config_asn1_req ( hash_key_t key = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_rc; -#ifndef ASTRI_FIX // 2016-05-28 wilson : remember the default DRB hash_key_t key_defaultDRB = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_defaultDRB_rc; -#endif #ifdef Rel10 int i,j; MBMS_SessionInfoList_r9_t *mbms_SessionInfoList_r9_p = NULL; @@ -1111,11 +1109,7 @@ rrc_pdcp_config_asn1_req ( srb_id = srb2add_list_pP->list.array[cnt]->srb_Identity; srb_toaddmod_p = srb2add_list_pP->list.array[cnt]; rlc_type = RLC_MODE_AM; -#if 0 - lc_id = srb_id;// + 2; -#else // 2016-05-27 wilson : fixing the LC-id <-> SRB-id mapping lc_id = srb_id; -#endif key = PDCP_COLL_KEY_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag, srb_id, SRB_FLAG_YES); h_rc = hashtable_get(pdcp_coll_p, key, (void**)&pdcp_p); @@ -1195,9 +1189,6 @@ rrc_pdcp_config_asn1_req ( drb_toaddmod_p = drb2add_list_pP->list.array[cnt]; drb_id = drb_toaddmod_p->drb_Identity;// + drb_id_offset; -#ifdef ASTRI_FIX - lc_id = drb_id + 2; -#else // 2016-05-27 wilson : fixing the mapping between LC-id and DRB-id if (drb_toaddmod_p->logicalChannelIdentity) { lc_id = *(drb_toaddmod_p->logicalChannelIdentity); } else { @@ -1210,7 +1201,6 @@ rrc_pdcp_config_asn1_req ( LOG_E(RLC, PROTOCOL_CTXT_FMT" logicalChannelIdentity = %d is invalid in RRC message when adding DRB!\n", PROTOCOL_CTXT_ARGS(ctxt_pP), lc_id); continue; } -#endif DevCheck4(drb_id < maxDRB, drb_id, maxDRB, ctxt_pP->module_id, ctxt_pP->rnti); key = PDCP_COLL_KEY_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag, drb_id, SRB_FLAG_NO); @@ -1227,7 +1217,7 @@ rrc_pdcp_config_asn1_req ( pdcp_p = calloc(1, sizeof(pdcp_t)); h_rc = hashtable_insert(pdcp_coll_p, key, pdcp_p); -#ifndef ASTRI_FIX + // save the first configured DRB-ID as the default DRB-ID if ((defaultDRB != NULL) && (*defaultDRB == drb_id)) { key_defaultDRB = PDCP_COLL_KEY_DEFAULT_DRB_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag); h_defaultDRB_rc = hashtable_insert(pdcp_coll_p, key_defaultDRB, pdcp_p); @@ -1241,9 +1231,7 @@ rrc_pdcp_config_asn1_req ( key_defaultDRB); free(pdcp_p); return TRUE; - } else -#endif - if (h_rc != HASH_TABLE_OK) { + } else if (h_rc != HASH_TABLE_OK) { LOG_E(PDCP, PROTOCOL_PDCP_CTXT_FMT" CONFIG_ACTION_ADD ADD key 0x%"PRIx64" FAILED\n", PROTOCOL_PDCP_CTXT_ARGS(ctxt_pP, pdcp_p), key); @@ -1337,9 +1325,6 @@ rrc_pdcp_config_asn1_req ( for (cnt=0; cnt<drb2release_list_pP->list.count; cnt++) { pdrb_id_p = drb2release_list_pP->list.array[cnt]; drb_id = *pdrb_id_p; -#if 0 // 2016-05-27 wilson : fixing the hard-coded mapping between DRB-id <-> LC-id - lc_id = drb_id + 2; -#endif key = PDCP_COLL_KEY_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag, srb_id, SRB_FLAG_NO); h_rc = hashtable_get(pdcp_coll_p, key, (void**)&pdcp_p); @@ -1349,10 +1334,7 @@ rrc_pdcp_config_asn1_req ( drb_id); continue; } - -#ifndef ASTRI_FIX // 2016-05-27 wilson : fixing the hard-coded mapping between DRB-id <-> LC-id lc_id = pdcp_p->lcid; -#endif action = CONFIG_ACTION_REMOVE; pdcp_config_req_asn1 ( @@ -1373,9 +1355,8 @@ rrc_pdcp_config_asn1_req ( kUPenc_pP); h_rc = hashtable_remove(pdcp_coll_p, key); -#ifndef ASTRI_FIX // 2016-05-28 wilson : remember the default DRB if ((defaultDRB != NULL) && (*defaultDRB == drb_id)) { - // this is the default DRB being removed, although this is not allowed in standard + // default DRB being removed. nevertheless this shouldn't happen as removing default DRB is not allowed in standard key_defaultDRB = PDCP_COLL_KEY_DEFAULT_DRB_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag); h_defaultDRB_rc = hashtable_get(pdcp_coll_p, key_defaultDRB, (void**)&pdcp_p); @@ -1387,7 +1368,6 @@ rrc_pdcp_config_asn1_req ( } else { key_defaultDRB = HASH_TABLE_OK; // do not trigger any error handling if this is not a default DRB } -#endif } } diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp.h b/openair2/LAYER2/PDCP_v10.1.0/pdcp.h index 5f9e3f397affd43d8b681987d0a055712df2ed2d..7d162d160956b0b8b85817a508fb2339d33a99d3 100755 --- a/openair2/LAYER2/PDCP_v10.1.0/pdcp.h +++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp.h @@ -295,7 +295,7 @@ public_pdcp( #ifdef Rel10 ,PMCH_InfoList_r9_t *pmch_InfoList_r9 #endif - ,rb_id_t *const defaultDRB // 2016-05-28 wilson : remember the default DRB + ,rb_id_t *const defaultDRB )); /*! \fn boolean_t pdcp_config_req_asn1 (const protocol_ctxt_t* const ctxt_pP, srb_flag_t srb_flagP, uint32_t action, rb_id_t rb_id, uint8_t rb_sn, uint8_t rb_report, uint16_t header_compression_profile, uint8_t security_mode) @@ -478,8 +478,6 @@ protected_pdcp(sdu_size_t pdcp_input_sdu_remaining_size_to_read;) (((hash_key_t)(iS_sRB)) << 33) | \ (((hash_key_t)(0x55)) << 34)) -#ifndef ASTRI_FIX // 2016-05-28 wilson : for remeber the default DRB - // hash key to the same PDCP as indexed by PDCP_COLL_KEY_VALUE(... rB_iD, iS_sRB=0) where rB_iD // is the default DRB ID. The hidden code 0x55 indicates the key is indexed by (rB_iD,is_sRB) // whereas the hidden code 0xaa indicates the key is for default DRB only @@ -490,7 +488,6 @@ protected_pdcp(sdu_size_t pdcp_input_sdu_remaining_size_to_read;) (((hash_key_t)(0xff)) << 25) | \ (((hash_key_t)(0x00)) << 33) | \ (((hash_key_t)(0xaa)) << 34)) -#endif // service id max val is maxServiceCount = 16 (asn1_constants.h) diff --git a/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c b/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c index 8dea9853450930de2aea40edfe5bdbcc28b3d211..1cde2010f46640c812d6cae3f0dc290452e9e531 100755 --- a/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c +++ b/openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c @@ -599,15 +599,12 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const ctxt_pP) } } else { // enb_flag if (rab_id != 0) { -#ifndef ASTRI_FIX // 2016-05-30 wilson : fix hard-code default DRB ID if (rab_id == UE_IP_DEFAULT_RAB_ID) { LOG_D(PDCP, "PDCP_COLL_KEY_DEFAULT_DRB_VALUE(module_id=%d, rnti=%x, enb_flag=%d)\n", ctxt.module_id, ctxt.rnti, ctxt.enb_flag); key = PDCP_COLL_KEY_DEFAULT_DRB_VALUE(ctxt.module_id, ctxt.rnti, ctxt.enb_flag); h_rc = hashtable_get(pdcp_coll_p, key, (void**)&pdcp_p); - } else -#endif - { + } else { rab_id = rab_id % maxDRB; LOG_D(PDCP, "PDCP_COLL_KEY_VALUE(module_id=%d, rnti=%x, enb_flag=%d, rab_id=%d, SRB_FLAG=%d)\n", ctxt.module_id, ctxt.rnti, ctxt.enb_flag, rab_id, SRB_FLAG_NO); @@ -616,9 +613,7 @@ int pdcp_fifo_read_input_sdus (const protocol_ctxt_t* const ctxt_pP) } if (h_rc == HASH_TABLE_OK) { -#ifndef ASTRI_FIX // 2016-05-30 wilson : fix default DRB-ID to be configurable rab_id = pdcp_p->rb_id; -#endif #ifdef PDCP_DEBUG LOG_D(PDCP, "[FRAME %5u][UE][NETLINK][IP->PDCP] INST %d: Received socket with length %d (nlmsg_len = %d) on Rab %d \n", ctxt.frame, diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c index 8d45ac958293bb4caa6fb17230022254cd3e5b68..ff807f711e5ce765c376dc4b0920969b62439d55 100755 --- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c +++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c @@ -121,7 +121,7 @@ config_req_rlc_am ( const srb_flag_t srb_flagP, rlc_am_info_t * const config_am_pP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC + const logical_chan_id_t chan_idP ) { rlc_union_t *rlc_union_p = NULL; @@ -169,7 +169,7 @@ void config_req_rlc_am_asn1 ( const srb_flag_t srb_flagP, const struct RLC_Config__am * const config_am_pP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP) // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC + const logical_chan_id_t chan_idP) { rlc_union_t *rlc_union_p = NULL; rlc_am_entity_t *l_rlc_p = NULL; diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h index df9f8d6c88e79c3f753b52c39e27ee73a115ea64..305326113ea8824652ef277b7e50862cda16bcf3 100755 --- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h +++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h @@ -148,7 +148,7 @@ public_rlc_am(void config_req_rlc_am ( const srb_flag_t srb_flagP, const rlc_am_info_t * const config_amP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC + const logical_chan_id_t chan_idP);) /*! \fn void config_req_rlc_am_asn1 (const protocol_ctxt_t* const ctxtP, const srb_flag_t srb_flagP, struct RLC_Config__am * config_amP, rb_id_t rb_idP, logical_chan_id_t chan_idP) * \brief Configure the UL and DL parameters of the RLC AM with the asn1c autogenerated pameters structs @@ -163,7 +163,7 @@ public_rlc_am(void config_req_rlc_am_asn1 ( const srb_flag_t srb_flagP, const struct RLC_Config__am * const config_amP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC + const logical_chan_id_t chan_idP);) /** @} */ diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c index 5dcdbc68d1a59aaee3a8f49b14bd56bc81d497f4..1c82c1ff4b2eb863244f2eabb9dae46dec7f1a70 100755 --- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c +++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c @@ -254,12 +254,10 @@ rlc_am_set_debug_infos( rlc_am_entity_t *const rlc_pP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP) // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC) + const logical_chan_id_t chan_idP) { rlc_pP->rb_id = rb_idP; -#ifndef ASTRI_FIX // 2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC) rlc_pP->channel_id = chan_idP; -#endif if (srb_flagP) { rlc_pP->is_data_plane = 0; diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h index f3e38b6bd27a85d4a0cfc1bfbf9c1bf0c8ba6595..342921bcc90ce29afdcf5c7ba1e961b829b22746 100755 --- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h +++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h @@ -121,6 +121,6 @@ public_rlc_am_init( void rlc_am_configure(const protocol_ctxt_t* const ctxtP, * \param[in] rb_idP Radio bearer identifier. * \param[in] chan_idP Transport channel identifier. */ -public_rlc_am_init( void rlc_am_set_debug_infos(const protocol_ctxt_t* const ctxtP, rlc_am_entity_t * const rlc_pP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, const logical_chan_id_t chan_idP /*2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC)*/);) +public_rlc_am_init( void rlc_am_set_debug_infos(const protocol_ctxt_t* const ctxtP, rlc_am_entity_t * const rlc_pP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, const logical_chan_id_t chan_idP);) /** @} */ #endif diff --git a/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c b/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c index 533730ce683ca83d23783c1fbb4fc1c86f5bca4a..f89aa3b454c8f60fade689c118ac319c2d5341b1 100755 --- a/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c +++ b/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c @@ -56,11 +56,7 @@ void config_req_rlc_tm ( rlc_tm_init(ctxt_pP, rlc_p); rlc_p->protocol_state = RLC_DATA_TRANSFER_READY_STATE; -#ifdef ASTRI_FIX - rlc_tm_set_debug_infos(ctxt_pP, rlc_p, srb_flagP, rb_idP); // 2016-05-27 wilson : fix incorrect argument ordering! -#else - rlc_tm_set_debug_infos(ctxt_pP, rlc_p, srb_flagP, rb_idP, chan_idP); // 2016-05-27 wilson : fix DRB-id <-> LC-id mapping -#endif + rlc_tm_set_debug_infos(ctxt_pP, rlc_p, srb_flagP, rb_idP, chan_idP); rlc_tm_configure(ctxt_pP, rlc_p, config_tmP->is_uplink_downlink); } else { LOG_E(RLC, PROTOCOL_RLC_TM_CTXT_FMT" CONFIG_REQ RB %u RLC NOT FOUND\n", @@ -157,7 +153,7 @@ void rlc_tm_set_debug_infos( rlc_tm_entity_t * const rlcP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP) // 2016-05-27 wilson : fixing the DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP) { rlcP->rb_id = rb_idP; rlcP->channel_id = chan_idP; diff --git a/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h b/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h index ecd23a2c2f1d1065ea3dedcf47a908b919e26da9..daf9b5a643fc8bbb9fb161d0eb0fb047d93a3af3 100755 --- a/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h +++ b/openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h @@ -87,7 +87,7 @@ public_rlc_tm_init( void config_req_rlc_tm ( const srb_flag_t srb_flagP, const rlc_tm_info_t * const config_tmP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP);) /*! \fn void rlc_tm_init (const protocol_ctxt_t* const ctxt_pP, rlc_tm_entity_t * const rlcP) * \brief Initialize a RLC TM protocol instance, initialize all variables, lists, allocate buffers for making this instance ready to be configured with protocol configuration parameters. After this initialization the RLC TM protocol instance will be in RLC_NULL_STATE state. @@ -135,7 +135,7 @@ protected_rlc_tm_init(void rlc_tm_set_debug_infos( rlc_tm_entity_t * const rlcP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) /*2016-05-27 wilson : added this argument for storing the DRB-id <-> LC-id mapping in RLC)*/ + const logical_chan_id_t chan_idP);) /** @} */ # endif diff --git a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c index 990399c940650edc0ed4b0453ccfc9a263b62d1a..1ecf5f882a229426bcf263a3ae5681e56c87fcc1 100755 --- a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c +++ b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c @@ -427,14 +427,14 @@ void rlc_um_set_debug_infos( rlc_um_entity_t * const rlc_pP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP) // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP) { LOG_D(RLC, PROTOCOL_RLC_UM_CTXT_FMT" [SET DEBUG INFOS] rb_id %d srb_flag %d\n", PROTOCOL_RLC_UM_CTXT_ARGS(ctxt_pP,rlc_pP), rb_idP, srb_flagP); rlc_pP->rb_id = rb_idP; - rlc_pP->channel_id = chan_idP; // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + rlc_pP->channel_id = chan_idP; if (srb_flagP) { rlc_pP->is_data_plane = 0; diff --git a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h index 18dd656024b8a9f2aadf1e474ccf86e4a03885d8..af3934f6626f482d24415c8bb17b227417c41a5f 100644 --- a/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h +++ b/openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h @@ -91,7 +91,7 @@ public_rlc_um_control_primitives( void config_req_rlc_um ( const srb_flag_t srb_flagP, const rlc_um_info_t * const config_umP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP);) /*! \fn void config_req_rlc_um_asn1 ( * const protocol_ctxt_t* const ctxt_pP, @@ -122,7 +122,7 @@ public_rlc_um_control_primitives( void config_req_rlc_um_asn1 ( const UL_UM_RLC_t * const ul_rlc_pP, const DL_UM_RLC_t * const dl_rlc_pP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP);) /*! \fn void rlc_um_init (const protocol_ctxt_t* const ctxt_pP, rlc_um_entity_t * const rlc_pP) * \brief Initialize a RLC UM protocol instance, initialize all variables, lists, allocate buffers for making this instance ready to be configured with protocol configuration parameters. After this initialization the RLC UM protocol instance will be in RLC_NULL_STATE state. @@ -189,6 +189,6 @@ protected_rlc_um_control_primitives(void rlc_um_set_debug_infos( rlc_um_entity_t * const rlc_pP, const srb_flag_t srb_flagP, const rb_id_t rb_idP, - const logical_chan_id_t chan_idP);) // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping + const logical_chan_id_t chan_idP);) /** @} */ # endif diff --git a/openair2/LAYER2/RLC/rlc_mac.c b/openair2/LAYER2/RLC/rlc_mac.c index 2f347cd227dfb9a22d754a741469b2cd3522d0a0..76dab9a6d3f8a0459da643fec69fa41fcfa78095 100644 --- a/openair2/LAYER2/RLC/rlc_mac.c +++ b/openair2/LAYER2/RLC/rlc_mac.c @@ -136,7 +136,6 @@ tbs_size_t mac_rlc_data_req( { //----------------------------------------------------------------------------- struct mac_data_req data_request; - // rb_id_t rb_id = 0; // 2016-05-27 wilson : not needed after DRB-id <-> LC-id mapping fix rlc_mode_t rlc_mode = RLC_MODE_NONE; rlc_mbms_id_t *mbms_id_p = NULL; rlc_union_t *rlc_union_p = NULL; @@ -179,17 +178,7 @@ tbs_size_t mac_rlc_data_req( return (tbs_size_t)0; } } else { -#ifdef ASTRI_FIX // 2016-05-27 wilson : fixing the DRB-id <-> LC-id mapping - if (channel_idP > 2) { - rb_id = channel_idP - 2; - } else { - rb_id = channel_idP; - } - - key = RLC_COLL_KEY_VALUE(module_idP, rntiP, enb_flagP, rb_id, srb_flag); -#else key = RLC_COLL_KEY_LCID_VALUE(module_idP, rntiP, enb_flagP, channel_idP, srb_flag); -#endif } h_rc = hashtable_get(rlc_coll_p, key, (void**)&rlc_union_p); @@ -248,7 +237,6 @@ void mac_rlc_data_ind ( crc_t *crcs_pP) { //----------------------------------------------------------------------------- - // rb_id_t rb_id = 0; // 2016-05-27 wilson : not needed after DRB-id <-> LC-id mapping fix rlc_mode_t rlc_mode = RLC_MODE_NONE; rlc_mbms_id_t *mbms_id_p = NULL; rlc_union_t *rlc_union_p = NULL; @@ -298,17 +286,7 @@ void mac_rlc_data_ind ( return; } } else { -#ifdef ASTRI_FIX // 2016-05-27 wilson : fixing the DRB-id <-> LC-id mapping - if (channel_idP > 2) { - rb_id = channel_idP - 2; - } else { - rb_id = channel_idP; - } - - key = RLC_COLL_KEY_VALUE(module_idP, rntiP, enb_flagP, rb_id, srb_flag); -#else key = RLC_COLL_KEY_LCID_VALUE(module_idP, rntiP, enb_flagP, channel_idP, srb_flag); -#endif } h_rc = hashtable_get(rlc_coll_p, key, (void**)&rlc_union_p); @@ -358,7 +336,6 @@ mac_rlc_status_resp_t mac_rlc_status_ind( mac_rlc_status_resp_t mac_rlc_status_resp; struct mac_status_ind tx_status; struct mac_status_resp status_resp; - // rb_id_t rb_id = 0; // 2016-05-27 wilson : not needed after DRB-id <-> LC-id mapping fix rlc_mode_t rlc_mode = RLC_MODE_NONE; rlc_mbms_id_t *mbms_id_p = NULL; rlc_union_t *rlc_union_p = NULL; @@ -407,17 +384,7 @@ mac_rlc_status_resp_t mac_rlc_status_ind( key = RLC_COLL_KEY_MBMS_VALUE(module_idP, rntiP, enb_flagP, mbms_id_p->service_id, mbms_id_p->session_id); } else { -#ifdef ASTRI_FIX // 2016-05-27 wilson : fixing the DRB-id <-> LC-id mapping - if (channel_idP > 2) { - rb_id = channel_idP - 2; - } else { - rb_id = channel_idP; - } - - key = RLC_COLL_KEY_VALUE(module_idP, rntiP, enb_flagP, rb_id, srb_flag); -#else key = RLC_COLL_KEY_LCID_VALUE(module_idP, rntiP, enb_flagP, channel_idP, srb_flag); -#endif } h_rc = hashtable_get(rlc_coll_p, key, (void**)&rlc_union_p); diff --git a/openair2/LAYER2/RLC/rlc_rrc.c b/openair2/LAYER2/RLC/rlc_rrc.c index aba2ab411fed9f3b799d64407aa1e66384fb4e36..c6ef4a1c5dad4ad214b76fd478e8593fea20960a 100644 --- a/openair2/LAYER2/RLC/rlc_rrc.c +++ b/openair2/LAYER2/RLC/rlc_rrc.c @@ -104,11 +104,7 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP if (srb2add_listP != NULL) { for (cnt=0; cnt<srb2add_listP->list.count; cnt++) { rb_id = srb2add_listP->list.array[cnt]->srb_Identity; -#if 0 - lc_id = rb_id + 2; -#else // 2016-05-26 wilson : fixing the LC-id<->SRB-id mapping for SRB lc_id = rb_id; -#endif LOG_D(RLC, "Adding SRB %d, rb_id %d\n",srb2add_listP->list.array[cnt]->srb_Identity,rb_id); srb_toaddmod_p = srb2add_listP->list.array[cnt]; @@ -236,9 +232,6 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP drb_toaddmod_p = drb2add_listP->list.array[cnt]; drb_id = drb_toaddmod_p->drb_Identity; -#if 0 - lc_id = drb_id + 2; -#else // 2016-05-26 wilson : fixing the LC-id <-> DRB-id mapping if (drb_toaddmod_p->logicalChannelIdentity) { lc_id = *drb_toaddmod_p->logicalChannelIdentity; } else { @@ -251,9 +244,7 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP continue; } -#endif - - LOG_I(RLC, "Adding DRB %d, lc_id %d\n",drb_id,lc_id); + LOG_D(RLC, "Adding DRB %d, lc_id %d\n",drb_id,lc_id); if (drb_toaddmod_p->rlc_Config) { @@ -478,10 +469,8 @@ rlc_op_status_t rrc_rlc_remove_rlc ( logical_chan_id_t lcid = 0; hash_key_t key = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_rc; -#ifndef ASTRI_FIX // 2016-05-27 wilson : fixing DRB-id <-> LC-id mapping hash_key_t key_lcid = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_lcid_rc; -#endif rlc_union_t *rlc_union_p = NULL; #ifdef Rel10 rlc_mbms_id_t *mbms_id_p = NULL; @@ -525,7 +514,6 @@ rlc_op_status_t rrc_rlc_remove_rlc ( h_rc = hashtable_get(rlc_coll_p, key, (void**)&rlc_union_p); if (h_rc == HASH_TABLE_OK) { -#ifndef ASTRI_FIX // 2016-05-27 wilson : fixing the DRB-id <-> LC-id mapping // also remove the hash-key created by LC-id switch (rlc_union_p->mode) { case RLC_MODE_AM: @@ -551,7 +539,6 @@ rlc_op_status_t rrc_rlc_remove_rlc ( if ((h_rc == HASH_TABLE_OK) && (h_lcid_rc == HASH_TABLE_OK)) { h_lcid_rc = hashtable_remove(rlc_coll_p, key_lcid); -#endif h_rc = hashtable_remove(rlc_coll_p, key); LOG_D(RLC, PROTOCOL_CTXT_FMT"[%s %u LCID %d] RELEASED %s\n", PROTOCOL_CTXT_ARGS(ctxt_pP), @@ -587,10 +574,8 @@ rlc_union_t* rrc_rlc_add_rlc ( //----------------------------------------------------------------------------- hash_key_t key = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_rc; -#if 1 // 2016-05-26 wilson hash_key to the same RLC entity but indexed by LC_id instead of RB_id hash_key_t key_lcid = HASHTABLE_NOT_A_KEY_VALUE; hashtable_rc_t h_lcid_rc; -#endif rlc_union_t *rlc_union_p = NULL; #ifdef Rel10 rlc_mbms_id_t *mbms_id_p = NULL; @@ -631,9 +616,7 @@ rlc_union_t* rrc_rlc_add_rlc ( #endif { key = RLC_COLL_KEY_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag, rb_idP, srb_flagP); -#ifndef ASTRI_FIX // 2016-05-26 wilson : fix DRB-id <-> LC-id mapping key_lcid = RLC_COLL_KEY_LCID_VALUE(ctxt_pP->module_id, ctxt_pP->rnti, ctxt_pP->enb_flag, chan_idP, srb_flagP); -#endif } h_rc = hashtable_get(rlc_coll_p, key, (void**)&rlc_union_p); @@ -649,9 +632,7 @@ rlc_union_t* rrc_rlc_add_rlc ( } else if (h_rc == HASH_TABLE_KEY_NOT_EXISTS) { rlc_union_p = calloc(1, sizeof(rlc_union_t)); h_rc = hashtable_insert(rlc_coll_p, key, rlc_union_p); -#ifndef ASTRI_FIX // 2016-05-26 wilson h_lcid_rc = hashtable_insert(rlc_coll_p, key_lcid, rlc_union_p); -#endif if ((h_rc == HASH_TABLE_OK) && (h_lcid_rc == HASH_TABLE_OK)) { #ifdef Rel10 diff --git a/openair2/RRC/LITE/defs.h b/openair2/RRC/LITE/defs.h index 1a39020a845b630908b512118485f3ed80fc3b0b..04d1fcc9f5ab81176d220617fe932baeaa2c0380 100644 --- a/openair2/RRC/LITE/defs.h +++ b/openair2/RRC/LITE/defs.h @@ -506,9 +506,7 @@ typedef struct UE_RRC_INST_s { struct SRB_ToAddMod *SRB1_config[NB_CNX_UE]; struct SRB_ToAddMod *SRB2_config[NB_CNX_UE]; struct DRB_ToAddMod *DRB_config[NB_CNX_UE][8]; -#ifndef ASTRI_FIX - rb_id_t *defaultDRB; // 2015-05-27 wilson : remember the default DRB ID -#endif + rb_id_t *defaultDRB; // remember the ID of the default DRB MeasObjectToAddMod_t *MeasObj[NB_CNX_UE][MAX_MEAS_OBJ]; struct ReportConfigToAddMod *ReportConfig[NB_CNX_UE][MAX_MEAS_CONFIG]; struct QuantityConfig *QuantityConfig[NB_CNX_UE]; diff --git a/openair2/RRC/LITE/rrc_UE.c b/openair2/RRC/LITE/rrc_UE.c index cd1389fbc02e5f024efaf3c5bcaa56167f791afd..b51b00241fb5fc75960b4e4baa72a1ea52550f06 100644 --- a/openair2/RRC/LITE/rrc_UE.c +++ b/openair2/RRC/LITE/rrc_UE.c @@ -1201,7 +1201,6 @@ rrc_ue_process_radioResourceConfigDedicated( // Establish DRBs if present if (radioResourceConfigDedicated->drb_ToAddModList) { -#ifndef ASTRI_FIX // 2016-05-28 wilson : remember the default DRB ID if ( (UE_rrc_inst[ctxt_pP->module_id].defaultDRB == NULL) && (radioResourceConfigDedicated->drb_ToAddModList->list.count >= 1) ) { // configure the first DRB ID as the default DRB ID @@ -1210,8 +1209,6 @@ rrc_ue_process_radioResourceConfigDedicated( LOG_I(RRC,"[UE %d] default DRB = %d\n",ctxt_pP->module_id, *UE_rrc_inst[ctxt_pP->module_id].defaultDRB); } -#endif - uint8_t *kUPenc = NULL; #if defined(ENABLE_SECURITY)