Andre Puschmann
2c975732dc
metrics_stdout: fix race detected by TSAN
2021-06-01 22:44:12 +02:00
Andre Puschmann
8ab512c2be
nas_test: fix TSAN warnings
...
remove mutex and cvar again that we used to circumvent the startup.
we now use a atomic variable to sync the main thread and the stack.
2021-06-01 22:44:12 +02:00
Xavier Arteaga
2d0a21f779
Move radio frequency mapping out of the PHY common into the PHY reset method
2021-06-01 16:38:55 +02:00
Andre Puschmann
11a6d3160f
mac_test: include TSAN options header
2021-05-31 10:54:14 +02:00
Andre Puschmann
018c734b09
dl_harq: fix unlocking of unlocked mutex bug detected by TSAN
...
in the mac_test the tb_decoded() method was called twice for
the 2nd codeword, causig TSAN to complain about an unlocked mutex
being unlocked.
The patch resolves the potential issue only calling tb_decoded
for a grant/tb thas has a non-zero MCS.
The patch also adjusts the reset function to have a safe and "unsafe"
version to be called from inside the class, similar to other
classes where we do the same.
2021-05-31 10:54:14 +02:00
Xavier Arteaga
5c55ff24ec
Minor UE aesthetical changes
2021-05-31 10:48:17 +02:00
Xavier Arteaga
44b6a2b55f
Fix SYNC wait for IDLE if the state is reached
2021-05-31 10:48:17 +02:00
Xavier Arteaga
807b60988d
Wait for PHY workers to transmit before considering SYNC in IDLE
2021-05-31 10:48:17 +02:00
Xavier Arteaga
93b35676e7
Solve concurrency issue when setting up SCell measurement
2021-05-31 10:48:17 +02:00
Xavier Arteaga
7185ec6beb
PHY CC configuration is stashed and applied in the next TTI
2021-05-31 10:48:17 +02:00
Xavier Arteaga
235a664120
SRSUE: Removed PUSCH-DMRS/SRS pregeneration methods
2021-05-31 10:48:17 +02:00
Xavier Arteaga
aab2211058
Protect UE PHY SCell configuration
2021-05-31 10:48:17 +02:00
Xavier Arteaga
a7dcd629ef
Cell search waits for IDLE transition before launch
2021-05-31 10:48:17 +02:00
Xavier Arteaga
cc2a6dc269
Review cell selection and SCell configuration during HO
2021-05-31 10:48:17 +02:00
Xavier Arteaga
65d51f5855
Fix unitialised value
2021-05-31 10:48:17 +02:00
Andre Puschmann
b40867ffec
ue,rrc: add simple connection setup procedure
...
this is an attempt to fix #2850 by defering the transmission of
the connection setup complete until the PHY has applied
the dedicated config in the connection setup.
2021-05-26 14:43:52 +02:00
Andre Puschmann
c1ad867824
epoll_helper: use std::atomic to protect exit called from different thread
2021-05-26 14:25:38 +02:00
Xavier Arteaga
48e0fc3c99
Implemented initial PBCH decoder and refactored SSB candidate selection
2021-05-26 14:19:34 +02:00
yagoda
8d2568ed2c
small fix for console print for cyclic prefix
2021-05-26 11:11:44 +02:00
Francisco
f2a56c9139
simplification of multiqueue design.
...
- the consumer does multi-staged waiting:
1. spins first across all queues in a RR fashion
2. each queue access is done with a try_lock.
3. if the try_lock fails, it increases the number of spins needed
2. if no queue had data, the consumer sleeps for 100 usec.
- no differentiation between queues, in terms of notification features
2021-05-24 17:24:12 +02:00
Francisco
2d6a878826
change interface to create multiqueue queues
2021-05-24 17:24:12 +02:00
Francisco
f705735093
optimization - only allow some multiqueue queues to notify the multiqueue consumer of the arrival of tasks
2021-05-24 17:24:12 +02:00
yagoda
9501283c1c
fixing support for extended Cyclic Prefix
...
small cosmetic fixes of CP code
2021-05-20 18:16:15 +02:00
Xavier Arteaga
7f853446d3
Added file option to NR cell search test
2021-05-18 18:41:03 +02:00
Xavier Arteaga
5eadc06dd4
Intra-frequency miscellanous changes
2021-05-18 18:41:03 +02:00
Xavier Arteaga
170fbefbf5
Avoid SCell receiver to copy
2021-05-18 18:41:03 +02:00
Xavier Arteaga
d39402ed54
Added TTI trigger condition to intra-frequency measurement base
2021-05-18 18:41:03 +02:00
Xavier Arteaga
c80f91ac9e
Fix compilation
2021-05-18 18:41:03 +02:00
Xavier Arteaga
ac9dc6f31d
Compute Performance
2021-05-18 18:41:03 +02:00
Xavier Arteaga
0b3f4e5de0
Improvements in NR cell search
2021-05-18 18:41:03 +02:00
Xavier Arteaga
5b31654ae2
Minor aesthertical changes in nr_cell_search_test
2021-05-18 18:41:03 +02:00
Xavier Arteaga
fb7623f5b6
Initial intra frequency NR cell search and test
2021-05-18 18:41:03 +02:00
Xavier Arteaga
60015e7ceb
Made intra frequency cell search and measurment generic
2021-05-18 18:41:03 +02:00
faluco
1670124926
Implement UE metrics in JSON format.
...
Added config options to control this feature.
2021-05-13 09:27:11 +02:00
Xavier Arteaga
5e6983f8e6
SRSUE: enable 256QAM in RRC NR capability message
2021-05-13 08:45:42 +02:00
Xavier Arteaga
a57336d64f
Integrate periodic SSB measurement in SRSUE and fix related defects
2021-05-13 07:55:46 +02:00
Andre Puschmann
adcfcfe012
proc_ra_nr: fix typo
2021-05-11 19:47:35 +02:00
Andre Puschmann
c45540582d
rrc: announce NR-PDCP support over EUTRA
...
preperation for Split bearer support. This patch is needed to allow
split bearer. Otherwise, even if the config is set in the eNB, it
will not enable split bearers.
2021-05-10 17:54:00 +02:00
Francisco
ef9d1b8c13
stack optimization - reduction of contention in multiqueue class
...
With the new design, each queue created in the multiqueue object has its own mutex.
Pushing tasks to separate queues will, therefore, not cause contention.
There will be, however, still contention between the popping thread and the pushing threads.
2021-05-10 15:27:21 +01:00
Xavier Arteaga
60d1708b80
Initial SSB measurement implementation
2021-05-10 15:32:46 +02:00
Andre Puschmann
833ddc3229
build: fix linking failure on RPi 32bit
...
this fixes a linking problem with RPi 3 (and probably others) running
with Raspbian (new Raspberry Pi OS) that can't use the inline
atomic functions but instead require linking against the lib -latomic.
The CMake code is based on SoapyRTLSdr file (licensed under MIT)
https://github.com/pothosware/SoapyRTLSDR/blob/master/CheckAtomic.cmake
2021-05-09 20:58:48 +02:00
Xavier Arteaga
1396c2a1e2
Mulpiple CSI measurement fixes. Channel and sync metrics from CSI measurements
2021-05-07 09:43:11 +02:00
Xavier Arteaga
653177ca7c
SRSUE: Refactored work_dl for NR. Added NZP-CSI-RS measurement
2021-05-07 09:43:11 +02:00
Ismael Gomez
0b91598e36
Move mlockall() to main() in srsUE and srsENB
2021-05-06 23:03:57 +02:00
David Rupprecht
f0d2a22cb6
Fixed band index in rrc
2021-05-05 18:39:46 +02:00
David Rupprecht
8c194b887b
Allow NAS init function to fail
2021-05-04 19:18:22 +02:00
David Rupprecht
617fb2ba7e
Added default destructor for args
2021-05-04 19:17:34 +02:00
Xavier Arteaga
9fb091262a
Duplicate NR PDSCH transmits ACK and add ACK Tx TTI to trace
2021-05-04 11:30:13 +02:00
Xavier Arteaga
de9158eeaf
Enable NR RRC MCS table selection
2021-05-04 11:30:13 +02:00
Pedro Alvarez
17a8ec6cdd
Using estimated COUNT (from NAS overflow counter and RX SQN) for decription of NAS messaages. Should avoid issues decripting messages when the COUNT is larger than 256.
2021-05-03 10:36:26 +02:00
Andre Puschmann
cd061d46e6
metrics_stdout: remove obsolete if
2021-04-30 12:33:35 +02:00
faluco
90e23d9de6
Print in the ue stdout metrics the CC number for LTE and the RAT for NR.
2021-04-29 22:48:03 +02:00
faluco
b9be7c7594
Small cleanup in the stdout UE metrics.
...
- Switch to use fmt for formatting the output.
- Change the CC column to be rat now.
- Reworked and re-styled the column alignment.
2021-04-29 22:48:03 +02:00
Xavier Arteaga
95dafcb413
SRSUE: fix NR carrier PCI in metrics
2021-04-29 15:14:12 +02:00
Andre Puschmann
598594c51a
all: bunch of pass by const& changes suggested by LGTM
2021-04-29 10:00:09 +02:00
Xavier Arteaga
e1ff824cc2
SRSUE avoid NR SR in UCI for PUSCH
2021-04-28 20:23:52 +02:00
Xavier Arteaga
6c39a5e4ff
Added PDSCH DMRS aditional unpacking
2021-04-28 20:23:52 +02:00
Xavier Arteaga
334b308c35
Fix DCI NR configuration from main configuration
2021-04-28 20:23:52 +02:00
Xavier Arteaga
86ad0446e1
Added NR PDSCH and PUSCH resource allocating flattening
2021-04-28 20:23:52 +02:00
Andre Puschmann
a083b0da2a
proc_ra: only log warning if RAR wasn't received in window
...
lead to some failing tests with RF where PRACH wasn't received
correctly. recovery machanism will retransmit PRACH.
2021-04-26 10:08:48 +02:00
Andre Puschmann
0826b86cec
srsue: remove NR DL freq and ARFCN option
...
not required anymore as all NR carrier tuning is done
through RRC signaling
2021-04-25 21:05:23 +02:00
Andre Puschmann
4dd17aee45
rrc/phy/nr: calculate tuning freq of NR carrier from RRC signaling params
...
skip initial tuning to hard-coded NR frequency and use RRC-provided
values to calculate center frequency
2021-04-25 21:05:23 +02:00
Andre Puschmann
ff53d2b8b8
all: set of trivial changes reported by LGTM
...
mainly fixmes, unused/empty code, etc.
2021-04-25 21:03:53 +02:00
AlaiaL
58ce75d3b4
Fixes coverity 369617
2021-04-23 21:22:06 +02:00
AlaiaL
82788ca094
Fixed issues from coverity:
...
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
2021-04-23 21:22:06 +02:00
Matan Perelman
7ee52dc676
srsUE: Add option to filter N_id_2 / PSS to configuration
2021-04-23 20:31:36 +02:00
David Rupprecht
102a943171
Fixed naming srsLTE to srsRAN
2021-04-23 14:25:02 +02:00
David Rupprecht
fd451e8be3
Configure Short PDCP NR SN support
2021-04-23 12:49:53 +02:00
Andre Puschmann
7817f12f1f
phy_common: reduce log level to info when UL grant is tried to activate twice
...
in accordance with discussion in #2717 we reduce the log level to info
to avoid failing tests due to that event
2021-04-23 10:28:10 +02:00
Xavier Arteaga
ab6a5ef17a
Added NR DCI conversion to string for formats 1_0 and 1_1
2021-04-22 14:16:46 +02:00
Francisco
ff3fc0826b
asn1 fixes and improvements
...
- use const char* instead of std::string in enumerated<>::to_string() to avoid mallocs.
- Remove the use of "typedef", and use "using" keyword instead.
- Fix rrc_nr::setup_release_c<>::to_string() broken linkage.
2021-04-22 10:21:08 +01:00
Francisco
23203b73ae
fix - avoid recompiling srsue rrc files twice
2021-04-21 16:22:59 +01:00
Andre Puschmann
e3b77fd82a
rrc_nr: set timeout for NR cell measurement to 250ms
...
the low timout of 10ms was:
1) causing too frequent measurement reports
2) causes a MO ping test to fail where the ICMP request
was sent on the LTE carrier but never got a reply because
the MCG addition was inbetween
2021-04-21 12:50:43 +02:00
Andre Puschmann
2c156f0007
proc_ra: add further state checks when getting harq_retx signalled
...
that makes sure to only restart contres timer if we are actually
in the contention resolution state.
2021-04-21 12:36:32 +02:00
Andre Puschmann
607ba7c262
mac_test: fix RAR test for Msg3 retx
...
with hi=1 the eNB signals a successul Msg3 reception.
To request a retx, which is the case in the MAC test,
it needs to signal a hi=0
2021-04-21 12:36:32 +02:00
Xavier Arteaga
7246ce0cea
Fix MSG3 false retransmission
...
this fixes #2694 by considering hi=1 value and not treating
this as a Msg3 retx
2021-04-21 12:36:32 +02:00
Andre Puschmann
c1e4385f50
worker_pool: fix wrong log level when setting worker config
2021-04-20 22:16:48 +02:00
Xavier Arteaga
407903e0d6
SRSUE: refactor carrier setting for accepting a dynamic carrier configuration
2021-04-20 21:50:10 +02:00
Xavier Arteaga
47523935f6
Minor NR RRC fixes
2021-04-20 21:50:10 +02:00
David Rupprecht
d2aa25d451
Added option for simulated measurement
2021-04-20 21:47:37 +02:00
Xavier Arteaga
09272edf4b
Update NR PHY TTI
2021-04-20 15:07:18 +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
51e73aa1fc
mac_nr_test: add basic DL HARQ test and extend checks for metrics
2021-04-20 15:05:20 +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
Andre Puschmann
b6f2c80f66
mac_common: add helper method to get total buffer state
2021-04-20 15:05:20 +02:00
David Rupprecht
a064e85c54
rename common lte header
2021-04-19 22:23:59 +02:00
David Rupprecht
81ad72b0ff
Refactor srb and drb handling
2021-04-19 22:23:59 +02:00
David Rupprecht
91ff8a2e6d
Add rrc_nr to rlc init function
2021-04-19 22:23:59 +02:00
David Rupprecht
6b41ae7e8b
Updated PDCP config struct for rat type
2021-04-19 22:23:59 +02:00
Andre Puschmann
5700b090ea
worker_pool: set log level for PHY-NR logger and use for PRACH
...
log level for PHY-NR wasn't set so:
16:00:32.202953 [PHY-NR ] [I] [ 8024] Setting RAR Grant rnti=4602 dci=rar hop=0 f_alloc=0x32 t_alloc=0x1 mcs=4 tpc=3 csi=0
was always printed. Also use the logger for the PRACH
2021-04-19 22:09:08 +02:00
Andre Puschmann
c8d3e133dc
ue: bump default RRC release announced to 15
2021-04-19 22:08:03 +02:00
David Rupprecht
75cd5e65e5
Removed arfcn and freq, and nof_prbs from config file
2021-04-19 15:18:35 +02:00
David Rupprecht
6ed6da1f12
Refactor ue config for eutra and nr config section
2021-04-19 15:18:35 +02:00
Xavier Arteaga
77b6b60b82
Fix rach_cfg.nof_groupA_preambles
2021-04-19 15:17:04 +02:00
David Rupprecht
db9dd85783
Parse carrier config in NR RRC reconfig
2021-04-19 12:13:37 +02:00
David Rupprecht
f42d4dbc28
Refactored carrier config
2021-04-19 12:13:37 +02:00
Andre Puschmann
87f9b2babc
mac_nr: turn off warning for non-implemented features
...
they cause RFCI to fail, features are known to be missing.
2021-04-19 10:46:09 +02:00
Andre Puschmann
73d6b33920
{ul,dl}_harq_nr: reword log entries if HARQ PID isn't found
2021-04-18 15:27:19 +02:00
Andre Puschmann
edd150b29f
fix PID not being set when reading pending UL grant
...
this should fix #2679
2021-04-18 15:12:22 +02:00
Andre Puschmann
0df218ab90
cc_worker: fix PDSCH log fmt::v7::format_error
2021-04-17 15:51:11 +02:00
Xavier Arteaga
53b38fccf9
Fix compile and other
2021-04-17 15:51:11 +02:00
Xavier Arteaga
8ffced7e88
NR PHY logging minor corrections
2021-04-17 15:51:11 +02:00
Xavier Arteaga
abfc1da921
Multiple NR-PUSCH fixes
2021-04-17 15:51:11 +02:00
Xavier Arteaga
7e06e789d5
Fic NR UCI in the info string
2021-04-17 15:51:11 +02:00
Xavier Arteaga
01ce0718be
NR-PUSCH RE mapping correction and NR-SCH detailed grant information
2021-04-17 15:51:11 +02:00
Xavier Arteaga
e7096d705e
Fix NR RRC config NZP-CSI-RS
2021-04-17 12:54:30 +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
David Rupprecht
138230f4e4
Remove NR RRC log line
2021-04-16 09:02:29 +02:00
David Rupprecht
fe8727050b
Added new rrc_nr to phy flattening functions and fixes
2021-04-16 09:02:29 +02:00
Xavier Arteaga
e4e3456d76
Refactored PDSCH/PUSCH decoder for LDPC early stopping
2021-04-15 20:42:41 +02:00
David Rupprecht
4c68c17bd3
Fixed log level of nr loggers to lte level and hex size
2021-04-15 12:12:20 +02:00
Andre Puschmann
bf4d0121dd
cc_worker,proc_ra: set RNTI type for UL grant contained in RAR
...
needed for HARQ to correctly pick up the Msg3 Tx
2021-04-14 13:40:31 +02:00
Andre Puschmann
3e1998b2aa
proc_sr_nr: tiny cosmetic logging changes
2021-04-14 13:40:31 +02:00
Andre Puschmann
ad320c273e
proc_bsr_nr: cancel SR if UL grant is received
2021-04-14 13:40:31 +02:00
Andre Puschmann
d99402d3b3
rrc_nr: enable SR procedure when pulling config from ASN1 struct
2021-04-14 13:40:31 +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
Andre Puschmann
b7146c41b2
nr: add NDI for PUSCH grant to sch cfg struct
2021-04-14 13:40:31 +02:00
Xavier Arteaga
af97538448
Remove NR from log lines
2021-04-14 08:16:44 +02:00
Xavier Arteaga
7823bfc28c
Fix append NR to loggers for NR components
2021-04-14 08:16:44 +02:00
Xavier Arteaga
b5e879db47
SRSUE: review metrics interfaces
2021-04-13 16:02:53 +02:00
Xavier Arteaga
044da18db9
SRSUE: Reviewed PHY metrics getter
2021-04-13 16:02:53 +02:00
Xavier Arteaga
dac331ab38
Fix SR PUCCH resource flattening
2021-04-13 16:02:53 +02:00
Xavier Arteaga
2f453b43ba
Initial NR PHY interface
2021-04-13 16:02:53 +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
396040fd75
metrics_csv: fix CC numbering for NR carrier in CSV
2021-04-12 18:26:31 +02:00
Andre Puschmann
c9da21c9bb
mac_nr: add error handling when unpacking SCH MAC PDU
...
* only handle PDU if unpacking was successfull
* add TC unpacking with malformed PDU
2021-04-12 18:26:31 +02:00
Xavier Arteaga
bc1b14efea
Fix NR common PDSCH Resource allocation count
2021-04-12 17:05:53 +02:00
Xavier Arteaga
f30f3e0239
Minor aesthetic log change
2021-04-12 17:05:53 +02:00
Xavier Arteaga
21fe502448
Fix NR PRACH resource determination
2021-04-12 17:05:53 +02:00
Francisco
f7a8b8bf94
separate drb srb ids into separate enum types
2021-04-12 13:21:43 +01:00
Francisco
21718af3b6
avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type
2021-04-12 13:21:43 +01:00
David Rupprecht
5e02dbc536
Remove measurement id from trigger state nr allows to second nr reconfig
2021-04-12 10:32:40 +02:00
Andre Puschmann
c1b66e89a5
mux_nr: protect MAC PDU packing from concurrent access from PHY workers
...
this will be moved to UL HARQ shortly but for now we need
to protect the packing
2021-04-10 14:01:43 +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
399954a970
mac_nr: convert bytes to bits for DL metrics
2021-04-10 14:01:43 +02:00
Andre Puschmann
b083b612de
proc_bsr_nr_test: fix SBSR test
2021-04-10 14:01:43 +02:00
Andre Puschmann
7da68dfee3
proc_bsr_nr: disable SR activation temporarily
...
SR isn't currently working correctly resulting in random PRACHs
being sent.
2021-04-10 14:01:43 +02:00
Andre Puschmann
d1ad315969
mac_nr: add various safety/length checks
2021-04-10 14:01:43 +02:00
Andre Puschmann
b1aaadb51c
nr,cc_worker: convert grant size in bytes before passing to MAC
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
8024bf7820
mux_nr: improve logging when building UL MAC PDU
2021-04-09 20:40:22 +02:00
Andre Puschmann
880bd66db4
mac_nr_test: add testcase for MAC PDU packing with long L field
...
this reproduces the issue found in #2609
2021-04-09 20:12:03 +02:00
Andre Puschmann
9950278a12
nr,mac_sch_pdu,mux: fix packing of MAC subPDUs with 16bit L field
...
the created RLC PDU was too large to fit inside the MAC grant
because only the header room for the short L field was used.
The patch determines the correct size before passing the opportunity to RLC.
It also improves logging in error case by using the MAC logger instead of
stderr/stdout when error occurs.
2021-04-09 20:12:03 +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
Andre Puschmann
7188603f2e
mac_nr: don't push MAC CE LCIDs to RLC when unpacking DL MAC PDU
...
this should fix log warnings then demux was trying to feed MAC CEs
to RLC:
10:50:54.845116 [MAC ] [I] [ 1153] Handling subPDU 1/2: rnti=0x0 lcid=61, sdu_len=1
10:50:54.845117 [RLC ] [E] Radio bearer id must be in [0:11] - 61
10:50:54.845118 [RLC ] [W] LCID 61 doesn't exist. Dropping PDU.
10:50:54.845119 [MAC ] [I] [ 1153] Handling subPDU 2/2: rnti=0x0 lcid=63, sdu_len=33
10:50:54.845119 [RLC ] [E] Radio bearer id must be in [0:11] - 63
2021-04-09 09:49:14 +02:00
David Rupprecht
56e947bf27
Added functionality for releasing a NR bearer
2021-04-08 17:37:36 +02:00
David Rupprecht
cc6d8128ad
Added gw interface if it is running
2021-04-08 17:37:36 +02:00
David Rupprecht
7a481c40ab
Added mac prach nr proc error handling
2021-04-08 17:37:36 +02:00
David Rupprecht
f9ea02b6bf
Added functions for rrc reestablishing procedure if nr reconfig failes
2021-04-08 17:37:36 +02:00
David Rupprecht
43ec714ce1
Added functionality for printing nr metrics
2021-04-08 15:55:28 +02:00
Xavier Arteaga
db1a1c059c
NR PHY workers TTI synchronization between DL and UL work
2021-04-08 11:39:55 +02:00
Xavier Arteaga
991c6e7016
Refactored NR HARQ-ACK feedback enqueue
2021-04-08 11:39:55 +02:00
Xavier Arteaga
49731ab5a1
Initial NR-DCI refactor
...
Added NR DCI 1_1 size
Several DCI NR fixes
2021-04-07 16:57:12 +02:00
Xavier Arteaga
dee2ec30cd
SRSUE: use new MAC interface for NR SR procedure
2021-04-07 14:16:46 +02:00
Xavier Arteaga
01990c2e1d
SRSUE: Add PHY-MAC SR related interfaces
2021-04-07 14:16:46 +02:00
Xavier Arteaga
f4ae2d73aa
SRSUE: report positive ACK for retx
2021-04-07 13:56:06 +02:00
Xavier Arteaga
20a4c39fa4
SRSUE: Disable PDSCH retransmissions in NR
2021-04-07 13:56:06 +02:00
David Rupprecht
506adca930
Set eutra nr band info based config value
2021-04-07 13:24:26 +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
Francisco
d04a19f8bc
refactor - increase code reuse in adt files
2021-03-29 22:11:25 +01:00
Xavier Arteaga
e200a3359e
SRSUE: check RNTI prior to UL encoding
2021-03-27 10:09:53 +01:00
Pedro Alvarez
a5229a02d1
Make sure RRC identity is set when NAS reads UE context from file.
2021-03-26 16:36:12 +00:00
David Rupprecht
838d5ac0f4
Added description for using the same filename for mac and mac_nr pcap
2021-03-26 16:12:45 +01: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
Xavier Arteaga
6219500148
Added NR-RRC RACH parsing
2021-03-26 09:45:10 +01:00
David Rupprecht
8c86d2084d
Adding NR phy config RRC parsing
...
Added error handling
Reworked flattening error handling
2021-03-25 11:34:53 +01:00
Andre Puschmann
7a3a5f4cf4
rrc_nr: announce short SN in PDCP capabilities
...
this allows selecting 12bit SNs for the NR PDCP entity
2021-03-25 09:28:55 +01:00
AlaiaL
bbaebd1274
Added a warning in the log when the cpu metrics are not registered due
...
to the number cpu cores is greater than supported.
2021-03-24 12:01:12 +01:00
AlaiaL
c9d1c77e8c
- Deleted the magic number of maximum supported cores, now it is a
...
constexpr.
- When the system has more cores that the maximum supported, the cpu
metrics will not be registered.
2021-03-24 12:01:12 +01:00
AlaiaL
6cd9bba641
Added the cpu metrics to the system metrics.
2021-03-24 12:01:12 +01:00
Xavier Arteaga
5bdf2c93b3
Initial NR PDSCH CSI-RS RE skip and other changes
2021-03-24 09:06:26 +01:00
Xavier Arteaga
7704c09ce2
Fix typos
2021-03-23 15:11:46 +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
Francisco
dd336c53ea
changed srsran_warning to srsran_expect. Applied new macro to rlc am
2021-03-23 10:49:28 +00:00
Codebot
4523ee6087
rename srsLTE to srsRAN
2021-03-21 21:47:01 +01:00
Xavier Arteaga
8c4ed489e8
SRSUE: Disable neighbour cell display by default
2021-03-19 11:47:09 +01:00
Xavier Arteaga
4ae194581f
SRSUE: Adjustments in distance and speed estimations
2021-03-19 11:47:09 +01:00
Xavier Arteaga
49a535b81a
SRSUE: force printing neighbour cells by default in console trace
2021-03-19 11:47:09 +01:00
Xavier Arteaga
2782d96170
SRSUE: compute speed from TA commands
2021-03-19 11:47:09 +01:00
Xavier Arteaga
a8b5b8efa1
UHD: stability improvements
2021-03-17 08:53:40 +01:00
Xavier Arteaga
f3c0360842
Applied aesthetical changes
2021-03-16 11:36:11 +01:00
Xavier Arteaga
ddfff3edad
SRSUE: Zero transmit buffer if the slot is not UL
2021-03-16 11:36:11 +01:00
Xavier Arteaga
fb1a0b6bce
SRSUE: added NR-PDCCH information
2021-03-16 11:36:11 +01:00
Xavier Arteaga
d3cfb00211
SRSUE: Added TDD DL/UL slot detection
2021-03-16 11:36:11 +01:00
Xavier Arteaga
6f6c20e194
SRSUE: Added procedure for multiplexing UCI in NR-PUSCH
2021-03-16 11:36:11 +01:00
Francisco
c6fff54f9e
compilation issue fix - wrong number of argments in ttcn3_syssim creation
2021-03-12 19:10:15 +00:00
Francisco
68c938267f
fix srslte include that causes a compilation issue
2021-03-11 20:10:54 +00:00
Francisco
d1ab4aae66
fix ipv6 related compilation issue
2021-03-11 20:10:54 +00:00
Francisco
3e9f93eb8a
refactor - remove old log_filter and logmap libraries from the codebase
2021-03-11 20:10:54 +00:00
yagoda
2ecdab8717
small fixes to the eMBMS downlink, lack of pdcch decoding was causing issues with uplink
2021-03-11 10:56:40 +01:00
Pedro Alvarez
7447fefd19
Make sure that sending the status report sent after RLC configuration in reestablishment
2021-03-10 19:17:26 +00:00
faluco
173dcdd421
- Import latest srslog version.
...
- Remove string allocs in some log lines in radio.cc.
Add new tracing buffer capcity options into srsenb and srsue.
Add missing file.
2021-03-10 16:27:33 +01:00
faluco
60cd649b8f
Add a short description of the tracing options inside the config files.
2021-03-10 11:59:09 +01:00
faluco
c7542daf43
Remove rlc traces and add new ones into tti run functions both in the enb and ue.
2021-03-10 11:59:09 +01:00
Francisco
20e341d0a1
mac,bugfix - fixed formatting of MAC and scheduler user-defined types
2021-03-09 16:23:08 +00:00
Francisco
5a1bf28fe1
optimization - minimization of number of std::string allocations for logging
2021-03-09 16:23:08 +00:00
Xavier Arteaga
9dffad87f2
Initial UCI bits multiplexing in PUSCH
2021-03-09 17:05:08 +01:00
Xavier Arteaga
f4e9d00ea8
Initial HARQ-ACK multiplex in PUSCH
2021-03-09 17:05:08 +01:00
Andre Puschmann
44e7d41f57
mac_nr: free tx softbuffer in stop()
2021-03-06 20:55:08 +01:00
David Rupprecht
e3d001a48e
Proc RA NR test: fixed uninitialized values
2021-03-03 22:50:05 +01:00
David Rupprecht
6317c9295c
SRSUE NR: Removed workaround to add pdcp lte bearer
2021-03-03 11:54:32 +01:00
David Rupprecht
027c20b0d3
SRSUE: Option mac pcap nr and lte write to the same pcap file
2021-03-03 09:50:15 +01:00
David Rupprecht
f6d8f13053
SRSUE: Updated ue config packet capture description
2021-03-03 09:50:15 +01:00
David Rupprecht
410c8e5d0e
Fix typo
2021-03-03 09:50:15 +01:00
David Rupprecht
5a95cbdfae
Disable rat assignment in pcap class
2021-03-03 09:50:15 +01:00
David Rupprecht
bb3e87302d
Added new pcap enable option and mac nr
2021-03-03 09:50:15 +01:00
AlaiaL
b1483802a2
[metrics] restoring metrics_stdout for enb and ue
2021-03-02 22:17:13 +01:00
AlaiaL
d518a625cc
[metrics] Added the system metrics to the csv
2021-03-02 22:17:13 +01:00
AlaiaL
0ba7cd7df9
[metrics] Added system metrics to the enb's stdout
2021-03-02 22:17:13 +01:00
AlaiaL
3a86c210f9
[metrics] Added the system metrics to the ue stdout
2021-03-02 22:17:13 +01:00
Xavier Arteaga
784f4be72e
SRSUE: NR CSI report fixes
2021-03-02 15:40:40 +01:00
Xavier Arteaga
4679e9f871
Initial NR CSI reports
2021-03-02 15:40:40 +01:00
Francisco
12f998cea3
fix failing rrc_meas_test
2021-03-01 23:20:07 +01:00
Francisco
a72a659fdf
fix timers interface to avoid accessing to a timer after its release. fix gtpu tunnel activation during s1 handover
2021-03-01 23:20:07 +01:00
David Rupprecht
3cf68e796d
SRSUE: Restore old nr attach status
2021-03-01 15:31:56 +01:00
Xavier Arteaga
1e55d68b55
Removed set RNTI from API
2021-03-01 15:30:33 +01:00
Francisco
4b09507c19
remove srslte.h includes from upper layers
2021-02-26 16:44:57 +01:00
Francisco
766018f2b4
fix gcc compilation issue
2021-02-26 16:44:57 +01:00
Francisco
b329e25bbb
move ue phy interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
13d805ef56
move ue rrc interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
b1706b9197
move ue nas interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
b8bd869d0f
move ue rlc interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
a988351f46
move ue pdcp interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
ea04104e8e
move ue gw interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
Francisco
186285ffd3
move ue usim interfaces to separate interfaces header file
2021-02-26 16:44:57 +01:00
David Rupprecht
8f49b92760
Using PDCP entity lte instead of nr for nr bearer
2021-02-26 15:13:41 +01:00
David Rupprecht
517208a6bc
Hardcoding MAC lcid
2021-02-26 15:13:41 +01:00
faluco
2328011732
- Remove old loggers in ttcn3 and in NR.
2021-02-26 13:59:39 +01:00
faluco
fd6c1e16a8
- Remove unused loggers in TTCN3.
2021-02-26 13:59:39 +01:00
faluco
eaf20fa4f3
- Removed some logger injections in the ue app.
...
- Removed old logger setup code not needed anymore.
2021-02-26 13:59:39 +01:00
faluco
3ce7454105
- Remove old loggers from ue_stack_lte, ue gw.
...
- Remove old loggers setting up for these classes.
2021-02-26 13:59:39 +01:00
Francisco
f610a7b83d
Change background worker pool to become a global variable
...
Allocate rrc::ue objects in batches in the background worker pool
2021-02-25 15:56:40 +01:00
Xavier Arteaga
126fc09b7d
SRSUE: Added initial SR procedure for NR
2021-02-25 09:04:04 +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
Xavier Arteaga
b768002a93
SRSUE Added RAR unpacking and other fixes
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
David Rupprecht
f90f10f6a8
SRSUE: NR handle rar pdu in tb decoded, fixed tti_tx issue, log RA procedure and adjusted testcase
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
0f1586dd2d
Deleted all HAVE_5GNR in CC and h files
...
CMakeList and travis yaml
2021-02-22 21:16:04 +01:00
David Rupprecht
1987ddd923
Added phy_nr to ue_stack_lte
2021-02-22 14:26:20 +01:00
Xavier Arteaga
fe452fae2b
Aesthetical changes scell synchronization class
2021-02-19 17:28:05 +01:00
Xavier Arteaga
326c5bc25e
Set secondary Serving cell synchronism bandwidth at cell selection and skip at configuration set-up
2021-02-19 17:28:05 +01:00
Pedro Alvarez
6ecd6e273c
Make sure that the status report is sent in RLF and PDCP reestablishment triggered by Handover
2021-02-19 13:30:48 +00:00
Pedro Alvarez
827823cfb1
Change reestablish order in RRC Procedures
2021-02-18 14:51:29 +00:00
David Rupprecht
a7949e69c8
configure and start ra proc
...
Fix crash due to missing init
2021-02-18 14:34:15 +01:00
David Rupprecht
876858b44c
Added mac nr prach common config convert function with test case
2021-02-18 14:34:15 +01:00
Xavier Arteaga
283fc78782
Fix override VNF
2021-02-17 16:34:00 +01:00
Xavier Arteaga
81748c7b1c
SRSUE: PHY does not compile NR interface
...
Fix
2021-02-17 16:34:00 +01:00
Xavier Arteaga
c1e6703054
Remove magic number
2021-02-17 16:34:00 +01:00
Xavier Arteaga
bdef411855
SRSUE: Aesthetic changes
2021-02-17 16:34:00 +01:00
Xavier Arteaga
7aef15bf34
SRSUE: notify MAC about UL grant
2021-02-17 16:34:00 +01:00
Xavier Arteaga
784a33583b
SRSUE: Initial NR MAC-PHY interfaces
...
SRSUE Fix compilation
SRSUE: temporary fixes LTE/NR PHY/Stack interface problem
fix
fix
2021-02-17 16:34:00 +01:00
Pedro Alvarez
b0fe302f8e
Added interfaces so the upper layers can trigger the PDCP status report. Added ability to the UE to send Status Report aftre reestablishment.
2021-02-16 13:21:50 +00:00
Pedro Alvarez
89a23cec7e
Added statusReportRequired to the PDCP entity config.
2021-02-16 13:21:50 +00:00
David Rupprecht
24123313bf
Added MAC NR RA procedure with a minimal test case
2021-02-16 09:42:09 +01:00
Xavier Arteaga
2e39e103f8
Minor NR related corrections
2021-02-15 12:54:17 +01:00
Xavier Arteaga
9faa2d5fcd
SRSUE: Automatic DL-HARQ Reset for every TTI and Generate PUCCH baseband signal
2021-02-15 12:54:17 +01:00
Xavier Arteaga
d807ccc3dd
SRSUE: Initial NR-PUCCH HARQ feedback
2021-02-15 12:54:17 +01:00
Xavier Arteaga
818f3ea7c7
Initial NR-PDSCH HARQ-ACK/NACK procedure
2021-02-15 12:54:17 +01:00
Andre Puschmann
f0818275f0
ue,phy: reduce log level when 2nd grant for same PID is registered
...
this resolves issue #2277 in which a warning was logged when
the CC worker decoded a 2nd phantom PDDCH.
It's difficult to avoid this 2nd PDDCH without addional computation
that we don't want add at this stage.
Rather than filtering out the Warning in the log post-processing,
we reduce the log level to info.
2021-02-13 11:03:45 +01:00
Francisco
dc4283c572
added cmake functions as helpers to set labels in ctests
2021-02-12 20:27:31 +01:00
Pedro Alvarez
dd6d6f731d
Passing SN provided by upper layers to PDCP entity. Using it to calculate TX_COUNT if passed.
2021-02-12 11:57:36 +00:00
David Rupprecht
4789860bdd
Fixes a mismatching between bands in the band combination and feature set
2021-02-12 12:42:37 +01:00
David Rupprecht
14cc25f181
Fixes crash due to not exisiting pointer to log in run time
2021-02-11 15:12:48 +01:00
faluco
62fcf04083
Ported the all radio classes to use srslog.
2021-02-11 14:23:14 +01:00
Francisco
c2dfe615e7
fixed alignment of LIBLTE_BYTE_MSG_STRUCT to reflect the one of byte_buffer. Add bzero in liblte packers
2021-02-11 13:09:06 +00:00
faluco
9d15a44c73
Port lib/phy to srslog ( #2298 )
...
* - Ported the channel class to srslog.
- Removed all newlines of log messages in lib/phy.
* Remove more newlines that use the C debug macros.
2021-02-10 13:46:25 +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
Francisco
04ab4eefcd
use new make_byte_buffer() helper method to create unique_byte_buffers
2021-02-07 18:48:21 +00:00
Francisco
1e2153769e
remove byte buffer pool cleanup method and unnecessary mutexes
2021-02-07 18:48:21 +00:00
Francisco
0c7c317be5
refactor byte_buffer class and move it to separate file
2021-02-07 18:48:21 +00:00
Pedro Alvarez
bb0e31feda
Reduce log level of SDUs dropped in the stack to info. Added ul_dropped_sdus to stack metrics.
2021-02-05 16:48:04 +00:00
Xavier Arteaga
aef0397658
SRSUE: NR worker reset Tx buffer and PUSCH data payload bytes from 0 to 255
2021-02-05 15:55:03 +01:00
Xavier Arteaga
a19671802e
Added SRSUE NR-PUSCH initial procedures
2021-02-05 15:55:03 +01:00
David Rupprecht
3dab82c42f
Added interface that allows to update the lcid in case of a nr reconfiguration
...
nr rrc updates gw lcid if reconf was received
2021-02-05 11:08:08 +01:00
faluco
821925a273
- Upgrade to srslog the loggers in lib/mac.
...
- Adapted users of these classes and tests.
2021-02-04 18:37:00 +01:00
Xavier Arteaga
a8099d0df9
Fix SRSUE compilation without 5GNR
2021-02-04 10:51:47 +01:00
Xavier Arteaga
a2d9b436d9
SRSUE: add NR stack to PHY and initial decoded PDU push
2021-02-04 10:51:47 +01:00
Xavier Arteaga
e65c145704
SRSUE: Added hard-coded NR-PUSCH resources
2021-02-04 10:51:47 +01:00
Xavier Arteaga
77f0a53abd
Added DCI Format 0_0 unpacking and more NR-PUSCH procedures
2021-02-04 10:51:47 +01:00
Xavier Arteaga
b150e45129
Renamed NR-PHY state and fix license headers
2021-02-04 10:51:47 +01: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
faluco
a7bb3ce7d0
Remove unused variable in vnf_phy_nr.
2021-02-03 14:15:27 +01:00
faluco
79eca0980d
- Ported fsm.h to srslog.
...
- Adapted and removed old loggers in tests and code that used fsm.h
2021-02-03 14:15:27 +01:00
faluco
d37a07a47f
Replaced loggers in buffer_pool.h
2021-02-03 14:15:27 +01:00
faluco
f8485fb799
Replaced loggers to srslog in PNF and VNF classes.
2021-02-03 14:15:27 +01:00
Andre Puschmann
a827350f7c
mux: avoid unneeded call to msg3_flush() in ctor
...
this causes a debug log line as the first message in every ue.log because
the loggers/loglevels aren't configured yet.
22:10:02.463396 [MAC ] [D] [ 0] Msg3 buffer flushed
the msg3_flush isn't needed because all variables are initialized.
2021-02-03 10:24:32 +01:00
Andre Puschmann
ecf7eaec5c
ue_stack_lte: expose MAC NR interface for NSA configs
2021-02-03 10:23:18 +01:00
Andre Puschmann
5ec78be872
nas: log switch on/off in info mode
2021-02-03 09:55:26 +01:00
Xavier Arteaga
aaa789f530
Removed unused logger
2021-02-02 15:23:14 +01:00
Xavier Arteaga
92c4a38fc2
Fix logger for NR PHY
2021-02-02 15:23:14 +01:00
Xavier Arteaga
2421f2cd99
Multiple PHY fixes and NR-PHY configuration refactor
2021-02-02 15:23:14 +01:00
Xavier Arteaga
b652cd68a5
Refactored NR PHY configuration to accept multiple CORESETs/SearchSpaces
2021-02-02 15:23:14 +01:00
Xavier Arteaga
10a7b63c6a
NR-UE PHY transmits PRACH in all oportunities
2021-02-02 15:23:14 +01:00