Pedro Alvarez
17d2eb0ea7
lib,rlc_am_lte: added unit test for t-pollRetransmssion re-arming when ACK/NACK is received.
3 years ago
Pedro Alvarez
b425316936
lib,rlc_am_nr: fixed tx_mod_base_nr(). Added unit test for inside_tx_window().
3 years ago
Pedro Alvarez
3d5682b180
lib,rlc_am_nr: added unit tests to check inside_rx_window helper
3 years ago
Francisco
3bd77befd3
nr,gnb,asn1: update asn1 rrc nr unit test
3 years ago
Pedro Alvarez
b497d773ce
lib,rlc_am_nr: Fixed some metrics calculation. Added more precise metrics checking to unit tests
3 years ago
Pedro Alvarez
b794593469
lib,rlc_am_nr: added processing of ACKs from status report
3 years ago
Pedro Alvarez
ec93cc7238
rlc_am_nr: added logic to retx NACK'ed PDU.
3 years ago
Pedro Alvarez
473a45aae0
rlc_am_nr: fix buffer status calculation for retxs
3 years ago
Pedro Alvarez
4e1c713c14
rlc_am_nr: Enabled sending NACKs on status PDUs
...
- Added some logic to only poll when PDU_WITHOUT_POLL > PollPDU
- Fixed initalization of t-Reassembly
- Fixed a bug in the packing of the status buffer.
Nacks now work for a single lost PDU.
3 years ago
Pedro Alvarez
25492de6b7
Stating to add PollPDU
3 years ago
Pedro Alvarez
3f000f0472
Adding t_reassembly to RLC AM NR
3 years ago
Pedro Alvarez
f09020e57f
Adding unit test for lost SDUs. Fixing way rx_next and rx_status_highest are updated.
3 years ago
Andre Puschmann
4dcbc70131
mac,packing: move test code to source folder
3 years ago
Andre Puschmann
85f7313f83
mac_pdu_nr_test: add TC for UL-SCH PDU with CCCH 48bits
3 years ago
Fabian Eckermann
d0c07fc86e
Add packing of dci format 1A for pdcch orders.
3 years ago
Pedro Alvarez
9e4631ee24
Added NR specific config struct for RLC AM. Added status prohibit timer.
3 years ago
Pedro Alvarez
1f8d0ab557
Fix generation of status report.
3 years ago
Pedro Alvarez
2d29e4005c
Starting to generate RLC NR status report.
...
Starting to check if status pdu generation is correct.
3 years ago
Pedro Alvarez
7121152cff
Added basic functionality for read_pdu to RLC AM NR entity.
3 years ago
Pedro Alvarez
4196abafee
Added get_buffer_status to RLC AM NR entity
3 years ago
Andre Puschmann
b3c7eeedd3
rlc_um_nr_test: add extra check to verify reassembly timer isn't running
3 years ago
Andre Puschmann
7141fda69c
Revert "rlc_um_nr_test: disable test9 until low TCP UL rates are understood/fixed"
...
This reverts commit e491aef74e
.
3 years ago
Pedro Alvarez
f99e841421
Changed using a rlc_am_lte and rlc_am_nr entity, to a single rlc_am entity.
3 years ago
Pedro Alvarez
2a5d21164f
Adding RLC AM NR unit tests
3 years ago
Pedro Alvarez
2bb249bf09
Moved RLC AM LTE and NR packing functions to their own file.
3 years ago
Carlo Galiotto
ba50bbfb76
rlc,rrc,nr: remove rb_type from rlc_um_config
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
9c2099f680
rrc,rlc,nr: fix RB label in RLC-NR for UE logs + ..
...
add rb_type in rlc_um_config
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Andre Puschmann
e491aef74e
rlc_um_nr_test: disable test9 until low TCP UL rates are understood/fixed
3 years ago
Andre Puschmann
85e478d8ad
rlc_um_nr_test: add TC to reproduce reassembly issue
...
* add TC to reproduce reassembly issue that causes low TCP throughput
* fix PCAP writing
* fix other testcase to wait for t_reassembly to expire
3 years ago
faluco
dc31fb05a3
Fix ODR issue detected by ASAN in arch for the srsran_verbose global variable.
3 years ago
Pedro Alvarez
fbcffb84bd
Check if RLC is suspended before transmiting PDCP SDU.
...
This was done to avoid integrity issues, when the UE's RRC erroneously sent
measurement reports while the re-establishment was already in progress.
As errously sending PDCP PDUs on DRBs can cause issues as well, this was
disabled too.
3 years ago
Pedro Alvarez
65a2b35f09
Fix not checking initialization of S11 in MME. Fixed typo.
3 years ago
Pedro Alvarez
e721504f8e
Removed the sctp_init_server for consistency. Added listen method to unique_socket class.
3 years ago
Pedro Alvarez
e9a7e6dbae
Getting rid of sctp_init_client function. The only thing it does is call the sctp_init_socket function.
3 years ago
Xavier Arteaga
4edb61212f
Added number of CDM groups to phy_dl_nr_test
3 years ago
Xavier Arteaga
8e5fe9018b
Corrected LBRM functionality
3 years ago
Andre Puschmann
e5556fcc32
mac_pdu_nr_test: add LBSR unpacking tests
3 years ago
Andre Puschmann
8bb06ff2c0
Added SSB in gNb PHY
3 years ago
Xavier Arteaga
8f90ee847a
Refactor carrier frequency from PHY and fix OFDM phase compensation
3 years ago
Fabian Eckermann
8830c2796f
Add support for NSA FDD on band n3, n5 and n7.
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
Fabian Eckermann
f44eb0534f
Add RRC NR test for FDD
3 years ago
Xavier Arteaga
0324806d6c
Packed NR TDD config in duplex configuration and created test case for FDD
3 years ago
faluco
485ec2edab
Implement a new option to flush the file sink contents on every write.
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
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
f3e8847ad3
mac_pdu_nr_test: fix test
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
Xavier Arteaga
cfe2b305a1
Fix CORESET0 related PDSCH resource allocation procedure
3 years ago
Xavier Arteaga
ae0d8f83f0
Add PDCCH interleaved mapping in phy_dl_nr_test and iterate all possible 15kHz SCS bandwidths
3 years ago
Francisco Paisana
f518861ebc
fix location of support/ folder. Created macros for ASSERT_EQ and ASSERT_NEQ
3 years ago
Francisco Paisana
e896ac49e8
adt: create split optional span view to be used for C-array types
3 years ago
Francisco Paisana
d616e46936
adt: allow choice between static and dynamic optional vector types
3 years ago
Francisco Paisana
1596fcf349
adt: rename optional table to optional array
3 years ago
Francisco Paisana
8c24cfebd3
adt: create data structure type to represent an array of optional fields
3 years ago
Andre Puschmann
32ab1baeb1
enb,rrc: during NSA activation, remove EUTRA DRB and set MAC logical channel config
3 years ago
Andre Puschmann
9e7852ac83
srsran_asn1_nr: add RLC config to packing test
3 years ago
Andre Puschmann
4a828be39f
rlc_am_test: fix reestablishment test
...
after changing the retx counting we receive one SDU more than before
3 years ago
Xavier Arteaga
ea802c23f2
Remove PHY lib verbose from test and use byte vector random function
3 years ago
Andre Puschmann
b388930325
srsran_asn1_rrc_nr_test: disable PCAP output by default
3 years ago
Andre Puschmann
e833751031
rrc_nr: add CSI config packing
3 years ago
Andre Puschmann
f181733c7e
rrc_nr,enb: add more fields to spcell cfg dedicated
3 years ago
Andre Puschmann
4915dc9642
test_pcap: add function description
3 years ago
Francisco Paisana
12e33483e1
sched,nr: add slot_point to sched nr
3 years ago
Francisco Paisana
a0a1af9d0f
nr: slot value that handles wrapping around
3 years ago
Andre Puschmann
60a795acc0
asn1,rrc_nr,test: extend RRC reconf test, add PCAP output
...
test now can write the NR reconfig into a PCAP for easy
debugging with Wireshark
patch also adds a new test helper to write a RRC PDU
into a PCAP file (helper packs PDCP and RLC AM first)
3 years ago
David Rupprecht
0217bf5332
Fixed name space for rrc ue
3 years ago
faluco
b79481f74b
- Fix text formatter unit test for printing the date.
3 years ago
David Rupprecht
d990db66f6
Added syslog logger
3 years ago
Andre Puschmann
6c82d63aa6
remove legacy PNF/VNF code
...
the code hasn't been maintained for a while an likely needs to be
adapted for a real-world scenarios.
in order to avoid having to maintain two MAC/PHY interfaces we
remove the code from now.
3 years ago
Andre Puschmann
654afac9c7
nas_5g_msg_test: remove copy_msg_to_buffer() that is now in test_common.h
3 years ago
David Rupprecht
724af2b060
Added nas 5g msg packing and unpacking
3 years ago
Andre Puschmann
e330f50ef8
rrc_meas_test: add packing test for measObjectNR
3 years ago
Andre Puschmann
a2dd83a7e9
asn1: rename RRC NR test to avoid confusion with component test
3 years ago
Andre Puschmann
6bf3feda92
rrc_nr_test: add packing test for NR radio bearer config
...
also add (still incomplete) secondary cell group config pack test
3 years ago
Xavier Arteaga
e3afd945bc
Refactored NR HARQ ACK feedback
3 years ago
Xavier Arteaga
f6fc215541
Refactored enb_dl_nr to gnb_dl and initial gnb_ul
3 years ago
Andre Puschmann
6372f89c09
s1ap_test: fix compilation on 32bit
3 years ago
Pedro Alvarez
865298f8d5
Moved lib PDCP to its own folder
3 years ago
Pedro Alvarez
171d5727be
Moved lib RLC into it's own folder
3 years ago
Xavier Arteaga
8378c85ec4
Refactored gNb PHY
3 years ago
David Rupprecht
6d5391756c
Refactor build of RLC NR config
3 years ago
Pedro Alvarez
aae266e848
Added configuration option for S1AP SCTP bind port
3 years ago
Xavier Arteaga
cf09044453
Optimised random bit (unpacked) and byte (packed) generator
3 years ago
Andre Puschmann
475c033440
rlc_am_test: extend status PDU test
...
add full test with malformed status PDU
3 years ago
Andre Puschmann
fa7a8fb687
rlc_am_test: add testcase for processing out-of-order status PDUs
3 years ago
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
3 years ago
Andre Puschmann
46265c5829
rlc_am_data_test: add data PDU unpack test
...
TV captured in PCAP
3 years ago
Andre Puschmann
b379910690
pdu_test: add UL-SCH unpacking test
...
TV captured in PCAPs.
3 years ago
Pedro Alvarez
299d2ee35d
Added interface to make the PDCP notify the RRC of integrity check
...
failures.
3 years ago
Andre Puschmann
a013a2fe05
rlc_stress_test: fix bug when read_pdu was returning -1
3 years ago
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.
3 years ago
Francisco
539ca47fe2
lib,bugfix: fix blocking queue unit test. Dtor cannot destroy object while a thread is still pushing data
3 years ago
Andre Puschmann
9612bb0e14
rlc_am_test: fix status PDU test and add extra test for failure signaling
3 years ago
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).
3 years ago
Andre Puschmann
107f6334dd
compile: fix compilation on 32bit systems that require -latomic
3 years ago
Andre Puschmann
b88f22b9fe
network_utils_test: fix race detected with TSAN
3 years ago
Andre Puschmann
716caafd6c
multiqueue_test: fix race reported by TSAN
3 years ago
Andre Puschmann
c434aac526
rlc_stress_test: include tsan options header
3 years ago
Xavier Arteaga
10a268fdba
Added SNR to phy_dl_test
3 years ago
Francisco
f36f5271d3
timers,feature: make timers thread-safe by using atomic to store timers state.
3 years ago
Andre Puschmann
531acc0a98
rlc_am_test: add check for RLC buffer state return during retx
3 years ago
Pedro Alvarez
c74b2dd633
Fix some warnings in PHY due to array parameter mismatch for a few functions
3 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
b41aba2a03
fix task scheduler test
4 years ago
Francisco
2d6a878826
change interface to create multiqueue queues
4 years ago
yagoda
9501283c1c
fixing support for extended Cyclic Prefix
...
small cosmetic fixes of CP code
4 years ago
Andre Puschmann
81c1851bbd
rlc_am_test: fix TSAN isses and removing info log when dropping PDU
4 years ago
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.
4 years ago
Francisco
996d8ef74d
multiqueue bugfix for non-blocking pushes when queue is full
4 years ago
Francisco
99abae9e6a
fix multiqueue producer to consumer notification to avoid deadlocks
4 years ago
Francisco
0d800eb8f6
stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test
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
Francisco
cd51537234
add comment explaining the use case of cached_alloc
4 years ago
Francisco
28847badcf
implementation of custom allocator for memory caching. This allocator may be used for unbounded queues
4 years ago
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.
4 years ago
Xavier Arteaga
fb5dfb3a86
Improved NR unit test
4 years ago
Xavier Arteaga
6c39a5e4ff
Added PDSCH DMRS aditional unpacking
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
AlaiaL
862784ee46
Fixed coverity 369719
4 years ago
AlaiaL
82788ca094
Fixed issues from coverity:
...
- 370233
- 370234
- 370239
- 370240
- 370241
- 370242
- 370243
- 370295
4 years ago
faluco
1ccb62af3d
Apply srsLTE formatting rules to srsLog. They were previously formatted with different rules when the project lived in the external rapo.
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
28f787f1de
extend timer handler unit test to check correct time wheel implementation
4 years ago
Francisco
2b572f5376
fix overwrite of timer timeout when it matches previous time wheel position
4 years ago
Francisco
ce47cf5910
fix - re-add log flush to srsran_assert
4 years ago
Francisco
3b78bf3730
bugfix - fix memcheck warnings. move instructions with side effects outside of asserts
4 years ago
David Rupprecht
6b41ae7e8b
Updated PDCP config struct for rat type
4 years ago
Xavier Arteaga
53e41a165c
Revert zeros around DC REs in NR PDSCH
4 years ago
Francisco
22024ac35d
implemented bounded_bitset::find_lowest(...) for both reverse and non-reverse bit ordering. Applied this method to UL scheduling search for PRB intervals
4 years ago
Francisco
3f15fc2811
implemented bounded_bitset::find_first(...)
4 years ago
David Rupprecht
f42d4dbc28
Refactored carrier config
4 years ago
Xavier Arteaga
abfc1da921
Multiple NR-PUSCH fixes
4 years ago
Xavier Arteaga
01ce0718be
NR-PUSCH RE mapping correction and NR-SCH detailed grant information
4 years ago
David Rupprecht
fe8727050b
Added new rrc_nr to phy flattening functions and fixes
4 years ago
Xavier Arteaga
e4e3456d76
Refactored PDSCH/PUSCH decoder for LDPC early stopping
4 years ago
Francisco
e37968410e
simplification of timers handler design, relying solely on one time wheel.
4 years ago
Francisco
60896e30b5
implementation of time wheel-based timer handler, using a circular array and intrusive list
4 years ago
Xavier Arteaga
80f5c82b53
Fix formatter test
4 years ago
Andre Puschmann
c9da21c9bb
mac_nr: add error handling when unpacking SCH MAC PDU
...
* only handle PDU if unpacking was successfull
* add TC unpacking with malformed PDU
4 years ago
Xavier Arteaga
2e3c00aa97
NR PDSCH zeroes RE around the DC. Added delay and CFO emulation to phy_dl_nr_test
4 years ago
Francisco
21718af3b6
avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type
4 years ago
Andre Puschmann
6dd8c21073
mac_sch_pdu_nr: add unpacking of TA CE in DL-SCH
...
also add basic test to verify correct unpacking
4 years ago
David Rupprecht
82c9636156
Refactor pdcp ctor seperate the configure function
4 years ago
David Rupprecht
f9ea02b6bf
Added functions for rrc reestablishing procedure if nr reconfig failes
4 years ago