Fabian Eckermann
420d6a6a98
enhanced and fixed some tests.
2021-10-07 10:42:16 +02:00
Bedran Karakoc
850606f20b
Added deregistration (UE terminating)
2021-10-06 20:01:00 +02:00
Robert Falkenberg
b0430ebfe2
rf_imp.c: fix segfault when closing RF device with no AGC thread
2021-10-06 18:25:11 +02:00
Francisco
3b79393974
sched,nr: fix default ue configuration when prach arrives
2021-10-06 16:33:51 +02:00
Xavier Arteaga
d5b34696b4
Sepparate CSI report configuration from quantification and integrate in nr_phy_test with assertions
2021-10-06 16:33:51 +02:00
faluco
388b1e5d92
Fix data race in radio::is_start_of_burst.
2021-10-06 12:49:34 +02:00
faluco
7b0b76d58e
Whitelist two lock order inversion TSAN issues that acquire a readlock.
2021-10-06 12:49:34 +02:00
Francisco Paisana
b7f40b2baf
rrc,nr: reenable CSI reporting in gNB
2021-10-06 10:58:29 +01:00
Xavier Arteaga
00a6e71f50
Fix UL/DL frequency compensation
2021-10-06 10:46:21 +02:00
Fabian Eckermann
cb721aa292
fix calculation of ssb frequency.
2021-10-05 18:21:58 +02:00
Francisco Paisana
b58915d7ed
rrc,nr: make gnb cell CSI NZP configuration consistent with UE NSA configuration.
2021-10-05 10:28:36 +02:00
Francisco Paisana
23bf542ae7
stack,nr: isolate calls between LTE and NR stacks via the task multiqueue
2021-10-05 10:12:28 +02:00
Andre Puschmann
8bb06ff2c0
Added SSB in gNb PHY
2021-10-04 19:26:07 +02:00
Xavier Arteaga
3763d04578
implement helper function to calculate FFT size for a given sampling rate
2021-10-04 19:26:07 +02:00
Andre Puschmann
7496b7c14f
Add SSB to configuration factory
2021-10-04 19:26:07 +02:00
Andre Puschmann
5b0767772b
Added SSB center frequency to band helper
2021-10-04 19:26:07 +02:00
Andre Puschmann
91e17337db
Added SSB scaling configuration option
2021-10-04 19:26:07 +02:00
Andre Puschmann
3e5b40fd36
enb,rrc: fix compilation after freq point a has been removed from nr_carrier_t
...
since absolute freq point a members have been removed from the srslte_nr_carrier_t
struct (they are now actual frequencies) the abs_point_a values are now in
the RRC cell structs
2021-10-04 17:52:14 +02:00
Fabian Eckermann
5f40d4fd99
Add test for ssb from band calculation.
2021-10-04 15:59:05 +02:00
Fabian Eckermann
95abfbfec8
Calculate ssb frequency from freqency point a.
2021-10-04 15:59:05 +02:00
Francisco Paisana
f22483ce72
sched,nr: use formatting %d to represent slot index
2021-10-04 13:43:56 +02:00
Xavier Arteaga
c9d7db7314
Minor changes
2021-10-04 10:28:34 +02:00
Xavier Arteaga
e3bd92d87c
Fix SSB pattern in UE
2021-10-04 10:28:34 +02:00
Xavier Arteaga
8f90ee847a
Refactor carrier frequency from PHY and fix OFDM phase compensation
2021-10-04 10:28:34 +02:00
Xavier Arteaga
fda35bf6a1
Initial OFDM carrier phase compensation
2021-10-04 10:28:34 +02:00
Xavier Arteaga
2ab3971ef1
Fix NR PBCH encoding/decoding
2021-10-04 10:28:34 +02:00
Xavier Arteaga
530b381c6c
Change NR PDSCH/PUSCH freq/time resource format in log
2021-10-04 10:28:34 +02:00
Ismael Gomez
6b506ec357
phy_common: clear tx_hold flag before releasing the semaphore ( #3342 )
2021-10-03 20:05:38 +02:00
yagoda
82bda02b36
adding nr metrics
2021-10-03 13:06:59 +02:00
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)
2021-10-02 17:58:16 +02:00
Xavier Arteaga
1aa65bd10c
HOTFIX: force DFT wisdom save at exit
2021-10-01 18:06:37 +02:00
Fabian Eckermann
077f9cd03e
Add test for get_abs_freq_point_a_arfcn.
2021-09-29 22:31:23 +02:00
Fabian Eckermann
7f7cfe687d
fix calculation.
2021-09-29 22:31:23 +02:00
Ismael Gomez
c09f09b7be
Move rrc_common from srsue to lib
2021-09-29 21:39:56 +02:00
Fabian Eckermann
8830c2796f
Add support for NSA FDD on band n3, n5 and n7.
2021-09-29 16:03:44 +02:00
Fabian Eckermann
2d0be77660
Add helper functions for abs freq point a.
2021-09-29 16:03:44 +02:00
faluco
a8f58f503c
- Fix arm compiler warning. GCC treats chars as unsigned in this arch.
...
- Fix race condition in json metrics.
2021-09-29 13:26:14 +02:00
Andre Puschmann
315057d11c
enb: signal user activity to EUTRA RRC when doing NR DL traffic
...
to avoid releasing the UE when only NR DL traffic is done.
similar to the EUTRA solution.
2021-09-28 16:55:54 +02:00
Xavier Arteaga
8b2514ded3
Added NZP-CSI-RS signals in gNb
2021-09-28 16:54:37 +02:00
Francisco Paisana
cbb709d4e3
sched,nr: function to log UEs buffer status before scheduling decision, fix const_iterator of circular_map
2021-09-27 15:43:16 +02:00
faluco
1eaca0d343
Escape asn1 message strings that get printed in the enb event json report.
2021-09-27 13:57:40 +02:00
Ismael Gomez
1c77998df5
Stop PDCP for data bearers before initiating HO
2021-09-27 13:54:51 +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
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.
2021-09-27 11:35:42 +02:00
Francisco Paisana
bdf18856d1
sched,nr: fix handling of DL BSR in NR scheduler and computation of UCI
2021-09-24 17:35:15 +02:00
faluco
7b079fe289
Fix a data race in rlc TM metrics.
2021-09-24 14:27:37 +02:00
faluco
edb7342aef
Fix data race in rlc UM metrics.
2021-09-24 14:27:37 +02:00
faluco
6c91a824e2
Whitelist the TSAN lock order inversion issue in srsenb::mac::rlc_buffer_state.
2021-09-24 14:27:37 +02:00
faluco
8a38a89652
Fix compiler warning: control reaches end of non-void function
2021-09-24 13:15:05 +02:00
Andre Puschmann
426e876047
enb,nr: fix GTPU handler to forward UL PDUs
2021-09-23 19:07:31 +02:00
yagoda
bc4388a78c
-adding temp crnti removal for NR carrier attach
2021-09-23 18:27:13 +02:00
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.
2021-09-22 16:41:18 +02:00
Andre Puschmann
802b22ac91
enb,nsa: refactor NR RRC/cell config parsing
...
this allows to access all cell-related params from within RRC
2021-09-22 16:41:18 +02:00
David Rupprecht
611255aa5f
Added GTPU bind address as output parameter
2021-09-22 15:15:47 +02:00
David Rupprecht
bd0e641633
Added GTPU PDU Session header parsing
2021-09-22 15:15:47 +02:00
Bedran Karakoc
43915550cc
NGAP GTP Bearer Establishment
2021-09-22 15:15:47 +02:00
David Rupprecht
3712983308
Added PDU Session est request
2021-09-22 15:15:47 +02:00
David Rupprecht
c670383ae9
Added NAS 5G functions incoming msg and reg proc
2021-09-22 15:15:47 +02:00
David Rupprecht
bbe54fb248
Fix uninitialized issue in NAS 5G pack/unpacking
2021-09-22 15:15:47 +02:00
Xavier Arteaga
d0ce17f736
Added SSB different SCS combination unit test
2021-09-22 14:15:41 +02:00
Xavier Arteaga
e2facef540
Abort radio application if decimation/interpolation ratios are not integer
2021-09-22 13:19:51 +02:00
Xavier Arteaga
cdfbe28b69
Initial NR-MIB packing/unpacking
2021-09-22 11:17:27 +02:00
Fabian Eckermann
f44eb0534f
Add RRC NR test for FDD
2021-09-21 18:12:34 +02:00
Xavier Arteaga
0324806d6c
Packed NR TDD config in duplex configuration and created test case for FDD
2021-09-21 18:11:16 +02:00
Fabian Eckermann
dd8db1a929
Replaced inet_addr() with inet_pton.
2021-09-21 11:59:40 +02:00
Xavier Arteaga
574683e3ef
Fix error message
2021-09-21 11:30:56 +02:00
Fabian Eckermann
d59ebfce9d
add lock for fftw wisdom
2021-09-20 20:48:55 +02:00
Xavier Arteaga
ffba972fb7
Fix gnb amplitude
2021-09-20 20:48:08 +02:00
Xavier Arteaga
51d6ab3b3f
Disable CSI-RS resource mapping number of port check
2021-09-20 20:48:08 +02:00
Xavier Arteaga
de00b80228
Review NR NSA CFO estimation and compensation
2021-09-20 20:48:08 +02:00
Xavier Arteaga
63bb86bce1
Added SS type conversion to string
2021-09-20 20:48:08 +02:00
Xavier Arteaga
7ba5099bee
Implement CSI-RS resource mapping validation
2021-09-20 20:48:08 +02:00
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.
2021-09-20 14:29:25 +02:00
Andre Puschmann
3fd47d2af4
enb: refactor L2/L3 and (re)move all NR components to gNB stack
...
* decouple EUTRA and NR stack classes
* implement dummy X2 interface with control and data plane methods
* implement eNB time source interface that PHY calls
2021-09-17 14:57:33 +02:00
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.
2021-09-17 11:34:28 +02:00
faluco
d009160ba6
Fix data race in the metrics of the rlc.
2021-09-17 11:34:28 +02:00
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.
2021-09-16 15:28:13 +02:00
Andre Puschmann
b127327684
enb,s1ap: print filename when writing S1AP PCAP
2021-09-16 15:25:46 +02:00
David Rupprecht
e8a464228d
Cleaned string helpers
2021-09-16 15:24:32 +02:00
Andre Puschmann
cc2d71183e
ue,phy,nr: fix race condition when setting UL grant for Msg3
...
the Msg3 UL grant requires the TTI in which the RAR has been received
to calcualte the correct timing. There was a race between PHY and Stack
thread.
This patch circumvents the issue by removing a PHY state member that only holds
the RAR Rx timing. In the new interface the RA proc passes the Rx TTI
to the PHY again when setting the UL grant so the PHY can calculate the
correct timing without any state.
2021-09-16 15:22:59 +02:00
Andre Puschmann
ed92f2bd34
enb,mac_nr: remove EUTRA cell param for MAC-NR cell config calls
...
* the old srsran_cell_cfg_t is only carried for SIB params
* the SIB scheduling, etc needs to be ported and integrated into NR data structures
* disbable SIB test for the moment
2021-09-15 14:49:28 +02:00
faluco
cf20b143c0
Fix the default constructor of the optional class to avoid a spurious uninitialized value warning in older GCC versions (seen for ARM32 and GCC 8.3).
...
Use a union of a byte and the real storage, and init the char by default.
2021-09-14 11:22:40 +02:00
faluco
485ec2edab
Implement a new option to flush the file sink contents on every write.
2021-09-14 10:22:37 +02:00
Nils Fürste
d75fe22a0a
Soapy: Fix include path of Types.h
2021-09-14 09:38:31 +02:00
Andre Puschmann
06f000c2c4
band_helper: fix format
2021-09-13 17:10:32 +02:00
faluco
c7ddedcf72
Log the invalid format string to help grepping it in the logs.
2021-09-13 11:11:41 +02:00
faluco
9571109a69
Abort program execution if STOP_ON_WARNING is defined when formatting an invalid log entry.
2021-09-13 11:11:41 +02:00
faluco
8cde3f20e7
Catch exceptions thrown on invalid format strings in the log backend and print an error message to signal the issue.
2021-09-13 11:11:41 +02:00
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
2021-09-13 10:27:16 +02:00
Andre Puschmann
11af5662a7
band_helper_test: extend TC for band 5 FDD freq calcs
2021-09-13 10:27:16 +02:00
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
2021-09-13 10:27:16 +02:00
Andre Puschmann
377eb52b86
band_helper_test: add TC for band n5
2021-09-13 10:27:16 +02:00
Andre Puschmann
69619d725a
band_helper: add helper to derive UL ARFCN from DL ARFCN
2021-09-13 10:27:16 +02:00
Andre Puschmann
93e1d7712d
enb,phy: add checks for invalid EARFCN and exit eNB if config is wrong
2021-09-10 22:08:26 +02:00
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.
2021-09-10 15:34:29 +02:00
Andre Puschmann
f382a7c7db
Revert "ue,proc_ra_nr: add temporary flag to skip RAR reception"
...
This reverts commit 28668aac34
.
2021-09-09 14:29:04 +02:00
Andre Puschmann
c1892eb2ec
enb,nsa: refactor of SgNB addition interface
...
* update of FSM
* better integration of parameter for X2 calls
2021-09-09 14:29:04 +02:00
Andre Puschmann
aba0ba9ad8
mac_sch_pdu_nr: fix newline in logs
2021-09-09 14:29:04 +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
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.
2021-09-09 12:04:27 +02:00