Commit Graph
23604 Commits
Author SHA1 Message Date
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 6529d875d8 nr_pdcp_data_req_srb(): take callback to forward data 2023-03-27 16:47:46 +02:00
Robert Schmidt ffebe2498d Simplify callback for deliver_pdu 2023-03-27 16:47:46 +02:00
Robert Schmidt 0f43c2c713 PDCP DL handling: unlock PDCP before forwarding PDU
nr_pdcp_entity_recv_sdu() processes PDCP SDUs, and forwards the PDU at the
end of the function, while having the PDCP lock. This can lead to
deadlocks, e.g., when another thread goes through RLC and tries to
access the PDCP while the PDCP tries to lock the RLC.

This commit changes the logic: instead of having recv_sdu() forward the
PDU directly, it fills a buffer with the PDU (thus the name change to
process_sdu()), and returns. We then unlock the PDCP, before forwarding
the PDU, thus eliminating potential deadlocks.
2023-03-27 16:47:46 +02:00
Robert Schmidt c405ad16a8 Remove nr_rrc_data_req()/rrc_data_req_nr_ue() 2023-03-27 16:47:46 +02:00
Robert Schmidt 2ac2a7f074 Make separate header for nr_pdcp instead of using 4G pdcp
Creates function that have nr_pdcp_ prepended to their name, and change
the signature of some functions for the 5G PDCP:

- nr_pdcp_layer_init()
- nr_pdcp_data_req()
- nr_pdcp_remove_UE()
- nr_pdcp_config_set_security()
- nr_pdcp_remove_UE()
- Make separate functions for nr_pdcp_data_req_srb/drb()
2023-03-27 16:39:24 +02:00
Robert Schmidt a458a251a0 PDCP: harmonize DL RRC Message transfer 2023-03-27 16:39:24 +02:00
Robert Schmidt 342ea0882d Merge branch 'integration_2023_w12' into 'develop'
integration_2023_w12

See merge request oai/openairinterface5g!2030

* !1957 UL improvements for 2-layers
* !2016 int32_t to c16_t conversion
* !2028 Fix ue capability config files
* !2022 NR dlsim pmi input
* !2027 limiting SR periodicity according to scs
* !1985 Correct F1 RRC Message Transfer
* !2024 harmonize mac_CellGroupConfig RRC configuration
* !2026 Fix build by installing nrscope dependencies
2023-03-26 10:52:14 +00:00
Robert Schmidt 60d7fe6347 Merge remote-tracking branch 'origin/NR_SA_Tutorials_fix_build' into integration_2023_w12 2023-03-24 11:56:49 +01:00
Robert Schmidt 8fd0ad58b2 Merge remote-tracking branch 'origin/NR_harmonize_mac_cellgroup' into integration_2023_w12 2023-03-24 11:56:41 +01:00
Robert Schmidt 9eac725441 Merge remote-tracking branch 'origin/simplify-f1-rrc-msg-transfer' into integration_2023_w12 2023-03-24 11:56:30 +01:00
luis_pereira87 8e9f9b5629 Fix build by installing nrscope dependencies 2023-03-24 05:57:26 +00:00
Robert Schmidt e5954f2dbf Merge remote-tracking branch 'origin/NR_SR_periodicity_limits_per_scs' into integration_2023_w12 2023-03-23 19:08:00 +01:00
Robert Schmidt 96f21a1ccb Merge remote-tracking branch 'origin/NR_dlsim_pmi_input' into integration_2023_w12 2023-03-23 19:07:52 +01:00
Robert Schmidt 7e29f16d53 Merge remote-tracking branch 'origin/develop-uecap' into integration_2023_w12 2023-03-23 18:57:46 +01:00
Robert Schmidt 9074566869 Merge remote-tracking branch 'origin/episys-merge-int-to-c16t' into integration_2023_w12 2023-03-23 18:57:37 +01:00
Robert Schmidt b44bb41235 Merge remote-tracking branch 'origin/develop-UL-Rx' into integration_2023_w12 2023-03-23 18:57:29 +01:00
Raphael Defosseux 6475cf21a5 fix(ci): removing the mysql-collection from pipeline; not used anymore
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2023-03-23 11:44:57 +01:00
Robert Schmidt 5b8674cc57 Remove any reference to NR_SRB_INFO in gNB RRC 2023-03-23 10:30:49 +01:00
Roberto Louro Magueta 9ab2fde392 Fix ue capability config files 2023-03-22 18:35:38 +00:00
Robert Schmidt b5acd48e5b Remove unused rrc_rlc_register_rrc() 2023-03-22 19:21:06 +01:00
Robert Schmidt acf73ac23f Delete misleading comment 2023-03-22 19:03:51 +01:00
Robert Schmidt b3791364fd Review: correct indentation 2023-03-22 19:03:42 +01:00
Robert Schmidt 7c0cb06e59 Review: correct indentation 2023-03-22 19:03:31 +01:00
Melissa Elkadi 9c9ce64809 Fixing warning during build (wasnt casting properly) 2023-03-21 10:11:50 -07:00
francescomani 508b67e5e5 limiting SR periodicity according to scs 2023-03-21 13:52:03 +01:00
Roberto Louro Magueta 9e6fe8cf80 Add CI test: 3GPP G-FR1-A4-27, PUSCH Type B, 40 MHz BW, 30 kHz SCS, 2 RX Antennas Requirements Test, 2 layers 2023-03-20 17:13:30 +00:00
Roberto Louro Magueta a4d43c249e Update the ad_shift, considering the previous improvement 2023-03-20 17:13:30 +00:00
Roberto Louro Magueta 451449e148 Avoid multiple shifts in UL channel compensation 2023-03-20 17:13:30 +00:00
Roberto Louro Magueta 508d7d284b Fix magnitude computation for 2-layers UL in nr_ulsch_zero_forcing_rx_2layers() 2023-03-20 17:13:30 +00:00
Roberto Louro Magueta b2e1631f7d Simplification of function nr_ulsch_channel_compensation() 2023-03-20 17:13:30 +00:00
francescomani 29ee6b17fa adding check on allowed pm index in dlsim 2023-03-20 17:33:15 +01:00
francescomani 90bfdfcaf3 harmonize mac_CellGroupConfig 2023-03-20 17:18:02 +01:00
Robert Schmidt 7b40520a2d Do not handle NR_RRC_DL_INDICATION message at NR RRC
The message is never sent to the RRC. And this message is to be
forwarded by the DU to the UE, hence it should not even be handled by
the RRC (as the RRC in the CU sends it).
2023-03-20 16:57:58 +01:00
Robert Schmidt b3ff033e29 Do not decode RRC Container in DL RRC message
The RRC container is transparent for the DU. Hence, we should not decode
it.
2023-03-20 16:57:58 +01:00
Robert Schmidt 27566f49dd Create CellGroup, SRB0, and SRB1, before sending Initial UL RRC message
During the Initial UL RRC Message, the CellGroup is created. Since the
CellGroup specifies the SRB1, the SRB1 should also be created (because
the DL RRC Messages is sent via SRB1). However, before this commit, the
CellGroup is created while having the RLC lock, so we cannot create
SRB1, as it results in a deadlock.

