Commit Graph
100 Commits
Author SHA1 Message Date
Robert Schmidt 5a98ead92b Disable T tracer in clang build
We disable for two reasons:
- in the CI, with clang, it did not build once, but I cannot reproduce
  locally (even with clang)
- we want to maintain to be able to build without T tracer, so in one
  pipeline, we have to build without it. What a lucky coincidence!
2023-07-13 10:29:33 +02:00
Robert Schmidt 66893739b8 Make USRP compile, depends on T
USRP code uses the logging module, which has a dependency on T, if
configured. Therefore, include UTIL to satisfy this dependency
2023-07-13 10:29:33 +02:00
Robert Schmidt 9ed7ab6863 Remove unused VCD signal dumper from ETHERNET lib 2023-07-13 10:29:33 +02:00
Robert Schmidt c853f74167 Include T.h in log.h only when T_TRACER=ON 2023-07-13 10:29:33 +02:00
Robert Schmidt c1e8acb2e2 Repair build when T tracer build disabled 2023-07-13 10:28:38 +02:00
Robert Schmidt 2ae1908339 Put T source library in subdirectory, don't build multiple times
- UTIL: has LOG which brings as (public) dependency T, so link it publicly
- Move T to top to ensure all targets can have it
2023-07-13 10:28:38 +02:00
Robert Schmidt c3f8488456 Generate T headers using cmake 2023-07-10 09:18:14 +02:00
Robert Schmidt 392ef79b28 Merge branch 'integration_2023_w27' into 'develop'
integration_2023_w27

See merge request oai/openairinterface5g!2218

* !2163 CI: use same Ping functionality everywhere
* !2173 Remove RFSIMULATOR environment variable; rename two env vars, add one; documentation
* !2205 Add support for NR band n48
* !2211 Fix bug
* !2213 CI: AW2S pipeline - disable retransmissions check
* !2133 Add E2 agent
* !2208 Bugfix when deleting a SDAP entity
* !2195 remove redundant copies of pdu sessions list
* !2174 Refactor CMakeLists.txt
* !2167 CI: Creation of pipeline for OAIUE testing
* !2165 improvements in CI config files
2023-07-10 06:58:59 +00:00
Robert Schmidt 9dd27e60f9 Fix after merging ssh asterix into integration; conflict from ls 2023-07-10 08:57:18 +02:00
Robert Schmidt c632f9c8e7 Merge remote-tracking branch 'origin/CI_config_improvements' into integration_2023_w27 2023-07-09 14:06:57 +02:00
Robert Schmidt 7b1703441f Merge remote-tracking branch 'origin/ci-nrue-test' into integration_2023_w27 2023-07-09 14:05:45 +02:00
Robert Schmidt 4ae73af46f Merge remote-tracking branch 'origin/cmake-refactor' into integration_2023_w27 2023-07-08 13:29:55 +02:00
Robert Schmidt 4e18ce02e3 Merge remote-tracking branch 'origin/remove-redundant-stored-drb-list' into integration_2023_w27 2023-07-08 13:29:37 +02:00
Robert Schmidt 079866bf4f Check for libforms for building scopes 2023-07-08 13:28:52 +02:00
Robert Schmidt 306b4974ad Simplify build_oai 2023-07-08 13:28:52 +02:00
Robert Schmidt 5f58ccb56c Remove unused build_oai variables 2023-07-08 13:28:52 +02:00
Robert Schmidt c25ee6fd32 Move symlink creation to radio/transport device to cmake 2023-07-08 13:28:52 +02:00
Robert Schmidt 6919f29060 Merge remote-tracking branch 'origin/Bugfix_SDAP_delete_entity' into integration_2023_w27 2023-07-07 16:55:50 +02:00
Robert Schmidt be8a401242 Merge remote-tracking branch 'origin/e2_sub' into integration_2023_w27 2023-07-07 16:55:36 +02:00
Robert Schmidt 1f14195543 Move inclusion of openair2/E2AP where it belongs 2023-07-07 13:49:17 +02:00
Robert Schmidt 31b7d7c432 !2173: Favor --rfsimulator.serveraddr "server" over RFSIMULATOR=server 2023-07-07 13:49:17 +02:00
Robert Schmidt 126e7bb432 Reference E2 agent tutorial in doc/README.md 2023-07-07 13:45:18 +02:00
Robert Schmidt 60d232e214 Merge remote-tracking branch 'origin/ci-aw2s-xml' into integration_2023_w27 2023-07-07 09:01:16 +02:00
Robert Schmidt 93ec943b12 Merge remote-tracking branch 'origin/bug_fix_tp' into integration_2023_w27 2023-07-07 09:01:09 +02:00
Robert Schmidt 15d1cd9500 Merge remote-tracking branch 'origin/NR_Band_n48' into integration_2023_w27 2023-07-07 09:01:01 +02:00
Robert Schmidt 97cf8a48a9 Merge remote-tracking branch 'origin/doc-env-var' into integration_2023_w27 2023-07-07 09:00:54 +02:00
Robert Schmidt 00e3c5acdd Run ldconfig to find libparams_libconfig.so in nr-cuup container 2023-07-07 08:35:29 +02:00
Robert Schmidt 0163a52b7a Add libcblas for docker containers 2023-07-07 08:35:29 +02:00
Robert Schmidt b90a469131 Correctly build AW2S in dockerfile 2023-07-07 08:35:29 +02:00
Robert Schmidt 4db08dc68a Simplify compilations build helper
Instead of using ninja/make directly, there is a cmake command option to
trigger the build using whatever build tool has been configured. Use it;
if there is a mismatch, there will also be a clearer cmake error.

