Commit Graph

599 Commits

Author SHA1 Message Date
Pedro Alvarez 981e682d2e enb,rrc: disable SRB2 in mac controller during handover. This is to
avoid transporting NAS messages before we received the RRC Reconf
 complete and the HO is finished.
2022-07-13 18:34:46 +01:00
Pedro Alvarez d62266ec58 rrc: fix mobility test to check if SRB2 being started to early 2022-07-13 18:34:46 +01:00
Robert Falkenberg c5d5d45574 cmake: fix build for cmake option BUILD_SHARED_LIBS=ON
The cmake option BUILD_SHARED_LIBS (off by default) causes all
libraries to be built as shared libraries if not unless explicitly
stated otherwise.
Since test-helper libraries do not export their symbols, linking
fails if built as shared library.
Therefore, this change explicitly configures these helpers as STATIC.
2022-05-11 13:45:07 +02:00
Andre Puschmann 70eaec21e2 all: fix uninitialized variables detected by coverity 2022-04-28 15:42:08 +02:00
Francisco 0de1565e52 rrc,s1ap: configurable target eNB TACs during LTE handover. 2022-04-06 12:16:11 +01:00
Andre Puschmann 2c2c1857e9 enb_phy_test: fix uninitialized memory 2022-02-08 16:04:27 +01:00
Francisco f7efee9884 asn1: use typedefs for amf_ue_ngap_id, ran_ue_ngap_id, mme_ue_s1ap_id and enb_ue_s1ap_id and changed interface to access s1ap and ngap protocol_ies 2022-01-11 22:59:38 +00:00
Francisco Paisana 2d2a5bee03 asn1: update procotol_ie_single_container interface to use -> operator instead of .value to access container content 2022-01-11 22:59:38 +00:00
Francisco e8f6c723b6 refactor: isolate rrc interfaces for pdcp, rlc and s1ap into separate files. This will avoid importing lte asn1 symbols to srsgnb code 2021-12-15 23:25:26 +00:00
Francisco e8beb2ef81 nr,rrc: redesign fetching of asn1 obj ids for comparison and addmod/rem to asn1 lists 2021-11-16 19:04:51 +00:00
faluco 8d33d93c77 Fix a race condition in the enb csv metrics where set_handle was called while the metrics thread is running causing a race in the enb member variable.
Fix it by setting it during object construction.
2021-11-12 13:39:42 +01:00
Francisco fd7c5e375c nr,gnb,rrc: implement NR RRCSetup in RRC and wrote unit test 2021-11-11 10:55:35 +00:00
Andre Puschmann 0967cda042 gnb,stack: move gNB components into own folder
* move RRC, MAC, NGAP, SDAP into gnb folder
* move testing code below respective layers
2021-11-05 15:26:06 +01:00
Francisco 2d6ce768c7 nr,gnb,rrc: generation of MIB/SIB1 inside rrc_nr class and test to verify the correct output 2021-11-04 18:05:14 +00:00
Francisco 96fd3aae3c nr,gnb: small gnb interface refactors and fix of byte buffer operator= 2021-11-04 18:05:14 +00:00
Francisco 8d719db43d nr,gnb,mac: implement zero-copy get_dl_sched/get_ul_sched NR scheduler interface 2021-11-03 21:21:45 +01:00
Francisco 6fb5257609 nr,gnb,sched: cleanup of checks in sched_nr_allocator and removal of unused classes 2021-11-02 00:41:24 +00:00
Francisco 7b989d9976 nr,gnb,sched: refactored slot_ue class to use pointer to ue_carrier instead of deriving all necessary parameters 2021-11-02 00:41:24 +00:00
Francisco 1a56629a72 nr,gnb,sched: centralized all feedback/event management (cc-specific and non-cc-specific) into a single class 2021-11-02 00:41:24 +00:00
Francisco e5e047bc63 nr,gnb,sched: avoid that the nr sched handles the rach before it creates the ue object 2021-11-02 00:41:24 +00:00
Francisco f2409534e4 nr,gnb,sched: Simplify sched api and locking design to better reflect the mac-phy FAPI interface
- removal of condition variables from sched main calls
- addition of sched sched::slot_indication call as a point of synchronization per slot
- removal of sched_worker_manager class
- removal of serv_cell_manager class
- centralization of cc-specific functionality and components in cc_worker
2021-11-02 00:41:24 +00:00
Fabian Eckermann 3e9590fd13 Initialize variable. 2021-10-27 17:39:51 +02:00
Ismael Gomez d972fb368c
Some LGTM fixes (#3564)
* Fix LGTM issues

* ue: add logging to switch on function

* Fix new LGTM issues
2021-10-26 21:15:36 +02:00
Francisco e4247517d0 nr,sched: update sched_nr_test to support the new DL sched no-copy api 2021-10-23 21:09:26 +02:00
Francisco 327687cbc2 nr,sched: auto clear HARQs that exceeded maxretx, after the feedback has been processed 2021-10-22 18:08:43 +01:00
Pedro Alvarez fbcffb84bd Check if RLC is suspended before transmiting PDCP SDU.
This was done to avoid integrity issues, when the UE's RRC erroneously sent
measurement reports while the re-establishment was already in progress.

As errously sending PDCP PDUs on DRBs can cause issues as well, this was
disabled too.
2021-10-22 17:27:32 +01:00
Francisco fd998dac15 lte,enb,rrc: fix rrc_meascfg_test 2021-10-21 16:16:01 +01:00
Francisco c6226b0d94 lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE 2021-10-21 16:16:01 +01:00
Francisco f2818d0504 enb,sched: improve sched ue buffer manager to show rnti in logs 2021-10-21 10:33:26 +01:00
Francisco 4a58c10f30 lte,enb,rlc: compute and forward to scheduler the number of bytes pending for retx and status pdu in RLC AM bearer 2021-10-21 09:31:03 +01:00
Francisco 9df6c6b936 sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay 2021-10-14 21:38:12 +01:00
Francisco bc4264277a sched,nr: update NR scheduler tester to support parallel CC workers 2021-10-14 19:27:52 +01:00
Francisco ea324e8cbe nr,sched,test: update sched nr test to better reflect MAC-PHY FAPI 2021-10-14 19:27:52 +01:00
Francisco 04d48127bb nr,sched: enable NR fixed mcs configuration via enb.conf 2021-10-13 11:23:10 +01:00
Francisco c08bb6023c nr,sched,refactor: clear of unused typedefs and renaming of some types 2021-10-13 08:22:35 +01:00
Francisco 877b995a4d gnb,nr: add metrics for ack'd TBS in the gNB. 2021-10-11 11:08:37 +01:00
Francisco 479df12775 fix rrc_nr_test bad config 2021-10-09 16:53:14 +01:00
Francisco 9dcfa8fdb1 nr,gnb,rrc: pass default rrc_nr_cfg_t to rrc_nr_test 2021-10-09 16:53:14 +01:00
Bedran Karakoc 850606f20b Added deregistration (UE terminating) 2021-10-06 20:01:00 +02:00
Francisco 3b79393974 sched,nr: fix default ue configuration when prach arrives 2021-10-06 16:33:51 +02:00
Francisco Paisana 9160c783c9 sched,nr: fix nr sched test 2021-10-04 19:26:07 +02:00
Francisco Paisana 7aa701eb85 nr,config: fix default SSB periodicity configuration in rrc and scheduler 2021-10-04 19:26:07 +02:00
Carlo Galiotto f177a03605 sched,nr: add const to function input parameter
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto 9887c17c17 sched,nr: move ssb_sched test to different file...
and also:
- correct half-frame bit in MIB package
- rename slot_index variable in ssb_sched function

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto d18af603aa sched,nr: address comments in PR (code formatting)
Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
Carlo Galiotto bc7c21b8c3 sched,nr: add test case for SSB scheduling
The SSB test checks whether, with the given periodicity, the
SSB grant is present within the dl_sched structure passed to the PHY.
It also checks that the SSB grant is not scheduled outside
the required time slots.

NOTE: The test is a modified version of an existing scheduler test.

Signed-off-by: Carlo Galiotto <carlo@srs.io>
2021-10-04 11:44:25 +02:00
yagoda 82bda02b36 adding nr metrics 2021-10-03 13:06:59 +02:00
Andre Puschmann 86938e8474 sched_nr_cfg: bump fixed UL MCS to 28 2021-10-03 12:07:18 +02:00
Fabian Eckermann eb294fd4e3 Add phy object to rrc_nr_test. 2021-10-01 19:21:08 +02:00
Ismael Gomez 91401ae3a4 Fix meascfg test 2021-09-29 21:39:56 +02:00