Commit Graph

509 Commits

Author SHA1 Message Date
David Rupprecht 68fe21928e Added initialization of nas5g logger 2022-07-21 09:55:38 +02:00
Andre Puschmann 6db4835302 ue,rrc_nr: use minimal NR capabilities by default
keep hard-coded caps as compile-time option but don't use them by default.
2022-04-25 10:07:41 +02:00
Bedran Karakoc 2cccad9d28 ue,rrc_nr: Added initial UE Capability Information 2022-04-25 10:07:41 +02:00
Andre Puschmann da2ac3b2c1 srsue,rrc_nr: fix warning and error logs in SA mode
- provide PHY config state to configure MIB values (coreset0).
- set PRACH freq_offset to valid value to please config checker.

Addresses:
2022-04-19T12:42:38.726040 [PHY-SA ] [E] [    0] prach_cfg.freq_offset=0 is not compatible with LTE
2022-04-19T12:42:38.726040 [PHY-SA ] [I] [    0] PHY:   Set TA offset: n_ta_offset: 0, ta_usec: 0.0
2022-04-19T12:42:38.726141 [RRC-NR ] [W] PHY configuration completed without a clear state.
2022-04-20 14:57:02 +02:00
Andre Puschmann b2e0481849 ue,mac,nr: fix another race in MAC 2022-04-20 14:57:02 +02:00
Andre Puschmann b157490cb3 ue,nr,mac: fix race-condition when accesing temp RNTIs during RA procedure
the race was in the prach_nr that stored the temp crnti without proper protection.
the fix moves the logic to store the value to the MAC that uses the thread-safe
RNTI object for this.
2022-04-20 14:57:02 +02:00
Ismael Gomez 6ffa036b84 srsue,stack: initialize sdap pointers 2022-03-29 14:30:14 +02:00
Ismael Gomez edeb8e8f18 srsue,nr: add TA support from RAR and MAC CE 2022-03-29 14:30:14 +02:00
Ismael Gomez b3497c4a94 srsue,nr: decode SIB1 based on coreset0 configuration in MIB 2022-03-29 14:30:14 +02:00
Ismael Gomez bfe69deccc srsue, nr: Add SDAP to the UE. Supports only UL header 2022-03-29 14:30:14 +02:00
Ismael Gomez a4f26fa5d6 srsue,rrc: send precanned UECapabilityInformation 2022-03-29 14:30:14 +02:00
Ismael Gomez 7f8ac07b65 srsue: fix A1/S2 reports with CA. Fix some unstability issues when doing HO with multiple carriers due to frequent call to update_phy 2022-03-26 23:12:57 +01:00
Andre Puschmann 32885e2404 ue, rrc_nr: refactor PHY config statages for NSA/SA operation
split the PHY config states into NSA and SA states.
this should remove unwanted warnings when PHY returns
from the configuration.
2022-02-08 09:48:58 +01:00
Andre Puschmann 83ad98c58b srsue,rrc_nr: add helper to configure default PHY layer parameters 2022-02-04 15:34:06 +01:00
Andre Puschmann 7c63da9e4d srsue,rrc_nr: expose main carrier parameters as config
* remove hard-coded ARFCN, SCS, etc
* use PCI deteceted in cell search for carrier config
2022-02-01 20:38:06 +01:00
Andre Puschmann 8464a6ed63 srsue: refactor SA mode in RRC, don't initilize NSA-5G in NSA mode 2022-02-01 20:38:06 +01:00
Andre Puschmann 71f48ee7f2 ue,rrc: refactor PHY parameter derivation for SA
* expose carrier/SSB config in RRC args
* provide hard-coded values until exposed as param
* remove coreless option
2022-02-01 20:38:06 +01:00
Bedran Karakoc d448eac941 ue,rrc_nr: Add dummy handler for RRC Release to avoid logging an unhandled message error 2022-01-31 16:19:20 +01:00
Andre Puschmann 4890ee9875 ue,rrc: add RRC metrics and fix stdout 2022-01-27 15:17:00 +01:00
Bedran Karakoc efa13290a9 ue,rrc_nr,nas_5g: Introduce NR AS Key derivation and update context handling in 5G NAS 2022-01-25 14:24:58 +01:00
Bedran Karakoc a8eaf1cdd8 ue,nas_5g: Add get_k_amf() helper function and security context flag 2022-01-25 14:24:58 +01:00
Andre Puschmann f3fa0d6d46 ue,rrc_nr: add RRC Reconfig Complete sender 2022-01-24 11:57:46 +01:00
Fabian Eckermann 12cc7cb4d7 Add support for RRC redirect. 2022-01-21 09:46:56 +01:00
Andre Puschmann 09b8d3ba6b ue,rrc_nr: add message handler/sender for SA until security mode command 2022-01-19 18:37:24 +01:00
Andre Puschmann e9252c731e ue,rrc: fix cell selection and RRC setup procedure
* fix event processing in RRC procedures
* add UE timer and constants
* parse SRB setup
2022-01-18 18:20:04 +01:00
Xavier Arteaga 8854ba49b9 UE RRC NR includes cell search in the initial cell selection procedure 2022-01-17 10:55:38 +01:00
Xavier Arteaga db19941985 Minor changes on UE SA PHY 2022-01-12 10:27:33 +01:00
Xavier Arteaga e2b2007293 Fix srsue compilation 2022-01-12 10:27:33 +01:00
Fabian Eckermann 4182a9f164 Add cell group update without random access. 2022-01-10 21:09:03 +01:00
Fabian Eckermann a6c1098afe Add decoding of RRC reconfiguration. 2022-01-10 21:09:03 +01:00
Fabian Eckermann 6252d94ef4 Change NSA RRC reconfiguration interface to prepare for SA. 2021-12-14 18:00:49 +01:00
Fabian Eckermann 1407983c75 Add decoding of RRC setup. 2021-12-14 18:00:49 +01:00
Fabian Eckermann affdacd9b4 Add decoding of sib1. 2021-12-14 18:00:49 +01:00
Ismael Gomez 3c929ed24c ue,sa: Sends PRACH and receives RAR, then Msg4, resolves contention resolution and pushes ConnectionSetup to RRC 2021-12-01 22:36:10 +01:00
Ismael Gomez 15025f5d57 Merge remote-tracking branch 'origin/sa_ue_rrc2' into feature_nr_sa_igm 2021-12-01 10:50:27 +01:00
Andre Puschmann 28bd93be40 ue,sa: add minimal cell selection and setup request procedure
skeleton based on EUTRA procedures
2021-11-30 18:13:23 +01:00
Ismael Gomez 219bae4fd3 srsue,sa: dummy rrc_nr to initiate dummy cell_select and phy_cfg 2021-11-30 14:45:26 +01:00
Ismael Gomez fb897d2998 Refactor PHY interfaces to remove difference between SA and NSA PHY 2021-11-30 14:45:26 +01:00
Andre Puschmann 7227f03314 ue,rrc_nr: refactor reconfig procedure to own source file
preparation to add next procedure
2021-11-29 12:44:32 +01:00
Andre Puschmann ccd4334672 rrc_nr: add basic interface for NAS 2021-11-29 12:44:32 +01:00
Andre Puschmann a15962c817 ue,rrc: move NR RRC into own folder 2021-11-29 12:44:32 +01:00
faluco 3b2f0d2f65 Fix several issues in GW class:
- Avoid triggering an assertion when the  gw thread is pending termination.
- Re-order gw::stop method to avoid a race condition when closing the TUN device while the gw thread is still running.
2021-10-28 17:42:08 +02:00
faluco f1385640c4 Fix data race in proc_bsr and ul_harq classes. 2021-10-27 18:15:28 +02:00
faluco 92b81b200f Fix data race in ul_harq_process::current_irv. 2021-10-26 19:04:02 +02:00
Xavier Arteaga ebab12403f
Asynchronous NR PHY configuration (#3527)
* Fix a race condition when accessing the NR PHY cfg by the RRC and phy workers.
Rework how the phy cfg is handled, now workers have their own copy that gets updated after a reconfig moving it out of the state class.

* Default initialize sf_len member in sf_worker for consistency.

* Asynchronous NR PHY configuration

* Fix compilation

* Corrected method override and fix unitialised value

* Added carrier equal comparison to avoid aligment byte padding comparison

Co-authored-by: faluco <borja.ferrer@softwareradiosystems.com>
2021-10-25 10:51:02 +02:00
faluco 5f93ff6ed0 Batch of data race fixes in the following classes: RLC AM, Intra measure, UL HARQ, PHY common. 2021-10-23 21:26:00 +02:00
Ismael Gomez c096270fc7 ue,nr: ignore NDI if received on T-CRNTI or RAR 2021-10-21 22:17:30 +02:00
faluco d7e8d6bf65 Fix data race in mux_nr::add_bsr_ce. 2021-10-20 18:08:41 +02:00
Francisco 81174bda64 nr,ue,rrc: release NR logical channels during RRC release 2021-10-15 18:28:09 +01:00
Bedran Karakoc 0507d9df2b nas,nr: Fix ciphering and sequence numbers in NAS 2021-10-15 14:47:22 +02:00