Therefore, we now first create CellGroup, SRB0, and SRB1, before giving
the UE message to the RLC.
2023-03-20 16:57:58 +01:00
Robert Schmidt c4c41d3b69 Simplify nr_rlc: provide functions to add SRB/DRB 2023-03-20 16:57:58 +01:00
Robert Schmidt 0ed9201169 Remove useless node_type switches in RRC 2023-03-20 16:57:55 +01:00
Robert Schmidt da193d1bd1 Merge branch 'integration_2023_w11b' into 'develop'
integration_2023_w11b

See merge request oai/openairinterface5g!2020

* !1833 NR ULSCH transform precoding improvements
* !1929 Implementing bands greater than 64 in the code, feature #603
* !1982 Rework ngap
* !1998 Update NR RRC to version 17.3.0
* !2003 improve NR UE state machine
* !2007 possibility to set identity precoding matrix from config file
* !2009 Use same configurable port number for local and remote N3
* !2012 fix unaligned IDFT
* !2013 doc(tutorial): switching to jinja-rendering configuration on the OAI-CN5 containers
* !2018 demote two UL scheduler warnings to debug level
2023-03-20 15:47:59 +00:00
francescomani 65ce834863 add pmi input option in dlsim 2023-03-20 16:29:38 +01:00
Robert Schmidt de7f072e85 fix physim container image build 2023-03-20 15:35:14 +01:00
Robert Schmidt ca25160c4c Some cleanup after introducing new CI machine 2023-03-20 15:20:28 +01:00
luis_pereira87 3514cb43ba Minor fixes to get NR_RRCReestablishment working again after merging on the integration branch 2023-03-20 09:23:05 +00:00
luis_pereira87 40b5e99197 Fix segmentation fault when calling get_transformPrecoding function for BWP_id > 0 and rach_ConfigCommon = NULL 2023-03-18 15:28:52 +00:00
Robert Schmidt ef9104d264 Merge remote-tracking branch 'origin/doc-update-cn5g-docker-compose-for-tutorial' into integration_2023_w11b 2023-03-18 12:07:49 +01:00
Robert Schmidt 7773311e0e Merge remote-tracking branch 'origin/NR_UL_scheduler_warnings' into integration_2023_w11b 2023-03-18 12:05:13 +01:00
Robert Schmidt 10a10e9910 Merge remote-tracking branch 'origin/fix_unaligned_idft' into integration_2023_w11b 2023-03-18 12:05:05 +01:00
Robert Schmidt 15055c26b8 Merge remote-tracking branch 'origin/616-gnb-remote-n3-port-can-no-more-be-modified' into integration_2023_w11b 2023-03-18 12:04:58 +01:00
Robert Schmidt d77c1c3ebf Merge remote-tracking branch 'origin/NR_identity_precoding_from_config' into integration_2023_w11b 2023-03-18 12:04:52 +01:00
Robert Schmidt 93f42683d1 Merge remote-tracking branch 'origin/NR_improve_UE_state_machine' into integration_2023_w11b 2023-03-18 11:53:24 +01:00