Rel8 limits the implementation to 3GPP Release 8 version
Rel8 limits the implementation to 3GPP Release 8 version
-w | --hardware
-w | --hardware
EXMIMO (Default), USRP, BLADERF, ETHERNET, None
EXMIMO (Default), USRP, BLADERF, None
Adds this RF board support (in external packages installation and in compilation)
Adds this RF board support (in external packages installation and in compilation)
-t | --transport protocol
ETHERNET , None
Adds this trasport protocol support in compilation
--oaisim
--oaisim
Makes the oaisim simulator. Hardware will be defaulted to "NONE".
Makes the oaisim simulator. Hardware will be defaulted to "None".
--phy_simulators
--phy_simulators
Makes the unitary tests Layer 1 simulators
Makes the unitary tests Layer 1 simulators
--core_simulators
--core_simulators
...
@@ -115,6 +119,8 @@ Options
...
@@ -115,6 +119,8 @@ Options
Shows detailed compilation instructions in makefile
Shows detailed compilation instructions in makefile
--cflags_processor
--cflags_processor
Manually Add CFLAGS of processor if they are not detected correctly by script. Only add these flags if you know your processor supports them. Example flags: -msse3 -msse4.1 -msse4.2 -mavx2
Manually Add CFLAGS of processor if they are not detected correctly by script. Only add these flags if you know your processor supports them. Example flags: -msse3 -msse4.1 -msse4.2 -mavx2
--build-doxygen
Builds doxygen based documentation.
--disable-deadline
--disable-deadline
Disables deadline scheduler of Linux kernel (>=3.14.x).
Disables deadline scheduler of Linux kernel (>=3.14.x).
--enable-deadline
--enable-deadline
...
@@ -170,18 +176,30 @@ function main() {
...
@@ -170,18 +176,30 @@ function main() {
shift;;
shift;;
-r|--3gpp-release)
-r|--3gpp-release)
REL=$2
REL=$2
echo_info "setting release to: $REL"
echo_info "Setting release to: $REL"
shift 2;;
shift 2;;
-w|--hardware)
-w|--hardware)
HW="$2"#"${i#*=}"
HW="$2"#"${i#*=}"
# Use OAI_USRP as the key word USRP is used inside UHD driver
# Use OAI_USRP as the key word USRP is used inside UHD driver
//! opaque BladeRF device struct. An empty ("") or NULL device identifier will result in the first encountered device being opened (using the first discovered backend)
structbladerf*dev;
structbladerf*dev;
// An empty ("") or NULL device identifier will result in the first encountered device being opened (using the first discovered backend)
//! Number of buffers
unsignedintnum_buffers;
unsignedintnum_buffers;
//! Buffer size
unsignedintbuffer_size;
unsignedintbuffer_size;
//! Number of transfers
unsignedintnum_transfers;
unsignedintnum_transfers;
//! RX timeout
unsignedintrx_timeout_ms;
unsignedintrx_timeout_ms;
//! TX timeout
unsignedinttx_timeout_ms;
unsignedinttx_timeout_ms;
//! Metadata for RX
structbladerf_metadatameta_rx;
structbladerf_metadatameta_rx;
//!Metadata for TX
structbladerf_metadatameta_tx;
structbladerf_metadatameta_tx;
//! Sample rate
unsignedintsample_rate;
unsignedintsample_rate;
// time offset between transmiter timestamp and receiver timestamp;
//! time offset between transmiter timestamp and receiver timestamp;
doubletdiff;
doubletdiff;
// use brf_time_offset to get this value
//! TX number of forward samples use brf_time_offset to get this value
AssertFatal((mod_enb->devs->openair0_cfg->num_rb_dl==100||mod_enb->devs->openair0_cfg->num_rb_dl==50||mod_enb->devs->openair0_cfg->num_rb_dl==25||mod_enb->devs->openair0_cfg->num_rb_dl==6),"Invalid number of resource blocks! %d\n",mod_enb->devs->openair0_cfg->num_rb_dl);
AssertFatal((mod_enb->devs->openair0_cfg.num_rb_dl==100||mod_enb->devs->openair0_cfg.num_rb_dl==50||mod_enb->devs->openair0_cfg.num_rb_dl==25||mod_enb->devs->openair0_cfg.num_rb_dl==6),"Invalid number of resource blocks! %d\n",mod_enb->devs->openair0_cfg.num_rb_dl);
AssertFatal(mod_enb->devs->openair0_cfg->samples_per_frame>0,"Invalid number of samples per frame! %d\n",mod_enb->devs->openair0_cfg->samples_per_frame);
AssertFatal(mod_enb->devs->openair0_cfg.samples_per_frame>0,"Invalid number of samples per frame! %d\n",mod_enb->devs->openair0_cfg.samples_per_frame);
AssertFatal(mod_enb->devs->openair0_cfg->samples_per_packet>0,"Invalid number of samples per packet! %d\n",mod_enb->devs->openair0_cfg->samples_per_packet);
AssertFatal(mod_enb->devs->openair0_cfg.samples_per_packet>0,"Invalid number of samples per packet! %d\n",mod_enb->devs->openair0_cfg.samples_per_packet);
AssertFatal(mod_enb->devs->openair0_cfg->rx_num_channels>0,"Invalid number of RX antennas! %d\n",mod_enb->devs->openair0_cfg->rx_num_channels);
AssertFatal(mod_enb->devs->openair0_cfg.rx_num_channels>0,"Invalid number of RX antennas! %d\n",mod_enb->devs->openair0_cfg.rx_num_channels);
AssertFatal(mod_enb->devs->openair0_cfg->tx_num_channels>0,"Invalid number of TX antennas! %d\n",mod_enb->devs->openair0_cfg->tx_num_channels);
AssertFatal(mod_enb->devs->openair0_cfg.tx_num_channels>0,"Invalid number of TX antennas! %d\n",mod_enb->devs->openair0_cfg.tx_num_channels);