Commit Graph
2102 Commits
Author SHA1 Message Date
Giulio Carota 2f81f190d1 Generate TimingMeasurementConfig at DU, store at CU 2024-05-06 11:44:32 +02:00
Robert Schmidt aaaa00378a Do not send UE Context modif only with successful reconfig
The OAI DU does not use this message, and could not roll-back. The
LiteOn DU does not seem to like it. It is useless (as of now), so remove
it
2024-05-06 11:35:16 +02:00
Giulio Carota ae66ba7a7b fix(du/cu/rrc): use the correct MIB data structure
Use the correct MIB data structure, MIB_t. This is required by 38.473,
and the LiteOn DU sends only that. So our CU needs to handle it, so
align the OAI DU as well.
2024-05-06 11:34:29 +02:00
Robert Schmidt 1cefbdb87f F1AP for gNB-DU config update & ack in CU 2024-05-06 11:34:01 +02:00
Robert Schmidt cdd629de89 gNB-DU config update in DU 2024-05-06 11:22:57 +02:00
Robert Schmidt aa18edb8ac gNB-DU config update msg def and handle in CU 2024-05-06 11:18:43 +02:00
Robert Schmidt 1c747e8223 RRC stats: show DU info 2024-05-06 11:17:51 +02:00
Robert Schmidt 1bd6018f91 Add extract_sys_info(): refactor DU cell sys_info handling in own function 2024-05-06 11:17:20 +02:00
Robert Schmidt 00f85d54c5 Remove dead code 2024-05-06 11:14:17 +02:00
Robert Schmidt c8539aeef5 Remove misleading comment 2024-05-06 11:14:09 +02:00
Jaroslava Fiedlerova b915482e9b Merge remote-tracking branch 'origin/nr-pdcp-suspend' into integration_2024_w17 2024-04-30 09:01:28 +02:00
Guido Casati f010058e45 Re-establish RLC for SRB1 only when receiving RRCReestablishmentRequest
- according to 5.3.7.4 of TS 38.331: 1> re-establish RLC for SRB1;
- gNB:
1) re-establish RLC for SRB1 in nr_rlc_update_id
2) re-establish RLC for remaining RBs concurrently with RRCReconfiguration

issue: gNB) in nr_rlc_update_id the gNB is re-establishing RLC for all
            RBs at the same time when receiving RRCReestablishmentRequest
            from UE
        UE) according to the specs, the UE is re-establishing RLC for
            SRB1 with RRCReestablishmentRequest the other RBs are
            re-established during RRCReconfiguration (in our case in
            nr_rrc_ue_process_RadioBearerConfig) when receiving
            reestablishRLC IE in rlc_BearerToAddModList
    RLC TX) this leads to RLC counters mismatch after re-establishment:
            control PDUs discarded until max nb of retx is reached
            and then UL failure occurs
2024-04-30 08:40:56 +02:00
Jaroslava Fiedlerova c4b1966fc5 Merge remote-tracking branch 'origin/NR_bw_index_fix' into integration_2024_w17 2024-04-26 15:46:50 +02:00
Guido Casati 7a9b3485b1 Remove hardcoding of 5G-S-TMSI on nrUE 2024-04-19 10:58:09 +02:00
Guido Casati ab65bc3b08 Refactor PDCP Reestablishment of DRBs according to 5.3.5.6.5 of 3GPP TS 38.331
- remove PDCP reestablishment for DRBs from RRCReestablishment message generation
- do PDCP reestablishment and CUUP notification calls after reception or RRCReestablishmentComplete
- this is necessary to make it consistent with the RRCReconfiguration message that contains
  RadioBearerConfig with the list of bearers to add/release
  which is followed by PDCP re-establishment at UE
2024-04-17 16:17:37 +02:00
Guido Casati 5610ce0738 Fix PDCP re-establishment of SRB1 and SRB2
- SRB1 shall be re-established at the time of RRCReestablishmentRequest
  according to 5.3.7.4 of 3GPP TS 38.331
