From 817ee1a2173099e0e3cc4c429625643230117026 Mon Sep 17 00:00:00 2001 From: Gabriele Gemmi <gemmi.g@northeastern.edu> Date: Wed, 7 Dec 2022 17:24:25 +0000 Subject: [PATCH] Cleanup of external dependencies in the installs script Many useless dependencies have been removed or moved to the additional tools list of packages. Xforms and ue-ip module must now be built explicitly Removed support for Ubuntu 16. Addedd support for Debian 11 and Fedora 37 Squashed commits: removed all unused dependencies Applied patch from Robert + cleanup in the dependencies Applied patch from Robert + cleanup in the dependencies Moved xforms to optional packages, minor fixes remvoed ue_ip module from ue build fixes in the build script styling fixes Make RHEL8 ran-base build - Use EPEL 8 - Inside container there is no sudo, so remove superfluous -H - Install python3-mako Working build on fedora 36 Make build by install xxd Drop Ubuntu 16 support add pip3 again Correct software Drop useless software, maybe drop python too Fix: comment mistaken for package Remove Netinterfaces from optional packages (Ubuntu) Don't link xforms into 4G simulators: not needed Install xmlstarlet, required for physims Support for fedora 37 Remove irrelevant svn executable from physims Option to compile UE ip kernel module Install only relevant boost libs Removed --skip-broken Remove unnecessary vconfig,numpy,scipy dependencies Remove packages that have been installed (pkg-config), python, awk Remove unnecessary ntpsec package addedd support for debian 11 styiling fixes --- CMakeLists.txt | 9 +- cmake_targets/build_oai | 6 +- cmake_targets/tools/build_helper | 249 ++++++---------------------- docker/Dockerfile.base.rhel8.2 | 2 +- docker/Dockerfile.base.ubuntu18 | 2 +- docker/Dockerfile.phySim.rhel8.2 | 1 - executables/nr-softmodem.c | 1 - openair1/SIMULATION/LTE_PHY/dlsim.c | 29 ---- openair1/SIMULATION/LTE_PHY/ulsim.c | 15 -- 9 files changed, 63 insertions(+), 251 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2a781499ce..60f1f12e94 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2377,7 +2377,7 @@ target_link_libraries(nr-softmodem PRIVATE -Wl,--end-group z dl) target_link_libraries(nr-softmodem PRIVATE ${LIBXML2_LIBRARIES}) -target_link_libraries(nr-softmodem PRIVATE pthread m CONFIG_LIB rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} sctp ${XFORMS_LIBRARIES} ${CMAKE_DL_LIBS} ${ATLAS_LIBRARIES}) +target_link_libraries(nr-softmodem PRIVATE pthread m CONFIG_LIB rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} sctp ${CMAKE_DL_LIBS} ${ATLAS_LIBRARIES}) target_link_libraries(nr-softmodem PRIVATE ${LIB_LMS_LIBRARIES}) target_link_libraries(nr-softmodem PRIVATE ${T_LIB}) target_link_libraries(nr-softmodem PRIVATE asn1_nr_rrc asn1_lte_rrc) @@ -2424,7 +2424,7 @@ target_link_libraries(nr-uesoftmodem PRIVATE -Wl,--end-group z dl) target_link_libraries(nr-uesoftmodem PRIVATE ${LIBXML2_LIBRARIES}) -target_link_libraries(nr-uesoftmodem PRIVATE pthread m CONFIG_LIB rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${XFORMS_LIBRARIES} ${CMAKE_DL_LIBS} ${ATLAS_LIBRARIES}) +target_link_libraries(nr-uesoftmodem PRIVATE pthread m CONFIG_LIB rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${CMAKE_DL_LIBS} ${ATLAS_LIBRARIES}) target_link_libraries(nr-uesoftmodem PRIVATE ${LIB_LMS_LIBRARIES}) target_link_libraries(nr-uesoftmodem PRIVATE ${T_LIB}) target_link_libraries(nr-uesoftmodem PRIVATE asn1_nr_rrc asn1_lte_rrc) @@ -2465,7 +2465,7 @@ add_executable(rftest ${OPENAIR_DIR}/executables/softmodem-common.c ${SHLIB_LOADER_SOURCES} ) -target_link_libraries(rftest PRIVATE minimal_lib CONFIG_LIB PHY_NR_COMMON UTIL pthread dl m forms ${T_LIB} ) +target_link_libraries(rftest PRIVATE minimal_lib CONFIG_LIB PHY_NR_COMMON UTIL pthread dl m ${T_LIB} ) target_link_libraries(rftest PRIVATE asn1_lte_rrc asn1_nr_rrc) add_executable(polartest @@ -2631,14 +2631,13 @@ foreach(myExe dlsim dlsim_tm7 ulsim pbchsim scansim mbmssim pdcchsim pucchsim pr ${OPENAIR_DIR}/common/utils/lte/ue_power.c ${OPENAIR_DIR}/common/utils/lte/prach_utils.c ${OPENAIR1_DIR}/PHY/INIT/lte_param_init.c - ${XFORMS_SOURCE} ${T_SOURCE} ${SHLIB_LOADER_SOURCES} ${NFAPI_USER_DIR}/nfapi.c ) target_link_libraries (${myExe} PRIVATE -Wl,--start-group SIMU UTIL SCHED_LIB SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON PHY_NR_COMMON PHY PHY_UE PHY_RU ITTI -Wl,--end-group - pthread m rt CONFIG_LIB ${ATLAS_LIBRARIES} ${XFORMS_LIBRARIES} ${T_LIB} dl + pthread m rt CONFIG_LIB ${ATLAS_LIBRARIES} ${T_LIB} dl ) target_link_libraries(${myExe} PRIVATE asn1_nr_rrc asn1_lte_rrc) diff --git a/cmake_targets/build_oai b/cmake_targets/build_oai index 720d0f0c96..9fb2d64e4a 100755 --- a/cmake_targets/build_oai +++ b/cmake_targets/build_oai @@ -285,6 +285,10 @@ function main() { --UE-gen-nvram) gen_nvram_path=$(readlink -f "$2") shift 2;; + --UE-ip) + UE_ip=1 + echo_info "Will compile UE" + shift;; -w | --hardware) # Use OAI_USRP as the key word USRP is used inside UHD driver case "$2" in @@ -588,7 +592,7 @@ function main() { echo_info "Compiling UE specific part" - if [ $IS_CONTAINER -eq 0 ] + if [ $UE_ip -eq 1 ] then echo_info "Building ue_ip module" compilations $BUILD_DIR ue_ip diff --git a/cmake_targets/tools/build_helper b/cmake_targets/tools/build_helper index 029d25b236..3efac9da50 100755 --- a/cmake_targets/tools/build_helper +++ b/cmake_targets/tools/build_helper @@ -32,8 +32,8 @@ OS_DISTRO=$(grep "^ID=" /etc/os-release | sed "s/ID=//" | sed "s/\"//g") OS_RELEASE=$(grep "^VERSION_ID=" /etc/os-release | sed "s/VERSION_ID=//" | sed "s/\"//g") case "$OS_DISTRO" in fedora) OS_BASEDISTRO="fedora"; INSTALLER="dnf"; CMAKE="cmake" ;; - rhel) OS_BASEDISTRO="fedora"; INSTALLER="yum --skip-broken"; CMAKE="cmake3" ;; - centos) OS_BASEDISTRO="centos"; INSTALLER="yum --skip-broken"; CMAKE="cmake3" ;; + rhel) OS_BASEDISTRO="fedora"; INSTALLER="yum"; CMAKE="cmake3" ;; + centos) OS_BASEDISTRO="centos"; INSTALLER="yum"; CMAKE="cmake3" ;; debian) OS_BASEDISTRO="debian"; INSTALLER="apt-get"; CMAKE="cmake" ;; ubuntu) OS_BASEDISTRO="debian"; INSTALLER="apt-get"; CMAKE="cmake" ;; esac @@ -90,7 +90,6 @@ echo_info() { cecho "$*" $blue ;} # If we can't check the distribution, it returns "Unknown" # This function return always true as exit code by design # Examples: -# ubuntu16.04 # debian8.5 get_distribution_release() { if [[ ! -z "$OS_DISTRO$OS_RELEASE" ]]; then @@ -107,9 +106,9 @@ check_supported_distribution() { "ubuntu21.04") return 0 ;; "ubuntu20.04") return 0 ;; "ubuntu18.04") return 0 ;; - "ubuntu16.04") return 0 ;; - "fedora35") return 0 ;; + "debian11") return 0 ;; "fedora36") return 0 ;; + "fedora37") return 0 ;; "rhel7") return 0 ;; "rhel7.6") return 0 ;; "rhel7.7") return 0 ;; @@ -306,7 +305,8 @@ install_usrp_uhd_driver_from_source(){ } check_install_usrp_uhd_driver(){ - if [[ "$OS_DISTRO" == "ubuntu" ]]; then + if [[ "$OS_BASEDISTRO" == "debian" ]]; then + boost_libs_ubuntu="libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev libboost-test-dev libboost-regex-dev" #first we remove old installation $SUDO apt-get remove uhd -y || true $SUDO apt-get remove uhd-host -y || true @@ -323,8 +323,8 @@ check_install_usrp_uhd_driver(){ fi v=$(lsb_release -cs) $SUDO apt-add-repository --remove "deb http://files.ettus.com/binaries/uhd/repo/uhd/ubuntu/$v $v main" - if [[ -v BUILD_UHD_FROM_SOURCE ]]; then - $SUDO apt-get install -y libboost-all-dev libusb-1.0-0-dev doxygen python3-docutils python3-mako python3-numpy python3-requests python3-setuptools ninja-build + if [[ -v BUILD_UHD_FROM_SOURCE ]] || [[ "$OS_DISTRO" == "debian" ]]; then + $SUDO apt-get install -y $boost_libs_ubuntu libusb-1.0-0-dev doxygen python3-docutils python3-mako python3-numpy python3-requests python3-setuptools ninja-build install_usrp_uhd_driver_from_source return fi @@ -346,22 +346,20 @@ check_install_usrp_uhd_driver(){ x=$((x + 1)) done $SUDO apt-get update - $SUDO apt-get -y install python-tk libboost-all-dev libusb-1.0-0-dev + $SUDO apt-get -y install python-tk $boost_libs_ubuntu libusb-1.0-0-dev case "$(get_distribution_release)" in - "ubuntu16.04") - $SUDO apt-get -y install libuhd-dev libuhd3.15.0 uhd-host - ;; "ubuntu18.04" | "ubuntu20.04" | "ubuntu22.04") $SUDO apt-get -y install libuhd-dev libuhd4.2.0 uhd-host ;; esac elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then + boost_libs_fedora="boost-chrono boost-date-time boost-filesystem boost-program-options boost-thread boost-test boost-regex boost-devel" if [ $IS_CONTAINER -eq 0 ] then - $SUDO $INSTALLER -y install python boost libusb-devel libusbx-devel boost-devel python-mako python-docutils $CMAKE - $SUDO -H pip install requests + $SUDO $INSTALLER -y install python3 $boost_libs_fedora libusb-devel libusbx-devel python3-mako python3-docutils python3-pip $CMAKE + $SUDO pip3 install requests else - $SUDO $INSTALLER -y install boost boost-devel $CMAKE + $SUDO $INSTALLER -y install $boost_libs_fedora $CMAKE $SUDO pip3 install mako requests fi if [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then @@ -419,6 +417,8 @@ install_bladerf_driver_from_source(){ $SUDO ldconfig echo "Downloading FPGA and firmware images" cd /tmp/bladeRF + #wget has been removed from default dependencies, so we must be sure that's installed + $SUDO $INSTALLER -y install wget wget --tries=3 --retry-connrefused https://www.nuand.com/fx3/bladeRF_fw_latest.img wget --tries=3 --retry-connrefused https://www.nuand.com/fpga/hostedx40-latest.rbf sudo mkdir -p /usr/share/Nuand/bladeRF @@ -529,110 +529,42 @@ check_install_soapy () { check_install_additional_tools (){ $SUDO $INSTALLER update -y local optional_packages="" - if [[ "$OS_DISTRO" == "ubuntu" ]]; then + if [[ "$OS_BASEDISTRO" == "debian" ]]; then case "$(get_distribution_release)" in - "ubuntu16.04"| "ubuntu18.04") - optional_packages="python-dev python-pexpect python-numpy python-scipy python-matplotlib ctags" + "ubuntu18.04") + optional_packages="python-dev python-pip python-pyroute2 python python-numpy python-scipy python-matplotlib ctags" ;; - "ubuntu20.04" | "ubuntu21.04" | "ubuntu22.04" ) - optional_packages="python3 python3-pip python3-dev python3-scipy python3-matplotlib universal-ctags" + "ubuntu20.04" | "ubuntu21.04" | "ubuntu22.04" | "debian11" ) + optional_packages="python3 python3-pip python3-dev python3-scipy python3-matplotlib python3-pyroute2 universal-ctags" ;; esac PACKAGE_LIST="\ - check \ - dialog \ - dkms \ - gawk \ - libboost-all-dev \ + doxygen \ libpthread-stubs0-dev \ - openvpn \ - pkg-config \ - sshfs \ - swig \ tshark \ uml-utilities \ - unzip \ - valgrind \ - vlan \ - ntpdate \ iperf3 \ - android-tools-adb \ - wvdial \ - sshpass \ - bc \ - ntp" + libforms-bin \ + libforms-dev \ + xmlstarlet" elif [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then PACKAGE_LIST="\ - check \ - dialog \ - dkms \ - gawk \ - boost-devel \ - openvpn \ - pkgconfig \ - pexpect \ - sshfs \ - swig \ - wireshark \ - unzip \ - valgrind \ - vconfig \ + doxygen \ ctags \ - ntpdate \ iperf3 \ - wvdial \ - numpy \ - sshpass \ - python2-paramiko \ - python-pyroute2 \ - python-netifaces \ - scipy \ - python-matplotlib" + xforms \ + xforms-devel \ + xmlstarlet" elif [[ "$OS_DISTRO" == "fedora" ]]; then PACKAGE_LIST=" \ - check \ - dialog \ - dkms \ - gawk \ - boost-devel \ - openvpn \ - pkgconfig \ - python-pexpect \ - sshfs \ - swig \ - wireshark \ - unzip \ - valgrind \ - vconfig \ + doxygen \ ctags \ - ntpsec \ iperf3 \ - wvdial \ - python-numpy \ - sshpass \ - python-paramiko \ - python-pyroute2 \ - python-netifaces \ - python-scipy \ - python-matplotlib" + xforms \ + xforms-devel \ + xmlstarlet" fi $SUDO $INSTALLER install -y $PACKAGE_LIST $optional_packages - - #The packages below are already installed for Redhat distros (RHEL, CentOS, Fedora) - if [[ "$OS_DISTRO" == "ubuntu" ]]; then - $SUDO -H pip install paramiko - $SUDO -H pip install pyroute2 colorama - log_netiface=$OPENAIR_DIR/cmake_targets/log/netiface_install_log.txt - echo_info "Installing Netinterfaces package. The logfile for installation is in $log_netiface" - ( - $SUDO rm -fr /tmp/netifaces-0.10.4.tar.gz /tmp/netifaces - wget --tries=3 --retry-connrefused -P /tmp https://pypi.python.org/packages/18/fa/dd13d4910aea339c0bb87d2b3838d8fd923c11869b1f6e741dbd0ff3bc00/netifaces-0.10.4.tar.gz - tar -xzvf /tmp/netifaces-0.10.4.tar.gz -C /tmp - cd /tmp/netifaces-0.10.4 - $SUDO python setup.py install - cd - - ) >& $log_netiface - fi } check_install_oai_software() { @@ -642,91 +574,48 @@ check_install_oai_software() { exit 1 fi $SUDO $INSTALLER update -y - if [[ "$OS_DISTRO" == "ubuntu" ]]; then - local LAPACK_LIBNAME="liblapack.so" - local LAPACK_TARGET="/usr/lib/atlas-base/atlas/liblapack.so" + if [[ "$OS_BASEDISTRO" == "debian" ]]; then $SUDO apt install -y software-properties-common case "$(get_distribution_release)" in - "ubuntu16.04") - specific_packages="libtasn1-6-dev libgnutls-dev libatlas-dev iproute libconfig8-dev iptables-dev libgcrypt11-dev python-pip pydb python guile-2.0-dev" - ;; "ubuntu18.04") - specific_packages="libtasn1-6-dev libgnutls28-dev iproute2 libconfig-dev iptables-dev libgcrypt11-dev python-pip pydb python guile-2.0-dev" - LAPACK_LIBNAME="liblapack.so-x86_64-linux-gnu" - LAPACK_TARGET="/usr/lib/x86_64-linux-gnu/atlas/liblapack.so" + specific_packages="libgcrypt11-dev guile-2.0-dev" ;; "ubuntu20.04") - specific_packages="libtasn1-6-dev libgnutls28-dev iproute2 libconfig-dev python guile-2.0-dev" - LAPACK_LIBNAME="liblapack.so-x86_64-linux-gnu" - LAPACK_TARGET="/usr/lib/x86_64-linux-gnu/atlas/liblapack.so" + specific_packages="guile-2.0-dev" ;; "ubuntu21.04") - specific_packages="libtasn1-6-dev libgnutls28-dev iproute2 libconfig-dev python guile-2.0-dev" - LAPACK_LIBNAME="liblapack.so-x86_64-linux-gnu" - LAPACK_TARGET="/usr/lib/x86_64-linux-gnu/atlas/liblapack.so" + specific_packages="guile-2.0-dev" ;; "ubuntu22.04") - specific_packages="libtasn1-6-dev libgnutls28-dev iproute2 libconfig-dev python2 guile-2.2-dev" - LAPACK_LIBNAME="liblapack.so-x86_64-linux-gnu" - LAPACK_TARGET="/usr/lib/x86_64-linux-gnu/atlas/liblapack.so" + specific_packages="guile-2.2-dev" + ;; + "debian11") + specific_packages="guile-2.2-dev libz-dev" ;; esac $SUDO apt-get install -y \ $specific_packages \ - autoconf \ automake \ - bison \ build-essential \ $CMAKE \ - cmake-curses-gui \ - curl \ ninja-build \ - doxygen \ - doxygen-gui \ - texlive-latex-base \ - ethtool \ - flex \ - g++ \ - gcc \ - gdb \ + pkg-config \ git \ - graphviz \ - gtkwave \ - iperf \ - iptables \ libatlas-base-dev \ libblas-dev \ liblapack-dev \ liblapacke-dev \ - libffi-dev \ - libforms-bin \ - libforms-dev \ - libgmp-dev \ - libgtk-3-dev \ - libidn2-0-dev \ - libidn11-dev \ - libmysqlclient-dev \ - libpython2.7-dev \ - libreadline-dev \ - libsctp1 \ + libreadline-dev \ + libgnutls28-dev \ + libconfig-dev \ libsctp-dev \ libssl-dev \ libtool \ - libusb-1.0-0-dev \ - libxml2 \ - libxml2-dev \ libxslt1-dev \ - octave-signal \ - openssh-client \ - openssh-server \ + libtasn1-6-dev \ + patch \ openssl \ - subversion \ - xmlstarlet \ - wget \ - libxpm-dev \ - libboost-all-dev - - $SUDO update-alternatives --set "$LAPACK_LIBNAME" "$LAPACK_TARGET" + xxd $SUDO apt-get install -y nettle-dev nettle-bin elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then @@ -735,74 +624,40 @@ check_install_oai_software() { echo "EPEL repos already present. Good." else echo "EPEL repos not present. Installing them." - $SUDO $INSTALLER install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm + $SUDO $INSTALLER install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm fi - $SUDO $INSTALLER install -y python-epdb vim-common fi $SUDO $INSTALLER install -y \ - autoconf \ automake \ - bc \ - bison \ $CMAKE \ - doxygen \ - ethtool \ - flex \ - g++ \ gcc \ - gdb \ + gcc-c++ \ git \ - graphviz \ - gtkwave \ guile-devel \ - iperf \ - iproute \ - iptables \ - iptables-devel \ atlas-devel \ - blas-devel \ + pkgconfig \ libconfig-devel \ libffi-devel \ - xforms \ - xforms-devel \ libgcrypt-devel \ - gmp-devel \ - gtk3-devel \ - libidn2-devel \ - libidn-devel \ - mariadb-devel \ lksctp-tools \ lksctp-tools-devel \ openssl-devel \ libtasn1 \ libtool \ - libusb-devel \ - libxml2 \ - libxml2-devel \ libxslt-devel \ ninja-build \ make \ - openssh-clients \ - openssh-server \ openssl \ patch \ - psmisc \ - python \ readline-devel \ - subversion \ - xmlstarlet \ - python-pip \ - wget \ - kernel-headers \ - kernel-devel \ nettle-devel \ gnutls-devel \ - libXpm-devel \ lapack \ lapack-devel \ blas \ - blas-devel + blas-devel \ + vim-common fi install_asn1c_from_source $1 diff --git a/docker/Dockerfile.base.rhel8.2 b/docker/Dockerfile.base.rhel8.2 index ae41956379..17a559379d 100644 --- a/docker/Dockerfile.base.rhel8.2 +++ b/docker/Dockerfile.base.rhel8.2 @@ -68,5 +68,5 @@ COPY . . RUN /bin/sh oaienv && \ cd cmake_targets && \ mkdir -p log && \ - ./build_oai -I -w USRP && \ + ./build_oai -I --install-optional-packages -w USRP && \ rm /etc/pki/entitlement/*pem diff --git a/docker/Dockerfile.base.ubuntu18 b/docker/Dockerfile.base.ubuntu18 index 1a19304c10..7cf2ecceaa 100644 --- a/docker/Dockerfile.base.ubuntu18 +++ b/docker/Dockerfile.base.ubuntu18 @@ -57,4 +57,4 @@ COPY . . RUN /bin/sh oaienv && \ cd cmake_targets && \ mkdir -p log && \ - ./build_oai -I -w USRP + ./build_oai -I -w USRP --install-optional-packages diff --git a/docker/Dockerfile.phySim.rhel8.2 b/docker/Dockerfile.phySim.rhel8.2 index c3f6d258b3..62378bf7dd 100644 --- a/docker/Dockerfile.phySim.rhel8.2 +++ b/docker/Dockerfile.phySim.rhel8.2 @@ -101,7 +101,6 @@ WORKDIR /usr/bin/ COPY --from=phy-sim-build \ /usr/bin/killall \ /usr/bin/xmlstarlet \ - /usr/bin/svn \ ./ # Copy the relevant configuration files for phySim diff --git a/executables/nr-softmodem.c b/executables/nr-softmodem.c index 2cbea144cf..dddd1da641 100644 --- a/executables/nr-softmodem.c +++ b/executables/nr-softmodem.c @@ -68,7 +68,6 @@ unsigned short config_frames[4] = {2,9,11,13}; #include <openair2/GNB_APP/gnb_app.h> #include "PHY/TOOLS/phy_scope_interface.h" #include "PHY/TOOLS/nr_phy_scope.h" -#include "stats.h" #include "nr-softmodem.h" #include "executables/softmodem-common.h" #include "executables/thread-common.h" diff --git a/openair1/SIMULATION/LTE_PHY/dlsim.c b/openair1/SIMULATION/LTE_PHY/dlsim.c index c4ff82c22b..44e79121b2 100644 --- a/openair1/SIMULATION/LTE_PHY/dlsim.c +++ b/openair1/SIMULATION/LTE_PHY/dlsim.c @@ -49,7 +49,6 @@ #include "PHY/MODULATION/modulation_common.h" #include "PHY/MODULATION/modulation_eNB.h" #include "PHY/MODULATION/modulation_UE.h" -#include "PHY/TOOLS/lte_phy_scope.h" #include "SCHED/sched_eNB.h" #include "SCHED_UE/sched_UE.h" #include "SIMULATION/TOOLS/sim.h" @@ -493,7 +492,6 @@ int test_perf=0; int n_frames; int n_ch_rlz = 1; int rx_sample_offset = 0; -int xforms=0; int dump_table=0; int loglvl=OAILOG_INFO; int mcs1=0,mcs2=0,mcs_i=0,dual_stream_UE = 0,awgn_flag=0; @@ -565,7 +563,6 @@ int main(int argc, char **argv) { short *uncoded_ber_bit=NULL; int osf=1; frame_t frame_type = FDD; - FD_lte_phy_scope_ue *form_ue = NULL; char title[255]; int numCCE=0; //int dci_length_bytes=0,dci_length=0; @@ -679,7 +676,6 @@ int main(int argc, char **argv) { { "uEdual", "Enables the Interference Aware Receiver for TM5 (default is normal receiver)",0, iptr:NULL, defintval:0, TYPE_INT, 0 }, { "xTransmission","Transmission mode (1,2,6,7 for the moment)",0, iptr:NULL, defintval:25, TYPE_INT, 0 }, { "yn_tx_phy","Number of TX antennas used in eNB",0, iptr:NULL, defintval:25, TYPE_INT, 0 }, - { "XForms", "Display the soft scope", PARAMFLAG_BOOL, iptr:&xforms, defintval:0, TYPE_INT, 0 }, { "Yperfect_ce","Perfect CE", PARAMFLAG_BOOL, iptr:&perfect_ce, defintval:0, TYPE_INT, 0 }, { "Zdump", "dump table",PARAMFLAG_BOOL, iptr:&dump_table, defintval:0, TYPE_INT, 0 }, { "Loglvl", "log level",0, iptr:&loglvl, defintval:OAILOG_INFO, TYPE_INT, 0 }, @@ -952,24 +948,6 @@ int main(int argc, char **argv) { AssertFatal(NB_RB <= N_RB_DL,"illegal NB_RB %d\n",NB_RB); } - if (xforms==1) { - fl_initialize (&argc, argv, NULL, 0, 0); - form_ue = create_lte_phy_scope_ue(); - sprintf (title, "LTE PHY SCOPE eNB"); - fl_show_form (form_ue->lte_phy_scope_ue, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); - - if (!dual_stream_UE==0) { - if (UE) { - UE->use_ia_receiver = 1; - fl_set_button(form_ue->button_0,1); - fl_set_object_label(form_ue->button_0, "IA Receiver ON"); - fl_set_object_color(form_ue->button_0, FL_GREEN, FL_GREEN); - } else { - printf("UE is NULL\n"); - exit(-1); - } - } - } if (transmission_mode==5) { n_users = 2; @@ -1792,13 +1770,6 @@ int main(int argc, char **argv) { // UE->dlsch[UE->current_thread_id[subframe]][0][0]->harq_processes[0]->round++; } - if (xforms==1) { - phy_scope_UE(form_ue, - UE, - eNB_id, - 0,// UE_id - subframe); - } UE->proc.proc_rxtx[UE->current_thread_id[subframe]].frame_rx++; } //round diff --git a/openair1/SIMULATION/LTE_PHY/ulsim.c b/openair1/SIMULATION/LTE_PHY/ulsim.c index c03d081387..7c75c27378 100644 --- a/openair1/SIMULATION/LTE_PHY/ulsim.c +++ b/openair1/SIMULATION/LTE_PHY/ulsim.c @@ -42,7 +42,6 @@ #include "PHY/INIT/phy_init.h" #include "PHY/LTE_TRANSPORT/transport_proto.h" #include "PHY/LTE_UE_TRANSPORT/transport_proto_ue.h" -#include "PHY/TOOLS/lte_phy_scope.h" #include "SCHED/sched_eNB.h" #include "SCHED_UE/sched_UE.h" #include "SIMULATION/TOOLS/sim.h" @@ -69,18 +68,15 @@ double cpuf; #include <openair1/SIMULATION/LTE_PHY/common_sim.h> channel_desc_t *eNB2UE[NUMBER_OF_eNB_MAX][NUMBER_OF_UE_MAX]; channel_desc_t *UE2eNB[NUMBER_OF_UE_MAX][NUMBER_OF_eNB_MAX]; -//Added for PHY abstractionopenair1/PHY/TOOLS/lte_phy_scope.h node_desc_t *enb_data[NUMBER_OF_eNB_MAX]; node_desc_t *ue_data[NUMBER_OF_UE_MAX]; //double sinr_bler_map[MCS_COUNT][2][16]; extern uint16_t beta_ack[16],beta_ri[16],beta_cqi[16]; //extern char* namepointer_chMag ; -int xforms=0; THREAD_STRUCT thread_struct; nfapi_ue_release_request_body_t release_rntis; -FD_lte_phy_scope_enb *form_enb; char title[255]; /*the following parameters are used to control the processing times*/ @@ -435,7 +431,6 @@ int main(int argc, char **argv) { { "delay_chan", "Channel delay",0, iptr:&delay, defintval:0, TYPE_INT, 0 }, { "Doppler", "Maximum doppler shift",0, dblptr:&maxDoppler, defdblval:0.0, TYPE_DOUBLE, 0 }, { "Zdump", "dump table",PARAMFLAG_BOOL, iptr:&dump_table, defintval:0, TYPE_INT, 0 }, - { "Forms", "Display the soft scope", PARAMFLAG_BOOL, iptr:&xforms, defintval:0, TYPE_INT, 0 }, { "Lparallel", "Enable parallel execution",0, strptr:NULL, defstrval:NULL, TYPE_STRING, 0 }, { "Iterations", "Number of iterations of turbo decoder", 0, iptr:&max_turbo_iterations, defintval:4, TYPE_INT, 0 }, { "Performance", "Display CPU perfomance of each L1 piece", PARAMFLAG_BOOL, iptr:NULL, defintval:0, TYPE_INT, 0 }, @@ -695,13 +690,6 @@ int main(int argc, char **argv) { fprintf(csv_fdUL,"data_all%d=[",mcs); } - if (xforms==1) { - fl_initialize (&argc, argv, NULL, 0, 0); - form_enb = create_lte_phy_scope_enb(); - sprintf (title, "LTE PHY SCOPE eNB"); - fl_show_form (form_enb->lte_phy_scope_enb, FL_PLACE_HOTSPOT, FL_FULLBORDER, title); - } - UE->pdcch_vars[0][0]->crnti = 14; UE->frame_parms.soundingrs_ul_config_common.enabled_flag = srs_flag; UE->frame_parms.soundingrs_ul_config_common.srs_BandwidthConfig = 2; @@ -1265,9 +1253,6 @@ int main(int argc, char **argv) { if ((errs[0]>=100) && (trials>(n_frames/2))) break; - if (xforms==1) - phy_scope_eNB(form_enb,eNB,0); - double t_tx = inMicroS(UE->phy_proc_tx.p_time); double t_tx_ifft = inMicroS(UE->ofdm_mod_stats.p_time); double t_tx_mod = inMicroS(UE->ulsch_modulation_stats.p_time); -- 2.26.2