Remove build_oai's --build-coverity: we don't use it, and it can
trivially be added if required (probably, most users would run it by
hand anyway).

Add an error if the compilations function is not called with the right
noumber of arguments.
2023-07-07 08:35:29 +02:00
Robert Schmidt b896da85e7 Harmonize build_oai color output 2023-07-07 08:35:29 +02:00
Robert Schmidt 557e3ba800 Make ethernet off by default in build_oai
If it was one, build_oai without parameters would attempt to build the
ethernet library. However, this is unexpected, and will lead to an error
(as it is by default off in CMake). Set it to off, and build it where
required.
2023-07-07 08:35:28 +02:00
Robert Schmidt ddf549b1f3 Move radio CMakeLists.txt to subdirectory
- 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
2023-07-07 08:35:28 +02:00
Robert Schmidt 52cb72c0ee build_oai: allow to only build radio/transport libraries 2023-07-07 08:35:28 +02:00
Robert Schmidt 47da0a024d Remove libcrypto, correctly search and link libcrypt
- libcrypto is not used
- we use libcrypt, so correctly check for it, and link to the
  corresponding targets
2023-07-07 08:35:28 +02:00
Robert Schmidt c9231dd02d CONFIG_LIB: do not include libconfig headers globally
Use target_include_directories() only on relevant targets.
Remove from some targets that don't use the config module.
2023-07-07 08:35:28 +02:00
Robert Schmidt 1875190521 Repair rftest
- needs forms library, so link it
- fix warnings
2023-07-07 08:35:28 +02:00
Robert Schmidt 387f5e4118 Make shlib_loader OBJECT library to prevent multiple compilations
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.
2023-07-07 08:35:28 +02:00
Robert Schmidt 28ec4944a5 Fix minimal_stub.c
It uses definitions from stdlib.h, so include it.
2023-07-07 08:35:28 +02:00
Robert Schmidt be4c03c90c Properly check and link (C)BLAS and LAPACKE dependencies
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.
2023-07-07 08:35:28 +02:00
Robert Schmidt 25f2a48265 Remove targets/Makerules: it is not used 2023-07-07 08:35:28 +02:00
Robert Schmidt 25edebb593 Refactor CMakeLists.txt OpenSSL handling
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
2023-07-07 08:35:28 +02:00
Robert Schmidt 439b6027cf Remove CMakeLists.txt reference to xpm: it is not used 2023-07-07 08:35:28 +02:00
Robert Schmidt cd6dd99d43 Remove CMakeLists.txt reference to openpgm: it is not used 2023-07-07 08:35:28 +02:00
Robert Schmidt 5b534c957f Remove unused cmake options and commented code
- 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
2023-07-07 08:35:28 +02:00
Robert Schmidt 7ebdaf35c5 Remove cmake ENB_MODE option
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.
2023-07-07 08:35:28 +02:00
Robert Schmidt 11f4bd9c32 Remove cmake NAS_NETLINK option
This option is almost not referenced anywhere,  and not documented.
Remove it to avoid problems in the future.
2023-07-07 08:35:28 +02:00
Robert Schmidt 3256606285 Remove unused includes
- openair2/ENB_APP/CONTROL_MODULES: this directory does not exist
  anymore