- SRB2 shall be re-established when creating srb-ToAddModList
  according to 5.3.5.6.3 of 3GPP TS 38.331
2024-04-16 22:04:42 +02:00
francescomani a0c5a3604a fix incorrect bw index evaluation for UE capabilities 2024-04-10 14:06:41 +02:00
francescomani 13d33163e9 nullPointer 2024-04-09 16:55:51 +02:00
francescomani 8404da759f nullPointerRedundantCheck 2024-04-09 16:55:51 +02:00
francescomani 1e1679b668 memleak 2024-04-09 16:44:56 +02:00
francescomani 2b90061669 resourceLeak 2024-04-09 16:44:56 +02:00
francescomani 686da85d05 invalidPrintfArgType_sint 2024-04-09 16:44:56 +02:00
Robert Schmidt 5f652b1716 Merge remote-tracking branch 'origin/resolve-duplicate-nas' into integration_2024_w14 2024-04-08 08:29:23 +02:00
Jaroslava Fiedlerova 8a9b69984b Merge remote-tracking branch 'origin/NR_SRS_remove_assertion' into integration_2024_w14 2024-04-05 11:19:09 +02:00
Robert Schmidt 680c6b69e1 Remove duplicated NAS message send, already done above
Closes: #775
2024-04-05 09:56:06 +02:00
Jaroslava Fiedlerova 3e9f1beea0 Merge remote-tracking branch 'origin/fix-f1-id-ues' into integration_2024_w13 2024-04-02 11:33:12 +02:00
Jaroslava Fiedlerova c92650003f Merge remote-tracking branch 'origin/NR_4_layers_MIMO' into integration_2024_w13 2024-03-29 16:06:14 +01:00
francescomani 0bb67e9552 removing an assertion in SRS RRC config that was already been removed in the past and someone has been placed back 2024-03-28 15:11:10 +01:00
Robert Schmidt e0b31be148 Request release for UEs if DU disconnects
38.473 section 8.2.3.1 says that upon F1 Setup Request, UE associated
signalling should be erased. In this commit, we trigger a release of all
UEs that were still connected to a DU when we received the SCTP
shutdown, i.e., when the DU disconnects.
2024-03-28 08:55:11 +01:00
Robert Schmidt e5e48bb2d8 RRC: take last UE activity time stamps 2024-03-28 08:55:11 +01:00
Robert Schmidt c45fb43110 Fix: handle CU-to-DU info in UE Ctxt setup Req 2024-03-23 10:21:41 +01:00
francescomani 8f858af876 improvements for 4-layer MIMO at gNB 2024-03-21 18:22:25 +01:00
francescomani 1fa6be2a3d fix procedure after T300 expiry 2024-03-19 09:55:05 +01:00
Robert Schmidt 1f2656617b Merge remote-tracking branch 'origin/fix_rrc_rnti_with_dup_random_val' into integration_2024_w11 2024-03-15 08:10:19 +01:00
francescomani bb19306797 transmission of RRCReestablishmentRequest message 2024-03-13 17:57:28 +01:00
Xin Zhe Khooi f89876778a RRC: Remove check for UE with random ID in RRC Setup Request
From the spec, it does not seem to be mandated to check that the random
identity needs to be unique within a cell. Also, from experience we see
that this only happens when the same UE "comes back"; so since one UE
can only have one connection, the other RRC UE contexts (with the same
identity) should be removed at some point, anyway, leaving only one with
the same identity.
2024-03-13 09:55:13 +01:00
Robert Schmidt 66bdd0e801 Merge remote-tracking branch 'origin/ci-aw2s-test-15' into integration_2024_w10 2024-03-08 07:16:11 +01:00
Laurent THOMAS 4245dd9be9 Remove useless declarations 2024-03-07 09:57:31 +01:00
Robert Schmidt 7ea8833529 Use MAX_MOBILES_PER_GNB in 5G NR code
NUMBER_OF_UE_MAX is a 4G constant, use 5G one instead
2024-03-07 09:56:20 +01:00
Robert Schmidt 70be05381f remove unused UE_PF_PO and ue_pf_po_mutex
They use 4G NUMBER_OF_UE_MAX, which is not supposed to be present in 5G.
Further, the mutex and variable are global state; for Paging, we should
use F1.
2024-03-07 09:56:20 +01:00
Robert Schmidt 885611cd00 SRS config: make explicit that > 30 UEs don't work, handle gracefully at runtime
We can only support up to 30 UEs for SRS. In this commit, we change:
- if the total number of UEs is > 32, throw error during compilation to
  raise awareness (32 so that a multiple of two still works, everything
  else is confusing, see also next point)
