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);
|
int init_frame_parms(LTE_DL_FRAME_PARMS *frame_parms,uint8_t osf);
|
||||||
void dump_frame_parms(LTE_DL_FRAME_PARMS *frame_parms);
|
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);
|
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
|
//overwrite for new NR parameters
|
||||||
gNB_config->subframe_config.numerology_index_mu.value = 1;
|
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.dl_channel_bandwidth.value = 106;
|
||||||
gNB_config->rf_config.ul_channel_bandwidth.value = 106;
|
gNB_config->rf_config.ul_channel_bandwidth.value = 106;
|
||||||
gNB_config->sch_config.half_frame_index = 0;
|
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;
|
fp->threequarter_fs = 0;
|
||||||
|
|
||||||
nr_init_frame_parms(fp,1);
|
nr_init_frame_parms(gNB_config, fp);
|
||||||
|
|
||||||
gNB->configured = 1;
|
gNB->configured = 1;
|
||||||
LOG_I(PHY,"gNB configured\n");
|
LOG_I(PHY,"gNB configured\n");
|
||||||
|
|||||||
@@ -26,13 +26,13 @@
|
|||||||
uint32_t nr_subcarrier_spacing[MAX_NUM_SUBCARRIER_SPACING] = {15e3, 30e3, 60e3, 120e3, 240e3};
|
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};
|
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)
|
NR_DL_FRAME_PARMS *frame_parms)
|
||||||
{
|
{
|
||||||
|
|
||||||
int N_RB = config.rf_config.dl_channel_bandwidth.value;
|
int N_RB = config->rf_config.dl_channel_bandwidth.value;
|
||||||
int Ncp = config.subframe_config.dl_cyclic_prefix_type.value;
|
int Ncp = config->subframe_config.dl_cyclic_prefix_type.value;
|
||||||
int mu = config.subframe_config.numerology_index_mu.value;
|
int mu = config->subframe_config.numerology_index_mu.value;
|
||||||
|
|
||||||
#if DISABLE_LOG_X
|
#if DISABLE_LOG_X
|
||||||
printf("Initializing frame parms for mu %d, N_RB %d, Ncp %d\n",mu, N_RB, Ncp);
|
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);
|
LOG_I(PHY,"Initializing gNB %d CC_id %d\n",inst,CC_id);
|
||||||
#endif
|
#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");
|
LOG_I(PHY,"Registering with MAC interface module\n");
|
||||||
AssertFatal((gNB->if_inst = IF_Module_init(inst))!=NULL,"Cannot register interface");
|
AssertFatal((gNB->if_inst = IF_Module_init(inst))!=NULL,"Cannot register interface");
|
||||||
gNB->if_inst->schedule_response = schedule_response;
|
gNB->if_inst->schedule_response = schedule_response;
|
||||||
|
|||||||
@@ -1375,8 +1375,7 @@ static void* ru_thread( void* param ) {
|
|||||||
}
|
}
|
||||||
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);
|
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_dump_frame_parms(fp);
|
||||||
nr_phy_init_RU(ru);
|
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]; */
|
ru->nr_frame_parms.prach_config_common.prach_ConfigInfo.prach_ConfigIndex = config->prach_ConfigIndex[0]; */
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fill_rf_config(ru,ru->rf_config_file);
|
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);
|
nr_phy_init_RU(ru);
|
||||||
|
|
||||||
|
|||||||
@@ -118,14 +118,14 @@ unsigned short config_frames[4] = {2,9,11,13};
|
|||||||
#ifdef XFORMS
|
#ifdef XFORMS
|
||||||
// current status is that every UE has a DL scope for a SINGLE eNB (gnb_id=0)
|
// 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
|
// at eNB 0, an UL scope for every UE
|
||||||
/*
|
|
||||||
FD_lte_phy_scope_ue *form_ue[NUMBER_OF_UE_MAX];
|
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_lte_phy_scope_enb *form_enb[MAX_NUM_CCs][NUMBER_OF_UE_MAX];
|
||||||
FD_stats_form *form_stats=NULL,*form_stats_l2=NULL;
|
FD_stats_form *form_stats=NULL,*form_stats_l2=NULL;
|
||||||
char title[255];
|
char title[255];
|
||||||
unsigned char scope_enb_num_ue = 2;
|
unsigned char scope_enb_num_ue = 2;
|
||||||
static pthread_t forms_thread; //xforms
|
static pthread_t forms_thread; //xforms
|
||||||
*/
|
|
||||||
#endif //XFORMS
|
#endif //XFORMS
|
||||||
|
|
||||||
pthread_cond_t nfapi_sync_cond;
|
pthread_cond_t nfapi_sync_cond;
|
||||||
@@ -388,7 +388,7 @@ void reset_stats(FL_OBJECT *button, long arg)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
static void *scope_thread(void *arg) {
|
static void *scope_thread(void *arg) {
|
||||||
|
|
||||||
# ifdef ENABLE_XFORMS_WRITE_STATS
|
# ifdef ENABLE_XFORMS_WRITE_STATS
|
||||||
@@ -438,7 +438,7 @@ static void *scope_thread(void *arg) {
|
|||||||
# endif
|
# endif
|
||||||
|
|
||||||
pthread_exit((void*)arg);
|
pthread_exit((void*)arg);
|
||||||
}*/
|
}
|
||||||
#endif
|
#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)
|
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);
|
RC.ru_mask |= (1 << ru->idx);
|
||||||
/* copy the changed frame parameters to the RU */
|
/* copy the changed frame parameters to the RU */
|
||||||
/* TODO this should be done for all RUs associated to this gNB */
|
/* 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]);
|
set_function_spec_param(RC.ru[gnb_id]);
|
||||||
|
|
||||||
LOG_I(ENB_APP, "attempting to create ITTI tasks\n");
|
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);
|
pthread_mutex_init(&sync_mutex, NULL);
|
||||||
|
|
||||||
#ifdef XFORMS
|
#ifdef XFORMS
|
||||||
/*
|
|
||||||
int UE_id;
|
int UE_id;
|
||||||
|
|
||||||
printf("XFORMS\n");
|
printf("XFORMS\n");
|
||||||
@@ -1132,7 +1132,7 @@ int main( int argc, char **argv )
|
|||||||
|
|
||||||
printf("Scope thread created, ret=%d\n",ret);
|
printf("Scope thread created, ret=%d\n",ret);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
rt_sleep_ns(10*100000000ULL);
|
rt_sleep_ns(10*100000000ULL);
|
||||||
|
|||||||
Reference in New Issue
Block a user