3014 Commits (96fd3aae3c749926b55558e3cbfde4e3c5e672cc)

Author SHA1 Message Date
Francisco 053877f489 rrc,nr: fix conversion from asn1 to phy cfg 3 years ago
Xavier Arteaga 1bdb1bb62d Store PUSCH CSI from PUSCH DMRS 3 years ago
Fabian Eckermann 420d6a6a98 enhanced and fixed some tests. 3 years ago
Robert Falkenberg b0430ebfe2 rf_imp.c: fix segfault when closing RF device with no AGC thread 3 years ago
Francisco 3b79393974 sched,nr: fix default ue configuration when prach arrives 3 years ago
Xavier Arteaga d5b34696b4 Sepparate CSI report configuration from quantification and integrate in nr_phy_test with assertions 3 years ago
Francisco Paisana b7f40b2baf rrc,nr: reenable CSI reporting in gNB 3 years ago
Xavier Arteaga 00a6e71f50 Fix UL/DL frequency compensation 3 years ago
Fabian Eckermann cb721aa292 fix calculation of ssb frequency. 3 years ago
Francisco Paisana b58915d7ed rrc,nr: make gnb cell CSI NZP configuration consistent with UE NSA configuration. 3 years ago
Andre Puschmann 8bb06ff2c0 Added SSB in gNb PHY 3 years ago
Xavier Arteaga 3763d04578 implement helper function to calculate FFT size for a given sampling rate 3 years ago
Andre Puschmann 7496b7c14f Add SSB to configuration factory 3 years ago
Fabian Eckermann 5f40d4fd99 Add test for ssb from band calculation. 3 years ago
Fabian Eckermann 95abfbfec8 Calculate ssb frequency from freqency point a. 3 years ago
Xavier Arteaga c9d7db7314 Minor changes 3 years ago
Xavier Arteaga e3bd92d87c Fix SSB pattern in UE 3 years ago
Xavier Arteaga 8f90ee847a Refactor carrier frequency from PHY and fix OFDM phase compensation 3 years ago
Xavier Arteaga fda35bf6a1 Initial OFDM carrier phase compensation 3 years ago
Xavier Arteaga 2ab3971ef1 Fix NR PBCH encoding/decoding 3 years ago
Xavier Arteaga 530b381c6c Change NR PDSCH/PUSCH freq/time resource format in log 3 years ago
Andre Puschmann 1937e4d7fc ssb: add extra checks when configuring SSB
this is to avoid invalid configs that later on cause segfaults, etc.

e.g.:

    0 0x7f397adf64a3  (/lib/x86_64-linux-gnu/libc.so.6+0xbb4a3)
    1 0x7f397cc8c6ce  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x796ce)
    2 0x55b921d61707 in srsran_vec_cf_copy /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/utils/vector.c:226
    3 0x55b921d3b1d4 in ssb_demodulate /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/sync/ssb.c:632
    4 0x55b921d3d8ce in srsran_ssb_csi_measure /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/phy/sync/ssb.c:905
    5 0x55b9215dc20f in srsue::nr::cc_worker::measure_csi() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/cc_worker.cc:373
    6 0x55b9215dd216 in srsue::nr::cc_worker::work_dl() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/cc_worker.cc:483
    7 0x55b9215f9c69 in srsue::nr::sf_worker::work_imp() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/srsue/src/phy/nr/sf_worker.cc:78
    8 0x55b921c47cc6 in srsran::thread_pool::worker::run_thread() /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/src/common/thread_pool.cc:48
    9 0x55b92152ea0b in srsran:🧵:thread_function_entry(void*) /mnt/data/jenkins/workspace/srslte_ogt_trial_builder_x86-ubuntu1804-asan/srsLTE/lib/include/srsran/common/threads.h:103
    10 0x7f397c9fb6da in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76da)
    11 0x7f397ae5c71e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x12171e)