- during runtime, handle gracefully if UID is 30 or 31 to not abort (we
  can simply not allocate SRS resources)

Also, refactor config_srs() to always give back new memory; the code is
shorter and clearer. Rename to get_contig_srs() to make it explicit.
2024-03-07 09:56:20 +01:00
francescomani c917825dab remove calls to LTE mac.h in NR 2024-03-06 11:38:41 +01:00
Robert Schmidt a724dfba4f Merge remote-tracking branch 'origin/e1-reestablishment' into integration_2024_w09 2024-03-04 08:45:47 +01:00
Guido Casati ffd176e9d5 Minor fixes, comments, Clang formatting
- comments to improve readability of the code
- Clang formatting of E1 / RRC (partial)
2024-03-01 09:48:42 +01:00
Guido Casati 2a078c757b E1 Reestablishment
- PDCP reestablishment on CUCP (DRBs) triggering Bearer Context Modification procedures over E1
- Performing PDCP reestablishment for requested DRBs on CUUP
- Introduced function to notify re-establishment to CU-UP
- removed call to PDCP reestablishment for the DRBs on CUCP (it's done on CUUP)

cuup_notify_reestablishment:

- to fetch PDU session to setup in E1 following logic as in e1_send_bearer_updates
- fill bearer context modification request with stored F1-U tunnel information
  during E1 reestablishment, otherwise it would initialized to 0 by default
- update GTP tunnel with the stored configuration after E1 reestablishment
2024-03-01 09:48:35 +01:00
Guido Casati c83ff4c388 Store F1-U downlink TL and TEID
- info coming from UE context setup/modification response messages in RRC
2024-03-01 09:45:50 +01:00
Robert Schmidt b1f9e9d57a Reestablishment: preserve additional secondaryUE data
The previous code removed the "secondary UE" data (about DU association,
DU UE ID, associated CU UP), and only filled the F1-related data. In
other words, the associated CU-UP was lost. This commit reworks this
piece of code to retrieve old data, and update the relevant data without
destroying other.
2024-02-28 11:58:59 +01:00
Guido Casati b6087da1b2 Separated E1 Bearer Context Setup from Modification procedures
- many structs and definitions are overlapping between the two different E1 procedures
- introduced naming specific to E1 Bearer Context Modification to improve readability
- grouped SDAP and PDCP configuration IEs for better reusability and readability
- introduced functions to set and get default PDCP config (DRBs and Bearer Contexts)

find_or_next_pdu_session:
- find_or_next_pdu_session refers to the E1 Bearer Context Modification Request
-- therefore it has to return pdu_session_to_mod_t* and takes in input e1ap_bearer_mod_req_t *

see !MR2545 for more context
2024-02-28 11:58:42 +01:00
Guido Casati f392158c40 Removed redundant definition for max SRBs number (used in RRC procedures)
- according to specs, in NR there are 4 SRBs
- in OAI the relevant define is used in the RRC procedures
- this commit harmonizes code by removing redundancy
2024-02-28 11:14:00 +01:00
Guido Casati ea0185f84e Introduced define for uint8_t integrity and ciphering keys data structures
- the goal is to improve maintanability
2024-02-28 11:14:00 +01:00