Commit Graph
28888 Commits
Author SHA1 Message Date
Romain Beurdouche 0033da5611 fix(nr_ulschsim): make nr_ulschsim functional
There was two issues that were making nr_ulschsim non functional:
1. The channel output was not copied to decoder input (llr array)
2. The test on decoding successful outcome was wrong

The result was that nr_ulschsim was succesfull whatever were its arguments.
This commit fixes the two issues so that nr_ulschsim is now functional.
2025-03-21 10:04:45 +00:00
Romain Beurdouche 1fdbf2906f feat(NR PHY simulators): add a SIGINT handler to some PHY simulators
When using T2 virtual functions, it is important to properly stop DPDK and free the device.
Otherwise the virtual functions may be blocked and a restart of the admin application is necessary.

Up to now, SIGINT was shutting down the PHY simulators without freeing the device.
This commit adds a signal handler to handle SIGINT in a way that allow to properly free the device.
This feature is first added to the PHY simulators that use the T2 which are `nr_ulsim`, `nr_dlsim`, `nr_ulschsim` and `nr_dlschsim`.
2025-03-21 10:04:45 +00:00
luis_pereira87 c152177327 Harmonize and update Frequency Range computation to the current values specified by the standard
3GPP TS 38.101-1 Version 19.0.0 Table 5.1-1: Definition of frequency ranges
- FR1 from 410 MHz to 7125 MHz
- FR2 from 24.25 GHz to 71 GHz
2025-03-20 20:41:21 +00:00
Robert Schmidt 39d1e3ff4b Merge remote-tracking branch 'origin/clear_ue_unit_tests' into integration_2025_w12 (!3301)
Remove unused NR UE PHY unit tests

Old dead code that won't even compile and that is not testing anything
relevant to current state of code
2025-03-20 18:19:23 +01:00
ndomingues 432e741365 Update FEATURE_SET.md file with initial RedCap support 2025-03-20 18:13:12 +01:00
ndomingues 7235e484a0 Add support for RedCap Msg3 LCID 2025-03-20 18:13:12 +01:00
ndomingues e73e04543a Add initial support for RedCap
RedCap SIB1-v17-IEs parameters implemented in SIB1
Create an configuration file for RedCap devices
2025-03-20 18:13:12 +01:00
ndomingues b92af6b6be Implementation of TYPE_INT8 in config_yaml.cpp file 2025-03-20 18:13:12 +01:00
Robert Schmidt b138b143e4 Increase SCTP receive buffer to capture large messages 2025-03-20 17:20:54 +01:00
Sakthivel Velumani e775b9ce9a Fix RA-RNTI for long prach formats 2025-03-20 11:12:00 -04:00
Sakthivel Velumani bab16b7e15 Fix long PRACH slot selection 2025-03-20 10:52:21 -04:00
Laurent THOMAS 78b44a8e17 remove globale llr_layers, that seems to save 700MB, improve CPU and make the code simpler 2025-03-20 14:28:46 +01:00
Guido Casati ba22130116 Disable EPS NAS security algorithms in 5GMM UE capabilities
* this is only relevant if N26 interface is supported by the AMF
  and the UE is supporting S1

closes #915
2025-03-19 13:23:16 +01:00
Robert Schmidt ec60cc9548 SCTP: avoid assert on partial SCTP message
The receive buffer for SCTP, as of this commit, is 8192. If a message is
larger, we receive only a partial message, which makes the gNB abort.
Remove the abort to not be susceptible to a message intended to crash
the gNB.

Closes: #920
2025-03-18 17:29:53 +01:00
Jaroslava Fiedlerova 82fb9fcc7c Merge branch 'integration_2025_w11' into 'develop'
Integration: `2025.w11`

Closes #848

See merge request oai/openairinterface5g!3309

* !3306 Add a new CI label: nrUE
* !3303 remove wrong assertion for B4 PRACH format
* !3296 fix(nrLDPC_decoder): fix numIter increment
* !3150 Rework of NR UE RA procedures
* !3305 CI: Fix timeout for OC Deployments
* !3307 Add CI UE test for RA with C-RNTI
* !3271 Handle changing N_TA_offset correctly
* !3313 Small fix for jenkins message formatting
2025-03-18 15:21:56 +00:00
Jaroslava Fiedlerova c4551fecba Merge remote-tracking branch 'origin/fix-jenkins-message-formatting' into integration_2025_w11 (!3313)
Small fix for jenkins message formatting
2025-03-18 11:03:28 +01:00
Bartosz Podrygajlo f0c926306b Small fix for jenkins message formatting 2025-03-18 10:32:55 +01:00
Robert Schmidt 11d83dd461 Merge branch 'nr-ue-ci' into 'develop'
Add a new CI label: nrUE