3 years ago
Xavier Arteaga 1aa65bd10c HOTFIX: force DFT wisdom save at exit 3 years ago
Fabian Eckermann 077f9cd03e Add test for get_abs_freq_point_a_arfcn. 3 years ago
Fabian Eckermann 7f7cfe687d fix calculation. 3 years ago
Ismael Gomez c09f09b7be Move rrc_common from srsue to lib 3 years ago
Fabian Eckermann 8830c2796f Add support for NSA FDD on band n3, n5 and n7. 3 years ago
Fabian Eckermann 2d0be77660 Add helper functions for abs freq point a. 3 years ago
faluco a8f58f503c - Fix arm compiler warning. GCC treats chars as unsigned in this arch.
- Fix race condition in json metrics.
3 years ago
Xavier Arteaga 8b2514ded3 Added NZP-CSI-RS signals in gNb 3 years ago
faluco 1eaca0d343 Escape asn1 message strings that get printed in the enb event json report. 3 years ago
Ismael Gomez 1c77998df5 Stop PDCP for data bearers before initiating HO 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 59e1bca3f5 rlc_am_lte: fix potential crash when attempting to resize tx queue
under some circumstances it could happen that the RLC is configured
when SDUs are already being written to the queue. The resize
operation of the underlying container would fail in this case.

Make sure to empty the queue before doing the resize.
3 years ago
Francisco Paisana bdf18856d1 sched,nr: fix handling of DL BSR in NR scheduler and computation of UCI 3 years ago
faluco 7b079fe289 Fix a data race in rlc TM metrics. 3 years ago
faluco edb7342aef Fix data race in rlc UM metrics. 3 years ago
faluco 8a38a89652 Fix compiler warning: control reaches end of non-void function 3 years ago
Andre Puschmann 430694c72f gnb,dl: fix amplitude scaling
use PDSCH struct to get number of PRBs to compute scaling factor.
then PDCCH struct is only filled if it's encoded.
3 years ago
David Rupprecht bd0e641633 Added GTPU PDU Session header parsing 3 years ago
Xavier Arteaga d0ce17f736 Added SSB different SCS combination unit test 3 years ago
Xavier Arteaga e2facef540 Abort radio application if decimation/interpolation ratios are not integer 3 years ago
Xavier Arteaga cdfbe28b69 Initial NR-MIB packing/unpacking 3 years ago
Xavier Arteaga 0324806d6c Packed NR TDD config in duplex configuration and created test case for FDD 3 years ago
Fabian Eckermann dd8db1a929 Replaced inet_addr() with inet_pton. 3 years ago
Xavier Arteaga 574683e3ef Fix error message 3 years ago
Fabian Eckermann d59ebfce9d add lock for fftw wisdom 3 years ago
Xavier Arteaga ffba972fb7 Fix gnb amplitude 3 years ago
Xavier Arteaga 51d6ab3b3f Disable CSI-RS resource mapping number of port check 3 years ago
Xavier Arteaga de00b80228 Review NR NSA CFO estimation and compensation 3 years ago
Xavier Arteaga 63bb86bce1 Added SS type conversion to string 3 years ago
Xavier Arteaga 7ba5099bee Implement CSI-RS resource mapping validation 3 years ago
Fabian Eckermann e57ffca722
gnss_sync: fix timestamp to TTI conversion
* Improve reliability of timestamp to tti conversion

Difftime is not reliable as it might use 32 bit calculation, depending on the system. This leads to wrong frame numbers and subframe indices.
I encountered this Issue when testing the pssch_ue exampel on my system and the conversion from timestamp to frame number and sf idx was wrong.

* Improve GNSS Sync 

Added loop to check for GNSS alignment while syncing.
If the received GNSS signal is weak, synchronization errors might occur while syncing.
3 years ago
faluco d2f09a8d3c Fix a nasty data race in the ue_bearer_manager class. The underlying std::map member was being accessed concurrently potentially corrupting memory. 3 years ago
faluco d009160ba6 Fix data race in the metrics of the rlc. 3 years ago
Andre Puschmann e563e5918e rf_imp: fail opening RF altogether if specified device fails to open
we've had a few runs in the CI where opening the specified RF device
failed but the eNB/UE still continued to run, just picking the next available
run. This led to false-positive tests.

The policy should be that whenever the user specified a RF device to
be openend, and this device fails, the whole process should fail and
the application should exit.

