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
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
Francisco
b8976ca463
nr,ue,rrc: avoid configuring the CSI until NR RA is complete
2021-10-08 12:15:55 +01:00
Francisco
47e5e85449
refactor: clean unnecessary includes of the asn1/rrc_nr.h
2021-10-07 23:08:07 +01:00
faluco
6c4548c243
Fix several data races in LTE and NR harq classes.
2021-10-06 14:47:23 +02:00
Andre Puschmann
bf2606f94e
ue,mac_nr: fix race condition by using thread-safe RNTI class
2021-09-30 10:36:29 +02:00
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
2021-09-27 21:15:30 +02:00
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.
2021-09-27 13:26:21 +02:00
Andre Puschmann
ab6210b1fc
ue,proc_sr_nr: add mutex to protect access from PHY and Stack
...
also detected by TSAN
2021-09-16 15:22:59 +02:00
Andre Puschmann
2248e63219
ue,proc_ra_nr: add mutex to protect access from PHY and Stack
...
detected with TSAN
2021-09-16 15:22:59 +02:00
Andre Puschmann
54ab64327a
ue,mac_nr: move BSR levels lookup table into lib header
...
prepare for shared use with gNB
2021-09-09 14:29:04 +02:00
David Rupprecht
102a943171
Fixed naming srsLTE to srsRAN
2021-04-23 14:25:02 +02:00
Xavier Arteaga
715f8900a8
Selected NR RA procedure PRACH send timeout according to system frame number period from PRACH PHY tables
2021-04-20 15:07:18 +02:00
Andre Puschmann
4b3538aaa8
{dl,ul}_harq: fix metrics calculation
...
rewrite metrics calculation for NR HARQ and remove
unneeded operations.
2021-04-20 15:05:20 +02:00
David Rupprecht
bfe2ad98ef
Added parsing for NR DL HARQ cfg
2021-04-17 12:33:21 +02:00
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.
2021-04-16 15:32:09 +02:00
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.
2021-04-14 13:40:31 +02:00
David Rupprecht
eeddbe69ce
Fixes repeating proc RA due to SR trigger
2021-04-12 20:51:07 +02:00
David Rupprecht
5a3a2a6d6f
Added functions for adding phr and tag config
2021-04-12 20:50:30 +02:00
Andre Puschmann
cf696138d3
mac_nr: fix packing order of SDU and CEs
...
SDUs need to go first in the MAC PDU, followed by CEs
2021-04-10 14:01:43 +02:00
Andre Puschmann
7f415189f3
ue,mac: enable basic MAC metrics
...
this adds basic MAC metrics calculation for the DL NR MAC
2021-04-10 14:01:43 +02:00
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)
2021-04-09 12:28:05 +02:00
David Rupprecht
7a481c40ab
Added mac prach nr proc error handling
2021-04-08 17:37:36 +02:00
Xavier Arteaga
01990c2e1d
SRSUE: Add PHY-MAC SR related interfaces
2021-04-07 14:16:46 +02:00
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
2021-03-30 13:46:12 +02:00
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
2021-03-26 09:53:03 +01:00
Andre Puschmann
1a0891df51
all: check return value of make_byte_buffer() and handle them safely
2021-03-23 14:31:15 +01:00
Codebot
4523ee6087
rename srsLTE to srsRAN
2021-03-21 21:47:01 +01:00
David Rupprecht
bb3e87302d
Added new pcap enable option and mac nr
2021-03-03 09:50:15 +01:00
Francisco
b8bd869d0f
move ue rlc interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
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
2021-02-24 20:28:43 +01:00
David Rupprecht
f6f6ee406b
SRSUE NR: use correct rnti in rar and make NR proc ra
2021-02-23 17:02:23 +01:00
David Rupprecht
1fcd006a7c
fixed segfaulting
2021-02-23 17:02:23 +01:00
David Rupprecht
82a8dcc77a
Change interface to unique_byte_buffer
...
logging message for msg3 preparing
2021-02-23 17:02:23 +01:00
David Rupprecht
3af0342418
Added mux class and packing of msg3
2021-02-23 17:02:23 +01:00
Xavier Arteaga
760ad3a746
SRSUE: Interface stack and PHY for NR-RA procedure
2021-02-23 17:02:23 +01:00
David Rupprecht
24123313bf
Added MAC NR RA procedure with a minimal test case
2021-02-16 09:42:09 +01:00
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
2021-02-08 22:15:09 +01:00
Francisco
3265d940ec
remove byte buffer pool cached member variables as they are unnecessary now.
2021-02-07 18:48:21 +00:00
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
2021-02-03 17:21:57 +01:00
Andre Puschmann
f5c945dc2f
mac_nr: add interface to set C-RNTI and contention ID from RRC
...
used during contention-based/free RA
2021-02-02 14:13:25 +01:00
Andre Puschmann
1aadc5c53e
mac_nr: tiny cleanups of MAC class, use of new logger
2021-02-01 09:58:43 +01:00
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
2021-02-01 09:58:43 +01:00