Pedro Alvarez
4e1c713c14
rlc_am_nr: Enabled sending NACKs on status PDUs
...
- Added some logic to only poll when PDU_WITHOUT_POLL > PollPDU
- Fixed initalization of t-Reassembly
- Fixed a bug in the packing of the status buffer.
Nacks now work for a single lost PDU.
3 years ago
Pedro Alvarez
3f000f0472
Adding t_reassembly to RLC AM NR
3 years ago
Fabian Eckermann
8bac4eceda
Add ue MAC procedures for PDCCH orders.
3 years ago
Pedro Alvarez
9e4631ee24
Added NR specific config struct for RLC AM. Added status prohibit timer.
3 years ago
Pedro Alvarez
8ff545c423
Added RLC AM NR config structure. Added helpers to create RLC AM NR configs. Made it possible to create RLC AM NR entites in rlc.cc
3 years ago
Francisco
0c733f7ea3
nr,ngap: use const_byte_spans instead of unique_byte_buffers in ngap interface to avoid intermediate copies
3 years ago
Pedro Alvarez
e65bcd7147
Changed default max S1 Setup retries to infinity
3 years ago
Pedro Alvarez
930e3699d0
Added max_s1_retries parameter
3 years ago
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
3 years ago
Francisco
5f3afffd05
nr,gnb: implementation of sib and mib asn1 generation functions
3 years ago
Francisco
96fd3aae3c
nr,gnb: small gnb interface refactors and fix of byte buffer operator=
3 years ago
Francisco
8d719db43d
nr,gnb,mac: implement zero-copy get_dl_sched/get_ul_sched NR scheduler interface
3 years ago
Carlo Galiotto
ba50bbfb76
rlc,rrc,nr: remove rb_type from rlc_um_config
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
9c2099f680
rrc,rlc,nr: fix RB label in RLC-NR for UE logs + ..
...
add rb_type in rlc_um_config
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
d95c31d2de
rlc,rrc,nr: fix rlc bearer string diplayed in logs
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco
dfc2ea0a3e
nr,gnb,pdcp: extend the use of local rb_name member to pdcp nr
3 years ago
Bedran Karakoc
a14cc451d0
Addition NGAP cleanup
3 years ago
Carlo Galiotto
9c74dda039
rrc,nr: add msg5 and inactivity timers to RRC-NR
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
faluco
edf0926a2f
Batch of LGTM fixes.
3 years ago
Ismael Gomez
d972fb368c
Some LGTM fixes ( #3564 )
...
* Fix LGTM issues
* ue: add logging to switch on function
* Fix new LGTM issues
3 years ago
Andre Puschmann
3eb1862ab9
gnb_interface: reduce MAX_GRANTS to 4
...
see #3530 for detailed discussion. This change saves some CPU cycles it seems
3 years ago
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>
3 years ago
Andre Puschmann
8294724aad
gnb_interface: reduce MAX_GRANTS to 4
...
this significantly reduces data copies when providing the PHY
with scheduler results.
3 years ago
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.
3 years ago
Francisco
c6226b0d94
lte,enb,rrc: parse cellIndividualOffset in rr.conf and propagate it to measConfig sent to UE
3 years ago
Francisco
0b51848dda
nr,gnb,rrc: use multiqueue to forward x2 tasks to NR stack
3 years ago
Andre Puschmann
3bf09021f9
enb: remove unused parameter
3 years ago
Francisco
81174bda64
nr,ue,rrc: release NR logical channels during RRC release
3 years ago
Francisco
9df6c6b936
sched,nr: ensure the ue_cfg_t passed to the scheduler in NR FDD mode has the correct harq delay
3 years ago
Andre Puschmann
255ddb1329
enb,gnb: add basic support for sgnb release procedure
...
the procedure is currently started when the EUTRA UE object
is deleted (after RRC release) in order to clean-up the
ENDC resources on the gNB.
3 years ago
Francisco
1b595b6eff
nr,gnb: if no nr cell is initiated, do not enable endc in the LTE RRC
3 years ago
Xavier Arteaga
1bdb1bb62d
Store PUSCH CSI from PUSCH DMRS
3 years ago
Bedran Karakoc
850606f20b
Added deregistration (UE terminating)
3 years ago
Francisco Paisana
23bf542ae7
stack,nr: isolate calls between LTE and NR stacks via the task multiqueue
3 years ago
Andre Puschmann
8bb06ff2c0
Added SSB in gNb PHY
3 years ago
Andre Puschmann
3e5b40fd36
enb,rrc: fix compilation after freq point a has been removed from nr_carrier_t
...
since absolute freq point a members have been removed from the srslte_nr_carrier_t
struct (they are now actual frequencies) the abs_point_a values are now in
the RRC cell structs
3 years ago
Ismael Gomez
6b506ec357
phy_common: clear tx_hold flag before releasing the semaphore ( #3342 )
3 years ago
yagoda
82bda02b36
adding nr metrics
3 years ago
Fabian Eckermann
8830c2796f
Add support for NSA FDD on band n3, n5 and n7.
3 years ago
Andre Puschmann
315057d11c
enb: signal user activity to EUTRA RRC when doing NR DL traffic
...
to avoid releasing the UE when only NR DL traffic is done.
similar to the EUTRA solution.
3 years ago
Ismael Gomez
1c77998df5
Stop PDCP for data bearers before initiating HO
3 years ago
Francisco Paisana
bdf18856d1
sched,nr: fix handling of DL BSR in NR scheduler and computation of UCI
3 years ago
Andre Puschmann
426e876047
enb,nr: fix GTPU handler to forward UL PDUs
3 years ago
yagoda
bc4388a78c
-adding temp crnti removal for NR carrier attach
3 years ago
Andre Puschmann
802b22ac91
enb,nsa: refactor NR RRC/cell config parsing
...
this allows to access all cell-related params from within RRC
3 years ago
David Rupprecht
611255aa5f
Added GTPU bind address as output parameter
3 years ago
Bedran Karakoc
43915550cc
NGAP GTP Bearer Establishment
3 years ago
David Rupprecht
3712983308
Added PDU Session est request
3 years ago
David Rupprecht
c670383ae9
Added NAS 5G functions incoming msg and reg proc
3 years ago
Xavier Arteaga
de00b80228
Review NR NSA CFO estimation and compensation
3 years ago
Andre Puschmann
3fd47d2af4
enb: refactor L2/L3 and (re)move all NR components to gNB stack
...
* decouple EUTRA and NR stack classes
* implement dummy X2 interface with control and data plane methods
* implement eNB time source interface that PHY calls
3 years ago
Andre Puschmann
cc2d71183e
ue,phy,nr: fix race condition when setting UL grant for Msg3
...
the Msg3 UL grant requires the TTI in which the RAR has been received
to calcualte the correct timing. There was a race between PHY and Stack
thread.
This patch circumvents the issue by removing a PHY state member that only holds
the RAR Rx timing. In the new interface the RA proc passes the Rx TTI
to the PHY again when setting the UL grant so the PHY can calculate the
correct timing without any state.
3 years ago
Andre Puschmann
ed92f2bd34
enb,mac_nr: remove EUTRA cell param for MAC-NR cell config calls
...
* the old srsran_cell_cfg_t is only carried for SIB params
* the SIB scheduling, etc needs to be ported and integrated into NR data structures
* disbable SIB test for the moment
3 years ago
Andre Puschmann
f382a7c7db
Revert "ue,proc_ra_nr: add temporary flag to skip RAR reception"
...
This reverts commit 28668aac34
.
3 years ago
Andre Puschmann
c1892eb2ec
enb,nsa: refactor of SgNB addition interface
...
* update of FSM
* better integration of parameter for X2 calls
3 years ago
David Rupprecht
a9a23214b0
Added more 5G security kdfs
...
Added new 5G SIM functions
Added const parameters for security functions
3 years ago
David Rupprecht
a645d74eaf
USIM functions for res star
...
Added gen_res_star in security.h
Added USIM interfaces for res star
Added RES star test case
3 years ago
Andre Puschmann
88bb92dc0d
mac_nr,sched: handle C-RNTI CE
3 years ago
Francisco Paisana
f4df55c245
stack lte: separate bearer manager into two classes, one for the ue and one for the enb
3 years ago
Francisco Paisana
2ade4628ca
stack lte: create an gtpu-pdcp adapter class that correctly converts lcids to eps bearers and vice-versa
3 years ago
Andre Puschmann
3949a727a7
enb_interface: add stack interface for RRC
...
RRC uses the interface to register/deregister EPS bearer
3 years ago
Francisco Paisana
020bec025e
sched: created class common to LTE and NR for ue buffer status management
3 years ago
Francisco Paisana
04e5c81edf
sched,nr: nr_phy_test now uses the whole mac class rather than just the scheduler
3 years ago
Xavier Arteaga
83b9b2d1ff
Implemented UE open loop CFO compensation for NR
3 years ago
Francisco Paisana
eb4999a18e
lte,pdcp: silence error message when a reconfiguration of a PDCP entity is no-op
3 years ago
Andre Puschmann
c365c16531
gnb_interfaces: inherit from EUTRA interfaces when they are identical
3 years ago
Andre Puschmann
c03623863b
enb,nsa: fix UL PDU processing
...
* remove const from pusch_info() MAC/PHY interface to allow moving unique byte buffer
3 years ago
Andre Puschmann
fc35c0ee51
enb,nsa: fix packing of DL MAC PDUs
...
* use byte_buffer_t as interface type for DL PHY-MAC interface
* fix missing clear() for new DL tx
3 years ago
Xavier Arteaga
3ae131b336
gNb creates PUSCH decode PDU
3 years ago
Andre Puschmann
28668aac34
ue,proc_ra_nr: add temporary flag to skip RAR reception
...
this will be removed again as soon as the eNB supports full RAR
transmission.
3 years ago
Andre Puschmann
38f1e158a5
enb,nr: fix NR PHY PRACH init and MAC-PHY interaction
3 years ago
David Rupprecht
11f9ac75db
Added PLMN to serving network string name
3 years ago
Xavier Arteaga
dbb10dd6a2
Hold worker thread until baseband is transmitted
3 years ago
Xavier Arteaga
0c7239e5df
SRSUE: add RF channel offset
3 years ago
Xavier Arteaga
b57df4db10
Refactored worker_end mechanism for concurrent workers
3 years ago
Andre Puschmann
45c1971249
mac,phy,interface: clean up and add NR interface to LTE stack
...
* remove obsolte rx_data_ind
* add mac_phy_interface_nr to LTE stack
3 years ago
David Rupprecht
04ef6e120d
Added new SIM functions to get MCC, MNC and MSIN
3 years ago
Bedran Karakoc
a6226379b4
Introducing NGAP UE context procedures
3 years ago
Xavier Arteaga
bb4f469794
Integrated SR decoder in gNb
3 years ago
Xavier Arteaga
d783fbf3a0
Reviewed NR procedure for PUCCH resource sselection and reviewed gNb PUCCH interface
3 years ago
Francisco Paisana
74d0a8adb8
sched: add subband cqi info interface to LTE scheduler
3 years ago
Andre Puschmann
8d2e81ad6f
enb,mac,nr: add basic UE object skeleton
...
refactor that also adds a basic UE object to the NR MAC
3 years ago
Francisco Paisana
09c7000201
sched,nr: update nr scheduler to use new mac nr interface types
3 years ago
Francisco Paisana
d9336bcd9e
sched,nr: creation of pool of softbuffers for NR. Now the sched NR harq manages the lifetime of the softbuffer and its forwarding to the PHY
3 years ago
Francisco
357bc10a17
feature - make minimum SNR, under which the RRC is notified with UL KO, configurable
3 years ago
Francisco
67325ab5c1
add pdcch_cqi_offset parameter to enb.conf
3 years ago
faluco
7b7ecb7983
Add a new configuration option that controls PDSCH baseband sample dump to a file on KO.
3 years ago
Xavier Arteaga
b25681f9de
gnb,prach: add PRACH to gNB
...
rebase of Xavier's feature_gnb_prach branch
3 years ago
David Rupprecht
fb92118bb7
Add 5G NAS infrastructure
3 years ago
Xavier Arteaga
ecc0b92142
Integrated PUSCH decoder in gNb
3 years ago
Andre Puschmann
fd7b9a0575
enb,nsa: add basic RRC EUTRA<>RRC NR interface for SgNB addition
3 years ago
Xavier Arteaga
5307fec2f0
Added GNB MAC UL info initial interface and fix PHY implementation
3 years ago
Xavier Arteaga
3fe9176750
Added PUCCH dedocder to slot worker
3 years ago
Xavier Arteaga
eecaccb541
Added NR PHY helpers
3 years ago
Ismael Gomez
4e39982a19
Fix TSAN warnings in UE ( #3021 )
...
* Protect PHY SR signal management in a class
* Protect intra_freq_meas vector
* Protect cell and srate shared variables in thread-safe classes
* srsue,srsenb: include TSAN options header
* Protect ue_rnti_t and rnti scheduling windows behind thread-safe classes
* Protect access to state variable in sync_state
* Protect access to metrics configuration
* Protect access to is_pending_sr
* Protect access to UE prach worker
* Protect UE mux
* Avoid unlocking mutex twice
* Fix data races in RF/ZMQ
* Fix data races in intra_measure and PHY
* Fix minor data races in MAC
* Make TSAN default behaviour to not halt on error
* Fix blocking in intra cell measurement
* Address comments
Co-authored-by: Andre Puschmann <andre@softwareradiosystems.com>
3 years ago
Pedro Alvarez
171d5727be
Moved lib RLC into it's own folder
3 years ago
Francisco Paisana
4d014e7ceb
s1ap,feature: make the ts1 reloc timers configurable via the enb.conf
3 years ago
Andre Puschmann
368c7b9e4f
ue,stack: clear all EPS bearers when going RRC idle
...
the EPS bearer manager was only informed when a single DRB
was removed but not when entering idle which requires to
remove all bearers.
This cause the service request to fail.
3 years ago
Xavier Arteaga
6f5614a0cc
Suggested modifications on gNb MAC/PHY interface
3 years ago
Xavier Arteaga
8378c85ec4
Refactored gNb PHY
3 years ago