Fix build issues
This commit is contained in:
@@ -531,24 +531,24 @@ if (${RU} STREQUAL 0)
|
|||||||
file(GLOB S1AP_source ${S1AP_C_DIR}/*.c)
|
file(GLOB S1AP_source ${S1AP_C_DIR}/*.c)
|
||||||
endif (${RU} STREQUAL 0)
|
endif (${RU} STREQUAL 0)
|
||||||
|
|
||||||
add_custom_target (
|
add_custom_target (
|
||||||
s1ap_flag ALL
|
s1ap_flag ALL
|
||||||
${OPENAIR_CMAKE}/tools/make_asn1c_includes.sh "${S1AP_C_DIR}" "${S1AP_ASN_DIR}/${S1AP_ASN_FILES}" "S1AP_" -fno-include-deps
|
${OPENAIR_CMAKE}/tools/make_asn1c_includes.sh "${S1AP_C_DIR}" "${S1AP_ASN_DIR}/${S1AP_ASN_FILES}" "S1AP_" -fno-include-deps
|
||||||
DEPENDS "${S1AP_ASN_DIR}/${S1AP_ASN_FILES}"
|
DEPENDS "${S1AP_ASN_DIR}/${S1AP_ASN_FILES}"
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(S1AP_LIB
|
||||||
|
${S1AP_source}
|
||||||
|
${S1AP_DIR}/s1ap_common.c
|
||||||
)
|
)
|
||||||
|
add_dependencies(S1AP_LIB rrc_flag s1ap_flag)
|
||||||
|
|
||||||
add_library(S1AP_LIB
|
include_directories ("${S1AP_C_DIR}")
|
||||||
${S1AP_source}
|
include_directories ("${S1AP_DIR}")
|
||||||
${S1AP_DIR}/s1ap_common.c
|
|
||||||
)
|
|
||||||
add_dependencies(S1AP_LIB rrc_flag s1ap_flag)
|
|
||||||
|
|
||||||
include_directories ("${S1AP_C_DIR}")
|
|
||||||
include_directories ("${S1AP_DIR}")
|
|
||||||
|
|
||||||
add_library(S1AP_ENB
|
add_library(S1AP_ENB
|
||||||
${S1AP_DIR}/s1ap_eNB.c
|
${S1AP_DIR}/s1ap_eNB.c
|
||||||
${S1AP_DIR}/s1ap_eNB_context_management_procedures.c
|
${S1AP_DIR}/s1ap_eNB_context_management_procedures.c
|
||||||
${S1AP_DIR}/s1ap_eNB_decoder.c
|
${S1AP_DIR}/s1ap_eNB_decoder.c
|
||||||
${S1AP_DIR}/s1ap_eNB_encoder.c
|
${S1AP_DIR}/s1ap_eNB_encoder.c
|
||||||
${S1AP_DIR}/s1ap_eNB_handlers.c
|
${S1AP_DIR}/s1ap_eNB_handlers.c
|
||||||
@@ -813,6 +813,7 @@ add_dependencies(X2AP_ENB X2AP_LIB rrc_flag x2_flag)
|
|||||||
|
|
||||||
# F1AP
|
# F1AP
|
||||||
##############
|
##############
|
||||||
|
set (F1AP_RELEASE R16)
|
||||||
add_list1_option(F1AP_RELEASE R16 "F1AP ASN.1 grammar version" R16)
|
add_list1_option(F1AP_RELEASE R16 "F1AP ASN.1 grammar version" R16)
|
||||||
set(F1AP_DIR ${OPENAIR2_DIR}/F1AP)
|
set(F1AP_DIR ${OPENAIR2_DIR}/F1AP)
|
||||||
if (${F1AP_RELEASE} STREQUAL "R16")
|
if (${F1AP_RELEASE} STREQUAL "R16")
|
||||||
@@ -1020,6 +1021,7 @@ add_boolean_option(PRE_SCD_THREAD False "enable UE_EXPANSION w
|
|||||||
add_boolean_option(UESIM_EXPANSION False "enable UESIM_EXPANSION with max 256 UE")
|
add_boolean_option(UESIM_EXPANSION False "enable UESIM_EXPANSION with max 256 UE")
|
||||||
add_boolean_option(ITTI_SIM False "enable itti simulator")
|
add_boolean_option(ITTI_SIM False "enable itti simulator")
|
||||||
add_boolean_option(RFSIM_NAS False "enable rfsim nas")
|
add_boolean_option(RFSIM_NAS False "enable rfsim nas")
|
||||||
|
|
||||||
########################
|
########################
|
||||||
# Include order
|
# Include order
|
||||||
##########################
|
##########################
|
||||||
|
|||||||
@@ -359,7 +359,7 @@ void *nrL1_stats_thread(void *param) {
|
|||||||
AssertFatal(fd!=NULL,"Cannot open ngL1_stats.log\n");
|
AssertFatal(fd!=NULL,"Cannot open ngL1_stats.log\n");
|
||||||
dump_nr_I0_stats(fd,gNB);
|
dump_nr_I0_stats(fd,gNB);
|
||||||
dump_pusch_stats(fd,gNB);
|
dump_pusch_stats(fd,gNB);
|
||||||
// dump_uci_stats(fd,eNB,eNB->proc.L1_proc_tx.frame_tx);
|
// nr_dump_uci_stats(fd,eNB,eNB->proc.L1_proc_tx.frame_tx);
|
||||||
fclose(fd);
|
fclose(fd);
|
||||||
}
|
}
|
||||||
return(NULL);
|
return(NULL);
|
||||||
|
|||||||
+3
-3
@@ -63,7 +63,7 @@
|
|||||||
#include "common/utils/LOG/log.h"
|
#include "common/utils/LOG/log.h"
|
||||||
#include "common/utils/LOG/vcd_signal_dumper.h"
|
#include "common/utils/LOG/vcd_signal_dumper.h"
|
||||||
|
|
||||||
#include "enb_config.h"
|
#include "gnb_config.h"
|
||||||
#include <executables/softmodem-common.h>
|
#include <executables/softmodem-common.h>
|
||||||
|
|
||||||
#ifdef SMBV
|
#ifdef SMBV
|
||||||
@@ -1981,7 +1981,7 @@ void RCconfig_RU(void)
|
|||||||
LOG_I(PHY,"Setting time source to internal\n");
|
LOG_I(PHY,"Setting time source to internal\n");
|
||||||
RC.ru[j]->openair0_cfg.time_source = internal;
|
RC.ru[j]->openair0_cfg.time_source = internal;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strcmp(*(RUParamList.paramarray[j][RU_LOCAL_RF_IDX].strptr), "yes") == 0) {
|
if (strcmp(*(RUParamList.paramarray[j][RU_LOCAL_RF_IDX].strptr), "yes") == 0) {
|
||||||
if ( !(config_isparamset(RUParamList.paramarray[j],RU_LOCAL_IF_NAME_IDX)) ) {
|
if ( !(config_isparamset(RUParamList.paramarray[j],RU_LOCAL_IF_NAME_IDX)) ) {
|
||||||
RC.ru[j]->if_south = LOCAL_RF;
|
RC.ru[j]->if_south = LOCAL_RF;
|
||||||
@@ -2051,7 +2051,7 @@ void RCconfig_RU(void)
|
|||||||
RC.ru[j]->if_south = REMOTE_IF4p5;
|
RC.ru[j]->if_south = REMOTE_IF4p5;
|
||||||
RC.ru[j]->function = NGFI_RAU_IF4p5;
|
RC.ru[j]->function = NGFI_RAU_IF4p5;
|
||||||
RC.ru[j]->eth_params.transp_preference = ETH_RAW_IF4p5_MODE;
|
RC.ru[j]->eth_params.transp_preference = ETH_RAW_IF4p5_MODE;
|
||||||
}
|
}
|
||||||
} /* strcmp(local_rf, "yes") != 0 */
|
} /* strcmp(local_rf, "yes") != 0 */
|
||||||
|
|
||||||
RC.ru[j]->nb_tx = *(RUParamList.paramarray[j][RU_NB_TX_IDX].uptr);
|
RC.ru[j]->nb_tx = *(RUParamList.paramarray[j][RU_NB_TX_IDX].uptr);
|
||||||
|
|||||||
@@ -164,6 +164,8 @@ uint32_t timing_advance = 0;
|
|||||||
uint64_t num_missed_slots=0; // counter for the number of missed slots
|
uint64_t num_missed_slots=0; // counter for the number of missed slots
|
||||||
|
|
||||||
#include <executables/split_headers.h>
|
#include <executables/split_headers.h>
|
||||||
|
#include <SIMULATION/ETH_TRANSPORT/proto.h>
|
||||||
|
|
||||||
int split73=0;
|
int split73=0;
|
||||||
void sendFs6Ul(PHY_VARS_eNB *eNB, int UE_id, int harq_pid, int segmentID, int16_t *data, int dataLen, int r_offset) {
|
void sendFs6Ul(PHY_VARS_eNB *eNB, int UE_id, int harq_pid, int segmentID, int16_t *data, int dataLen, int r_offset) {
|
||||||
AssertFatal(false, "Must not be called in this context\n");
|
AssertFatal(false, "Must not be called in this context\n");
|
||||||
|
|||||||
@@ -1184,7 +1184,7 @@ int nr_rx_pusch(PHY_VARS_gNB *gNB,
|
|||||||
start_meas(&gNB->ulsch_channel_estimation_stats);
|
start_meas(&gNB->ulsch_channel_estimation_stats);
|
||||||
for(uint8_t symbol = rel15_ul->start_symbol_index; symbol < (rel15_ul->start_symbol_index + rel15_ul->nr_of_symbols); symbol++) {
|
for(uint8_t symbol = rel15_ul->start_symbol_index; symbol < (rel15_ul->start_symbol_index + rel15_ul->nr_of_symbols); symbol++) {
|
||||||
uint8_t dmrs_symbol_flag = (rel15_ul->ul_dmrs_symb_pos >> symbol) & 0x01;
|
uint8_t dmrs_symbol_flag = (rel15_ul->ul_dmrs_symb_pos >> symbol) & 0x01;
|
||||||
LOG_D(PHY,"symbol %d, dmrs_symbol_flag :%d\n", symbol, dmrs_symbol_flag);
|
LOG_D(PHY, "symbol %d, dmrs_symbol_flag :%d\n", symbol, dmrs_symbol_flag);
|
||||||
if (dmrs_symbol_flag == 1) {
|
if (dmrs_symbol_flag == 1) {
|
||||||
if (gNB->pusch_vars[ulsch_id]->dmrs_symbol == INVALID_VALUE)
|
if (gNB->pusch_vars[ulsch_id]->dmrs_symbol == INVALID_VALUE)
|
||||||
gNB->pusch_vars[ulsch_id]->dmrs_symbol = symbol;
|
gNB->pusch_vars[ulsch_id]->dmrs_symbol = symbol;
|
||||||
@@ -1199,17 +1199,20 @@ int nr_rx_pusch(PHY_VARS_gNB *gNB,
|
|||||||
|
|
||||||
nr_gnb_measurements(gNB, ulsch_id, harq_pid, symbol);
|
nr_gnb_measurements(gNB, ulsch_id, harq_pid, symbol);
|
||||||
|
|
||||||
for (aarx = 0; aarx < frame_parms->nb_antennas_rx; aarx++) {
|
for (aarx = 0; aarx < frame_parms->nb_antennas_rx; aarx++) {
|
||||||
if (symbol == rel15_ul->start_symbol_index) {
|
if (symbol == rel15_ul->start_symbol_index) {
|
||||||
gNB->pusch_vars[ulsch_id]->ulsch_power[aarx]=0;
|
gNB->pusch_vars[ulsch_id]->ulsch_power[aarx] = 0;
|
||||||
gNB->pusch_vars[ulsch_id]->ulsch_noise_power[aarx]=0;
|
gNB->pusch_vars[ulsch_id]->ulsch_noise_power[aarx] = 0;
|
||||||
|
}
|
||||||
|
gNB->pusch_vars[ulsch_id]->ulsch_power[aarx] += signal_energy_nodc(
|
||||||
|
&gNB->pusch_vars[ulsch_id]->ul_ch_estimates[aarx][symbol * frame_parms->ofdm_symbol_size],
|
||||||
|
rel15_ul->rb_size * 12);
|
||||||
|
for (int rb = 0; rb < rel15_ul->rb_size; rb++) {
|
||||||
|
gNB->pusch_vars[ulsch_id]->ulsch_noise_power[aarx] +=
|
||||||
|
gNB->measurements.n0_subband_power[aarx][rel15_ul->bwp_start + rel15_ul->rb_start + rb] /
|
||||||
|
rel15_ul->rb_size;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
gNB->pusch_vars[ulsch_id]->ulsch_power[aarx] += signal_energy_nodc(&gNB->pusch_vars[ulsch_id]->ul_ch_estimates[aarx][symbol*frame_parms->ofdm_symbol_size],
|
|
||||||
rel15_ul->rb_size*12);
|
|
||||||
for (int rb=0;rb<rel15_ul->rb_size;rb++) {
|
|
||||||
gNB->pusch_vars[ulsch_id]->ulsch_noise_power[aarx]+=gNB->measurements.n0_subband_power[aarx][rel15_ul->bwp_start+rel15_ul->rb_start+rb]/rel15_ul->rb_size;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stop_meas(&gNB->ulsch_channel_estimation_stats);
|
stop_meas(&gNB->ulsch_channel_estimation_stats);
|
||||||
|
|||||||
@@ -1642,7 +1642,7 @@ void nr_decode_pucch2(PHY_VARS_gNB *gNB,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void dump_uci_stats(FILE *fd,PHY_VARS_gNB *gNB,int frame) {
|
void nr_dump_uci_stats(FILE *fd,PHY_VARS_gNB *gNB,int frame) {
|
||||||
|
|
||||||
int strpos=0;
|
int strpos=0;
|
||||||
char output[16384];
|
char output[16384];
|
||||||
|
|||||||
@@ -614,6 +614,7 @@ void phy_procedures_gNB_uespec_RX(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx)
|
|||||||
for (int ULSCH_id=0;ULSCH_id<gNB->number_of_nr_ulsch_max;ULSCH_id++) {
|
for (int ULSCH_id=0;ULSCH_id<gNB->number_of_nr_ulsch_max;ULSCH_id++) {
|
||||||
NR_gNB_ULSCH_t *ulsch = gNB->ulsch[ULSCH_id][0];
|
NR_gNB_ULSCH_t *ulsch = gNB->ulsch[ULSCH_id][0];
|
||||||
int harq_pid;
|
int harq_pid;
|
||||||
|
int no_sig;
|
||||||
NR_UL_gNB_HARQ_t *ulsch_harq;
|
NR_UL_gNB_HARQ_t *ulsch_harq;
|
||||||
|
|
||||||
if ((ulsch) &&
|
if ((ulsch) &&
|
||||||
@@ -659,13 +660,14 @@ void phy_procedures_gNB_uespec_RX(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx)
|
|||||||
|
|
||||||
pusch_decode_done = 1;
|
pusch_decode_done = 1;
|
||||||
|
|
||||||
uint8_t symbol_start = ulsch_harq->ulsch_pdu.start_symbol_index;
|
|
||||||
uint8_t symbol_end = symbol_start + ulsch_harq->ulsch_pdu.nr_of_symbols;
|
|
||||||
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_NR_RX_PUSCH,1);
|
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_NR_RX_PUSCH,1);
|
||||||
start_meas(&gNB->rx_pusch_stats);
|
start_meas(&gNB->rx_pusch_stats);
|
||||||
for (uint8_t symbol = symbol_start; symbol < symbol_end; symbol++) {
|
no_sig = nr_rx_pusch(gNB, ULSCH_id, frame_rx, slot_rx, harq_pid);
|
||||||
nr_rx_pusch(gNB, ULSCH_id, frame_rx, slot_rx, symbol, harq_pid);
|
if (no_sig && (get_softmodem_params()->phy_test == 0)) {
|
||||||
}
|
LOG_D(PHY, "PUSCH not detected in frame %d, slot %d\n", frame_rx, slot_rx);
|
||||||
|
nr_fill_indication(gNB, frame_rx, slot_rx, ULSCH_id, harq_pid, 1);
|
||||||
|
return;
|
||||||
|
}
|
||||||
gNB->pusch_vars[ULSCH_id]->ulsch_power_tot=0;
|
gNB->pusch_vars[ULSCH_id]->ulsch_power_tot=0;
|
||||||
gNB->pusch_vars[ULSCH_id]->ulsch_noise_power_tot=0;
|
gNB->pusch_vars[ULSCH_id]->ulsch_noise_power_tot=0;
|
||||||
for (int aarx=0;aarx<gNB->frame_parms.nb_antennas_rx;aarx++) {
|
for (int aarx=0;aarx<gNB->frame_parms.nb_antennas_rx;aarx++) {
|
||||||
|
|||||||
@@ -1070,7 +1070,7 @@ int DU_send_UL_NR_RRC_MESSAGE_TRANSFER(instance_t instance,
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
LOG_I(F1AP, "Processing RRCSetupComplete UE %x\n", rnti);
|
LOG_I(F1AP, "Processing RRCSetupComplete UE %x\n", rnti);
|
||||||
ue_context_p->ue_context.Status = NR_RRC_CONNECTED;
|
ue_context_p->ue_context.status = NR_RRC_CONNECTED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
@@ -772,7 +772,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* DMRS */
|
/* DMRS */
|
||||||
l_prime_mask = get_l_prime(pusch_config_pdu->nr_of_symbols, mappingtype, add_pos, dmrslength, pusch_config_pdu->start_symbol_index, scc->dmrs_TypeA_Position);
|
l_prime_mask = get_l_prime(pusch_config_pdu->nr_of_symbols, mappingtype, add_pos, dmrslength, pusch_config_pdu->start_symbol_index, mac->scc->dmrs_TypeA_Position);
|
||||||
if ((mac->ULbwp[0] && pusch_config_pdu->transform_precoding == transform_precoder_disabled))
|
if ((mac->ULbwp[0] && pusch_config_pdu->transform_precoding == transform_precoder_disabled))
|
||||||
pusch_config_pdu->num_dmrs_cdm_grps_no_data = 1;
|
pusch_config_pdu->num_dmrs_cdm_grps_no_data = 1;
|
||||||
else if (*dci_format == NR_UL_DCI_FORMAT_0_0 || (mac->ULbwp[0] && pusch_config_pdu->transform_precoding == transform_precoder_enabled))
|
else if (*dci_format == NR_UL_DCI_FORMAT_0_0 || (mac->ULbwp[0] && pusch_config_pdu->transform_precoding == transform_precoder_enabled))
|
||||||
|
|||||||
@@ -806,19 +806,19 @@ void nr_add_msg3(module_id_t module_idP, int CC_id, frame_t frameP, sub_frame_t
|
|||||||
int scs = scc->uplinkConfigCommon->initialUplinkBWP->genericParameters.subcarrierSpacing;
|
int scs = scc->uplinkConfigCommon->initialUplinkBWP->genericParameters.subcarrierSpacing;
|
||||||
int fh = 0;
|
int fh = 0;
|
||||||
int startSymbolAndLength = scc->uplinkConfigCommon->initialUplinkBWP->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->startSymbolAndLength;
|
int startSymbolAndLength = scc->uplinkConfigCommon->initialUplinkBWP->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->startSymbolAndLength;
|
||||||
|
int mappingtype = scc->uplinkConfigCommon->initialUplinkBWP->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->mappingType;
|
||||||
|
|
||||||
if (ra->CellGroup) {
|
if (ra->CellGroup) {
|
||||||
AssertFatal(ra->CellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.count == 1,
|
AssertFatal(ra->CellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.count == 1,
|
||||||
"downlinkBWP_ToAddModList has %d BWP!\n", ra->CellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.count);
|
"downlinkBWP_ToAddModList has %d BWP!\n", ra->CellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.count);
|
||||||
NR_BWP_Uplink_t *ubwp = ra->CellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList->list.array[ra->bwp_id - 1];
|
NR_BWP_Uplink_t *ubwp = ra->CellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList->list.array[ra->bwp_id - 1];
|
||||||
|
|
||||||
|
|
||||||
startSymbolAndLength = ubwp->bwp_Common->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->startSymbolAndLength;
|
startSymbolAndLength = ubwp->bwp_Common->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->startSymbolAndLength;
|
||||||
|
mappingtype = ubwp->bwp_Common->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->mappingType;
|
||||||
abwp_size = NRRIV2BW(ubwp->bwp_Common->genericParameters.locationAndBandwidth, MAX_BWP_SIZE);
|
abwp_size = NRRIV2BW(ubwp->bwp_Common->genericParameters.locationAndBandwidth, MAX_BWP_SIZE);
|
||||||
abwp_start = NRRIV2PRBOFFSET(ubwp->bwp_Common->genericParameters.locationAndBandwidth, MAX_BWP_SIZE);
|
abwp_start = NRRIV2PRBOFFSET(ubwp->bwp_Common->genericParameters.locationAndBandwidth, MAX_BWP_SIZE);
|
||||||
scs = ubwp->bwp_Common->genericParameters.subcarrierSpacing;
|
scs = ubwp->bwp_Common->genericParameters.subcarrierSpacing;
|
||||||
fh = ubwp->bwp_Dedicated->pusch_Config->choice.setup->frequencyHopping ? 1 : 0;
|
fh = ubwp->bwp_Dedicated->pusch_Config->choice.setup->frequencyHopping ? 1 : 0;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG_D(NR_MAC, "Frame %d, Subframe %d Adding Msg3 UL Config Request for (%d,%d) : (%d,%d,%d) for rnti: %d\n",
|
LOG_D(NR_MAC, "Frame %d, Subframe %d Adding Msg3 UL Config Request for (%d,%d) : (%d,%d,%d) for rnti: %d\n",
|
||||||
@@ -833,7 +833,6 @@ void nr_add_msg3(module_id_t module_idP, int CC_id, frame_t frameP, sub_frame_t
|
|||||||
|
|
||||||
int start_symbol_index,nr_of_symbols;
|
int start_symbol_index,nr_of_symbols;
|
||||||
SLIV2SL(startSymbolAndLength, &start_symbol_index, &nr_of_symbols);
|
SLIV2SL(startSymbolAndLength, &start_symbol_index, &nr_of_symbols);
|
||||||
int mappingtype = ubwp->bwp_Common->pusch_ConfigCommon->choice.setup->pusch_TimeDomainAllocationList->list.array[ra->Msg3_tda_id]->mappingType;
|
|
||||||
|
|
||||||
pusch_pdu->pdu_bit_map = PUSCH_PDU_BITMAP_PUSCH_DATA;
|
pusch_pdu->pdu_bit_map = PUSCH_PDU_BITMAP_PUSCH_DATA;
|
||||||
pusch_pdu->rnti = ra->rnti;
|
pusch_pdu->rnti = ra->rnti;
|
||||||
|
|||||||
Reference in New Issue
Block a user