Merge remote-tracking branch 'origin' into enhancement-10-harmony

Merge in develop too.
Conflicts:
	cmake_targets/CMakeLists.txt
	openair1/PHY/CODING/3gpplte_sse.c
	openair1/PHY/LTE_TRANSPORT/phich.c
	openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
	openair1/SCHED/phy_mac_stub.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	targets/RT/USER/lte-softmodem.c
This commit is contained in:
Raymond Knopp
2016-06-21 23:36:23 -07:00
106 changed files with 13856 additions and 1384 deletions
+1 -1
View File
@@ -1275,7 +1275,7 @@ void print_opp_meas(void) {
print_meas(&softmodem_stats_rx_sf,"[eNB][total_phy_proc_rx]",NULL,NULL);
}
}
void init_eNB(eNB_func_t node_function) {
+43 -2
View File
@@ -51,6 +51,9 @@
#include <execinfo.h>
#include <getopt.h>
#include <sys/sysinfo.h>
#include "T.h"
#include "rt_wrapper.h"
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
@@ -402,8 +405,13 @@ void help (void) {
printf(" -U Set the lte softmodem as a UE\n");
printf(" -W Enable L2 wireshark messages on localhost \n");
printf(" -V Enable VCD (generated file will be located atopenair_dump_eNB.vcd, read it with target/RT/USER/eNB.gtkw\n");
printf(" -x Set the transmission mode, valid options: 1 \n"RESET);
printf(" -x Set the transmission mode, valid options: 1 \n");
#if T_TRACER
printf(" --T_port [port] use given port\n");
printf(" --T_nowait don't wait for tracer, start immediately\n");
#endif
printf(RESET);
fflush(stdout);
}
void exit_fun(const char* s)
@@ -670,6 +678,11 @@ static void get_options (int argc, char **argv)
LONG_OPTION_RCC,
LONG_OPTION_RRU,
LONG_OPTION_ENB
#if T_TRACER
,
LONG_OPTION_T_PORT,
LONG_OPTION_T_NOWAIT,
#endif
};
static const struct option long_options[] = {
@@ -691,6 +704,10 @@ static void get_options (int argc, char **argv)
{"RCC", no_argument, NULL, LONG_OPTION_RCC},
{"RRU", no_argument, NULL, LONG_OPTION_RRU},
{"eNB", no_argument, NULL, LONG_OPTION_ENB},
#if T_TRACER
{"T_port", required_argument, 0, LONG_OPTION_T_PORT},
{"T_nowait", no_argument, 0, LONG_OPTION_T_NOWAIT},
#endif
{NULL, 0, NULL, 0}
};
@@ -790,6 +807,21 @@ static void get_options (int argc, char **argv)
node_function = eNodeB_3GPP;
break;
#if T_TRACER
case LONG_OPTION_T_PORT: {
extern int T_port;
if (optarg == NULL) abort(); /* should not happen */
T_port = atoi(optarg);
break;
}
case LONG_OPTION_T_NOWAIT: {
extern int T_wait;
T_wait = 0;
break;
}
#endif
case 'A':
timing_advance = atoi (optarg);
break;
@@ -1135,6 +1167,11 @@ static void get_options (int argc, char **argv)
}
}
#if T_TRACER
int T_wait = 1; /* by default we wait for the tracer */
int T_port = 2021; /* default port to listen to to wait for the tracer */
#endif
int main( int argc, char **argv )
{
int i,aa,card=0;
@@ -1198,6 +1235,10 @@ int main( int argc, char **argv )
else
openair0_cfg[0].configFilename = rf_config_file;
#if T_TRACER
T_init(T_port, T_wait);
#endif
// initialize the log (see log.h for details)
set_glog(glog_level, glog_verbosity);
+19 -1
View File
@@ -113,6 +113,8 @@ char smbv_ip[16];
# include "create_tasks.h"
#endif
#include "T.h"
/*
DCI0_5MHz_TDD0_t UL_alloc_pdu;
DCI1A_5MHz_TDD_1_6_t CCCH_alloc_pdu;
@@ -245,6 +247,10 @@ help (void)
printf ("-Y Set the global log verbosity (none, low, medium, high, full) \n");
printf ("-z Set the cooperation flag (0 for no cooperation, 1 for delay diversity and 2 for distributed alamouti\n");
printf ("-Z Reserved\n");
#if T_TRACER
printf ("--T_port [port] use given port\n");
printf ("--T_nowait don't wait for tracer, start immediately\n");
#endif
}
pthread_t log_thread;
@@ -739,7 +745,8 @@ l2l1_task (void *args_p)
+ oai_emulation.info.nb_enb_local));
eNB_inst++) {
if (oai_emulation.info.cli_start_enb[eNB_inst] != 0) {
if ((slot & 1) == 0)
if ((slot & 1) == 0) {
T(T_ENB_MASTER_TICK, T_INT(eNB_inst), T_INT(frame % 1024), T_INT(slot/2));
LOG_D(EMU,
"PHY procedures eNB %d for frame %d, slot %d (subframe TX %d, RX %d) TDD %d/%d Nid_cell %d\n",
eNB_inst,
@@ -750,6 +757,7 @@ l2l1_task (void *args_p)
PHY_vars_eNB_g[eNB_inst][0]->lte_frame_parms.frame_type,
PHY_vars_eNB_g[eNB_inst][0]->lte_frame_parms.tdd_config,
PHY_vars_eNB_g[eNB_inst][0]->lte_frame_parms.Nid_cell);
}
#ifdef OPENAIR2
//Application: traffic gen
@@ -1247,6 +1255,11 @@ l2l1_task (void *args_p)
return NULL;
}
#if T_TRACER
int T_wait = 1; /* by default we wait for the tracer */
int T_port = 2021; /* default port to listen to to wait for the tracer */
#endif
/*------------------------------------------------------------------------------*/
int
main (int argc, char **argv)
@@ -1263,6 +1276,7 @@ main (int argc, char **argv)
int node_id;
int port,Process_Flag=0,wgt,Channel_Flag=0,temp;
#endif
//default parameters
oai_emulation.info.n_frames = MAX_FRAME_NUMBER; //1024; //10;
oai_emulation.info.n_frames_flag = 0; //fixme
@@ -1279,6 +1293,10 @@ main (int argc, char **argv)
// get command-line options
get_simulation_options (argc, argv); //Command-line options
#if T_TRACER
T_init(T_port, T_wait);
#endif
// Initialize VCD LOG module
VCD_SIGNAL_DUMPER_INIT (oai_emulation.info.vcd_file);
+25
View File
@@ -212,6 +212,11 @@ void get_simulation_options(int argc, char *argv[])
LONG_OPTION_PHYTEST,
LONG_OPTION_XFORMS,
#if T_TRACER
LONG_OPTION_T_PORT,
LONG_OPTION_T_NOWAIT,
#endif
};
static struct option long_options[] = {
@@ -246,6 +251,11 @@ void get_simulation_options(int argc, char *argv[])
{"phy-test", no_argument, NULL, LONG_OPTION_PHYTEST},
{"xforms", no_argument, 0, LONG_OPTION_XFORMS},
#if T_TRACER
{"T_port", required_argument, 0, LONG_OPTION_T_PORT},
{"T_nowait", no_argument, 0, LONG_OPTION_T_NOWAIT},
#endif
{NULL, 0, NULL, 0}
};
@@ -413,6 +423,21 @@ void get_simulation_options(int argc, char *argv[])
xforms=1;
break;
#if T_TRACER
case LONG_OPTION_T_PORT: {
extern int T_port;
if (optarg == NULL) abort(); /* should not happen */
T_port = atoi(optarg);
break;
}
case LONG_OPTION_T_NOWAIT: {
extern int T_wait;
T_wait = 0;
break;
}
#endif
case 'a':
abstraction_flag = 1;
break;