Commit Graph

2090 Commits

Author SHA1 Message Date
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