2143 Commits (c0fd64c4e6aa6889d451c55256fc671d2f6f1084)

Author SHA1 Message Date
Andre Puschmann 2c975732dc metrics_stdout: fix race detected by TSAN 4 years ago
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.
4 years ago
Xavier Arteaga 2d0a21f779 Move radio frequency mapping out of the PHY common into the PHY reset method 4 years ago
Andre Puschmann 11a6d3160f mac_test: include TSAN options header 4 years ago
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.
4 years ago
Xavier Arteaga 5c55ff24ec Minor UE aesthetical changes 4 years ago
Xavier Arteaga 44b6a2b55f Fix SYNC wait for IDLE if the state is reached 4 years ago
Xavier Arteaga 807b60988d Wait for PHY workers to transmit before considering SYNC in IDLE 4 years ago
Xavier Arteaga 93b35676e7 Solve concurrency issue when setting up SCell measurement 4 years ago
Xavier Arteaga 7185ec6beb PHY CC configuration is stashed and applied in the next TTI 4 years ago
Xavier Arteaga 235a664120 SRSUE: Removed PUSCH-DMRS/SRS pregeneration methods 4 years ago
Xavier Arteaga aab2211058 Protect UE PHY SCell configuration 4 years ago
Xavier Arteaga a7dcd629ef Cell search waits for IDLE transition before launch 4 years ago
Xavier Arteaga cc2a6dc269 Review cell selection and SCell configuration during HO 4 years ago
Xavier Arteaga 65d51f5855 Fix unitialised value 4 years ago
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.
4 years ago
Andre Puschmann c1ad867824 epoll_helper: use std::atomic to protect exit called from different thread 4 years ago
Xavier Arteaga 48e0fc3c99 Implemented initial PBCH decoder and refactored SSB candidate selection 4 years ago
yagoda 8d2568ed2c small fix for console print for cyclic prefix 4 years ago
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
4 years ago
Francisco 2d6a878826 change interface to create multiqueue queues 4 years ago
Francisco f705735093 optimization - only allow some multiqueue queues to notify the multiqueue consumer of the arrival of tasks 4 years ago
yagoda 9501283c1c fixing support for extended Cyclic Prefix
small cosmetic fixes of CP code
4 years ago
Xavier Arteaga 7f853446d3 Added file option to NR cell search test 4 years ago
Xavier Arteaga 5eadc06dd4 Intra-frequency miscellanous changes 4 years ago
Xavier Arteaga 170fbefbf5 Avoid SCell receiver to copy 4 years ago
Xavier Arteaga d39402ed54 Added TTI trigger condition to intra-frequency measurement base 4 years ago
Xavier Arteaga c80f91ac9e Fix compilation 4 years ago
Xavier Arteaga ac9dc6f31d Compute Performance 4 years ago
Xavier Arteaga 0b3f4e5de0 Improvements in NR cell search 4 years ago
Xavier Arteaga 5b31654ae2 Minor aesthertical changes in nr_cell_search_test 4 years ago
Xavier Arteaga fb7623f5b6 Initial intra frequency NR cell search and test 4 years ago
Xavier Arteaga 60015e7ceb Made intra frequency cell search and measurment generic 4 years ago
faluco 1670124926 Implement UE metrics in JSON format.
Added config options to control this feature.
4 years ago
Xavier Arteaga 5e6983f8e6 SRSUE: enable 256QAM in RRC NR capability message 4 years ago
Xavier Arteaga a57336d64f Integrate periodic SSB measurement in SRSUE and fix related defects 4 years ago
Andre Puschmann adcfcfe012 proc_ra_nr: fix typo 4 years ago
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.
4 years ago
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.
4 years ago
Xavier Arteaga 60d1708b80 Initial SSB measurement implementation 4 years ago
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
4 years ago
Xavier Arteaga 1396c2a1e2 Mulpiple CSI measurement fixes. Channel and sync metrics from CSI measurements 4 years ago
Xavier Arteaga 653177ca7c SRSUE: Refactored work_dl for NR. Added NZP-CSI-RS measurement 4 years ago
Ismael Gomez 0b91598e36 Move mlockall() to main() in srsUE and srsENB 4 years ago
David Rupprecht f0d2a22cb6 Fixed band index in rrc 4 years ago
David Rupprecht 8c194b887b Allow NAS init function to fail 4 years ago
David Rupprecht 617fb2ba7e Added default destructor for args 4 years ago
Xavier Arteaga 9fb091262a Duplicate NR PDSCH transmits ACK and add ACK Tx TTI to trace 4 years ago
Xavier Arteaga de9158eeaf Enable NR RRC MCS table selection 4 years ago
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. 4 years ago
Andre Puschmann cd061d46e6 metrics_stdout: remove obsolete if 4 years ago
faluco 90e23d9de6 Print in the ue stdout metrics the CC number for LTE and the RAT for NR. 4 years ago
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.
4 years ago
Xavier Arteaga 95dafcb413 SRSUE: fix NR carrier PCI in metrics 4 years ago
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 4 years ago
Xavier Arteaga e1ff824cc2 SRSUE avoid NR SR in UCI for PUSCH 4 years ago
Xavier Arteaga 6c39a5e4ff Added PDSCH DMRS aditional unpacking 4 years ago
Xavier Arteaga 334b308c35 Fix DCI NR configuration from main configuration 4 years ago
Xavier Arteaga 86ad0446e1 Added NR PDSCH and PUSCH resource allocating flattening 4 years ago
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.
4 years ago
Andre Puschmann 0826b86cec srsue: remove NR DL freq and ARFCN option
not required anymore as all NR carrier tuning is done
through RRC signaling
4 years ago
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
4 years ago
Andre Puschmann ff53d2b8b8 all: set of trivial changes reported by LGTM
mainly fixmes, unused/empty code, etc.
4 years ago
AlaiaL 58ce75d3b4 Fixes coverity 369617 4 years ago
AlaiaL 82788ca094 Fixed issues from coverity:
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
4 years ago
Matan Perelman 7ee52dc676 srsUE: Add option to filter N_id_2 / PSS to configuration 4 years ago
David Rupprecht 102a943171 Fixed naming srsLTE to srsRAN 4 years ago
David Rupprecht fd451e8be3 Configure Short PDCP NR SN support 4 years ago
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
4 years ago
Xavier Arteaga ab6a5ef17a Added NR DCI conversion to string for formats 1_0 and 1_1 4 years ago
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.
4 years ago
Francisco 23203b73ae fix - avoid recompiling srsue rrc files twice 4 years ago
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
4 years ago
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.
4 years ago
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
4 years ago
Xavier Arteaga 7246ce0cea Fix MSG3 false retransmission
this fixes #2694 by considering hi=1 value and not treating
this as a Msg3 retx
4 years ago
Andre Puschmann c1e4385f50 worker_pool: fix wrong log level when setting worker config 4 years ago
Xavier Arteaga 407903e0d6 SRSUE: refactor carrier setting for accepting a dynamic carrier configuration 4 years ago
Xavier Arteaga 47523935f6 Minor NR RRC fixes 4 years ago
David Rupprecht d2aa25d451 Added option for simulated measurement 4 years ago
Xavier Arteaga 09272edf4b Update NR PHY TTI 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 51e73aa1fc mac_nr_test: add basic DL HARQ test and extend checks for metrics 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
Andre Puschmann b6f2c80f66 mac_common: add helper method to get total buffer state 4 years ago
David Rupprecht a064e85c54 rename common lte header 4 years ago
David Rupprecht 81ad72b0ff Refactor srb and drb handling 4 years ago
David Rupprecht 91ff8a2e6d Add rrc_nr to rlc init function 4 years ago
David Rupprecht 6b41ae7e8b Updated PDCP config struct for rat type 4 years ago
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
4 years ago
Andre Puschmann c8d3e133dc ue: bump default RRC release announced to 15 4 years ago
David Rupprecht 75cd5e65e5 Removed arfcn and freq, and nof_prbs from config file 4 years ago
David Rupprecht 6ed6da1f12 Refactor ue config for eutra and nr config section 4 years ago
Xavier Arteaga 77b6b60b82 Fix rach_cfg.nof_groupA_preambles 4 years ago
David Rupprecht db9dd85783 Parse carrier config in NR RRC reconfig 4 years ago
David Rupprecht f42d4dbc28 Refactored carrier config 4 years ago
Andre Puschmann 87f9b2babc mac_nr: turn off warning for non-implemented features
they cause RFCI to fail, features are known to be missing.
4 years ago
Andre Puschmann 73d6b33920 {ul,dl}_harq_nr: reword log entries if HARQ PID isn't found 4 years ago
Andre Puschmann edd150b29f fix PID not being set when reading pending UL grant
this should fix #2679
4 years ago
Andre Puschmann 0df218ab90 cc_worker: fix PDSCH log fmt::v7::format_error 4 years ago