- openair2/UTIL/{OMG,CLI,OMV}: not used anywhere
2023-07-07 08:35:28 +02:00
Robert Schmidt cd3ecd61f4 Clang format 2023-07-05 06:55:22 +00:00
Robert Schmidt 9f55d7121c Refactor Ping to use %cn_ip% for address to ping, or hardcoded 2023-07-03 14:42:31 +02:00
Robert Schmidt 2500138fea Fixup: copying via cls_cmd only supports absolute paths 2023-07-03 14:37:23 +02:00
Robert Schmidt 10d2af11b8 Merge branch 'integration_2023_w26' into 'develop'
integration_2023_w26

See merge request oai/openairinterface5g!2202

* !2081 Nonlinear ML receiver
* !2188 Bugfix for FR2
* !2189 Bugfix for getting band and numerology from command line for OAI UE
* !2192 Fix bugs in F1 implementation found with UBSan
* !2194 moving handling of RA success for reconfigurationWithSync at RRC
* !2031 Adding new sidelink (SL) variables
* !2148 NR MAC UE further improvements for DCI configuration
* !2164 Enable T304
* !2197 chore(ci-cn): Transition to YAML configuration scheme
2023-07-03 08:35:10 +00:00
Robert Schmidt 735c960f6c Merge remote-tracking branch 'origin/ci-cn5g-yaml-config' into integration_2023_w26 2023-07-03 08:03:18 +02:00
Robert Schmidt a73cc999a9 Merge remote-tracking branch 'origin/enable-T304' into integration_2023_w26 2023-06-30 19:11:44 +02:00
Robert Schmidt e9099146c0 Merge remote-tracking branch 'origin/NR_MAC_UE_further_improvements_dci' into integration_2023_w26 2023-06-30 19:11:35 +02:00
Robert Schmidt 8f07050cbe Merge remote-tracking branch 'origin/episys-merge-SL-variables' into integration_2023_w26 2023-06-30 19:10:55 +02:00
Robert Schmidt ec8d2fa525 Merge remote-tracking branch 'origin/NR_UE_RRC_handling_RA' into integration_2023_w26 2023-06-30 04:00:42 +02:00
Robert Schmidt 98fda17ea0 Merge remote-tracking branch 'origin/ub-f1' into integration_2023_w26 2023-06-30 04:00:32 +02:00
Robert Schmidt e6629d9c7b Merge remote-tracking branch 'origin/NR_UE_fix_cmd_line_params' into integration_2023_w26 2023-06-30 03:55:46 +02:00
Robert Schmidt e6c13fa944 Merge remote-tracking branch 'origin/develop-FR2-bugfix' into integration_2023_w26 2023-06-30 03:55:34 +02:00
Robert Schmidt 2ce109cd63 Remove RFsimulator server option from non-rfsim configs 2023-06-28 07:16:43 +02:00
Robert Schmidt 40640f943e Add RFsimulator server option to rfsim configs 2023-06-28 07:16:43 +02:00
Robert Schmidt 04247d501d Remove RFSIMULATOR environment variable from repository 2023-06-28 07:16:43 +02:00
Robert Schmidt 7a3aaca1ef Print warning if RFSIMULATOR environment variable is used 2023-06-28 07:16:00 +02:00
Robert Schmidt 710bfdbf04 Introduce env var OAI_RNGSEED
can be used to set a random number generator (RNG) seed uniformly from
command line
2023-06-28 07:16:00 +02:00
Robert Schmidt 49703eee7b Rename threadPoolMeasurements to OAI_THREADPOOLMEASUREMENTS
- make it clear that it belongs to OAI
- follow convention of uppercase name
2023-06-28 07:16:00 +02:00
Robert Schmidt ba11dfba4e Rename env var gdbStacks to OAI_GDBSTACKS
- make it clear that it belongs to OAI
- follow convention of uppercase name
2023-06-28 07:16:00 +02:00
Robert Schmidt 01d1a47adf Remove commented code that uses getenv(): it might be confusing if reactivated 2023-06-28 07:16:00 +02:00
Robert Schmidt c44dcefd16 Document environment variables used by OAI programs 2023-06-28 07:16:00 +02:00
Robert Schmidt 7d9b4db580 Correctly copy in_addr for GTP F1 tunnel update 2023-06-26 11:23:52 +02:00
Robert Schmidt 26a69234b2 Fix UB problems in F1: right TEID conversion, which is unsigned 2023-06-26 11:22:58 +02:00
Robert Schmidt c1fbd777a9 Merge branch 'integration_2023_w25' into 'develop'
integration_2023_w25

