Commit Graph
24166 Commits
Author SHA1 Message Date
Robert Schmidt c25ee6fd32 Move symlink creation to radio/transport device to cmake 2023-07-08 13:28:52 +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 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
francescomani 491174869a adding flag for activation of as security 2023-06-16 17:24:09 +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
Cedric Roux 2778fd560f bladerf: have it functional (lte only, no nr)
At Eurecom now we only have Nuand bladeRF 2.0 (bladerf2) and those
calibration calls fail, so let's remove them. Maybe they are needed
for other boards, but we can't test at Eurecom. In case of problems
with other boards, contact us.
2023-06-15 17:14:24 +02:00
Laurent THOMAS 01ac2f0f0e fix a compiler warning 2023-06-15 16:10:18 +02:00
francescomani ab908e3b25 some refactoring and fixes for pucch1 2023-06-14 17:38:22 +02:00
laurent 487920d3c0 code review comment, simplify the case ldpc decoder offload and mcs <= 9
clang annoying chosen options
2023-06-14 16:34:36 +02:00
francescomani f94d2870eb code clenup 2023-06-13 16:07:59 +02:00
General ABS 240481e216 Fix for physCellId different from 0 for CU DU 2023-06-13 15:06:12 +01:00
Cedric Roux 8561a0f764 asn1: properly initialize variables for uper_decode() and aper_decode() 2023-06-12 16:15:57 +02:00
laurent c102d3cd78 simplify ldpc lib copy in all duplicated files 2023-06-12 10:24:57 +02:00
laurent 615324294b ldpc check based on crc 2023-06-12 10:24:57 +02:00
Laurent THOMAS 3645c96c09 remove generic thread pool abort 2023-06-12 10:24:37 +02:00
Cedric Roux 46f0e348f1 e1: fix security 2023-06-11 12:28:56 +02:00
francescomani cd817930b8 fix tests after review and LOG_E to avoid assertion on channel raster 2023-06-10 19:22:27 +02:00
Roberto Louro Magueta 45d4333afc Fix reconfigurationWithSync 2023-06-10 13:06:37 +01: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