An error occurred fetching the project authors.
  1. 13 Jul, 2023 3 commits
  2. 11 Jul, 2023 1 commit
  3. 10 Jul, 2023 1 commit
  4. 07 Jul, 2023 15 commits
    • Robert Schmidt's avatar
      1f141955
    • mir's avatar
      Add basic E2 agent through git submodule · 70ad480a
      mir authored
      - Add E2 agent that leverages FlexRIC e2ap library
      - Add documentation in openair2/E2AP/README.md
      - Currently, statistics exported are random
      70ad480a
    • Robert Schmidt's avatar
      Move radio CMakeLists.txt to subdirectory · ddf549b1
      Robert Schmidt authored
      - move following radios: AW2S, BladeRF, IRIS, LMSSDR, RFsimulator, USRP
      - move following transports: Ethernet, benetel4g, benetel5g
      - for each: create independent cmake variable to switch compilation
        on/off, in order: OAI_AW2S, OAI_BLADERF, OAI_IRIS, OAI_LMSSDR,
        OAI_SIMU, OAI_USRP, OAI_ETHERNET, OAI_BENETEL4G, OAI_BENETEL5G
      - Remove RF_BOARD variable, allows to compile multiple boards at once
      - where applicable: remove USERSPACE/LIB in path, i.e., move files up to
        directories, as all are userspace libraries
      
      Note that with the above, it is now mandatory to enable a radio
      implementation before compiling it, e.g., for USRP:
      
      ./build_oai -w USRP
      cmake .. -DOAI_USRP=ON && ninja oai_usrpdevif
      ddf549b1
    • Robert Schmidt's avatar
      Remove libcrypto, correctly search and link libcrypt · 47da0a02
      Robert Schmidt authored
      - libcrypto is not used
      - we use libcrypt, so correctly check for it, and link to the
        corresponding targets
      47da0a02
    • Robert Schmidt's avatar
      CONFIG_LIB: do not include libconfig headers globally · c9231dd0
      Robert Schmidt authored
      Use target_include_directories() only on relevant targets.
      Remove from some targets that don't use the config module.
      c9231dd0
    • Robert Schmidt's avatar
      Repair rftest · 18751905
      Robert Schmidt authored
      - needs forms library, so link it
      - fix warnings
      18751905
    • Robert Schmidt's avatar
      Make shlib_loader OBJECT library to prevent multiple compilations · 387f5e41
      Robert Schmidt authored
      Including sources in targets makes that file being compiled multiple
      times. Instead, define an OBJECT library (i.e., it is only compiled, but
      not linked), and link it into each target that uses it.
      387f5e41
    • Robert Schmidt's avatar
      Properly check and link (C)BLAS and LAPACKE dependencies · be4c03c9
      Robert Schmidt authored
      Instead of using the adhoc code for checking and including (globally!)
      BLAS/LAPACKE, use PkgConfig to correctly identify libs (see deleted
      comment: "Hope this gets fixed in future!" -- you are welcome). Next,
      only link into those libraries that need it (PHY_UE, SIMU). Note that
      only RHEL also needs cblas, so it is a non-REQUIREd dependency that is
      only linked in if available. Further, take out linking into all other
      modules, as they don't need it.
      
      In the source code, take out preprocessor directives to correctly
      include headers -- that is cmake's job, which it does just fine now.
      be4c03c9
    • Robert Schmidt's avatar
      Refactor CMakeLists.txt OpenSSL handling · 25edebb5
      Robert Schmidt authored
      First, we do not include openssl globally using `include_directories()`,
      as most modules don't need it. Further, it is linked into SECURITY, and
      removed from all other targets (they don't need it, only SECURITY).
      
      Finally, remove a header include in NR PDCP that is not needed
      25edebb5
    • Robert Schmidt's avatar
    • Robert Schmidt's avatar
    • Robert Schmidt's avatar
      Remove unused cmake options and commented code · 5b534c95
      Robert Schmidt authored
      - LINUX: option to optionally set a sighandler for certain simulators,
        no practical relevance
      - LINUX_LIST: not used anywhere
      - DEBUG_DLSCH: referenced in the code, but those files have a separate
        (commented) line `#define DEBUG_DLSCH`; probably never used
      - LINK_ENB_PDCP_TO_IP_DRIVER, LINK_ENB_PDCP_TO_GTPV1U: commented in
        cmake, although they are referenced. It is likely that code behaves
        unexpected if re-enabled; we therefore remove these options to avoid
        future problems
      - Remove some more commented code
      5b534c95
    • Robert Schmidt's avatar
      Remove cmake ENB_MODE option · 7ebdaf35
      Robert Schmidt authored
      ENB_MODE is a cmake option to swap the order of include directories.
      This has historical reasons; before OAI used cmake, it was very
      sensitive to the order of includes. Nowadays, the order does not matter.
      Remove this option, and fix the compilation issues that arise while
      doing so.
      7ebdaf35
    • Robert Schmidt's avatar
      Remove cmake NAS_NETLINK option · 11f4bd9c
      Robert Schmidt authored
      This option is almost not referenced anywhere,  and not documented.
      Remove it to avoid problems in the future.
      11f4bd9c
    • Robert Schmidt's avatar
      Remove unused includes · 32566062
      Robert Schmidt authored
      - openair2/ENB_APP/CONTROL_MODULES: this directory does not exist
        anymore
      - openair2/UTIL/{OMG,CLI,OMV}: not used anywhere
      32566062
  5. 03 Jul, 2023 1 commit
  6. 26 Jun, 2023 1 commit
  7. 12 Jun, 2023 1 commit
  8. 11 Jun, 2023 1 commit
  9. 02 Jun, 2023 2 commits
    • Robert Schmidt's avatar
    • Robert Schmidt's avatar
      Add cmake option to select asn1c, and test asn1c parameters · fdb2abeb
      Robert Schmidt authored
      CMake now takes the option ASN1C_EXEC to select an asn1c to use for
      compilation. For instance, run with
      cmake .. -GNinja -DASN1C_EXEC=/opt/asn1c/bin/asn1c
      or
      ./build_oai --cmake-opt -DASN1C_EXEC=/opt/asn1c/bin/asn1c
      to select the alternative asn1c. For instance, this is important for the
      CI to allow to build multiple versions of OAI in parallel that might use
      different commits of OAI.
      
      Further, this patch introduces functionality to check for the support of
      asn1c options that we require, and alerts the user if they are missing,
      alongside a message of how to resolve the problem.
      fdb2abeb
  10. 01 Jun, 2023 1 commit
    • Cedric Roux's avatar
      asn1c: use better version of asn1c · c0c3a737
      Cedric Roux authored
      We don't work much on asn1c. The version we use has several bugs.
      There is an active community out there that fixes bugs and improves
      asn1c. Let's use their version.
      c0c3a737
  11. 30 May, 2023 1 commit
    • Robert Schmidt's avatar
      F1: do not assert on unknown F1 message · 48f82a63
      Robert Schmidt authored
      Previously, in f1ap_decoder.c, we asserted if we did not know a message.
      Apart form decoding, we did not do anything in that file.
      
      Additionally, in f1ap_handlers.c, we were also checking for an unknown
      message, and printing a warning if a handler is not known.
      
      This commit moves the F1AP message decoding to f1ap_handlers.c, and
      deletes f1ap_decoder.c. In summary, we don't assert on an unknown
      message, and compile less files. The rest is unchanged.
      48f82a63
  12. 26 May, 2023 1 commit
  13. 16 May, 2023 1 commit
  14. 28 Apr, 2023 1 commit
  15. 14 Apr, 2023 1 commit
  16. 07 Apr, 2023 1 commit
  17. 05 Apr, 2023 1 commit
    • Cedric Roux's avatar
      bugfix: change memory management of interface between PHY and MAC scheduler · 733c7e5e
      Cedric Roux authored
      This commit fixes a bug caused by global variables in the gNB_MAC_INST
      structure used to transfer MAC scheduler's results to the PHY layer.
      
      When using several threads in the PHY layer, it may happen that the
      MAC scheduler is called a second time by the second PHY thread for the
      next slot before the content of the global variables in the gNB_MAC_INST
      structure used to store the result of the MAC scheduler for the current
      slot have been consumed by the first thread, leading to unpredictable
      results (all of them certainly wrong).
      
      The solution is to introduce a small memory management module for the
      interface between the PHY threads and the MAC scheduler. The MAC
      scheduler now fills the data structures passed to it, and not a
      global variable anymore. The PHY layer manages the structures and
      ensures that no data is overwritten before being fully consumed by
      the various threads of the PHY layer.
      
      Some care has to be taken because several PHY threads will access the
      same structures at the same time for a given slot (in read mode, so
      it's okay). A mechanism of reference counting has thus been introduced.
      
      Only one CC is supported. This restriction should not be too hard
      to remove if/when needed. (The code before this commit does not seem
      to work for more than one CC anyway.)
      733c7e5e
  18. 03 Apr, 2023 1 commit
  19. 28 Mar, 2023 1 commit
  20. 11 Mar, 2023 3 commits
  21. 09 Mar, 2023 1 commit