NR parms fix
This commit is contained in:
@@ -372,6 +372,8 @@ void phy_config_request(PHY_Config_t *phy_config);
|
||||
|
||||
int init_frame_parms(LTE_DL_FRAME_PARMS *frame_parms,uint8_t osf);
|
||||
void dump_frame_parms(LTE_DL_FRAME_PARMS *frame_parms);
|
||||
int nr_init_frame_parms(nfapi_config_request_t* config,
|
||||
NR_DL_FRAME_PARMS *frame_parms);
|
||||
void nr_phy_config_request(PHY_VARS_gNB *gNB);
|
||||
|
||||
/** @} */
|
||||
|
||||
@@ -339,7 +339,7 @@ void nr_phy_config_request(PHY_VARS_gNB *gNB)
|
||||
|
||||
//overwrite for new NR parameters
|
||||
gNB_config->subframe_config.numerology_index_mu.value = 1;
|
||||
gNB_config->subframe_config.duplex_mode.value = FDD;
|
||||
gNB_config->subframe_config.duplex_mode.value = 1;//FDD
|
||||
gNB_config->rf_config.dl_channel_bandwidth.value = 106;
|
||||
gNB_config->rf_config.ul_channel_bandwidth.value = 106;
|
||||
gNB_config->sch_config.half_frame_index = 0;
|
||||
@@ -350,7 +350,7 @@ void nr_phy_config_request(PHY_VARS_gNB *gNB)
|
||||
|
||||
fp->threequarter_fs = 0;
|
||||
|
||||
nr_init_frame_parms(fp,1);
|
||||
nr_init_frame_parms(gNB_config, fp);
|
||||
|
||||
gNB->configured = 1;
|
||||
LOG_I(PHY,"gNB configured\n");
|
||||
|
||||
@@ -26,13 +26,13 @@
|
||||
uint32_t nr_subcarrier_spacing[MAX_NUM_SUBCARRIER_SPACING] = {15e3, 30e3, 60e3, 120e3, 240e3};
|
||||
uint16_t nr_slots_per_subframe[MAX_NUM_SUBCARRIER_SPACING] = {1, 2, 4, 16, 32};
|
||||
|
||||
int nr_init_frame_parms(nfapi_config_request_t config,
|
||||
int nr_init_frame_parms(nfapi_config_request_t* config,
|
||||
NR_DL_FRAME_PARMS *frame_parms)
|
||||
{
|
||||
|
||||
int N_RB = config.rf_config.dl_channel_bandwidth.value;
|
||||
int Ncp = config.subframe_config.dl_cyclic_prefix_type.value;
|
||||
int mu = config.subframe_config.numerology_index_mu.value;
|
||||
int N_RB = config->rf_config.dl_channel_bandwidth.value;
|
||||
int Ncp = config->subframe_config.dl_cyclic_prefix_type.value;
|
||||
int mu = config->subframe_config.numerology_index_mu.value;
|
||||
|
||||
#if DISABLE_LOG_X
|
||||
printf("Initializing frame parms for mu %d, N_RB %d, Ncp %d\n",mu, N_RB, Ncp);
|
||||
|
||||
@@ -923,11 +923,6 @@ void init_gNB(int single_thread_flag,int wait_for_sync) {
|
||||
LOG_I(PHY,"Initializing gNB %d CC_id %d\n",inst,CC_id);
|
||||
#endif
|
||||
|
||||
/*
|
||||
gNB->td = ulsch_decoding_data;//(single_thread_flag==1) ? ulsch_decoding_data_2thread : ulsch_decoding_data;
|
||||
gNB->te = dlsch_encoding;//(single_thread_flag==1) ? dlsch_encoding_2threads : dlsch_encoding;*/
|
||||
|
||||
|
||||
LOG_I(PHY,"Registering with MAC interface module\n");
|
||||
AssertFatal((gNB->if_inst = IF_Module_init(inst))!=NULL,"Cannot register interface");
|
||||
gNB->if_inst->schedule_response = schedule_response;
|
||||
|
||||
@@ -1373,10 +1373,9 @@ static void* ru_thread( void* param ) {
|
||||
else ret = attach_rru(ru);
|
||||
AssertFatal(ret==0,"Cannot connect to radio\n");
|
||||
}
|
||||
if (ru->if_south == LOCAL_RF) { // configure RF parameters only
|
||||
if (ru->if_south == LOCAL_RF) { // configure RF parameters only
|
||||
fill_rf_config(ru,ru->rf_config_file);
|
||||
nr_phy_config_request(ru->gNB_list[0]);
|
||||
nr_init_frame_parms(ru->gNB_list[0]->gNB_config, fp);
|
||||
nr_init_frame_parms(&ru->gNB_list[0]->gNB_config, fp);
|
||||
nr_dump_frame_parms(fp);
|
||||
nr_phy_init_RU(ru);
|
||||
|
||||
@@ -1901,10 +1900,8 @@ void configure_rru(int idx,
|
||||
ru->nr_frame_parms.prach_config_common.prach_ConfigInfo.prach_ConfigIndex = config->prach_ConfigIndex[0]; */
|
||||
|
||||
}
|
||||
|
||||
fill_rf_config(ru,ru->rf_config_file);
|
||||
nr_phy_config_request(ru->gNB_list[0]);
|
||||
nr_init_frame_parms(ru->gNB_list[0]->gNB_config, &ru->nr_frame_parms);
|
||||
nr_init_frame_parms(&ru->gNB_list[0]->gNB_config, &ru->nr_frame_parms);
|
||||
|
||||
nr_phy_init_RU(ru);
|
||||
|
||||
|
||||
@@ -118,14 +118,14 @@ unsigned short config_frames[4] = {2,9,11,13};
|
||||
#ifdef XFORMS
|
||||
// current status is that every UE has a DL scope for a SINGLE eNB (gnb_id=0)
|
||||
// at eNB 0, an UL scope for every UE
|
||||
/*
|
||||
|
||||
FD_lte_phy_scope_ue *form_ue[NUMBER_OF_UE_MAX];
|
||||
FD_lte_phy_scope_enb *form_enb[MAX_NUM_CCs][NUMBER_OF_UE_MAX];
|
||||
FD_stats_form *form_stats=NULL,*form_stats_l2=NULL;
|
||||
char title[255];
|
||||
unsigned char scope_enb_num_ue = 2;
|
||||
static pthread_t forms_thread; //xforms
|
||||
*/
|
||||
|
||||
#endif //XFORMS
|
||||
|
||||
pthread_cond_t nfapi_sync_cond;
|
||||
@@ -388,7 +388,7 @@ void reset_stats(FL_OBJECT *button, long arg)
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
|
||||
static void *scope_thread(void *arg) {
|
||||
|
||||
# ifdef ENABLE_XFORMS_WRITE_STATS
|
||||
@@ -438,7 +438,7 @@ static void *scope_thread(void *arg) {
|
||||
# endif
|
||||
|
||||
pthread_exit((void*)arg);
|
||||
}*/
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@@ -831,7 +831,7 @@ int stop_L1L2(module_id_t gnb_id)
|
||||
}
|
||||
|
||||
/*
|
||||
* Restart the lte-softmodem after it has been soft-stopped with stop_L1L2()
|
||||
* Restart the nr-softmodem after it has been soft-stopped with stop_L1L2()
|
||||
*/
|
||||
int restart_L1L2(module_id_t gnb_id)
|
||||
{
|
||||
@@ -851,7 +851,7 @@ int restart_L1L2(module_id_t gnb_id)
|
||||
RC.ru_mask |= (1 << ru->idx);
|
||||
/* copy the changed frame parameters to the RU */
|
||||
/* TODO this should be done for all RUs associated to this gNB */
|
||||
memcpy(&ru->frame_parms, &RC.gNB[gnb_id][0]->frame_parms, sizeof(NR_DL_FRAME_PARMS));
|
||||
memcpy(&ru->nr_frame_parms, &RC.gNB[gnb_id][0]->frame_parms, sizeof(NR_DL_FRAME_PARMS));
|
||||
set_function_spec_param(RC.ru[gnb_id]);
|
||||
|
||||
LOG_I(ENB_APP, "attempting to create ITTI tasks\n");
|
||||
@@ -1096,7 +1096,7 @@ int main( int argc, char **argv )
|
||||
pthread_mutex_init(&sync_mutex, NULL);
|
||||
|
||||
#ifdef XFORMS
|
||||
/*
|
||||
|
||||
int UE_id;
|
||||
|
||||
printf("XFORMS\n");
|
||||
@@ -1132,7 +1132,7 @@ int main( int argc, char **argv )
|
||||
|
||||
printf("Scope thread created, ret=%d\n",ret);
|
||||
}
|
||||
*/
|
||||
|
||||
#endif
|
||||
|
||||
rt_sleep_ns(10*100000000ULL);
|
||||
|
||||
Reference in New Issue
Block a user