Commit Graph
23682 Commits
Author SHA1 Message Date
Robert Schmidt bdfec26d82 Merge remote-tracking branch 'origin/hack-bye-message-aw2s' into integration_2023_w14 2023-04-05 19:30:33 +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
francescomani ebd70a3915 Merge remote-tracking branch 'origin/NR_pbch_errors_at_MAC' into integration_2023_w14 2023-04-04 19:35:23 +02:00
Robert Schmidt a6862df7aa Merge remote-tracking branch 'origin/guti-hotfix' into integration_2023_w14 2023-04-04 18:54:39 +02:00
Robert Schmidt a0a92f4581 Merge remote-tracking branch 'origin/NR_UE_aperiodic_SRS' into integration_2023_w14 2023-04-04 18:50:41 +02:00
Robert Schmidt 0a4e28688b Update phytest-timing test timing thresholds 2023-04-04 09:39:28 +02:00
Robert Schmidt 22db2d613f Correctly allocate GUTI in NAS UE structures 2023-04-04 08:40:48 +02:00
Sakthivel Velumani 1f6d111f6a Num wait idication as Tpool message field 2023-04-03 10:25:13 -04:00
Sakthivel Velumani 2bfe9ba229 Remove dead code 2023-04-03 10:25:13 -04:00
Sakthivel Velumani c8a61331ea Update UE design doc 2023-04-03 10:25:13 -04:00
Sakthivel Velumani 0004626ac7 Fix bug in QT scope
The UE copies scope data not in a single buffer to avoid overwiring in case of multiple slots processing in parallel. But the scope upates data from single buffer thats assigned during selection. A getPlotValue() method is created to update the data pointer on every timerEvent.
2023-04-03 10:25:13 -04: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
Sakthivel Velumani e45a051c80 Perform CRC check for whole TB 2023-04-03 10:25:11 -04:00
Sakthivel Velumani 5c6778be0c Fixed Harq stats print 2023-04-03 10:24:26 -04:00
Sakthivel Velumani 7d23ec27b5 Changed NR_UE_CAPABILITY_SLOT_RX_TO_TX to 3
Tested with X300 and there was no real-time problems.
Could get the same throughput as when NR_UE_CAPABILITY_SLOT_RX_TO_TX is 4.
2023-04-03 10:24:26 -04:00
Sakthivel Velumani f1841639f5 Updated documentation 2023-04-03 10:24:26 -04:00
Sakthivel Velumani a03864ee8c Fix printing help message 2023-04-03 10:24:26 -04:00
Sakthivel Velumani f3be849904 Delete job data when no response FIFO 2023-04-03 10:24:26 -04:00
Sakthivel Velumani 1d9a4a42e7 Corrected thread pool help message 2023-04-03 10:24:26 -04:00
Sakthivel Velumani 15c12caa37 Contains MAC changes to run || DLSCH
DL config as array in MAC
Run RX slot processing in Tpool thread
Fixed race in phy config
Changed mac_IF_mutex
Proc Tx: Lets wait for Proc Rx to get ACK/NACK
-(only on slots that carry ACK/NACK)
Fix problem with rfsim
Separated PDCCH and PDSCH decoding functions. Run PDCCH decoding in main UE_thread.
Fixed race in MAC dci config struct
needed for parallel processing of slots
Moved DLSCH transport block buffer to stack
rx_ind as static allocation
L2sim: Fixed calling of MAC sched in wrong slot
Fix DCI extract bug for RA procedure
2023-04-03 10:24:24 -04:00
francescomani 5c333cca65 move radio link failure detection on pbch at MAC 2023-04-02 09:48:09 +02:00
Robert Schmidt 1f97969675 Merge branch 'integration_2023_w13' into 'develop'
integration_2023_w13

See merge request oai/openairinterface5g!2037