The auto-detection mode is still available but only if no device name
is specified at all.
3 years ago
Andre Puschmann b127327684 enb,s1ap: print filename when writing S1AP PCAP 3 years ago
faluco 485ec2edab Implement a new option to flush the file sink contents on every write. 3 years ago
Nils Fürste d75fe22a0a Soapy: Fix include path of Types.h 3 years ago
Andre Puschmann 06f000c2c4 band_helper: fix format 3 years ago
faluco c7ddedcf72 Log the invalid format string to help grepping it in the logs. 3 years ago
faluco 9571109a69 Abort program execution if STOP_ON_WARNING is defined when formatting an invalid log entry. 3 years ago
faluco 8cde3f20e7 Catch exceptions thrown on invalid format strings in the log backend and print an error message to signal the issue. 3 years ago
Andre Puschmann 07019a5bd6 nr: refactor DL/UL frequency deriviation
* add separate DL/UL freq point a in NR carrier struct
* use freqInfoDL/freqInfoUL to get freq point a
* simplify carrier tuning logic
3 years ago
Andre Puschmann 11af5662a7 band_helper_test: extend TC for band 5 FDD freq calcs 3 years ago
Andre Puschmann d26a7e0350 band_helper: add helper to derive DL/UL freq from abs_freq_point
calculate DL and UL freq in carrier struct based on given values
3 years ago
Andre Puschmann 377eb52b86 band_helper_test: add TC for band n5 3 years ago
Andre Puschmann 69619d725a band_helper: add helper to derive UL ARFCN from DL ARFCN 3 years ago
Andre Puschmann 93e1d7712d enb,phy: add checks for invalid EARFCN and exit eNB if config is wrong 3 years ago
faluco 5703752faa Fix a enb crash when no more users could be added into the bearer manager map.
This was caused by not removing old user from the map, so add the code to cleanup the map on user removal.
3 years ago
Andre Puschmann aba0ba9ad8 mac_sch_pdu_nr: fix newline in logs 3 years ago
Andre Puschmann 6745eced49 ssb: avoid NaN when SSB can't be detected
when PSS+SSS can't be detected the RSRP was 0 and
the resulting conversion to dB resulted in NaN.
3 years ago
faluco ec272061a0 Fix a dangling SDU pointer in mac_sch_subpdu_nr when adding subpdus into a mac_sch_pdu_nr. 3 years ago
faluco 934802d23c Report the SIB9 home enb name in the enb sector start/sector stop events. 3 years ago
faluco 2fd3ed789a Rename sector_id to carrier_id JSON key in enb metrics and events. 3 years ago
faluco d122d0c69b Add new field for the PCI in the enb JSON report file. 3 years ago
faluco d168536bc4 Add a new program option to control how ASN1 messages get printed into the enb JSON report file. 3 years ago
faluco df6ae7b0e0 - Implement new enb events:
* ho_command
* connection_resume
* rlf_detected
- Rename rlf_report event to "rlf_report".
3 years ago
faluco 8a3586dfbf Include a ASN1 json representation for RRC enb events. 3 years ago
David Rupprecht a9a23214b0 Added more 5G security kdfs
Added new 5G SIM functions

Added const parameters for security functions
3 years ago
David Rupprecht a645d74eaf USIM functions for res star
Added gen_res_star in security.h

Added USIM interfaces for res star

Added RES star test case
3 years ago
David Rupprecht bce6b5cc0f Added kdf common
Use kdf functions in 5G KDF

Moved EPS KDF function to new KDF structure
3 years ago
David Rupprecht 15eaef21e2 Update test f12345 function
Moved XOR functions to lib

Added testcase for KDF

