Andre Puschmann
d7204df896
rlc_am_lte: check rx window first when receiving status PDU
...
move rx window check up so no actions are taken when receiving
malformed status PDU
2021-06-15 11:01:02 +02:00
Xavier Arteaga
2cd8ba3a1a
PDCCH test skips 100PRB for ARM
2021-06-14 20:32:51 +02:00
Francisco
2a009eb340
sched,feature: Enable configuring maximum coderate for SIB allocations
2021-06-14 18:55:51 +01:00
Francisco
6ababf401b
feature,sched: allow setting initial DL CQI in enb.conf
2021-06-14 15:55:23 +01:00
Francisco
e8983b88f0
refactor: use enb_cc_idx instead of ue_cc_idx in mac::ue
2021-06-14 13:18:47 +01:00
Andre Puschmann
fa7a8fb687
rlc_am_test: add testcase for processing out-of-order status PDUs
2021-06-14 09:43:02 +02:00
Andre Puschmann
19f30aa652
rlc_am_lte: fix handling of out-of-order status PDUs
...
before processing incoming status PDUs we should be checking
if the ACK_SN falls within our current Tx window. If not the PDU
will be dropped.
Without the check we were incorrectly processing the status PDU
and because the sequence number wrap around wasn't working
correctly if ACK_SN is smaller than vt_a we were corrupting
our Tx window.
2021-06-14 09:43:02 +02:00
Xavier Arteaga
8743713bb1
Fix compilation
2021-06-14 09:21:29 +02:00
Xavier Arteaga
676080d6af
Added macro SRSRAN_VEC_SAFE_CMA
2021-06-14 09:21:29 +02:00
Andre Puschmann
b862bbc2e6
rlc_am_lte: add missing mutex to get_status getter
...
fixws race detected with TSAN
2021-06-10 10:44:18 +02:00
Andre Puschmann
d51ee722f6
rlc_am_test: add unit test for ACK_SN is outside rx window
...
the test uses a malformed status PDU from a PCAP and makes
sure the RLC receiver detects such a PDU and raises a warning
2021-06-10 10:44:18 +02:00
Andre Puschmann
878142843e
rlc_am_lte: add further sanity check when creating status PDU
...
the test verifies that the ACK_SN of a status PDU falls inside the
rx_window of the receiver. If not, than the RLC state has been
corrupted and the status PDU is likely invalid.
2021-06-10 10:44:18 +02:00
Andre Puschmann
46265c5829
rlc_am_data_test: add data PDU unpack test
...
TV captured in PCAP
2021-06-09 14:44:15 +02:00
Andre Puschmann
b379910690
pdu_test: add UL-SCH unpacking test
...
TV captured in PCAPs.
2021-06-09 14:44:15 +02:00
Xavier Arteaga
6be57dd216
Disable PDCCH false detection for non AVX2 machines
2021-06-09 13:20:01 +02:00
Alejandro Leal Conejos
a51f2a1de4
Fills the value of the number of cpus for the system_metrics_t and
...
initiliaze its value to 0 when executing 2 measures in less than 100 ms.
2021-06-09 09:34:46 +02:00
Pedro Alvarez
a53b321ab8
Release UE upon reception of integrity error.
2021-06-08 18:52:22 +01:00
Pedro Alvarez
299d2ee35d
Added interface to make the PDCP notify the RRC of integrity check
...
failures.
2021-06-08 18:52:22 +01:00
Xavier Arteaga
939dd1b977
Change struct sync_raster_t to class
2021-06-08 14:55:12 +02:00
Xavier Arteaga
a79d518799
Added SSB search measure/decode file test
2021-06-08 14:55:12 +02:00
Xavier Arteaga
5181a9d64c
Implemented PBCH blind decode
2021-06-08 14:55:12 +02:00
Xavier Arteaga
a7b7f8e78a
Avoid SSB search to have a peak that SSB data is outside buffer
2021-06-08 14:55:12 +02:00
Xavier Arteaga
480f1b14fe
Protect Radio from null phy
2021-06-08 14:55:12 +02:00
Xavier Arteaga
9621cf57c2
Implemented NR SS raster object
2021-06-08 14:55:12 +02:00
Xavier Arteaga
49d857cd17
Refactored decode_tb function
2021-06-08 10:19:24 +02:00
Xavier Arteaga
22b1673b36
Added CRC match function and simplify CRC check
2021-06-08 10:19:24 +02:00
Xavier Arteaga
7846bfccb1
Implemented softbuffer RX CRC reset
2021-06-08 10:19:24 +02:00
David Rupprecht
ff3e7c321d
Added bref function for calc distance til end
2021-06-08 10:14:43 +02:00
Xavier Arteaga
e8f2b3a74c
Add PDCCH decoder correlation check in blind search
2021-06-05 11:08:27 +02:00
Xavier Arteaga
7c78fd2050
Implemented PDCCH DCI message correlation and updated test
2021-06-05 11:08:27 +02:00
Xavier Arteaga
bcd2e59635
PDCCH test global variable cleanup
2021-06-05 11:08:27 +02:00
Francisco
7e77da6a15
mac,optimization: use rnti memory pool to create mac::ue objects
2021-06-04 21:29:13 +01:00
Andre Puschmann
295b5fe8fb
rlc_tm: fix stopping of entity detected with TSAN
2021-06-04 13:23:54 +02:00
Andre Puschmann
a013a2fe05
rlc_stress_test: fix bug when read_pdu was returning -1
2021-06-04 13:23:54 +02:00
Andre Puschmann
c0be8187c8
rlc interface: convert entire read_pdu() interface to return uint32_t
...
we had it returning int but had a bug in using the return value properly,
i.e. handling when -1 was returned in RLC TM.
Thinking about it more, it doesn't make sense to have a negative return
value here anyway. Either the RLC can return a PDU or not. If it can't the
returned lenght is zero.
2021-06-04 13:23:54 +02:00
Francisco
539ca47fe2
lib,bugfix: fix blocking queue unit test. Dtor cannot destroy object while a thread is still pushing data
2021-06-04 13:02:39 +02:00
Xavier Arteaga
60f294a6a1
Refactor PDCCH encode/decode unit test
2021-06-04 11:13:23 +02:00
Xavier Arteaga
5ddc974beb
Reverted PDCCH threshold
2021-06-04 11:13:23 +02:00
Xavier Arteaga
d46be09663
Increase viterbi default number of iterations
2021-06-04 11:13:23 +02:00
Xavier Arteaga
090022568e
DCI NCCE find considers L and NCCE
2021-06-04 11:13:23 +02:00
Andre Puschmann
a36e0477b8
rlc_am: fix status PDU packing when grant size isn't enough to send full report
...
when a small grant is provided it might not be possible to fit a full status
PDU. This is currently detected while packing the PDU.
In order to avoid sending potentiall contradicting status info to the sending
entity, the fix makes sure to only transmit a small PDU acking what really
has been received so far.
This might not be optimal in terms for retx but will not corrupt any
state.
2021-06-03 21:11:47 +02:00
Andre Puschmann
5838ec4999
rlc_am: revert expect macro back to error log and inform higher layers
...
the incidence really must be handled by the higher layers, i.e. the bearer
needs to be reestablished.
2021-06-03 21:11:47 +02:00
Andre Puschmann
f22f4b4fbd
rlc_am: fix potential stalling in RLC transmitter
...
it turned out that a certain order of events can lead to
a RLC transmitter stalling because even though unacknowledged PDUs
are queued, none of them was actually considered for retx.
This can happen if a pollRetxTimer expires for a SN that, meanwhile,
has already been acknowledged. The positive lead to the deletion of
the SN from the Tx window.
The fix makes sure that when a retx for a unexisting SN is requested,
the sender will consider the next unacknowledged SN instead.
2021-06-03 21:11:47 +02:00
Andre Puschmann
9612bb0e14
rlc_am_test: fix status PDU test and add extra test for failure signaling
2021-06-03 21:11:47 +02:00
Andre Puschmann
aaffdeb326
rrc,rlc: add method to signal protocol failure to RRC
...
general-purpose method for lower layers to signal protocol
failures to higher layers, i.e. RRC.
In the current case, implement a direct release of the UE (enb) or
a reestablishment (UE).
2021-06-03 21:11:47 +02:00
Andre Puschmann
107f6334dd
compile: fix compilation on 32bit systems that require -latomic
2021-06-03 20:45:02 +02:00
Francisco
ceaef3523f
sched,feature: Enable setting the target PHR below which the maximum UL grant size starts decreasing
2021-06-03 15:33:38 +01:00
Francisco
486823e5de
sched,bugfix: The PHR handling scheme now considers the number of PRBs of the UL grant that carried the PHR. Before, it was assuming the most conservative scenario of Nprb=1
2021-06-03 15:33:38 +01:00
Francisco
f7aef3ffc1
sched,bugfix: fix nof_retx update when UL HARQs are resumed
2021-06-02 20:21:32 +01:00
Ismael Gomez
5db3030428
Tiny changes
2021-06-02 12:37:36 +02:00
Francisco
89406b07d6
make eNB UL SNR initial value an exponential average alpha configurable
2021-06-02 10:08:34 +01:00
Andre Puschmann
1529379e9e
fec,pbch: remove unused variables
...
unused code that moreover was causing TSAN to complain, e.g.
in the ue_phy_test
2021-06-02 09:36:44 +02:00
Andre Puschmann
7ee38e6255
threads: disable thread attributes when compiled with TSAN
...
TSAN doesn't work well then threads are created with attributes
thar require root rights but the process is run as normal user.
this patch avoid the thread attributes in this case. TSAN isn't going
to be used for production builds.
2021-06-02 09:36:44 +02:00
Andre Puschmann
b88f22b9fe
network_utils_test: fix race detected with TSAN
2021-06-01 22:44:12 +02:00
Andre Puschmann
f823340a95
rf_imp: fix race when stopping gain thread
...
detected with TSAN using benchmark_radio test
2021-06-01 22:44:12 +02:00
Andre Puschmann
716caafd6c
multiqueue_test: fix race reported by TSAN
2021-06-01 22:44:12 +02:00
Andre Puschmann
1ef3cb7e5d
threads: fix race in stopping periodic thread
2021-06-01 22:44:12 +02:00
Andre Puschmann
312b5a241c
mac_pcap_base: fix race detected with TSAN
2021-06-01 22:44:12 +02:00
Andre Puschmann
c434aac526
rlc_stress_test: include tsan options header
2021-06-01 22:44:12 +02:00
Andre Puschmann
1d34aa280f
byte_buffer_queue: make class thread-safe by using atomics
2021-06-01 22:44:12 +02:00
Pedro Alvarez
18e2149d68
Sending Initial Context Setup Response after RRC reconfiguration.
2021-06-01 19:16:16 +01:00
Xavier Arteaga
4f7a94acb6
Fix comment
2021-06-01 16:38:55 +02:00
Xavier Arteaga
d329297151
Implement radio invalid mapping countermeasure
2021-06-01 16:38:55 +02:00
Andre Puschmann
3966065bff
pssch_test: fix newlines in printf
2021-06-01 16:17:11 +02:00
Andre Puschmann
2ace2b47b8
pssch: fix uninitialized value
2021-06-01 16:17:11 +02:00
Xavier Arteaga
bbab2cd9ba
Make PDCCH LLR mean amplitude in function of maximum
2021-06-01 15:04:24 +02:00
Xavier Arteaga
2ca0932d9b
Reviewed LTE noise estimation
2021-06-01 08:26:36 +02:00
Xavier Arteaga
10a268fdba
Added SNR to phy_dl_test
2021-06-01 08:26:36 +02:00
Francisco
f36f5271d3
timers,feature: make timers thread-safe by using atomic to store timers state.
2021-05-31 23:26:36 +01:00
Xavier Arteaga
dddb3ede71
Fix zero parity
2021-05-31 21:30:17 +02:00
Andre Puschmann
50f7fc644b
rlc_am_lte: log event when status prohibit timer expires
2021-05-31 12:40:17 +02:00
Xavier Arteaga
3c93d5ba43
Fix carrier mapping concurrency issue
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
Andre Puschmann
531acc0a98
rlc_am_test: add check for RLC buffer state return during retx
2021-05-31 09:40:37 +02:00
Andre Puschmann
3102861ee3
rlc_am_lte: make func param const&
2021-05-31 09:40:37 +02:00
Francisco
0dafe4dd58
fix coderate derivation in PDCCH based on aggregation level
2021-05-28 17:20:08 +02:00
Francisco
a587d20252
allow specification of subset of valid measurement gap offsets in rr.conf
2021-05-28 17:19:30 +02:00
Andre Puschmann
02cceee997
rf_zmq_imp: revert 28399dd876
and fix unit
...
although the manual test with Amarisoft eNB worked fine it seems
the delay is still needed in the default case. Over 50% of the
tests failed in the nightly with:
[zmq] Error: tx time is 0.067 ms in the past (138240 < 139776)
[zmq] Error: tx time is 1.100 ms in the past (184320 < 209664)
While this usleep() should increase the pass likelihood it
still doesn't guarantee error-free runs, so we might need
to revisit it again as some stage.
2021-05-28 09:27:13 +02:00
Andre Puschmann
e7aa484308
rf_zmq_test: remove srsran.h include
2021-05-27 17:26:39 +02:00
Andre Puschmann
bb6a5ebe80
tsan: add TSAN options file to set some default flags and exclude some libs from checks
2021-05-27 17:26:39 +02:00
Andre Puschmann
28399dd876
rf_zmq_imp: remove sleep
2021-05-27 17:26:39 +02:00
Andre Puschmann
574459fd90
rf: remove srsran.h include
2021-05-27 17:26:39 +02:00
Xavier Arteaga
f33731ecd4
Disable irrelevant unit/component test by default
2021-05-27 16:06:17 +02:00
Andre Puschmann
d9a5d3f95a
pcap_base: increase PDU queue length
...
some systems with slower HDD seem to have issues
writing the PDUs to disk. increasing length to see if that helps.
2021-05-27 13:29:00 +02:00
Xavier Arteaga
a245039cf3
Initial NR-PBCH-DMRS integration
2021-05-27 13:08:42 +02:00
Pedro Alvarez
997f7db23a
Small fixes for observer.h missing std::size_t
2021-05-26 22:16:22 +02:00
Pedro Alvarez
c74b2dd633
Fix some warnings in PHY due to array parameter mismatch for a few functions
2021-05-26 22:16:22 +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
Andre Puschmann
d8b2cfcef8
zmq,ringbuffer: protect concurrent access
...
some issue found through TSAN execution
2021-05-26 14:25:38 +02:00
Andre Puschmann
f1e6a975de
thread_pool: fix concurrent access of state variable
...
the thread workers need access to their current state to exit properly
when they are set to state STOP. However, since the state is kept in
a std::vector for all workers, it seems more appropiate to add a per-thread
running variable rather then mutexing the entire vector.
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
Xavier Arteaga
de1b25558f
Added PRN sequence apply bit with state
2021-05-26 14:19:34 +02:00
Xavier Arteaga
1f38817b3b
Added random bit vector generator
2021-05-26 14:19:34 +02:00
Xavier Arteaga
bcb91d6173
srsran_vec_sprint_hex returns number of written characters
2021-05-26 14:19:34 +02:00
Xavier Arteaga
3634e96c3e
Added SSB measure test add/put/encode time measure
2021-05-26 14:19:34 +02:00
Xavier Arteaga
0aa5b14145
Initial NR PBCH encoding
2021-05-26 14:19:34 +02:00
Xavier Arteaga
d66dac0ab2
Added bit sequence state apply
2021-05-26 14:19:34 +02:00
Francisco
7076dbfef8
feature, scheduler: Add configuration parameter to set minimum TTI interval between TPCs
2021-05-25 21:51:10 +02:00
Francisco
dedd9c09a7
feature, scheduler: Add abitility to set minimum aggregation level in PDCCH, and disable adaptive aggregation level based on target BLER
2021-05-25 21:50:56 +02:00
Francisco
c5029fc266
feature - implement adaptive link adaptation in DL and UL
2021-05-24 19:33:27 +02:00
Francisco
8df6ed07c6
sched small fixes - use 0.930 instead of 0.932 for max coderate. Allow computing mcs/tbs based on max coderate directly. Other small fixes
2021-05-24 17:25:07 +02:00
Francisco
31936c9754
bugfix - printf formatting incorrect in bounded_bitset method
2021-05-24 17:24:50 +02:00
Francisco
b093576634
avoid sending UEContextReleaseRequest from Source eNB during S1 Handover.
2021-05-24 17:24:31 +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
60a8ee0af9
multiqueue optimization - use condition_var wait_for() method, use queue try_lock in the consumer side
2021-05-24 17:24:12 +02:00
Francisco
b41aba2a03
fix task scheduler test
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
Andre Puschmann
bc3be73364
rlc_am_lte: replace simple sanitfy check with error log with expect
...
this should help debugging the situation when this happens by
aborting when STOP_ON_WARNING is enabled
2021-05-20 23:19:17 +02:00
yagoda
9501283c1c
fixing support for extended Cyclic Prefix
...
small cosmetic fixes of CP code
2021-05-20 18:16:15 +02:00
Andre Puschmann
21b3635ae4
rlc_am_lte: refactor retransmit_pdu() to send different SNs
...
it seems that different SNs should be retransmitted depending
on the actual situation. In case of pollRetx timer expiration,
vt_s - 1 should actually be resent.
This patch prepares the function to accept different SNs but
leaves it to send vt_a by default. The RLC AM test would need
to changed as well to not fail.
2021-05-20 13:41:07 +02:00
Andre Puschmann
81c1851bbd
rlc_am_test: fix TSAN isses and removing info log when dropping PDU
2021-05-20 13:41:07 +02:00
yagoda
f90f6f0c7e
adding MAC 0 padding support
2021-05-20 10:26:50 +02:00
Xavier Arteaga
8ffbf0ff6d
Fix SSB segfault
2021-05-18 18:41:03 +02:00
Xavier Arteaga
f9aafd00a7
Added subcarrier spacing parsing from string
2021-05-18 18:41:03 +02:00
Xavier Arteaga
b69057b76e
Filesource filename to constant
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
7b159563ab
Fixes in LTE CRS measurements
2021-05-18 18:41:03 +02:00
Xavier Arteaga
1603580901
Fix NR PSS correlation
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
53b2c6076b
Fix UHD subdev specification
2021-05-18 18:41:03 +02:00
Xavier Arteaga
11d925c0b2
Minor SSB fix and changes
2021-05-18 18:41:03 +02:00
Xavier Arteaga
c8cb128317
Declare band helper methods as constant
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
Xavier Arteaga
648f0af437
Implement SSB search based on correlation
2021-05-18 18:41:03 +02:00
faluco
6fb81c7619
- Add a mutex with priority inheritance for srslog internal structures.
...
- Replace shared_variable members in log_channel class in favor of atomics.
- Remove the small string optimization in srslog now that we dont allocate anymore.
- Trim some critical sections in srslog.
2021-05-18 09:28:03 +02:00
Francisco
1488606156
refactor - create s1ap dedicated folder
2021-05-17 15:32:57 +01:00
Andre Puschmann
167200f5cd
rrc_bearer_cfg: replace fixed E-RAB to DRB mapping
...
also make sure we don't assign LCIDs beyond the possible
number.
possible fix for https://github.com/srsran/srsRAN/issues/658
Co-authored-by: herlesupreeth <herlesupreeth@gmail.com>
Co-authored-by: Francisco <francisco.paisana@softwareradiosystems.com>
2021-05-17 15:17:27 +02:00
Francisco
fa34aaa16e
ensure the DL mask count is reduced enough to fit required bytes
2021-05-14 19:58:03 +01:00
Francisco
485c6ee129
subband CQI feature - add K parameter in sched_interface::ue_cfg_t and update it from RRC
2021-05-14 19:58:03 +01:00
Francisco
84ad6dd8ee
Integrated new sched_dl_cqi class in sched_ue_cell
...
- extend sched_dl_cqi interface to allow getting tti when cqi was last updated
- extend sched_dl_cqi to quickly get average cqi across the whole bandwidth
2021-05-14 19:58:03 +01:00
Francisco
a841b7580e
fix deadlock caused by non-notification of multiqueue consumer side
2021-05-13 16:48:17 +01:00
Xavier Arteaga
9e1a85afe8
Fix NR SCH Nref calculation
2021-05-13 08:45:42 +02:00
Xavier Arteaga
0ecb3a7220
Modify NR PHY info messages
2021-05-13 08:45:42 +02:00
Xavier Arteaga
91030c5824
Fix procedure for MCS table selection
2021-05-13 08:45:42 +02:00
Xavier Arteaga
b02a0d3db9
Added RNTI type short string
2021-05-13 08:45:42 +02:00
Xavier Arteaga
08ec1d0df9
Changed srsLTE to srsRAN
2021-05-13 07:55:46 +02:00
Xavier Arteaga
a57336d64f
Integrate periodic SSB measurement in SRSUE and fix related defects
2021-05-13 07:55:46 +02:00
Xavier Arteaga
5e41e99f08
Added NR symbol offset helper function
2021-05-13 07:55:46 +02:00
Xavier Arteaga
7450232b3e
Added more NR band related helpers
2021-05-13 07:55:46 +02:00
Xavier Arteaga
758fd3c1ba
Implemented initial NR cell search
2021-05-13 07:55:46 +02:00
Xavier Arteaga
2f9c7e1345
Avoid cexpf in srsran_vec_apply_cfo_simd
2021-05-13 07:55:46 +02:00
Xavier Arteaga
90c42bc9c3
Fix resampler stack overflow
2021-05-12 17:13:09 +02:00
Xavier Arteaga
9517b78c03
Fix resampler and improved unit test
2021-05-12 17:13:09 +02:00
Francisco
996d8ef74d
multiqueue bugfix for non-blocking pushes when queue is full
2021-05-11 21:27:08 +02:00
Francisco
99abae9e6a
fix multiqueue producer to consumer notification to avoid deadlocks
2021-05-10 15:27:21 +01:00
Francisco
0d800eb8f6
stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test
2021-05-10 15:27:21 +01:00
Francisco
d947e259c9
stack optimization - optimization of the multiqueue
...
avoid notifying the consumer side of the multiqueue of a new pushed object, if the
multiqueue already knows that the queue is not empty.
2021-05-10 15:27:21 +01:00
Francisco
d574afcd33
cleanup of multiqueue unused methods, and made queue_handle move semantics correct
2021-05-10 15:27:21 +01: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
d9586015f5
SSB related minor aesthetical corrections
2021-05-10 15:32:46 +02:00
Xavier Arteaga
60d1708b80
Initial SSB measurement implementation
2021-05-10 15:32:46 +02:00
Xavier Arteaga
5c31f4335f
Initial SSB module header file
2021-05-10 15:32:46 +02:00
Xavier Arteaga
3f078cdc24
Added SSB related constants
2021-05-10 15:32:46 +02:00
Francisco
b54bb35343
use rnti_map_t in scheduler
2021-05-07 10:58:04 +01: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
fd0d804321
Added macro for calculating the squared absolute value of a complex variable
2021-05-07 09:43:11 +02:00
Xavier Arteaga
e68c822505
NR Added CSI measurement channel processing
2021-05-07 09:43:11 +02:00
Xavier Arteaga
c51ff0c9f9
Added safe exponential moving average filter
2021-05-07 09:43:11 +02:00
Francisco
c5396155ad
set default gtpu tunnel close timeout to infinity
2021-05-06 18:07:20 +01:00
Francisco
15484e9472
rrc - make t304 configurable via rr.conf
2021-05-06 18:07:20 +01:00
Francisco
c6b9c12ba2
gtpu, feature - added the ability to configure gtpu indirect tunnel timeout value. This parameter is useful in the case that the end marker is not received
2021-05-06 18:07:20 +01:00
Francisco
cd51537234
add comment explaining the use case of cached_alloc
2021-05-06 18:06:10 +01:00
Francisco
28847badcf
implementation of custom allocator for memory caching. This allocator may be used for unbounded queues
2021-05-06 18:06:10 +01:00
David Rupprecht
c117b563c9
Initial commit for ngap in enb
2021-05-05 13:54:57 +02:00
Francisco
7bee75e126
update description of srsenb --expert.nof_prealloc_ues config parameter, and added a comment in header file explaining the use of such parameter.
2021-05-04 17:52:47 +01:00
Francisco
5818488b27
change enb max_nof_ues config parameter to nof_prealloc_ues
2021-05-04 17:52:47 +01:00
Xavier Arteaga
de9158eeaf
Enable NR RRC MCS table selection
2021-05-04 11:30:13 +02:00
Xavier Arteaga
eef3fac863
Improved float XOR readability
2021-05-04 09:56:52 +02:00
Xavier Arteaga
751b6858b3
Added CSI-RS resource set measurements
2021-05-04 09:56:52 +02:00
Xavier Arteaga
3b919b4f6c
Minor aestheics change
2021-05-04 09:56:52 +02:00
Xavier Arteaga
243ad05dfa
Added on the fly sequence apply in float
2021-05-04 09:56:52 +02:00
faluco
aef18f9931
Implement a benchmark for measuring latency in the foreground threads when pushing log entries.
...
This benchmark runs with several threads to test contention.
2021-05-04 09:49:26 +02:00
Francisco
01eace2631
rrc paging mechanism improvements
...
- moved paging record handling to separate class
- parallel access to pending pcch messages by phy workers based on TTI and without common lock
- asn1 pcch message packing now takes place in stack thread, to avoid real-time issues
2021-05-03 15:58:21 +01:00
Xavier Arteaga
318f064ff4
Multiple NR SCH fixes
2021-05-03 16:15:45 +02:00
Xavier Arteaga
b8e0164f7f
Multiple fix NR PHY procedures
2021-05-03 16:15:45 +02:00
Xavier Arteaga
a8e181971c
Refactored PHY NR procedures for supporting DCI formats 0_1 and 1_1
2021-05-03 16:15:45 +02:00
Andre Puschmann
bbea3dd6a1
byte_buffer: fix compilation when buffer pool log is enabled
2021-05-03 12:42:38 +02:00
Francisco
5cecb40410
rlc,bugfix - increase pdcp sn notification ack list maximum size
2021-04-29 15:41:00 +02:00
Francisco
ad1a0eb2ac
rlc,fix - Add PDCP PDUs to undelivered_sdu_info_queue when the PDUs are popped from the tx_sdu_queue, rather than they are pushed to.
...
- This simplifies the sdu discard
- This also fixes an existing race condition
2021-04-29 15:41:00 +02:00
Andre Puschmann
598594c51a
all: bunch of pass by const& changes suggested by LGTM
2021-04-29 10:00:09 +02:00
Francisco
7ced0e73eb
rlc,bugfix - avoid accessing the PDCP info of RLC segments when the PDCP has already discarded the respective PDCP SN.
2021-04-28 21:15:00 +02:00
Andre Puschmann
597729ac53
rlc: always remove PDCP SNs from undelivered queue
...
if RLC PDUs with certain PDCP SNs were already in flight
when their discard timer at PDCP expires, they weren't
remove from the undelivered_sdu_info_queue causing
indesired log entries like:
08:08:52.455280 [RLC ] [W] PDCP_SN=2103 already marked as undelivered
when the SN was sent again (after wrap around).
The patch makes sure to always try to delete the PDCP SN
from the queue. It should fix (at least partly) #2560
2021-04-28 21:15:00 +02:00
Andre Puschmann
20075f6f33
rf_uhd_generic: fix segfault when accessing device tree
...
for some reasons the dev tree isn't available on the X310
with UHD4 and the code never checked the return value, causing
a segfault with that combo.
2021-04-28 20:24:17 +02:00
Xavier Arteaga
949ce965c7
Fix SCH NR CRC check
2021-04-28 20:23:52 +02:00
Xavier Arteaga
fb5dfb3a86
Improved NR unit test
2021-04-28 20:23:52 +02:00
Xavier Arteaga
28170c92a9
Multiple NR SCH fixes
2021-04-28 20:23:52 +02:00
Xavier Arteaga
efb8da69d8
Cleaned DCI NR info string
2021-04-28 20:23:52 +02:00
Xavier Arteaga
8cb3e92ab3
Added LDPC flooded early stop
2021-04-28 20:23:52 +02:00
Xavier Arteaga
033661182a
Aded SF len macro for NR
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
Xavier Arteaga
892aea8219
Fix coverity warnings under lib/src/phy/utils
2021-04-28 16:53:44 +02:00
Xavier Arteaga
87cf3cf2e5
Fix coverity warnings under lib/src/phy/phch
2021-04-28 16:53:44 +02:00
Francisco
3f64b94a0f
increase asn1 variable length field intermediate buffer, to support longer UE Radio Capabilities messages
2021-04-28 16:01:22 +02:00
David Rupprecht
bde30bb9be
Added tests for band helper
2021-04-28 12:43:58 +02:00
Andre Puschmann
937c4ff3c3
demod_soft: removed unused NEON code
...
clang complained about unused code, so remove it of course.
2021-04-28 12:42:44 +02:00
Xavier Arteaga
71226e89df
Minor dereference check
2021-04-28 10:28:09 +02:00
Xavier Arteaga
b6fa82bf9a
Fix more static analysis warnings
2021-04-28 10:28:09 +02:00
Xavier Arteaga
290541993e
Fix debug compilation
2021-04-27 20:31:29 +02:00
Xavier Arteaga
efd6c569b8
Fix some static analisys warnings under lib/src/phy/fec
2021-04-27 20:31:29 +02:00
David Rupprecht
fafa03f7c8
Extended the band helper table
2021-04-27 20:28:36 +02:00
Francisco
3c4512cdd2
demote assert to expect check in circular stack pool destruction, when a leak is detected
2021-04-27 19:14:25 +01:00
Xavier Arteaga
217f3cb416
SRSENB: select highest with/without SR correlation PUCCH result
2021-04-27 16:55:51 +02:00
Andre Puschmann
ada6c71b5a
rf_soapy: fix logic to print warning when Lime is used with short sample rates
...
previously the warning was printed when a Lime was connected to the PC.
Now all connected devices are printed but the warning is only
shown if the selected device is the Lime.
2021-04-27 15:32:26 +02:00
faluco
aa3309157b
Fixed polar encoder and decoder initialization failure for ARM. Initialization unconditionally used x86 SIMD routines instead of getting disabled for ARM compilations.
2021-04-27 14:42:30 +02:00
faluco
d9e5f4ccc7
Replace a couple of inline functions in demod_soft with macros to allow constant propagation. The vgetq_lane_sX builtin expects a constant instead of a variable.
2021-04-27 14:42:30 +02:00
Francisco Paisana
d39183419c
Separate TPC PUSCH and PUCCH target SINR ( #2740 )
...
* separate target pusch and pucch sinr configurations in tpc class and rr.conf
2021-04-27 10:12:40 +01:00
Francisco
38bf895efa
fix asn1 compilation issue
2021-04-27 10:11:03 +01:00
Francisco
86dac9c823
several coverity high and medium impact fixes
2021-04-27 10:11:03 +01:00
Xavier Arteaga
9a4fcb605b
Reviewed UHD Tx FSM
2021-04-27 09:52:41 +02:00
Xavier Arteaga
3413f29cc8
Fix channel interpolator for 4 ports
2021-04-27 09:50:33 +02:00
Andre Puschmann
03e1277b0b
rf_soapy_imp: fix lowercase to detect Lime
2021-04-26 21:39:04 +02:00
Andre Puschmann
b569e81299
rf_soapy_imp: fix LTE sample rate info check
...
only print if Lime is substring in dev args, so don't print with blade
2021-04-26 09:43:58 +02:00
Andre Puschmann
f76cd5ef83
backward: fix compile error on aarch64
2021-04-26 09:43:58 +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
6e79ae67aa
ldpc/polar: add casts to avoid possible variable overflow before assignment
2021-04-25 21:03:53 +02:00
Andre Puschmann
92d4e6e746
adt/common: remove const from return type
...
reported by LGTM https://lgtm.com/projects/g/srsLTE/srsLTE/rev/pr-9ae46cae260b6b8137b34b9423bf1477bd6b5c42
2021-04-25 21:03:53 +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
0535473895
Fixes coverity 369570
2021-04-23 21:22:06 +02:00
AlaiaL
6332490cae
Fixes coverity 369581
2021-04-23 21:22:06 +02:00
AlaiaL
385b12a33a
Fixes coverity 369620
2021-04-23 21:22:06 +02:00
AlaiaL
23f0bd4d4f
Fixed coverity 369716
2021-04-23 21:22:06 +02:00
AlaiaL
862784ee46
Fixed coverity 369719
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
herlesupreeth
0f06ec0d9c
Add feature to provide custom GTP-U (S1) address to be advertised inside S1AP messages
...
This feature is useful in scenarios where eNB is behind a NAT and EPC on public cloud
Since eNB's GTP-U can only bind to IP address visible in it's host (usually a private IP beind a NAT), it advertises the same to UE in S1AP message
resulting in traffic from EPC to eNB (DL traffic) not able to reach eNB. This commit solves this issue by providing a means to advertise a different IP address than the one GTP-U UDP socket is bound to.
This IP is usually advertised in InitialContextSetupResponse and E-RABSetupResponse.
In order to make use of this feature, use the following parameter in enb.conf
Example:
gtp_advertise_addr = 213.61.141.82
2021-04-23 20:31:36 +02:00
herlesupreeth
aff9091ad3
Make use of RF device passed as argument
2021-04-23 20:31:36 +02:00
herlesupreeth
00a7d3a4cd
Add option to provide RF device to use for cell search
2021-04-23 20:31:36 +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
faluco
1ccb62af3d
Apply srsLTE formatting rules to srsLog. They were previously formatted with different rules when the project lived in the external rapo.
2021-04-22 16:35:23 +02:00
Xavier Arteaga
873f375ecc
Make NR DCI test more exhaustive and fix issues
2021-04-22 14:16:46 +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
Xavier Arteaga
bccfa8d875
Added NR DCI packing/unpacking format 1_1
2021-04-22 14:16:46 +02:00
Xavier Arteaga
11b9990224
Added NR DCI packing/unpacking format 0_1
2021-04-22 14:16:46 +02:00
faluco
0afd59a5a0
Replace a string with a const char * in the rlc to_string.
2021-04-22 12:38:14 +02:00
Francisco
289559af82
asn1 fix - fix choice access correct type assert
2021-04-22 10:21:08 +01: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
David Rupprecht
98914dab6a
Allow pdcp lte entity to use 18 bit SN
2021-04-22 09:55:34 +02:00
faluco
7df308c756
Remove two mallocs in the stack:
...
1) Extend the small buffer to 64bytes for the move_callback class.
2) Replace a std::map for a fixed size circular map in sched_time_pf.
2021-04-21 15:05:48 +02:00
Francisco
28f787f1de
extend timer handler unit test to check correct time wheel implementation
2021-04-21 10:02:03 +01:00
Francisco
2b572f5376
fix overwrite of timer timeout when it matches previous time wheel position
2021-04-21 10:02:03 +01: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
Francisco
ce47cf5910
fix - re-add log flush to srsran_assert
2021-04-20 16:27:40 +01:00
Francisco
63913ff2b2
remove uneeded assert condition. change pdcp log when notified pdcp pdu doesnt exist to info.
2021-04-20 16:27:40 +01:00
Francisco
9efb959471
bugfix, scheduler - fix bit counter specializations for 32 and 64 bits.
2021-04-20 14:01:19 +01:00
Francisco
6137e4569b
fix srsran_assert definition when asserts are disabled
2021-04-20 14:01:05 +01:00