* !1945 Free RNTI related structures at PHY after UE disconnection
* !2011 Creation of new pipeline LTE-TDD-2x2-container
* !1854 Handle reconfigurationWithSync
* !2019 bugfix: LDPC decoding in the gNB: clear d properly
* !2038 Fix DL 2x2 errors
* !2039 Adding test-case in XML to reset USRP in LTE-TDD pipeline
* !2008 Implement NR-UE Deregistration procedure
* !2023 Rework PDCP OAI API to allow custom SRB data forwarding (e.g., in F1)
* !2015 Update documentation: CI, general README.md, overview of doc README, various improvements
2023-04-01 13:28:17 +00:00
Robert Schmidt 06c0979b90 Merge remote-tracking branch 'origin/doc-ci' into integration_2023_w13 2023-03-31 18:06:19 +02:00
Robert Schmidt 51fe9b84dd Merge remote-tracking branch 'origin/pdcp-callbacks-simplify' into integration_2023_w13 2023-03-31 18:03:40 +02:00
Robert Schmidt 5268dbf3f8 Merge remote-tracking branch 'origin/deregistration' into integration_2023_w13 2023-03-31 18:01:00 +02:00
Robert Schmidt ca6ae2c486 Merge remote-tracking branch 'origin/ci-ltetdd-reset-usrp' into integration_2023_w13 2023-03-31 18:00:03 +02:00
Robert Schmidt 8c1aeb4ab9 Merge remote-tracking branch 'origin/develop-fix-DL-2x2-errors' into integration_2023_w13 2023-03-31 17:59:54 +02:00
Robert Schmidt 7a52279078 Merge remote-tracking branch 'origin/bugfix-clear-llr-properly' into integration_2023_w13 2023-03-31 17:58:23 +02:00
Robert Schmidt c4a9f0ea03 gNB RRC: Shorten time till UE is removed for RRCRelease 2023-03-31 17:23:03 +02:00
Robert Schmidt a6149386dc NR UE MAC: Decode TBS and print warning if unknown LCID 2023-03-31 17:23:03 +02:00
Robert Schmidt 25b3aaf230 NR UE RRC: DCCH messages can be on SRB1 or SRB2 2023-03-31 17:23:03 +02:00
Robert Schmidt 06436655ff Bugfix: Forward F1 DL RRC Message transfer on correct SRB 2023-03-31 17:22:59 +02:00
Robert Schmidt 0631c04fba Revert 5G RFsim timeout changes for tests with CN: deregistration triggers UE disconnect 2023-03-31 17:22:59 +02:00
Robert Schmidt 8e6554bdf3 Print log on receiving deregistration accept, on CONN Release stop nr-uesoftmodem 2023-03-31 17:22:59 +02:00
Robert Schmidt 7fb242d33e Send NAS_CONN_RELEASE_IND to correct NAS UE task from RRC NR UE 2023-03-31 17:22:59 +02:00
Robert Schmidt 03862de437 Update TESTBenches.md to reflect current stetup 2023-03-31 17:07:28 +02:00
Robert Schmidt ca3a7c612b Remove outdated CI section 2023-03-31 17:07:28 +02:00
Robert Schmidt 8ca640337a Reorganize RUNMODEM.md 2023-03-31 17:07:28 +02:00
Robert Schmidt a29e59b602 Update GET_SOURCES.md and BUILD.md 2023-03-31 17:07:28 +02:00
Robert Schmidt e4143ded39 Update main README and overview of documentation 2023-03-31 17:07:28 +02:00
Roberto Louro Magueta b69fb5bd74 Do not send TA command when rrc_processing_timer is active 2023-03-31 14:38:56 +01:00
Robert Schmidt d1fc95a8a1 GTP: when creating a tunnel, tell which functions to use
The GTP module is common for 4G and 5G. It hardcodes the functions to
call when creating S1U and NGU tunnels. The S1U case is both applicable
for LTE and NR (NSA), which until now was not a problem as the PDCP data
forwarding functions where called pdcp_data_req. The issue is that in this
branch, the NR PDCP functions have changed to nr_pdcp_data_req_drb().

When setting up a GTP tunnel, we now pass the PDCP data forwarding
functions into GTP, since the caller knows whether it is in 4G or 5G,
but GTP itself does not.
2023-03-31 11:53:52 +02:00
Robert Schmidt ed1d009381 fix warning 2023-03-30 19:59:48 +02:00
Robert Schmidt 99d5e50b6a fix merge 2023-03-30 19:58:55 +02:00
Robert Schmidt 1ac428a323 Merge remote-tracking branch 'origin/develop-handle-reconfigurationWithSync' into integration_2023_w13 2023-03-30 19:19:37 +02:00
Cedric Roux 50bf571347 hack: see "Bye." message when quitting gnb running with aw2s
For some (unclear) reason, nr-softmodem with aw2s device does not print
"Bye." when stopping it with control+c, which is problematic in the CI.

This little hack solves the problem.

(Maybe not the right solution, to be changed if needed.)
2023-03-30 12:57:10 +02:00
Dhanuja Elizabeth Thomas 15adb12b71 Adding test-case in XML to reset USRP in LTE-TDD pipeline 2023-03-30 10:25:36 +02:00
Robert Schmidt bd42a4259f Merge remote-tracking branch 'origin/lte-2x2-container-pipeline' into integration_2023_w13 2023-03-28 20:07:43 +02:00
Roberto Louro Magueta cf8dff2093 Implementation to update the RRC timers at UE 2023-03-28 18:52:48 +01:00