See merge request oai/openairinterface5g!2184

* !2162 NR UE MAC and RRC handling of RLM
* !2175 no sanitize on generated ldpc code
* !2176 using rotation functions also at UE
* !2177 nr sib1: add mandatory fields for FDD
* !2178 fixing a typo in band 41 sync raster matrix
* !2169 NR CSI-RS configured per BWP
* !2180 bugfix in RAR time domain allocation
* !2187 Avoid segmentation fault when optional IE nAS_PDU is NULL
* !2179 Tutorials: Update docker install to the latest instructions on the official website
2023-06-24 12:11:44 +00:00
Robert Schmidt 5056a5533f Merge remote-tracking branch 'origin/NR_SA_Tutorials' into integration_2023_w25 2023-06-23 18:55:04 +02:00
Robert Schmidt da96ebe950 Merge remote-tracking branch 'origin/Fix_SegFault_nAS_PDU' into integration_2023_w25 2023-06-23 18:54:56 +02:00
Robert Schmidt 4bcdb0f6a8 Merge remote-tracking branch 'origin/NR_UE_RAR_fix' into integration_2023_w25 2023-06-23 18:54:37 +02:00
Robert Schmidt 5d1dbf1315 Merge remote-tracking branch 'origin/NR_RRC_CSI_RS_improv_2' into integration_2023_w25 2023-06-23 18:54:16 +02:00
Robert Schmidt 2dc5536197 Merge remote-tracking branch 'origin/fix_band41_sync_raster' into integration_2023_w25 2023-06-22 18:37:32 +02:00
Robert Schmidt 87a846ba7e Merge remote-tracking branch 'origin/nr-sib1-for-fdd' into integration_2023_w25 2023-06-22 18:14:01 +02:00
Robert Schmidt 938bf4cb7f Merge remote-tracking branch 'origin/fix_ul_rotation' into integration_2023_w25 2023-06-22 18:13:51 +02:00
Robert Schmidt 84f071449b Merge remote-tracking branch 'origin/workaround-clang-compilation-time' into integration_2023_w25 2023-06-22 18:13:44 +02:00
Robert Schmidt 7fc88afb96 Merge remote-tracking branch 'origin/NR_UE_towards_resync' into integration_2023_w25 2023-06-22 18:13:34 +02:00
Robert Schmidt 773a35ef7a Merge branch 'integration_2023_w24' into 'develop'
integration_2023_w24

See merge request oai/openairinterface5g!2171

