Commit Graph
2014 Commits
Author SHA1 Message Date
francescomani b70eba44a7 fix for computing ssb subcarrier offset 2024-02-02 09:21:40 +01:00
Guido Casati 6fca568091 Minor improvements to code comments 2024-01-25 17:10:52 +01:00
Guido Casati 45ca753b24 Handling E1 connection loss on CU-CP
- it triggers the RRC callback after SCTP SHUTDOWN indication
- CUUP entity cleanup at RRC level
2024-01-25 17:10:52 +01:00
Guido Casati b9bfff3327 Minor improvements to E1 procedures readability 2024-01-25 17:10:52 +01:00
Guido Casati c8103f2905 Minor fix to E1 Setup Failure log 2024-01-25 17:10:52 +01:00
Guido Casati 7faabc6b45 Implementation E1 Setup Failure (8.2.3.3 of 3GPP TS 38.463)
- CU-CP replying to the CU-UP with a Setup Failure message in case of unsuccessfull E1 Setup Request
- message is decoded by the CU-UP, and stops the process
2024-01-25 17:10:48 +01:00
Jaroslava Fiedlerova 8a2d9c10f2 Merge remote-tracking branch 'origin/liteon_du_integration' into integration_2024_w03 2024-01-19 15:12:54 +01:00
francescomani 0e5c040aa1 purge unnecessary maybeRNTI from PDCP 2024-01-19 11:33:27 +01:00
francescomani 1b9f674572 clean asn1_msg from mod_id 2024-01-19 11:33:27 +01:00
Giulio CarotaandRobert Schmidt 20710c9a91 Implement F1AP RRC Version encoding/decoding in CU&DU
RRC Version is a required IE. Hence, implement the encoder and decoder
for this message. At the DU and CU, read the RRC Version we use and fill
the corresponding field.

Co-authored-by: Robert Schmidt <robert.schmidt@openairinterface.org>
2024-01-18 15:02:00 +01:00
Giulio Carota 0869aae72b Initialize RRC's DU SetupReq to zero 2024-01-18 15:02:00 +01:00
Giulio Carota d425f08b16 Add transaction ID for Setup Req&Resp and use it
CU's TransactionID in F1SetupResponse didn't match Setup Request for
some DUs, so implement this correctly and answer with correct
transaction ID.
2024-01-18 15:02:00 +01:00
Robert Schmidt 3df31b0e55 RRC: check for DU MIB1/SIB and handle accordingly
For LiteOn DU, we do not receive the MIB/SIB1 in the F1 Setup Request.
This is not a problem in itself, but it might happen that certain
procedures are executed without MIB/SIB1. Check for it and handle
appropriately:
- During normal connection establishment, we might not be able to
  calculate measurement config
- During reestablishment, we might not be able to calculate ARFCN SSB
  and cannot do reestablishment; do RRC setup instead.
2024-01-18 15:02:00 +01:00
Giulio Carota 5ee5224a62 Do not require F1 System Information when handling new DU
gNB-DU System Information may be sent after setup to update the system
information, and the RRC can "do without". See next commit.
2024-01-18 15:02:00 +01:00
francescomani 90c8e7dfd1 improvements in UE detachment, including sending a message from NAS and signaling to MAC and fixing some memory leaks when terminating UE 2024-01-04 14:28:49 +01:00
Robert Schmidt ca41df3863 Merge remote-tracking branch 'origin/multi-f1-e1-fixes' into integration_2023_w51 2023-12-23 11:52:50 +01:00
Robert Schmidt 460f11e3f3 Merge remote-tracking branch 'origin/remove-unused-memblock' into integration_2023_w51 2023-12-21 16:10:05 +01:00
Robert Schmidt db2e27e653 Increase log level for CU-UP selection to improve visibility 2023-12-20 15:25:50 +01:00
Robert Schmidt 8daf1edbc6 RRC: bearer context setup: correctly store DRB QoS params
When setting up bearer(s) through F1, the corresponding F1 message has
QoS fields for the DRB(s) to be set up, as well as for all flows
associated to this DRB. In this commit, set the DRB QoS field to be
equal to the first flow (it is unclear/unspecified how it should be set
up, based on the flows), which was not set before and therefore
contained unitialized data.

