Ismael Gomez
6ffa036b84
srsue,stack: initialize sdap pointers
3 years ago
Ismael Gomez
edeb8e8f18
srsue,nr: add TA support from RAR and MAC CE
3 years ago
Ismael Gomez
b3497c4a94
srsue,nr: decode SIB1 based on coreset0 configuration in MIB
3 years ago
Fabian Eckermann
affdacd9b4
Add decoding of sib1.
3 years ago
Ismael Gomez
3c929ed24c
ue,sa: Sends PRACH and receives RAR, then Msg4, resolves contention resolution and pushes ConnectionSetup to RRC
3 years ago
Ismael Gomez
c096270fc7
ue,nr: ignore NDI if received on T-CRNTI or RAR
3 years ago
faluco
d7e8d6bf65
Fix data race in mux_nr::add_bsr_ce.
3 years ago
Francisco
81174bda64
nr,ue,rrc: release NR logical channels during RRC release
3 years ago
Francisco
b8976ca463
nr,ue,rrc: avoid configuring the CSI until NR RA is complete
3 years ago
Francisco
47e5e85449
refactor: clean unnecessary includes of the asn1/rrc_nr.h
3 years ago
faluco
6c4548c243
Fix several data races in LTE and NR harq classes.
3 years ago
Andre Puschmann
bf2606f94e
ue,mac_nr: fix race condition by using thread-safe RNTI class
3 years ago
Andre Puschmann
bed4cfb5e5
ue,mac_nr: fix generation of padding BSRs
...
* in Msg3 don't add explicit SBSR (rely on padding BSR to add)
* fix padding BSR generation to always use padding bytes to add it
3 years ago
faluco
fa351cd285
Rename functions that contain the unsafe word to nolock.
...
The term "unsafe" does not clearly state that the function is not locking the shared date and it sounds "dangerous", so use a more explicit term.
3 years ago
Andre Puschmann
ab6210b1fc
ue,proc_sr_nr: add mutex to protect access from PHY and Stack
...
also detected by TSAN
3 years ago
Andre Puschmann
2248e63219
ue,proc_ra_nr: add mutex to protect access from PHY and Stack
...
detected with TSAN
3 years ago
Andre Puschmann
54ab64327a
ue,mac_nr: move BSR levels lookup table into lib header
...
prepare for shared use with gNB
3 years ago
David Rupprecht
102a943171
Fixed naming srsLTE to srsRAN
4 years ago
Xavier Arteaga
715f8900a8
Selected NR RA procedure PRACH send timeout according to system frame number period from PRACH PHY tables
4 years ago
Andre Puschmann
4b3538aaa8
{dl,ul}_harq: fix metrics calculation
...
rewrite metrics calculation for NR HARQ and remove
unneeded operations.
4 years ago
David Rupprecht
bfe2ad98ef
Added parsing for NR DL HARQ cfg
4 years ago
Andre Puschmann
b9ae064338
mac_nr: add DL HARQ
...
this commit adds a complete DL HARQ entity to the MAC of the UE.
It also refactors demux into an own class and adapts the PHY-MAC
interface to use the new MAC capabilities.
4 years ago
Andre Puschmann
44baea6666
mac_nr: add UL HARQ
...
this patch adds a basic UL HARQ entity for NR.
The patch also updates some interfaces between MAC/RA/HARQ,
i.e. get_temp_crnti().
It also adds a Msg3 unit test.
4 years ago
David Rupprecht
eeddbe69ce
Fixes repeating proc RA due to SR trigger
4 years ago
David Rupprecht
5a3a2a6d6f
Added functions for adding phr and tag config
4 years ago
Andre Puschmann
cf696138d3
mac_nr: fix packing order of SDU and CEs
...
SDUs need to go first in the MAC PDU, followed by CEs
4 years ago
Andre Puschmann
7f415189f3
ue,mac: enable basic MAC metrics
...
this adds basic MAC metrics calculation for the DL NR MAC
4 years ago
Andre Puschmann
db496df1e6
mac_nr: add support for periodic BSR reporting
...
building on the previous refactor this patch now adds support
for peridoic BSR reporting (using short BSR). It furthermore does
the following changes:
* add BSR packing
* add proc_bsr_nr unit test
* move mac_nr test code into test folder under src (needs to be done with other test code too)
4 years ago
David Rupprecht
7a481c40ab
Added mac prach nr proc error handling
4 years ago
Xavier Arteaga
01990c2e1d
SRSUE: Add PHY-MAC SR related interfaces
4 years ago
Andre Puschmann
d135ae4d29
proc_bsr: initial BSR procedure for NR
...
* refactor some common methods to mac_common.cc
* add common mux_base class
* move UL PDU generation to mux class
* add logical channel registration to MAC, MUX, BSR
* add initial proc BSR
* add basic MAC NR test
* rework MAC interfaces
4 years ago
Andre Puschmann
bde7b49ca3
ue,mac_nr: add basic SR procedure
...
the current implementation support only one SR config
and doesn't support the prohibit timer
4 years ago
Andre Puschmann
1a0891df51
all: check return value of make_byte_buffer() and handle them safely
4 years ago
Codebot
4523ee6087
rename srsLTE to srsRAN
4 years ago
David Rupprecht
bb3e87302d
Added new pcap enable option and mac nr
4 years ago
Francisco
b8bd869d0f
move ue rlc interfaces to separate interfaces header file
4 years ago
Andre Puschmann
9c4146442a
mac,phy: refactor NR MAC/PHY UL data passing interface
...
inspired by accepted (but not yet merged) PR to include the
(unique_)byte_buffer_t for MAC/PHY interfacing, this patch adds
a few more useful bits to that. Buffer management for UL data is now
done in MAC and only a pointer to the data is passed in the UL action.
* Move Tx softbuffer to MAC (until UL HARQ class is ready)
* Remove temparal data member in cc_worker
* Remove memcpy after packing MAC PDU
4 years ago
David Rupprecht
f6f6ee406b
SRSUE NR: use correct rnti in rar and make NR proc ra
4 years ago
David Rupprecht
1fcd006a7c
fixed segfaulting
4 years ago
David Rupprecht
82a8dcc77a
Change interface to unique_byte_buffer
...
logging message for msg3 preparing
4 years ago
David Rupprecht
3af0342418
Added mux class and packing of msg3
4 years ago
Xavier Arteaga
760ad3a746
SRSUE: Interface stack and PHY for NR-RA procedure
4 years ago
David Rupprecht
24123313bf
Added MAC NR RA procedure with a minimal test case
4 years ago
Andre Puschmann
6eed6f622f
mac_nr: update RA related function in MAC/PHY interface
...
* expose interface to trigger PRACH from MAC
* indicate PRACH tx from PHY
* add temporary RAR PDU handling with Msg3 grant indication to PHY
4 years ago
Francisco
3265d940ec
remove byte buffer pool cached member variables as they are unnecessary now.
4 years ago
Andre Puschmann
8e13f04684
mac_pcap: refactor MAC PCAP and include NR RAT into same object
...
after adding the thread-safe PCAP writer functionality to the EUTRA
MAC object it became clear that we don't wont to replicate the
same for the NR object.
This patch therefore refactors the class that now supports both EUTRA and
NR rats. The old mac_nr_pcap.[h/cc] has been deleted. All test-cases
and usages now use the new object that needs to pass the RAT type in
the ctor.
this patch addresses the last open point of #2160
4 years ago
Andre Puschmann
f5c945dc2f
mac_nr: add interface to set C-RNTI and contention ID from RRC
...
used during contention-based/free RA
4 years ago
Andre Puschmann
1aadc5c53e
mac_nr: tiny cleanups of MAC class, use of new logger
4 years ago
Andre Puschmann
73cb0dabf2
mac_nr: move UE MAC class into own subfolder
...
this should simplify further MAC NR extensions and lead
to a more organized folder structure
4 years ago