* !2108 Fix reconfigurationWithSync
* !2138 check if SSB is on the sync raster for SA
* !2149 Fix for physCellId different from 0 for CU DU
* !2157 e1: fix security
* !2161 asn1: properly initialize variables for uper_decode() and aper_decode()
* !2143 PUCCH UE F0 and F1 refactoring and fixes
* !2170 bladerf: have it functional (lte only, no nr)
* !2102 Adding Sidelink (SL) carrier frequency
* !2096 remove generic thread pool abort and use 3GPP CRC to detect the segment is decoded
* !2158 NR UE adding flag for activation of AS security
2023-06-20 00:06:32 +00:00
Robert Schmidt 3e32fa7e85 Merge remote-tracking branch 'origin/NR_UE_security_flag' into integration_2023_w24 2023-06-16 21:30:27 +02:00
Robert Schmidt 96aacd58aa Merge remote-tracking branch 'origin/remove-thread-pool-abort' into integration_2023_w24 2023-06-16 17:54:11 +02:00
Robert Schmidt d4eeffff81 Merge remote-tracking branch 'origin/episys-add-sl-freq' into integration_2023_w24 2023-06-16 17:54:04 +02:00
Robert Schmidt 15b8dbc476 Remove unnecessarily verbose log 2023-06-16 17:51:17 +02:00
Robert Schmidt 6ac18302c9 Merge remote-tracking branch 'origin/fix-bladerf' into integration_2023_w24 2023-06-16 11:19:17 +02:00
Robert Schmidt e9f4c586d5 Merge remote-tracking branch 'origin/NR_UE_pucch1' into integration_2023_w24 2023-06-16 11:19:09 +02:00
Robert Schmidt 555a54f85e Add Sidelink (SL) carrier frequency
1. Adding a "SL" frequency for Sidelink mode. The
   importance of this variable is to ensure that
   when we are in mode 1 (UE+UE+gNB), that the slot
   configuration and frequencies do not overlap. This
   SL frequency is important for rotation and allows
   us to utilize the OFDM modulation and demodulation
   functions that already exist in OAI.
2. Adding sl_mode to the command line for proper UE
   deployment when in SL mode. sl_mode can be set to 0,
   1, or 2. sl_mode 0 indicates no-Sidelink at all,
   mode 1 is gNB, UE, and UE (3GPP defines mode numbers).
   sl_mode 2 indicated UE to UE communications with no
   gNB at all.
3. New functions for calculating the carrier frequency
   for SL mode.
2023-06-16 11:11:44 +02:00
Robert Schmidt cedde332d8 Merge remote-tracking branch 'origin/bugfix-asn1-mem-init' into integration_2023_w24 2023-06-16 11:09:41 +02:00
Robert Schmidt cdb81622ae Merge remote-tracking branch 'origin/fix-e1-security' into integration_2023_w24 2023-06-16 11:09:26 +02:00
Robert Schmidt feb866d1a9 Merge remote-tracking branch 'origin/ho-fix-physCellId' into integration_2023_w24 2023-06-16 11:09:13 +02:00
Robert Schmidt eca43633ee Merge remote-tracking branch 'origin/NR_SSB_sync_raster_check' into integration_2023_w24 2023-06-16 11:08:56 +02:00
Robert Schmidt f8f9f8ac14 Merge branch 'integration_2023_w23' into 'develop'
integration_2023_w23

See merge request oai/openairinterface5g!2156

* !2115 Enable 100MHz on USRP X310
* !2118 Cleanup code in PSS/SSS procedures
* !2123 improving NR UE RRC handling of timers and constants
* !2150 Fix type0_pdcch_ss_mux_pattern for FR2
* !2153 Fix UE DURATION_RX_TO_TX assertions
* !2155 chore(ci): saw a little missing version on HTML report
* !2117 remove some dead code
2023-06-10 10:05:17 +00:00
Robert Schmidt ef6f571bee Merge remote-tracking branch 'origin/remove-unused-static-functions' into integration_2023_w23 2023-06-08 19:15:50 +02:00
Robert Schmidt 3d11dbc126 Merge remote-tracking branch 'origin/ci-proper-report-cppcheck-version' into integration_2023_w23 2023-06-08 18:24:36 +02:00
Robert Schmidt 969291697b Merge remote-tracking branch 'origin/NR_UE_DURATION_RX_TO_TX_assertions' into integration_2023_w23 2023-06-08 18:24:30 +02:00
Robert Schmidt 0536c58470 Merge remote-tracking branch 'origin/NR_SA_FR2_fix_mux_pattern' into integration_2023_w23 2023-06-08 18:24:24 +02:00
Robert Schmidt f2bdb6bb93 Merge remote-tracking branch 'origin/NR_UE_timers_and_constants_functions' into integration_2023_w23 2023-06-08 18:24:16 +02:00
Robert Schmidt 20366125f3 Merge remote-tracking branch 'origin/coarse-cleaning-pss-ss' into integration_2023_w23 2023-06-08 18:24:10 +02:00