Minor liblte_security updates
3 years ago
David Rupprecht 0ef8976d53 Remove length from class and pass by reference 3 years ago
Andre Puschmann 82e9652a92 mac_sch_pdu_nr: fix ASAN/fmt issue when print space 3 years ago
Andre Puschmann ea48a350a4 mac_rar_pdu_nr: fix clearing of padding bytes 3 years ago
Andre Puschmann 02bd15878e mac_sch_pdu_nr: fix logging 3 years ago
Andre Puschmann ede81be5e4 mac_rar_pdu_nr: add packing routines
* add packing for RAR PDUs
* rewrite to_string() to use fmt lib
* add test case for packer
3 years ago
Andre Puschmann 20c0e0bc41 mac_sch_pdu_nr: add to_string() helper to format MAC PDUs in logs 3 years ago
Francisco Paisana ebd12b0778 stack lte,refactor: pass bearer manager instead of stack pointer to srsenb::rrc 3 years ago
Francisco Paisana f4df55c245 stack lte: separate bearer manager into two classes, one for the ue and one for the enb 3 years ago
Francisco Paisana 2ade4628ca stack lte: create an gtpu-pdcp adapter class that correctly converts lcids to eps bearers and vice-versa 3 years ago
Andre Puschmann db8b710442 bearer_manager: move to lib folder and extend for multiple users
prepare bearer manager to be used by eNB which requires
to support multiple RNTIs
3 years ago
Xavier Arteaga 9e1669c403 Better comments in minimum size symbol selection 3 years ago
Xavier Arteaga 4858202bf6 Fix NR symbol size for 270RB 3 years ago
Xavier Arteaga 14a85d31ec Fix symbol size simensioning for LTE standard rate 3 years ago
Andre Puschmann 9bf74843f6 mac_pdu_nr: add error handling to init_tx() method
check provided byte_buffer and return error if it's not valid
3 years ago
Francisco Paisana b486d2a1b5 sched,nr: implement prb grant fmt formatting 3 years ago
Xavier Arteaga 83b9b2d1ff Implemented UE open loop CFO compensation for NR 3 years ago
Xavier Arteaga 5aa2279990 Fix NZP-CSI-RS CFO sign 3 years ago
Xavier Arteaga 7da2d20447 Added UE UL NR frequency offset option 3 years ago
Xavier Arteaga cfe2b305a1 Fix CORESET0 related PDSCH resource allocation procedure 3 years ago
Xavier Arteaga 36207db615 Added CORESET start_rb helper function 3 years ago
Xavier Arteaga 89ef3b64b4 Optimization NR PDCCH mapping minor optimization 3 years ago
Xavier Arteaga 9c3dd56398 Added PDCCH DMRS interleaved mapping 3 years ago
Xavier Arteaga f5f18054eb Added PDCCH NR interleaved mapping 3 years ago
Xavier Arteaga d61d6aa59f Integrated CORESET0 into UE's RRC 3 years ago
Xavier Arteaga e07263ee26 Added band helper for getting band from ARFCN 3 years ago
Xavier Arteaga 7377496417 Added SCS to string and corrected coreset0 3 years ago
Xavier Arteaga 62ba7d386d Initial CORESET Zero constructor 3 years ago
Xavier Arteaga 5d149a4b78 Moved NR time/frequency allocation SLIV to new component 3 years ago
Francisco Paisana 36eee0ab40 test,nr: add ra_search_space configuration to phy_cfg_nr; now the test ue searches for RA-RNTI while expecting a RAR 3 years ago
Francisco Paisana 2668a8f68b sched,nr: fix Msg3 decoding in PHY to not expect any UCI 3 years ago
Xavier Arteaga 2cd5e98132 Fix NULL check in DCI NR for RAR type 3 years ago
Xavier Arteaga 3784359da5 Use NR DCI format 0_0 packing and unpacking for TC-RNTI type 3 years ago
Xavier Arteaga b846116c5c Added NR RAR UL DCI packing 3 years ago
Francisco Paisana f518861ebc fix location of support/ folder. Created macros for ASSERT_EQ and ASSERT_NEQ 3 years ago
Francisco Paisana 599fc978a5 improvement of srsran_assert design, with specializations to enable/disable assertions based on compile flags other than ASSERTS_ENABLED. Creation of the support/ folder 3 years ago
Francisco Paisana eb4999a18e lte,pdcp: silence error message when a reconfiguration of a PDCP entity is no-op 3 years ago
Andre Puschmann 4076338a1b enb: add MAC-NR PCAP
* use fixed filename until eNB stack layout is decided
3 years ago
Andre Puschmann 7726acad41 rlc_am_lte: fix counting of retx of entire PDUs and PDU segments
this patch fixes a bug discovered in a real network where the DL CQI of a
user degraded repidly in very short time. A relativly big RLC PDU that
was still sent with the good CQI in a big grant now needs to be split
across many tiny segments because the CQI degraded so much.

The retx couting for each transmitted segment caused the retx counter to
reach maxRetx quickly.