The F1 module uses this data, and in split mode, F1 message generation
failed due to uninitialized data.
2023-12-20 15:19:38 +01:00
Robert Schmidt 8c8971258e NGAP: read correct PDU session NSSAI
The allowed NSSAIs is NOT the NSSAI to be used for a UE. Fix it to use
the correct one.
2023-12-20 15:19:38 +01:00
Robert Schmidt 642fd9996b CU-CP/UP: release UE at PDCP in CU-CP
We reuse RRC UE IDs at the RRC. Previous to this commit, we did not
release a UE at the CU-CP's PDCP (for SRBs). Thus, when reconnecting a
UE, the PDCP might not be in a good state, since we did not release the
previous PDCP UE context.
2023-12-20 15:19:38 +01:00
Laurent THOMAS 63b64d4fce move common code file in common directory
remove several unused files
remove mem_block_t that is never used in a different way than a simple heap buffer
move up IP address type and remove duplications of the same struct declaration
2023-12-19 10:37:10 +01:00
francescomani 60f5b9622c clang formatting and review 2023-12-17 17:28:28 +01:00
francescomani b0dd591932 fixes after CI run 2023-12-12 14:12:48 +01:00
Robert Schmidt 1f0e5bd664 Merge remote-tracking branch 'origin/improvements_f1ap_for_QoS' into integration_2023_w49 2023-12-08 09:53:12 +01:00
Robert Schmidt 3580ddb546 Merge remote-tracking branch 'origin/Fix_FR2_SSB_ARFCN_scalling' into integration_2023_w48 2023-12-05 07:40:02 +01:00
luis_pereira87 c80fc07719 Fix scaling for FR2
Position of SSB from Point A depends on offsetToPointA and Kssb, and for both, the unit for RB is expressed as 15KHz for FR1 and 60 KHz for FR2, so scaling must be 4 for FR2 frequencies
2023-12-01 14:27:01 +00:00
Sriharsha Korada ed29252c6d F1AP and E1AP interface changes for QoS
- Implement: Extend the F1 encoding and decoding with Qos
- Implement: E1 decoding for QoS
- Fix: Modify the UE_MODIFICATION_REQUEST_MSG towards DU to contain QoS info based on E1AP context response
- Fix: Modify the E1AP and F1AP message structures
- Fill the Qos configuration to send to MAC
2023-11-30 17:41:12 +01:00
francescomani 31740f0d71 setting same periodicity for CSI-RS and CSI report 2023-11-28 12:52:21 +01:00
Robert Schmidt 3e9d310093 Merge remote-tracking branch 'origin/implement_logical_channel_prioritization_ue' into integration_2023_w47 2023-11-24 17:55:45 +01:00
Robert Schmidt ec3de01377 Merge remote-tracking branch 'origin/nr-pdcp-reestablishment-procedure' into integration_2023_w47 2023-11-24 14:12:20 +01:00
Cedric Roux 2c2915dad8 reestablish only exisiting RBs 2023-11-20 11:00:23 +01:00
Cedric Roux 107913d6b2 nr pdcp: rework reestablishment
Security part needs to be checked, may fail to work.
But if it fails, it was probably not working before either.

This commit also contains adding 'static' to nr_pdcp_entity_release()
and nr_pdcp_entity_delete() (it was too complicated to do a separate
commit for this).

We also update stats in free_rx_list() (again, too complicated for
a separate commit).

openair2/RRC/NR/rrc_gNB.c probably needs some more work, it is a
bit ugly to reestablish all the drbs without checking if they
exit. It will generate warnings at runtime. I didn't do it because
I don't know the proper way.
2023-11-19 16:57:03 +01:00
Cedric Roux 13757862fb hotfix: set PDCP t-reordering to 100ms
The function generateDRB() sets the value to 100ms but the function
rrc_gNB_process_NGAP_PDUSESSION_SETUP_REQ() sets it to 0ms.

So what happens is that the UE gets the value 100ms in the
RRC Reconfiguration but the gNB creates the PDCP entity with 0ms.
Let's create it with 100ms instead, to be aligned with how we configure
the UE.

And also avoid some PDCP warnings at runtime when some packets
are retransmitted but rejected because of the 0ms timer. This is
the warning:

    [PDCP]   discard NR PDU rcvd_count=68469, entity->rx_deliv 68481,sdu_in_list 0

This is just a hotfix. A real solution is to have the RB creation in
only one place. And we should also have those parameters configurable.
Work for later.
2023-11-18 21:56:42 +01:00
sriharsha f248b2fdff fix: avoid freeing rlc config structure 2023-11-16 09:07:05 +01:00
Robert Schmidt 23597c9193 Merge remote-tracking branch 'origin/f1-multiple-du' into integration_2023_w44 2023-11-13 16:23:58 +01:00
Robert Schmidt b07691643d Merge remote-tracking branch 'origin/f1-bwp-switching' into integration_2023_w44 2023-11-13 15:10:27 +01:00
Robert Schmidt 0c51db05ad Merge remote-tracking branch 'origin/UE-rrc-coarse-cleaning' into integration_2023_w44 2023-11-13 15:10:20 +01:00
Laurent THOMAS dd059343d9 ue-rrc-coarse-cleaning 2023-11-10 17:43:59 +01:00
Robert Schmidt 8e4ff595a0 Merge remote-tracking branch 'origin/fix-no-f1uedata-when-in-mac' into integration_2023_w44 2023-11-10 17:29:28 +01:00
rmagueta 8551260243 Clean up previous BWP switching implementation that was not F1 compliant 2023-11-10 16:01:33 +01:00
Robert Schmidt 96dfb44ae7 Print DU information in periodic RRC stats printing 2023-11-10 15:29:45 +01:00
Robert Schmidt 59a25c48ff RRC UE context lookup by RNTI: use assoc_id 2023-11-10 15:29:45 +01:00
Robert Schmidt 97d574229d Check PCI/nrCellID non-overlapping 2023-11-10 15:29:38 +01:00
Robert Schmidt 7c4ec50e23 PLMN check F1 Setup: cellId does not necessarily match
Multiple DUs host cells, whose cell ID cannot match (to identify them
uniquely). Hence, don't check for equality with CU, because otherwise,
we can never connect multiple DUs.
2023-11-10 15:29:38 +01:00
Robert Schmidt c812cea143 Multiple DUs in a tree 2023-11-08 10:18:52 +01:00
Robert Schmidt e155080ece Assoc ID CU->DU 2023-11-08 10:18:52 +01:00
Robert Schmidt a377e5231c Set UE DU assoc_id to 0 on DU disconnect
An assoc_id of 0 is used to mark UEs whose DU is "offline" (not
connected). In this patch, if a DU disconnects, we go through all UEs
and set their assoc_id to 0 if they belong to a UE that just went
offline.
2023-11-08 10:18:52 +01:00
Robert Schmidt e5684d217c Assoc ID DU->CU 2023-11-08 10:18:52 +01:00
Robert Schmidt 843a1dc0a3 Introduce lookup functions for DUs 2023-11-08 10:18:52 +01:00