Commit Graph
114 Commits
Author SHA1 Message Date
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 96aacd58aa Merge remote-tracking branch 'origin/remove-thread-pool-abort' into integration_2023_w24 2023-06-16 17:54:11 +02:00
laurent 615324294b ldpc check based on crc 2023-06-12 10:24:57 +02:00
Cedric Roux 46f0e348f1 e1: fix security 2023-06-11 12:28:56 +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 3ff394490a Merge remote-tracking branch 'origin/fix-du-config-update' into integration_2023_w22 2023-06-02 17:29:36 +02:00
Robert Schmidt cb2c8731a7 Install (new) asn1c under /opt/ to allow parallel install 2023-06-02 10:54:29 +02:00
Robert Schmidt fdb2abebd0 Add cmake option to select asn1c, and test asn1c parameters
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.
2023-06-02 10:42:02 +02:00
Cedric Roux c0c3a737ed asn1c: use better version of asn1c
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.
2023-06-01 18:26:00 +02:00
Robert Schmidt 48f82a63aa F1: do not assert on unknown F1 message
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.
2023-05-30 13:48:50 +02:00
mir c9012298de OSA SECU harmonization 2023-05-26 12:35:33 +02:00
francescomani b5819904b5 adding timers and contants functions and further code improvements 2023-05-16 16:46:55 +02:00
laurent b339460666 cleanup only 2023-04-28 16:25:24 +02:00
Robert Schmidt 04451c7078 Merge remote-tracking branch 'origin/clang_warnings_new' into integration_2023_w15 2023-04-14 13:54:46 +02:00
Robert Schmidt 224c5538e4 Merge remote-tracking branch 'origin/NR_UE_get_Pmax' into integration_2023_w15 2023-04-14 13:54:40 +02:00
Robert Schmidt e6488d1b62 Remove compile options unknown to clang 2023-04-14 13:52:03 +02:00
francescomani 41d9e775c9 reworking the function to get Pmax 2023-04-07 11:33:14 +02:00
Robert Schmidt 19d3014150 Merge remote-tracking branch 'origin/bugfix-phy-mac-interface' into integration_2023_w14 2023-04-05 19:30:30 +02:00
Cedric Roux 733c7e5e89 bugfix: change memory management of interface between PHY and MAC scheduler
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.)
2023-04-05 16:39:12 +02:00
Sakthivel Velumani 9e4d522937 Make kpi variables atomic
Mutex for phy scope: Repeating this change again. My earlier change in commit 06ef311975 was erased by someone during merge of QT scope.
2023-04-03 10:25:13 -04:00
Robert Schmidt a0318fb413 Implement NAS Deregistration Type message 2023-03-28 14:12:05 +02:00
Robert Schmidt 6791974004 Remove unused OCG (OpenAir Config Generator) 2023-03-11 15:50:50 +01:00
Robert Schmidt 4d16f1f883 Remove libxml2: we don't use it 2023-03-11 15:50:49 +01:00
Robert Schmidt 9dc3b26c1b Remove libxslt: we don't use it 2023-03-11 15:50:49 +01:00
Robert Schmidt 8263ac09ec Merge remote-tracking branch 'origin/dead-code-f1-removal' into integration_2023_w10b 2023-03-10 15:13:08 +01:00
laurent 61f49be3eb dead-code-f1-removal 2023-03-09 17:03:41 +01:00
Robert Schmidt 3b7d6377a0 Link targets that need RRC ASN.1 headers to header-only library
Most targets don't need the symbols from the compiled RRC ASN.1
libraries, but only the headers. In particular when compiling individual
libraries (e.g., for tests), linking the full library makes the RRC
ASN.1 libraries compile and link, when they are not needed (only headers
are needed).

For libraries that can do without these headers, don't link them.
2023-03-06 20:05:38 +01:00
Robert Schmidt c67a612192 SIMU_ETH: use target, compile netlink_init.c only once 2023-03-06 20:05:38 +01:00
Robert Schmidt 8a15fb7c63 RC: forward declarations and link physims better
The simulators have been changed: due to linker errors that would arise
otherwise, a lot of functions are defined in them to avoid such errors.
Some functions are also defined in header files; in this commit, we
define most functoins in nr_dummy_functions.c, which is compiled in, not
by including the C file, but by adding it to the target in
CMakeLists.txt