With this patch we do not increment the retx counter for each transmitted
PDU or segment of a PDU but instead only increment the counter when
a given SN is added to the retx queue. This can happen either:
a) if the SN is negativly acknowledged and was not already on the retx queue,
b) no new data is available for tx and a SN is selected for retx.

This is in accordance with TS 36.322 which handles retx counting in section
5.2.1 according to the above description.
3 years ago
Xavier Arteaga cba6df3722 Extended NR PHY robustnes against wrong RRC configuration 3 years ago
Xavier Arteaga de89e829e7 Added NR PUCCH Resource ASN1 helper 3 years ago
Xavier Arteaga 3ae131b336 gNb creates PUSCH decode PDU 3 years ago
Xavier Arteaga 856573b92f Added 4096 symbol size as LTE rate 3 years ago
Xavier Arteaga 54e1fe172c Minor NR PHY aesthetical modifications 3 years ago
Xavier Arteaga 956c4f8266 Added PHY NR test TDD FR1.15-1 pattern 3 years ago
Xavier Arteaga dfa323df6b Added 20MHz default configuration 3 years ago
Xavier Arteaga 1b50758bd5 Initial NZP-CSI default configuration from TS38.101-4 3 years ago
Andre Puschmann 3b5344b0f7 thread_pool: add optional ID to thread pool
this allows to prepend an ID to each thread pool to
better differentiate workers from different pools
3 years ago
Xavier Arteaga a300a47673 Fix value selector for NEON 3 years ago
Xavier Arteaga 42b052112f Added TS reference and use SRSRAN_CEI_LOG2 macro 3 years ago
Xavier Arteaga 1f495cb008 Added generic SRSRAN_CEIL_LOG2 3 years ago
Andre Puschmann b6f8280f67 cqi: protect potential div by zero bug 3 years ago
Xavier Arteaga 085e247ece Fix ZMQ TX channel mapping for NULL pointers
Fix ZMQ transmit frequency mapping

Use map mask in ZMQ to determine mapped channels

Fix ZMQ mapping
3 years ago
Xavier Arteaga 562fd1b4d4 Fix segfault 3 years ago
Francisco Paisana bd08a64b5e sched: fix crash for 100 prbs and subband CQI reporting 3 years ago
Ismael Gomez a896e32cf4 Refactor sub-band CQI processing 3 years ago
Ismael Gomez 9b10e1c45d Fix sub-band CQI in UE. Refactor variable names 3 years ago
Andre Puschmann a7eb9b471b pssch_file_test: relax test result check
the file test sometimes decodes 2 and sometimes 3 (less often) SCI.
its not entirly clear why it's different though.

this "fixes" #3088
3 years ago
Xavier Arteaga ca5ea369f5 Extended ue_dl_nr_file test 3 years ago
Xavier Arteaga 914a2e2d31 Add SCH NR softbuffer check 3 years ago
Xavier Arteaga 858fc2c0fc Cleanup include 3 years ago
Xavier Arteaga 5a6b8f42f5 Add standard rate check for FFT minimum size function 3 years ago
Xavier Arteaga 98929c95a8 Initial UE DL NR file test 3 years ago
Xavier Arteaga dcf9ae039c Fix related Sidekiq comments and mutex 3 years ago
Xavier Arteaga b3d9a94dd5 SIDEKIQ: fix tx time protection 3 years ago
Xavier Arteaga ecf668ee9e SIDEKIQ: fix comment 3 years ago
Xavier Arteaga 96ee4b7258 SIDEKIQ: Initial implementation
SIDEKIQ: Add SKIQ_FOUND to RF found condition

SIDEKIQ: finished SKIQ component abstraction

SIDEKIQ: fix issues and added external PPS example

SIDEKIQ: add PPS test card index argument

SIDEKIQ: improvements

SIDEKIQ: improved srate change

SIDEKIQ: more improvements

SIDEKIQ: more fixes

SIDEKIQ: fix Rx ch gain

SIDEKIQ: Fix multi-card synchronism

SIDEKIQ: Better Rx gain tracking
3 years ago
Robert Falkenberg 24e52d6291 soapy: fix array parameter mismatch for some functions
With soapy 0.8.0, GCC 11.1.0 warns of mismatched array bounds
in some functions.
This commit aligns the bound and adds proper wrappers to
fix subsequent warnings.
3 years ago