build fixes
This commit is contained in:
@@ -43,6 +43,7 @@ enum THREAD_INDEX { OPENAIR_THREAD_INDEX = 0,
|
|||||||
|
|
||||||
#define OPENAIR_THREAD_STACK_SIZE PTHREAD_STACK_MIN //4096 //RTL_PTHREAD_STACK_MIN*6
|
#define OPENAIR_THREAD_STACK_SIZE PTHREAD_STACK_MIN //4096 //RTL_PTHREAD_STACK_MIN*6
|
||||||
//#define DLC_THREAD_STACK_SIZE 4096 //DLC stack size
|
//#define DLC_THREAD_STACK_SIZE 4096 //DLC stack size
|
||||||
|
//#define UE_SLOT_PARALLELISATION
|
||||||
|
|
||||||
enum openair_SCHED_STATUS {
|
enum openair_SCHED_STATUS {
|
||||||
openair_SCHED_STOPPED=1,
|
openair_SCHED_STOPPED=1,
|
||||||
@@ -140,7 +141,9 @@ void phy_procedures_UE_TX(PHY_VARS_UE *phy_vars_ue,UE_rxtx_proc_t *proc,uint8_t
|
|||||||
*/
|
*/
|
||||||
int phy_procedures_UE_RX(PHY_VARS_UE *phy_vars_ue,UE_rxtx_proc_t *proc,uint8_t eNB_id,uint8_t abstraction_flag,runmode_t mode,relaying_type_t r_type,PHY_VARS_RN *phy_vars_rn);
|
int phy_procedures_UE_RX(PHY_VARS_UE *phy_vars_ue,UE_rxtx_proc_t *proc,uint8_t eNB_id,uint8_t abstraction_flag,runmode_t mode,relaying_type_t r_type,PHY_VARS_RN *phy_vars_rn);
|
||||||
|
|
||||||
|
#ifdef UE_SLOT_PARALLELISATION
|
||||||
void *UE_thread_fep_slot1(void *arg);
|
void *UE_thread_fep_slot1(void *arg);
|
||||||
|
#endif
|
||||||
|
|
||||||
/*! \brief Scheduling for UE TX procedures in TDD S-subframes.
|
/*! \brief Scheduling for UE TX procedures in TDD S-subframes.
|
||||||
@param phy_vars_ue Pointer to UE variables on which to act
|
@param phy_vars_ue Pointer to UE variables on which to act
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ fifo_dump_emos_UE emos_dump_UE;
|
|||||||
|
|
||||||
#define NS_PER_SLOT 500000
|
#define NS_PER_SLOT 500000
|
||||||
|
|
||||||
|
|
||||||
extern int oai_exit;
|
extern int oai_exit;
|
||||||
|
|
||||||
extern double cpuf;
|
extern double cpuf;
|
||||||
@@ -4146,7 +4147,7 @@ void ue_dlsch_procedures(PHY_VARS_UE *ue,
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
#ifdef UE_SLOT_PARALLELISATION
|
||||||
/*!
|
/*!
|
||||||
* \brief This is the UE synchronize thread.
|
* \brief This is the UE synchronize thread.
|
||||||
* It performs band scanning and synchonization.
|
* It performs band scanning and synchonization.
|
||||||
|
|||||||
@@ -843,6 +843,7 @@ void *UE_thread(void *arg) {
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef UE_SLOT_PARALLELISATION
|
||||||
void *UE_thread_fep_slot1(void *arg) {
|
void *UE_thread_fep_slot1(void *arg) {
|
||||||
|
|
||||||
static __thread int UE_thread_rxtx_retval;
|
static __thread int UE_thread_rxtx_retval;
|
||||||
@@ -1095,6 +1096,8 @@ void *UE_thread_fep_slot1(void *arg) {
|
|||||||
free(arg);
|
free(arg);
|
||||||
return &UE_thread_rxtx_retval;
|
return &UE_thread_rxtx_retval;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Initialize the UE theads.
|
* \brief Initialize the UE theads.
|
||||||
* Creates the UE threads:
|
* Creates the UE threads:
|
||||||
@@ -1109,7 +1112,9 @@ void *UE_thread_fep_slot1(void *arg) {
|
|||||||
*/
|
*/
|
||||||
void init_UE_threads(PHY_VARS_UE *UE) {
|
void init_UE_threads(PHY_VARS_UE *UE) {
|
||||||
struct rx_tx_thread_data *rtd;
|
struct rx_tx_thread_data *rtd;
|
||||||
|
#ifdef UE_SLOT_PARALLELISATION
|
||||||
struct fep_slot1_thread_data *fep_slot1_data;
|
struct fep_slot1_thread_data *fep_slot1_data;
|
||||||
|
#endif
|
||||||
|
|
||||||
pthread_attr_init (&UE->proc.attr_ue);
|
pthread_attr_init (&UE->proc.attr_ue);
|
||||||
pthread_attr_setstacksize(&UE->proc.attr_ue,8192);//5*PTHREAD_STACK_MIN);
|
pthread_attr_setstacksize(&UE->proc.attr_ue,8192);//5*PTHREAD_STACK_MIN);
|
||||||
@@ -1130,9 +1135,12 @@ void init_UE_threads(PHY_VARS_UE *UE) {
|
|||||||
UE->proc.proc_rxtx[i].sub_frame_step=nb_threads;
|
UE->proc.proc_rxtx[i].sub_frame_step=nb_threads;
|
||||||
pthread_create(&UE->proc.proc_rxtx[i].pthread_rxtx, NULL, UE_thread_rxn_txnp4, rtd);
|
pthread_create(&UE->proc.proc_rxtx[i].pthread_rxtx, NULL, UE_thread_rxn_txnp4, rtd);
|
||||||
|
|
||||||
|
#ifdef UE_SLOT_PARALLELISATION
|
||||||
pthread_mutex_init(&UE->proc.proc_rxtx[i].mutex_fep_slot1,NULL);
|
pthread_mutex_init(&UE->proc.proc_rxtx[i].mutex_fep_slot1,NULL);
|
||||||
pthread_cond_init(&UE->proc.proc_rxtx[i].cond_fep_slot1,NULL);
|
pthread_cond_init(&UE->proc.proc_rxtx[i].cond_fep_slot1,NULL);
|
||||||
pthread_create(&UE->proc.proc_rxtx[i].pthread_fep_slot1,NULL,UE_thread_fep_slot1, rtd);
|
pthread_create(&UE->proc.proc_rxtx[i].pthread_fep_slot1,NULL,UE_thread_fep_slot1, rtd);
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
pthread_create(&UE->proc.pthread_synch,NULL,UE_thread_synch,(void*)UE);
|
pthread_create(&UE->proc.pthread_synch,NULL,UE_thread_synch,(void*)UE);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user