- nr_dlsim+nr_ulsim need NR_IF_Module_init(), so it cannot be in
  nr_dummy_functions, but the others need it
- Link correcr NR_IF_Module_init() into these simulators, and reduce
  overall link list
- Correctly link remaining simulators
2023-03-06 20:04:38 +01:00
Robert Schmidt cd8df70e5c Do not spill LTE/NR ASN.1 RRC all over: clean up platform_constants.h 2023-03-06 19:47:08 +01:00
Robert Schmidt f35945e912 Merge remote-tracking branch 'origin/ocp-enb-cmake' into integration_2023_w08b 2023-02-24 18:49:30 +01:00
Bo Zhao 4d0762e43d First implementation for KPI GUI with Qt5
Authors: Bo Zhao, Marwan Hammouda, Thomas Schlichter (Fraunhofer IIS)

- CMakeLists modification: add QtWidgets library, add new source files, MOC (Meta-Object Compiler) on the given source file
- build_oai modification
- Activate new GUI with Qt on the UE side
- 2 x 3 widget with I/Q sample for PDSCH
- Drop-down list implementation
2023-02-23 17:46:27 +01:00
Robert Schmidt 415e830c1a CONFIG_LIB needs dlsym and LOG (in UTIL) 2023-02-23 16:31:04 +01:00
Robert Schmidt 42a00a8111 Clean up CMakeLists.txt
- variables CMAKE_DL_LIBS and LIB_LMS_LIBRARIES are not defined anywhere
- -DPHYSICAL_SIMULATOR is not used anywhere
2023-02-23 16:31:04 +01:00
Robert Schmidt 600f46dddd Remove unused backtrace function 2023-02-23 16:31:04 +01:00
Robert Schmidt 6553239fbc Remove ocp-enb/split73 2023-02-23 16:31:04 +01:00
Robert Schmidt 1613e12df7 Merge remote-tracking branch 'origin/remove-4g-f1' into integration_2023_w08 2023-02-23 10:17:41 +01:00
Robert Schmidt 9fe2c0bdf8 Merge remote-tracking branch 'origin/NR_cleanup' into integration_2023_w08 2023-02-22 15:58:53 +01:00
Robert Schmidt 2e7011588a Merge remote-tracking branch 'origin/ubuntu-18-cmake' into websrv3 2023-02-21 17:01:26 +01:00
Robert Schmidt 9a0dd7c1b3 Update for webserver; cleanup in CMakeLists.txt
- Add oai header to typescript and html sources, add support to commands
  requiring two parameters, add more helpfiles
- Fix help bug (html comments not removed from tooltips)
- Fix backend build problem and 2 warnings
- Correctly initialize variables in nr_phy_scope.c
- Use add_subdirectory for websrv cmake build
- correctly link to asn1_lte_rrc and asn1_nr_rrc
- fix bug: correctly recognize npm packet
- only configure targets if explicitly asked for by users
- use add_subdirectory
- Use add_subdirectory for telnet cmake build
- Minor cleanup in build_oai
- Move softscope build in dedicated CMakeLists, and comment out
  DEBUG_MAC_INTERFACE option (not found in code)
- Make DEBUG_ASN1 a cmake only option ( no C macro) as it's not used as
  a C macro in the code, and develop align
2023-02-21 17:01:07 +01:00
francescomani fc30280a7d cleaning up some NR files 2023-02-21 16:53:51 +01:00
Robert Schmidt 9dc2282249 Remove 4G F1 2023-02-20 11:38:53 +01:00
Robert Schmidt 52e160a08a Conditional compilation for CUDA LDPC Offload 2023-02-18 11:57:41 +01:00
Jaroslava Fiedlerova 79f8d16da6 Rename T1 offload lib and conditional compilation 2023-02-18 11:56:31 +01:00
Robert Schmidt 43d8ee586f Upgrade cmake to 3.12
Prior to this version, we cannot use target_link_libraries() with OBJECT
libraries.
2023-02-17 17:06:20 +01:00
Robert Schmidt a6145ca92b Merge remote-tracking branch 'origin/kdf_openssl' into integration_2022_wk06 2023-02-12 14:01:33 +01:00