Added handling of the nrUE label which limits the amount of CI tests to run. Only tests that use nr-uesoftmodem or phy simulators are triggered.

See merge request oai/openairinterface5g!3306
2025-03-18 09:05:32 +00:00
Robert Schmidt 8cbfa7b797 Use absolute path for copy
Local_Cmd forces use to use absolute paths for copy operations (because
that makes more clear where files are being copied). Use the absolute
path to avoid the corresponding exception.
2025-03-18 09:21:25 +01:00
Robert Schmidt 252c9db246 Correctly express dependency on LOG headers
Various libraries in this commit use the log headers (that is the
direct dependency). The log headers in turn include the T headers
(transitive dependency). Building on gracehopper with its many cores
triggers the build of these libraries before T headers have been
generated.

To resolve this and force the generation of T headers before building
the libraries, correctly express their dependency on the log headers,
which in turn ensures that T headers have been generated.

Depending on log_headers is preferrable because it is really the headers
that we depend on. Using instead e.g., utils, would trigger build of
source files, that we don't need for these libraries.  This commit is
part of a larger cleanup that I have that is not merged yet. Follow-up
work will generalize this in the repo, and ensure that every(!) library
builds.

We have to add CONFIG_LIB, as the log module has a direct dependency
onto the configuration module (it uses it). I am not sure why this was
not relevant before.
2025-03-18 09:21:24 +01:00
Robert Schmidt 4ed801dce3 Add correct T_headers dependencies
T_headers needs to ensure that T headers have actually been created.
This can be forced by depending on generate_T.
2025-03-18 09:21:24 +01:00
Robert Schmidt f70149933c Use getConnection() to allow build on localhost
Depending on the passed IP addr/host name, getConnection() will select
the right LocalCmd/RemoteCmd, which is better than hardcoded.
2025-03-18 09:21:24 +01:00
Bartosz Podrygajlo 2f09727811 Add a new CI label: nrUE
Added handling of the nrUE label which limits the amount of CI tests to run.
Only tests that use nr-uesoftmodem or phy simulators are triggered.
2025-03-17 17:09:05 +01:00
francescomani 10da6aa418 Merge remote-tracking branch 'origin/add-ci-test-msg3-c-rnti-ra' into integration_2025_w11 2025-03-17 16:55:07 +01:00
Guido Casati 7ba0613ae8 Add test for C-RNTI RA trigger to 24 PRB RFSIM CI pipeline 2025-03-17 16:54:18 +01:00
Guido Casati c456d6951e Add telnet trigger to force C-RNTI RA on the UE 2025-03-17 16:54:14 +01:00
francescomani dcf7e4ddcd Merge remote-tracking branch 'origin/issue_907' into integration_2025_w11 2025-03-17 16:50:56 +01:00
Jaroslava Fiedlerova da8d00d6fa Merge remote-tracking branch 'origin/increase-build-timeouts' into integration_2025_w11 (!3305)
This merge request is for two issues:

1. Core Network Deployment/Undeployment

If the Helm release oai5gcn does not exist (e.g., it was already deleted,
failed during installation), helm uninstall will fail with a "release not
found" error. The --timeout 60s makes Helm wait up to 60 seconds for all
resources to be deleted. If cleanup takes longer (e.g., due to resources
or dependencies), the command fails with a timeout error, potentially
leaving resources in an incomplete state.

2. Increase the timeout value for OpenShift RHEL Builds

The timeout parameter is set as the maximum wait time for the jobs to complete.
If the jobs do not complete within that time, the function logs an error. The
jobs may take longer to complete, the function exits early with an error, even
if the jobs are still progressing.

So, to address both the issues:

We first list all installed Helm releases in the given namespace, returning only
their names. We then pass the release names to helm uninstall, uninstalling all
releases in the namespace. The default value for timeout is 5 minutes.

Increased the timeout value for the RHEL Builds.
2025-03-17 14:08:52 +01:00
Jaroslava Fiedlerova fe52ef2858 Merge remote-tracking branch 'origin/NR_UE_rework_RA' into integration_2025_w11 (!3150)
Rework of NR UE RA procedures

