modified uhd set priority to USRP only
This commit is contained in:
+2
-2
@@ -1209,9 +1209,9 @@ static void *ru_thread_tx( void *param ) {
|
|||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
|
||||||
if(ru->if_south == LOCAL_RF)
|
if(ru->rfdevice.uhd_set_thread_priority != NULL)
|
||||||
{
|
{
|
||||||
//uhd_set_thread_prio();
|
ru->rfdevice.uhd_set_thread_priority();
|
||||||
LOG_I(PHY,"set ru_thread_tx uhd priority");
|
LOG_I(PHY,"set ru_thread_tx uhd priority");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -109,7 +109,6 @@ int load_lib(openair0_device *device, openair0_config_t *openair0_cfg, eth_param
|
|||||||
else
|
else
|
||||||
libname=OAI_RF_LIBNAME;
|
libname=OAI_RF_LIBNAME;
|
||||||
shlib_fdesc[0].fname="device_init";
|
shlib_fdesc[0].fname="device_init";
|
||||||
//shlib_fdesc[1].fname="uhd_set_thread_priority";
|
|
||||||
} else {
|
} else {
|
||||||
libname=OAI_TP_LIBNAME;
|
libname=OAI_TP_LIBNAME;
|
||||||
shlib_fdesc[0].fname="transport_init";
|
shlib_fdesc[0].fname="transport_init";
|
||||||
@@ -119,13 +118,12 @@ int load_lib(openair0_device *device, openair0_config_t *openair0_cfg, eth_param
|
|||||||
LOG_E(HW,"Library %s couldn't be loaded\n",libname);
|
LOG_E(HW,"Library %s couldn't be loaded\n",libname);
|
||||||
} else {
|
} else {
|
||||||
ret=((devfunc_t)shlib_fdesc[0].fptr)(device,openair0_cfg,cfg);
|
ret=((devfunc_t)shlib_fdesc[0].fptr)(device,openair0_cfg,cfg);
|
||||||
//uhd_set_thread_priority_fun = (set_prio_func_t)shlib_fdesc[1].fptr;
|
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
void uhd_set_thread_prio(void) {
|
/*void uhd_set_thread_prio(void) {
|
||||||
|
|
||||||
loader_shlibfunc_t shlib_fdesc[1];
|
loader_shlibfunc_t shlib_fdesc[1];
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
@@ -135,17 +133,17 @@ void uhd_set_thread_prio(void) {
|
|||||||
libname="rfsimulator";
|
libname="rfsimulator";
|
||||||
else
|
else
|
||||||
libname=OAI_RF_LIBNAME;
|
libname=OAI_RF_LIBNAME;
|
||||||
//shlib_fdesc[0].fname="uhd_set_thread_priority";
|
shlib_fdesc[0].fname="uhd_set_thread_priority";
|
||||||
ret=load_module_shlib(libname,shlib_fdesc,1,NULL);
|
ret=load_module_shlib(libname,shlib_fdesc,1,NULL);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
LOG_E(HW,"Library %s couldn't be loaded\n",libname);
|
LOG_E(HW,"Library %s couldn't be loaded\n",libname);
|
||||||
} else {
|
} else {
|
||||||
//(set_prio_func_t)shlib_fdesc[0].fptr();
|
(set_prio_func_t)shlib_fdesc[0].fptr();
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
}
|
}*/
|
||||||
*/
|
|
||||||
|
|
||||||
int openair0_device_load(openair0_device *device, openair0_config_t *openair0_cfg) {
|
int openair0_device_load(openair0_device *device, openair0_config_t *openair0_cfg) {
|
||||||
|
|
||||||
|
|||||||
@@ -387,6 +387,10 @@ struct openair0_device_t {
|
|||||||
* \param arg pointer to capabilities or configuration
|
* \param arg pointer to capabilities or configuration
|
||||||
*/
|
*/
|
||||||
void (*configure_rru)(int idx, void *arg);
|
void (*configure_rru)(int idx, void *arg);
|
||||||
|
|
||||||
|
/*! \brief set UHD thread priority
|
||||||
|
*/
|
||||||
|
void (*uhd_set_thread_priority)(void);
|
||||||
};
|
};
|
||||||
|
|
||||||
/* type of device init function, implemented in shared lib */
|
/* type of device init function, implemented in shared lib */
|
||||||
@@ -445,9 +449,7 @@ int openair0_set_rx_frequencies(openair0_device *device, openair0_config_t *open
|
|||||||
#define gettid() syscall(__NR_gettid)
|
#define gettid() syscall(__NR_gettid)
|
||||||
/*@}*/
|
/*@}*/
|
||||||
|
|
||||||
void uhd_set_thread_prio(void);
|
|
||||||
typedef void(*set_prio_func_t)(void);
|
|
||||||
//set_prio_func_t uhd_set_thread_priority_fun;
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -907,6 +907,12 @@ int trx_usrp_reset_stats(openair0_device *device) {
|
|||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*! \brief Set uhd priority
|
||||||
|
*/
|
||||||
|
void uhd_set_thread_priority(void) {
|
||||||
|
uhd::set_thread_priority_safe(1.0);
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(USRP_REC_PLAY)
|
#if defined(USRP_REC_PLAY)
|
||||||
extern "C" {
|
extern "C" {
|
||||||
/*! \brief Initializer for USRP record/playback config
|
/*! \brief Initializer for USRP record/playback config
|
||||||
@@ -1044,6 +1050,7 @@ extern "C" {
|
|||||||
device->trx_set_freq_func = trx_usrp_set_freq;
|
device->trx_set_freq_func = trx_usrp_set_freq;
|
||||||
device->trx_set_gains_func = trx_usrp_set_gains;
|
device->trx_set_gains_func = trx_usrp_set_gains;
|
||||||
device->openair0_cfg = openair0_cfg;
|
device->openair0_cfg = openair0_cfg;
|
||||||
|
device->uhd_set_thread_priority = uhd_set_thread_priority;
|
||||||
std::cerr << "USRP device initialized in subframes replay mode for " << u_sf_loops << " loops. Use mmap="
|
std::cerr << "USRP device initialized in subframes replay mode for " << u_sf_loops << " loops. Use mmap="
|
||||||
<< use_mmap << std::endl;
|
<< use_mmap << std::endl;
|
||||||
} else {
|
} else {
|
||||||
@@ -1463,9 +1470,6 @@ extern "C" {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void uhd_set_thread_priority(void) {
|
|
||||||
uhd::set_thread_priority_safe(1.0);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
/*@}*/
|
/*@}*/
|
||||||
|
|||||||
Reference in New Issue
Block a user