Closes #848
2025-03-14 18:22:18 +01:00
Jaroslava Fiedlerova 830ceac0ab Merge remote-tracking branch 'origin/fix_numIter' into integration_2025_w11 (!3296)
fix(nrLDPC_decoder): fix numIter increment

The logs of ./nr_ulsim -n100 -m19 -s12 -S12 -z2 -L4 were showing that sometimes
the decoding of one segment was failing while the CRC check succeeded. This was
happening because the iteration counter numIter was not properly managed so that
when the last iteration was successful to decode the segment still numIter at
the exit was equal to numMaxIter plus 1 so that decoding was considered to have
failed. In other words the last iteration if it occured was always wasted.

This commit offers to solve this problem by simply moving the iteration counter
increment at the end of the iteration loop while remaining careful at fixing the
tests relying on this counter.

Post-Scriptum:
After a first review, we decided to make the counter more standard from a C code
perspective. The counter now counts from 0 to numMaxIter minus 1. If it reaches
numMaxIter, it means that decoding was unsuccessful.
2025-03-14 15:50:12 +01:00
Jaroslava Fiedlerova 950ee0a47f Merge remote-tracking branch 'origin/remove_b4_assertion' into integration_2025_w11 !3303
remove wrong assertion for B4 PRACH format

Introduced in !3088 (merged)
2025-03-14 15:47:46 +01:00
Laurent THOMAS a0721cac16 remove ul_ch_estimates_time that saves 50MB memory to access in RAM, and make better quality scope data passing (no race) 2025-03-14 11:27:01 +01:00
francescomani 44692187b8 use sleep to delay UE to allow the convergence of the IIR filter on PRACH noise measurements at gNB side instead of counting frames 2025-03-13 11:53:58 +01:00
francescomani 7ecedfced0 UE fix when completing RA with C-RNTI in MSG3 2025-03-13 11:53:58 +01:00
francescomani 39920eb337 L2 indication to prepare MSG3 payload in advance
This is required to comply with the standard to flush MSG3 buffer in some occasions and to keep preparing MSG3 payload in advance
2025-03-13 11:53:55 +01:00
Jaroslava Fiedlerova b9a4ebd11f CI: increase timeout for OC RHEL builds 2025-03-13 10:01:32 +01:00
Jaroslava Fiedlerova 4f9a152f6b CI: remove timeout for OC CN deployments/undeployments
Default value of timeout is 5 minutes.
2025-03-13 10:01:25 +01:00
francescomani 4b191b7d07 error for ra-responsewindow exceeding 10ms instead of assertion (CI test with FAPI would fail otherwise) 2025-03-12 10:30:18 +01:00
francescomani fc0d762407 move MSG3-C-RNTI flag from RA to MAC structure otherwise it would be reset by RA initialization 2025-03-12 10:30:18 +01:00
francescomani 96f1a2d474 implementation of RAR response window timer suspension
(this is needed because it might expire while MSG2 is being decoded despite being received inside the window)
2025-03-12 10:30:17 +01:00
francescomani 3f35d462e9 separate DL and UL timers at UE 2025-03-12 10:30:17 +01:00
francescomani 65bc749ee6 start the rar reception window in PRACH slots but take into account the additional slots difference wrt when we actually would need to start it (in first DCI occasion) 2025-03-12 10:30:17 +01:00
francescomani 5df6153024 remove unnecessary nr_ue_manage_ra_procedure function 2025-03-12 10:30:17 +01:00
francescomani dcc17a9d70 signaling RRC RA problems (leading to possible radio link failure) 2025-03-12 10:30:17 +01:00
francescomani e958822a73 Procedures for Contention Resolution 2025-03-12 10:21:27 +01:00
francescomani cc154da549 Procedures for Random Access Response reception 2025-03-12 10:21:27 +01:00
francescomani 108fdae159 removing unnecessary nr_Msg1_transmitted function 2025-03-12 10:15:49 +01:00
francescomani 878bbc65ad assertion for handling of RO mask 2025-03-12 10:15:49 +01:00
francescomani 9f3f7b041c clearing old structures and functions for rach occasions 2025-03-12 10:15:49 +01:00
francescomani 24fed617b5 reworking prach scheduler to use new rach occasion information 2025-03-12 10:15:49 +01:00