Ismael Gomez
0984debe1b
Fix issues with RLF in B210 and X300 ( #669 )
...
* Calling tx_end() from radio_reset() causes long execution time in B210. Using boolean to call later instead. Fixes RLF failing in B210. Checked in X300
* Fix issue #655
2019-09-20 15:41:16 +02:00
Andre Puschmann
a2ab043c0d
fix memleaks and uninitialized vars found by cppcheck
2019-09-20 10:55:29 +02:00
Francisco Paisana
946ead06e8
using an interface between the stack and lower mac to process demux pdus.
2019-09-19 10:19:46 +02:00
Andre Puschmann
57317fab7c
expose debug_long to class log and use in RRC to log ASN1 structs
2019-09-18 16:12:24 +02:00
Andre Puschmann
7ad2b217df
fix logging all in error level
2019-09-18 15:15:41 +02:00
Francisco Paisana
7e67aee839
resolved the uninit variable issue in the queue_test
2019-09-18 12:18:33 +02:00
Francisco Paisana
14267640ee
implemented andre's PR review requests
2019-09-18 12:18:33 +02:00
Francisco Paisana
b2bc05c50a
make queue_test less dependent on thread timings
2019-09-18 12:18:33 +02:00
Francisco Paisana
ceba00f00e
extended multiqueue to support blocking push
2019-09-18 12:18:33 +02:00
Francisco Paisana
63457f195c
extented queue test
2019-09-18 12:18:33 +02:00
Francisco Paisana
647c624423
created a multiqueue handler, and started using it for the ue stack
2019-09-18 12:18:33 +02:00
Andre Puschmann
95b2239dd5
add base class for socket handler using netsource object
2019-09-17 21:56:47 +02:00
Andre Puschmann
6baa89cd2c
add MAC NR PDU packing and associated unit tests
2019-09-17 17:19:13 +02:00
Andre Puschmann
090f2b4110
add MAC-NR PCAP support
2019-09-17 17:19:13 +02:00
Ismael Gomez
a3932f9bea
Minor change to fix coverty issue
2019-09-17 14:22:38 +02:00
Francisco Paisana
94667beb00
added a bound checker to bit_ref packer, and other fixes
2019-09-17 14:15:43 +02:00
Ismael Gomez
f74efe908b
Fix blocking in resume() after RLF in 100 PRB ( #654 )
2019-09-17 11:42:42 +02:00
Francisco Paisana
cd521a84cb
bigger log buffer. Now it is 1024 chars ( #649 )
...
Use dynamic string for debug_long() function and known relation of size between log_str and log_filter
2019-09-17 11:42:17 +02:00
Andre Puschmann
5189bbad69
add stop() to logger_file
...
this allows to close and currently running log process, flush the content
to the file, continue logging during that time, open a new file
and write the new log entries to that new file
basically it allows to use the logger_file multiple times without
needing to destroy the object
this is used in the UE tester to write each testcase into a separate
log file
2019-09-16 21:39:15 +02:00
Andre Puschmann
4869509c7b
add write function to netsource
...
this is useful for listening sockets to also send responses,
i.e. implement bi-directional communication
2019-09-16 21:39:15 +02:00
Francisco Paisana
e768989074
added a packer/unpacker for bytes. This should a faster version than normal bit_ref::pack, when we want to pack multiple bytes, and the bit_ref::offset is 0. Also added a way to skip a fixed number of bits
2019-09-13 21:09:26 +02:00
Ismael Gomez
6bb0790cf1
Fix coverty issues ( #652 )
2019-09-13 15:06:20 +02:00
Xavier Arteaga
1a567a764e
SRSUE: Call Radio tx-end when PHY is reseted and removed redundant attribute is_start_of_burst.
2019-09-12 09:49:56 +02:00
Andre Puschmann
4ea9ed058c
fix reporting of Tx gain stages in rf_soapy
...
reported by DreamNik
2019-09-11 21:44:03 +02:00
Pedro Alvarez
1d3e541069
Fixed warning on bytes_to_mnc
2019-09-10 13:46:21 +02:00
Pedro Alvarez
9b20a0de16
Added comment to zuc.cc and zuc.h
2019-09-10 13:46:21 +02:00
Pedro Alvarez
004db4a067
Applied clang-format to zuc_support PR.
2019-09-10 13:46:21 +02:00
Pedro Alvarez
595185d4b5
Fixed small compiler warning.
2019-09-10 13:46:21 +02:00
David Rupprecht
50332089ce
Add EEA3 and EIA3 support for UE/enodeb and MME
2019-09-10 13:46:21 +02:00
David Rupprecht
f05bb12c78
Process with EIA3 test cases and fix EIA3
2019-09-10 13:46:21 +02:00
David Rupprecht
d580a94dab
Add EIA3 and test case
2019-09-10 13:46:21 +02:00
David Rupprecht
7e13860dd5
Add decryption function and all tests for enc
2019-09-10 13:46:21 +02:00
David Rupprecht
0841d837de
Make ZUC state ful no global vars
2019-09-10 13:46:21 +02:00
David Rupprecht
ef4cf7aa52
First ZUC working test case
2019-09-10 13:46:21 +02:00
Andre Puschmann
8da610d68b
fix gcc (<= 5) warning with type-limits by casting vr_r to a signed type
...
this warning is a bit annoying as it is really safe to do
that kind of comparision, it's just that for vr_r==0, any other
unsigned number is >= 0.
2019-09-10 13:43:57 +02:00
Andre Puschmann
49279c89d8
send DL-DCCH on SRB2 after it has been established
2019-09-09 17:16:22 +02:00
Harald Welte
2e426948fe
[ENB] Add CFSB support
...
This commit introduces CSFB (circuit switched fall-back) capabilities to
srsLTE. Actually, all the eNB has to do is to send a
RrcConnectionRelease with the RedirectedCarrierInfo IE.
The MME triggers this by the S1AP CS Fallback Indicator IE, which may
be present either in the Initial Context Setup Requst or in the
UE Context Modification Request.
As srsLTE has no support for the UE Context Modification Request at all
yet (!), basic support for this message is introduced in this patch.
Both Mobile Originated and Mobile Terminated CSFB with a coupel of
different UE models have been verified using this patch in a setup
consisting of srsENB attached to an undisclosed EPC connected via SGsAP
to a complete Osmocom 2G network.
Closes : #358
Closes : #363
2019-09-09 16:59:00 +02:00
Andre Puschmann
d9577f0e1e
suppress type-limit warning issued by some compilers by making var signed
...
Used to happen with older gcc giving:
"rlc_am.cc:1791:22: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]"
2019-09-09 16:30:48 +02:00
Andre Puschmann
a9bea7e30c
add -Werror to compile flags
2019-09-09 16:30:48 +02:00
Ismael Gomez
bfddc55148
RRC-PHY interface ( #639 )
...
RRC-PHY interface refactor. Moved RRC-MAC interface to rrc_asn1_utils and created RRC-PHY interface also in rrc_asn1_utils. All ASN1 includes should be made from rrc_asn1_utils only keeping ue_interfaces clean of ASN1
Tested with different common and dedicated configurations (64QAM UL, 256QAM, CA, SRS enabled/disabled, etc)
2019-09-04 16:59:10 +02:00
Merlin Chlosta
2079c1324c
UHD: Wait for `lo_locked` after frequency change ( #635 )
...
* UHD: clang-tidy rf_uhd_imp.c
* UHD: wait for LO_lock after frequency change
2019-09-04 16:51:02 +02:00
Ismael Gomez
c92c61d560
Optimized front-end logging processing ( #641 )
...
Avoid memory allocation and stringstream in log frontend calls (executed from worker threads). Uses a buffer pool of fixed buffer and vsnprintf
2019-09-04 15:32:29 +02:00
Francisco Paisana
67d6a25194
Moving mac timers to stack timers ( #638 )
...
* first step towards moving MAC timers to stack. Mac is still using its own timers. srslte::timers class can be restructured.
* moved timers out of the UE MAC
2019-09-04 15:28:09 +02:00
Ismael Gomez
69edee4e6c
Fix issues in uplink QoS ( #636 )
...
Fix bugs in Long BSR and Truncated BSR and added unit tests
2019-09-02 22:48:41 +02:00
Francisco Paisana
ef61f0408c
fix asn1 version separator string
2019-09-02 20:21:54 +02:00
Francisco Paisana
ad64207a32
added test for unknown group extensions, and the asn1 lib version in its generated files
2019-09-02 20:21:54 +02:00
Francisco Paisana
939c8905cb
now the unknown group exts are also consumed
2019-09-02 20:21:54 +02:00
Francisco Paisana
116dc0a57b
fixed group extensions, removed extra presence flag for copy_ptr<T> types as it was just a source of bugs.
2019-09-02 20:21:54 +02:00
Robert Falkenberg
bf35f83a5e
Fixed inverted interpretation of new data indication (ndi) field in dci_format1As_pack() function
2019-08-29 20:49:24 +02:00
Robert Falkenberg
c75f314c3f
Fixed incorrect DCI location assignment in pdsch_enodeb.c example
2019-08-29 20:49:16 +02:00
Mark Rohrbacher
4a76801459
Fixed duplex spacing for bands 65 to 70
2019-08-29 20:49:10 +02:00
Robert Falkenberg
3cf4431c66
Fixed inverted handling of fseek result value in srslte_filesource_seek
2019-08-29 20:48:57 +02:00
Igor Kim
dd613c1514
Fix TBS table with auto-generated one ( #368 )
2019-08-29 20:47:07 +02:00
Andre Puschmann
ada4e6644f
fixing various issues in NB-IoT sync code detected by Coverity and clang-tidy
2019-08-08 11:12:49 +02:00
Francisco Paisana
c9d3b61038
added resumable procedures to make RRC and NAS non-blocking
2019-08-08 10:56:54 +02:00
Andre Puschmann
e42449532b
fix wrong namespace definition in various places
2019-08-07 15:32:49 +02:00
Andre Puschmann
deb3cbec28
soapy: start rx stream without extra flags and print error if not successful
2019-08-05 11:11:04 +02:00
Andre Puschmann
80655db4a4
fix missing include in filesink
2019-08-05 11:11:04 +02:00
Andre Puschmann
95a5c2dcdb
adding NB-IoT sync code
2019-08-05 11:11:04 +02:00
Ismael Gomez
d887624e74
Increased PSS threshold to detect RLF after change to number of missed subframes
2019-07-31 16:57:21 +02:00
Ismael Gomez
19066c49ab
Ad Rel10 info to dci logs
2019-07-30 18:18:44 +02:00
Pedro Alvarez
6efa944b5e
Removed srslte prefix from pdcp_config_t
2019-07-30 15:01:50 +02:00
Pedro Alvarez
0e7c5634f1
Added comment to PDCP maximum SDU size.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
dd56d08269
Replaced byte_buffer by array in PDCP base
2019-07-30 15:01:50 +02:00
Pedro Alvarez
8c10eabf23
Changed PDCP LTE to use unique_lock.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
3da0391fff
Adding default initializers to PDCP config.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
494be243c0
Changed security direction to use an enum.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
61051b4cb3
Changed PDCP NR read_data_header to return SN.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
f90b69e5f4
More clang-format for PDCP
2019-07-30 15:01:50 +02:00
Pedro Alvarez
491695ab77
Clang-formated PDCP NR PR.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
38bbc55631
Added tests for PDCP NR Rx with SN Len = 18. In-sequence reception seems to work.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
d4aeb12db8
Adding more TX tests to PDCP NR entity.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
39e3800781
Fixed header packing for SN length 18 for PDCP NR. First TX test is passing.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
d399c65082
Starting to add PDCP SN len 18 unit tests.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
7a69e8ba64
Removed comment.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
adfe9f950e
Fixed issue in computing the SN. Added test for packets received in sequence for PDCP NR. Test is passing now.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
2104e6bbcf
Added test for more TX packets in PDCP NR. Tests passing for TX_NEXT = 0, 2048 and 4096
2019-07-30 15:01:50 +02:00
Pedro Alvarez
ecd164ed65
Starting to add more tx tests to PDCP NR tests.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
af2b593b8c
Added check for integrity in test. First Rx PDCP NR test passing.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
d3b6828082
Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
ea3c44e9ac
Removing header before decrypting. Continuing to add decryption tests to PDCP NR
2019-07-30 15:01:50 +02:00
Pedro Alvarez
7e6725f0a2
Fixing up PDCP NR tx test. Starting to add rx test.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
378c8d247e
Starting to add the mechanisms to store the last PDU in the PDCP tests.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
a42726f836
Fixed hdr_len_bytes in PDCP NR. Tx seems OK now.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
73e30743d1
Added enum to PDCP config to replace two bools.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
457f35699d
Reverted back to a single config structure between PDCP NR and PDCP LTE.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
810cacdc02
Adding write_data_header and append_mac helper functions to PDCP NR entity.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
9d0db108c6
Continue to add PDCP tx test
2019-07-30 15:01:50 +02:00
Pedro Alvarez
d1ac121100
Writting PDU into PDCP in tx test.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
c9e99443d8
Adding PDCP NR Tx test.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
4bb99464ed
Starting to add PDCP NR tests.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
8e8a7a4154
Add more logic to PDCP NR tx logic.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
2081b22465
Added PDCP_SN_LEN constants. Added bearer_id and direction back to the pdcp_entity_base.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
8e1b9b9f5b
Starting to implement the receive function of PDCP NR.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
d7a2721bb0
Adding algorithm to get COUNT for PDCP NR. Added convinience functions to manipulate HFN, SN and COUNT.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
52f75c3cf2
Starting to add PDCP NR state variables.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
2449f901f0
Fixed error in setting Kint in pdcp_entity_lte.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
1944bf9a80
Continue to split pdcp_entity_lte and pdcp_entity_nr. Compiling now.
2019-07-30 15:01:50 +02:00
Pedro Alvarez
bd91678d98
Continuing to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr
2019-07-30 15:01:50 +02:00
Pedro Alvarez
005d03cb1a
Starting to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr to support NR PDCP
2019-07-30 15:01:50 +02:00
Ismael Gomez
069c55f2e5
Fix db to dbm typo
2019-07-30 10:34:34 +02:00
Ismael Gomez
2859a75ca0
Reset counter for sync lost when PSS is found
2019-07-29 17:12:42 +02:00
Ismael Gomez
d32739c315
Minor logging changes in PHY
2019-07-25 13:21:47 +02:00
Andre Puschmann
e0bd7f156d
replace remaining warning macros with pragma message
2019-07-23 15:38:21 +02:00
Andre Puschmann
09610ce788
add type setter to sch_subh and use it for MCH PDUs
2019-07-23 15:38:21 +02:00
Andre Puschmann
c4bc151e14
rlc: fix MRB logging
2019-07-21 22:27:17 +02:00
Andre Puschmann
e562dfed15
minor code formating and debug fixes
2019-07-21 22:27:17 +02:00
yagoda
408400bee6
adding fixes and tests for eMBMS
2019-07-21 22:27:17 +02:00
Francisco Paisana
424876c5e4
added DL TTI mask for MBMS
2019-07-21 22:27:17 +02:00
yagoda
b99178d8da
updating timing advance values for lime
2019-07-18 12:49:53 +02:00
Ismael Gomez
50e1ed6cc6
Change order of radio stop to avoid locking on rf_ms() by async thread
2019-07-17 16:48:07 +02:00
Guillem Foreman
2574de4d2d
Fixed soft demodulator
2019-07-17 15:23:57 +02:00
Ismael Gomez
126f2efb5c
Radio and UHD fixes to avoid changing master clock rate and fixes X300 ( #589 )
...
* Fixes X300 MIMO
* Do not change sampling rate and calibrate time_adv_nsamples for b210
2019-07-16 18:22:09 +02:00
Andre Puschmann
9ee415ac82
correct the max size for a single TB
...
since the size in bits is counted per TB we don't need to allocate
space for the 2x2 MIMO case. Both CW have their own buffer.
2019-07-16 17:31:03 +02:00
Andre Puschmann
21f8698397
fix MAC PDU packing for large TB sizes
...
update the byte_buffer length variable after updating the remaining
PDU length. This has caused an error when calculating the
remaing space in the PDU because the SDU length was counted twice.
2019-07-16 17:31:03 +02:00
Andre Puschmann
94cc61e4b1
add MAC PDU pack test for max size TB PDU
2019-07-16 17:31:03 +02:00
Ismael Gomez
c9c43e44e9
Fixed PDU buffer size
2019-07-16 17:31:03 +02:00
Andre Puschmann
2ae35e4ce0
make sure status PDU doens't exceed grant size
2019-07-14 07:29:10 +02:00
Pedro Alvarez
9597cc4c14
Clang-formated liblte_*
2019-07-13 14:41:04 +02:00
Xavier Arteaga
5e49aca835
Merge pull request #570 from softwareradiosystems/feature_256qam_fix
...
Resource allocation extended tables and PDSCH table 2 for 256QAM
2019-07-12 12:32:47 -04:00
Ismael Gomez
6d2c6ec58d
Do not change master clock rate in UHD if dynamic rate is supported
2019-07-12 18:18:30 +02:00
Guillem Foreman
2a8ec5c9b9
More fixes 256QAM
2019-07-12 15:35:27 +02:00
Guillem Foreman
eab73829f6
Changes requested
2019-07-12 14:11:26 +02:00
Ismael Gomez
538f38cf54
Let PDCP Control PDUs be processed
2019-07-12 13:08:42 +02:00
Pedro Alvarez
9b6aaac1b5
Ignore PDCP status PDUs, instead of passing them to the GW. Check on the GW if the packet is large enough to hold an IPv4 header.
2019-07-12 13:08:42 +02:00
Ismael Gomez
11d42acb3a
Fix using deallocated PDU
2019-07-12 13:08:42 +02:00
Ismael Gomez
8c41625599
Add RLC suspend and resume
2019-07-12 13:08:42 +02:00
Andre Puschmann
db196cc052
add RLC AM test for status PDU generation with small and big MAC grants
2019-07-12 13:06:39 +02:00
Andre Puschmann
db9f093b63
add debug log when handling reordering timer
2019-07-12 13:06:39 +02:00
Andre Puschmann
849ad2655c
fix creation of malformed RLC AM status PDU
...
the issue was caused by an unneeded length check during the
assembly of the status PDU. This length check caused an too early
break from the while-loop that adds all missing SNs to the status PDU
leaving the PDU struct in an invalid state where ack_sn was equal to
one of the NACK_SNs.
The fix is to simply remove the length check during the generation to
fully generate the status PDU. If, for whatever reason, MAC provides
a too small grant to fully fit the status PDU, the PDU will not be
generated, i.e. the calling function checks the return value and does
not pass the (then too big PDU) down the stack.
2019-07-12 13:06:39 +02:00
Andre Puschmann
9f3a947c02
modify RLC AM retx test to provide exactly a MAC opportunity of the size
...
that is reported as buffer state
2019-07-12 13:06:39 +02:00
Xavier Arteaga
aa6652155c
Phy: added ue_ul normalization mode parameter
2019-07-12 13:05:10 +02:00
Xavier Arteaga
20823e191d
SRSUE: Added UL force amplitude optional parameter
2019-07-12 13:05:10 +02:00
Andre Puschmann
4e86b2f6b2
introduce layerd architecture we use for UE to eNB
...
- this allows flexible use of different PHYs and radios
- use common radio_multi (moved to lib)
2019-07-12 04:17:56 +02:00
Xavier Arteaga
2530894374
Channel emulator: added input pointer checks
2019-07-11 10:28:13 -04:00
Ismael Gomez
d595c4d882
Fixes issue #545 and unlocking of tti_sync condvar before closing causing deadlock at stop
2019-07-11 14:55:35 +02:00
Andre Puschmann
aff26abc89
fix memleak in Soapy driver when no device was found
2019-07-10 22:46:33 +02:00
Ismael Gomez
773c2a9721
Fixed multiple issues in Random Access procedure and extended MAC test
2019-07-08 17:14:25 +02:00
Andre Puschmann
6b2961fcee
add MAC DL-SCH unpacking test
2019-07-05 17:24:06 +02:00
Andre Puschmann
92f0d58856
mac: move further init/config into ctor to allow early logging, etc.
2019-07-05 17:24:06 +02:00
Francisco Paisana
92b4b168fe
added default rlc um and am in the interface as factories
2019-07-05 10:44:15 +02:00
Francisco Paisana
b903c1a52c
made default init for rlc um test
2019-07-05 10:44:15 +02:00
Francisco Paisana
58e2e51044
removed rlc_interfaces. The rlc_cnfg types are now part of the rrc_interface_types. Removed implicit RB initialization in the RLC.
2019-07-05 10:44:15 +02:00
Francisco Paisana
c5509caece
added extra operators and remove rrc_asn1 in some cmake targets
2019-07-05 10:44:15 +02:00
Francisco Paisana
b936629221
removed rrc asn1 header from bcd_helpers, from rlc_interface, and rlc tests
2019-07-05 10:44:15 +02:00
Francisco Paisana
bb0dbf0f1c
created a asn1 utils with helper functions and types related to the asn1. These types/functions will help isolate the rrc_asn1 lib from most of the layers, reducing this way the compile times, and leading to better isolation. This will also make the transition to NR smoother. I removed the asn1 types from the NAS and USIM interface so far.
2019-07-05 10:44:15 +02:00
Francisco Paisana
416f9896ec
fixes to include the findings from PR #550
2019-07-05 10:38:28 +02:00
Guillem Foreman
46724c336d
Fixed errors for phy_dl_test and pdsch test
2019-07-04 15:49:43 +02:00
Guillem Foreman
4627737c87
Revert "Disable 256QAM tests failing in CentOS"
...
This reverts commit 833ce5224a
.
2019-07-04 15:49:43 +02:00
Guillem Foreman
c71763dc93
Fixed minor message in modem test
2019-07-04 15:49:43 +02:00
Guillem Foreman
db4127ca64
Fixes 256QAM, added pdsch table 2, fixed warnings
2019-07-04 15:49:43 +02:00
Guillem Foreman
535325bc37
srsLTE: added resource allocation extended tables for 256QAM and integration with PDSCH test
2019-07-04 15:49:43 +02:00
Andre Puschmann
62a4fa1c93
fix various potential buffer overruns
...
this is based on suggested fixes by Dirk Grabinski and David who
have fuzzed various parts of srsLTE using afl
2019-07-04 14:43:59 +02:00
Andre Puschmann
701db61fde
rlc: extend stress tester to simulate MAC PDU corruption
2019-07-04 14:43:20 +02:00
Andre Puschmann
ecb6a0f99b
fixing RLC AM bug where corrupted PDU causes segfault
...
the underlaying issue is that a corrupted PDU is passed to RLC
which claims to have segments whose total size exceed the size
of the entire PDU. Those PDUs are not ignored.
2019-07-04 14:43:20 +02:00
Xavier Arteaga
a417d3a70a
Added DCI trace if cqi is requested
2019-07-02 16:36:06 +02:00
Xavier Arteaga
87433c83da
SRSUE: 64QAM R8 compatible
2019-07-02 16:36:06 +02:00
Ismael Gomez
833ce5224a
Disable 256QAM tests failing in CentOS
2019-07-01 18:22:49 +02:00
Pedro Alvarez
498f1b8e4b
Small PDCP fixes:
...
- Moved most the initialization of the pdcp_entity to the header.
- Initilize some variables in gtpu_ntoa.
- Removed debug print.
- Format eNB GTP-u debugging code.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
1c51d2ca9a
Small clang format changes.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
5d8dcbe4cb
Make sure that PDCP SN is initialized properly in the eNB. UE attaches again when using encription.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
53d2220aab
Resolved conflicts with unique pointers after rebase in PDCP entity.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
2643b9070f
Fixing mistake in setting PDCP last_submitted_pdcp_rx_sn
2019-06-27 17:09:52 +02:00
Pedro Alvarez
6d5dbdedfa
Fixed mistake in comparison in pdcp_entity.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
693338da07
Added TX HFN print to make it easier to debug HFN mis-match
2019-06-27 17:09:52 +02:00
Pedro Alvarez
6b59cc0760
Debug print for PDCP Reestablish.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
5ca6238877
Adding encription debug prints.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
b97d1191f4
Added more debug info at eNB GTP-U. Changed the pdcp_entity to follow the standard more strictly for RLC AM DRBs.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
f4fd6034ba
Starting to add separate functions for PDCP handling for UM DRBs and AM DRBs
2019-06-27 17:09:52 +02:00
Pedro Alvarez
6578cf1d01
Making sure that next_pdcp_rx_sn is reset at reestablish.
2019-06-27 17:09:52 +02:00
Pedro Alvarez
6cbcc5154d
Starting to use received SN to do user plane decription.
2019-06-27 17:09:52 +02:00
Andre Puschmann
58763fb714
stack: move initialization of log object into ctor
...
this fixes the issue when the stack is torn down if, for example,
the radio couldn't be loaded correctly. it will hence call stop() on all stack
components which are not initialzized yet, and logging therefore doesn't work.
the log object is know during contruction time and therefore can be passed
in as soon as possible.
2019-06-27 14:51:33 +02:00
Pedro Alvarez
8f5ad55c4a
Added attach request as a UL info trasnfer in the UE. Added interface to remove eps bearer map when going idle. Fixed bug in GW in assignment of IPv4 addresses. UE seems to rebound from the service reject now.
2019-06-26 18:04:41 +02:00
Andre Puschmann
82a69fb51c
mux: fix packing of short MAC PDUs
2019-06-26 17:57:25 +02:00
Andre Puschmann
0012868e91
rlc_am: reduce log level when provided PDU size is too small
2019-06-26 17:57:25 +02:00
Andre Puschmann
4aaa0473b9
pdu: remove unused variable total_sdu_len
2019-06-26 17:57:25 +02:00
Andre Puschmann
fab75592ec
fix MAC PDU padding with only padding and add test accordingly
2019-06-26 17:57:25 +02:00
Andre Puschmann
b6d7fd5def
improve error handling in PDU packing
2019-06-26 17:57:25 +02:00
Andre Puschmann
da35f41dd5
rework MAC logical channel prioritization
2019-06-26 17:57:25 +02:00
Andre Puschmann
6d586d84a8
extend MAC PDU test
2019-06-26 17:57:25 +02:00
Xavier Arteaga
5d792e7ebe
AGC: Fixed gain hysteresis
2019-06-25 09:12:28 +02:00
Andre Puschmann
e0a28cf4c0
simplify PDCP init and also bypass it for SRB0 on eNB
2019-06-21 15:49:46 +02:00
Andre Puschmann
0ef96f789b
bypass PDCP for SRB0 processing chain
2019-06-21 15:49:46 +02:00
Andre Puschmann
218f136254
remove default PDCP entity for SRB0
2019-06-21 15:49:46 +02:00
Andre Puschmann
f5a929e425
pdcp: print length when processing incoming PDU
2019-06-21 15:49:46 +02:00
Francisco Paisana
ce29ed545d
moved mac thread to the stack. Protect the interface of the stack with PHY and gateway via a queue of tasks
2019-06-21 13:01:41 +02:00
Francisco Paisana
10a56e2a84
moved GW out of the UE stack. This is important to keep concurrency out of the stack once it becomes single-threaded
2019-06-20 15:26:52 +02:00
Xavier Arteaga
bb26a42fb6
Fixed backtrace symbols free
2019-06-19 11:49:55 +02:00
Andre Puschmann
414e55fafc
pcap: add dtor
...
this fixes issue if object is destroyed and PCAP is still open
2019-06-18 20:50:23 +02:00
Ismael Gomez
67b6a40c1b
Use correlation for neighbour RSRP measurement
2019-06-18 17:55:41 +02:00
Andre Puschmann
abef6ce152
move own ipv6 header definition into own header file and use it in tft filter
2019-06-18 16:06:52 +02:00
Guillem Foreman
269e21e3af
Fixed minor format
2019-06-17 18:04:32 +02:00
Guillem Foreman
50edd9a325
Initial 256QAM Modem and Demodulator
2019-06-17 18:04:32 +02:00
Joseph Giovatto
0bb7f590b3
Moved include complex.h from header files to impl files to prevent
...
error /wr to complex.h and c linkage in CentOS 7.
2019-06-14 12:19:57 +02:00
Andre Puschmann
2b82f21fd2
fix compiler warning
2019-06-14 11:26:19 +02:00
Andre Puschmann
acbe7fabe4
rlc: fix class member initialization
...
uninitialized member detected by coverity, now converted all default
initialization to be done in class definition
2019-06-14 11:26:19 +02:00
Andre Puschmann
b32254c5e2
use lock_guard for GW
2019-06-12 20:44:23 +02:00
Andre Puschmann
89416a67c7
increase timeout for rlc stress tests
...
for valgrind where we sometimes hit the default timeout of 1500s
2019-06-12 20:44:23 +02:00
Xavier Arteaga
1f4cf8121b
SRSUE: Initial UL channel simulator
2019-06-11 12:06:11 +02:00
Andre Puschmann
2b7b4d0e7e
remove hard-coded LCID for dedicated bearer in GW
2019-06-07 21:40:03 +02:00
Pedro Alvarez
2723aa9b12
Added EPS bearer id to apply_tft interface. Sending packets to the correct LCID if they match the packet filter.
2019-06-07 21:40:03 +02:00
Pedro Alvarez
a7e0a0624b
Starting to add interface apply_traffic_flow_template between NAS and GW.
2019-06-07 21:40:03 +02:00
Pedro Alvarez
2fcf8c1827
Starting to add packing and unpacking tests to activate EPS bearer context request.
2019-06-07 21:40:03 +02:00
Francisco Paisana
415d3418b6
reorganized enb to mirror ue director/class structure with a stack class
2019-06-07 15:41:56 +02:00
Pedro Alvarez
d67d18cc6b
Removing deplicated error codes.
2019-06-07 13:51:56 +02:00
Xavier Arteaga
bd3ec34f7b
SRSUE: Apply CLang format phy args structure
2019-06-06 15:00:26 +02:00
Xavier Arteaga
fd3671a7e5
SRSUE: Enable AGC
2019-06-06 15:00:26 +02:00
Andre Puschmann
e8d6236975
remove init for all RLC TM/UM/AM
...
- all RLC entities are now initialized during contruction
- there is no need to check for, e.g., existance of timers, during
runtime
- there is also no need to call re-init during resume
- timers are freed in dtor
2019-06-06 14:34:25 +02:00
Ismael Gomez
f24c0cef8c
Use timer interface instead of local boolean to query timer state
2019-06-06 14:34:25 +02:00
Ismael Gomez
c2e9817f41
Possible solution to RLC Reestablishment
2019-06-06 14:34:25 +02:00
Ismael Gomez
14b526f2aa
Add PDCP per-bearer reestablish
2019-06-06 14:34:25 +02:00
Ismael Gomez
ade720e032
Add RLC resume procedure
2019-06-06 14:34:25 +02:00
Andre Puschmann
3f613d7183
nas/gw/rrc: make LCID for DRB dynamic
...
- add interface to RRC to allow NAS to query the DRB for a given
EPS bearer id
- extend interface for NAS to setup GW to also pass LCID of bearer
- in NAS, use this new interface to pass actual LCID of the default
DRB when creating the TUN device
2019-06-05 20:50:52 +02:00
Andre Puschmann
f357c995fc
liblte_mme: fix packing and unpacking of modify EPS bearer context
...
this just skips the security bits but the packing/unpacking of
the values, i.e. new TFT may still be wrong
2019-06-05 17:41:46 +02:00
Ismael Gomez
b31b668a8e
Remove unnecessary find_package(GUI)
2019-06-04 13:31:31 +02:00
Ismael Gomez
594d62f229
Added read_block function to ringbuffer
2019-06-03 21:39:24 +02:00
Ismael Gomez
19cb5c172b
Added read-and-convert function to ringbuffer
2019-06-03 21:19:06 +02:00
Andre Puschmann
e47010130f
extend thread class to set unique thread name in ctor
...
this will also extend all classes that use srslte::thread
to specify the name of the thread in the ctor as well
as to set the name of the worker threads in the thread pool
the thread name will be displayed in gdb.
2019-06-03 15:03:20 +02:00
Andre Puschmann
0e95867f13
remove task dispatcher class
2019-06-03 15:03:20 +02:00
Andre Puschmann
acf95fdd85
rlc_am: fix newline in logs
2019-05-31 12:20:30 +02:00
Xavier Arteaga
b903e61548
Initialise all channel emulator attributes by default
2019-05-31 10:51:11 +02:00
Andre Puschmann
b3f1915f7b
pdu: fix zero-padding of RAR PDUs
2019-05-30 15:31:54 +02:00
Xavier Arteaga
9c84f8e3fd
SRSLTE: Added Uniform Random vector generator; Delay channel test; Fixed Delay channel SEGFAULT; SRSUE channel unique pointer;
2019-05-30 13:07:23 +02:00
Xavier Arteaga
2ffa1f9f1e
SRSUE: Added RLF simulator in channel emulator and integrated it in SRSUE. Removed Zeros Command
2019-05-30 13:07:23 +02:00
Xavier Arteaga
7c97e40e63
SRSUE: Improved internal channel emulator help
2019-05-30 13:07:23 +02:00
Xavier Arteaga
9ab2b2de81
SRSUE: Created delay channel emulator and added fading to the UE
2019-05-30 13:07:23 +02:00
Andre Puschmann
709e769d0d
pdu: fix formatting
2019-05-30 13:06:42 +02:00
Andre Puschmann
ee1f910877
pdu: add unit test for packing and unpacking RAR PDUs
2019-05-30 13:06:42 +02:00
Andre Puschmann
ea2e692836
pdu: fix MAC RAR PDU packing and unpacking with backoff indicator
2019-05-30 13:06:42 +02:00
Andre Puschmann
e97343579b
liblte_mme: fix typo in header
2019-05-30 13:05:02 +02:00
Pedro Alvarez
1031ea896d
add NAS activate dedicated bearer request unpacking test
2019-05-30 13:05:02 +02:00
Andre Puschmann
76b84a9b61
fix unpacking of deactivate eps bearer context
2019-05-30 13:05:02 +02:00
Pedro Alvarez
69b1a2319e
Fix error in the TFT parameter list size unpacking
2019-05-30 13:05:02 +02:00
Pedro Alvarez
82828a699b
Fixed bug in transaction identifier and radio prio unpacking in NAS.
2019-05-30 13:05:02 +02:00
Pedro Alvarez
02beeefdbd
Fix header unpacking error in the Activate EPS dedicated bearer context request message
2019-05-30 13:05:02 +02:00
Andre Puschmann
1c749ad559
add basic handling for deactivating eps bearer
2019-05-30 13:05:02 +02:00
Andre Puschmann
c14c3c23f1
pdcp: fix issue when setting SN length configuration
2019-05-30 13:05:02 +02:00
Andre Puschmann
f000e36f21
liblte_mme: fix dedicated bearer handling, add handling for UE testmode
2019-05-30 13:05:02 +02:00
Andre Puschmann
8fd4c42849
fix include in build_info.h template
2019-05-28 13:04:53 +02:00
Andre Puschmann
20c9f4687c
remove duplicated code mac_cfg_t
2019-05-27 12:37:52 +02:00
Xavier Arteaga
7629863c5a
SRSUE MAC: 36.331 v10 9.2.2 MAC main config defaults does not include RACH
2019-05-27 12:37:52 +02:00
Xavier Arteaga
2c78111666
SRSUE: Fixed CLang Tidy in ue.cc
2019-05-27 12:21:57 +02:00
Francisco Paisana
00256f2cd9
fix the hanging in the UE during shutdown
2019-05-24 17:08:14 +02:00
Francisco Paisana
4311c3121c
avoid crash when converting nulltype to string
2019-05-24 09:42:42 +02:00
Andre Puschmann
58b09c8677
fix pool_allocate macros for new unique_buffer
2019-05-20 17:16:12 +02:00
Xavier Arteaga
080b4a327c
SRSUE: Refactored asynchronous cell and ue_radio. CA Fixed.
2019-05-17 18:13:51 +02:00
Andre Puschmann
65f50cd7ba
introduce new UE layer design
...
- abstract UE object now consists of a radio, a PHY, and a stack layer
- add new stack abstraction layer that combines MAC, RLC, RRC, PDCP, NAS and GW
- PHY layer now has a single stack interface and does not talk to MAC and RRC seperatly
2019-05-17 17:46:28 +02:00
Andre Puschmann
3a6dd9b164
move UE RRC into own folder
2019-05-17 17:25:50 +02:00
Francisco Paisana
0e3baa0f2f
Renamed the reset() method of byte_buffer_t to clear()
2019-05-16 12:35:01 +02:00
Francisco Paisana
3bedc93ba5
added _t to unique_byte_buffer type
2019-05-16 12:35:01 +02:00
Francisco Paisana
bc01a5ecda
changed block_queue api to return back the unique buffer in case it fails to push it to the queue
2019-05-16 12:35:01 +02:00
Francisco Paisana
f4aa03154d
change queue read and other functions apis
2019-05-16 12:35:01 +02:00
Francisco Paisana
f469e2178b
replaced byte_buffer_t allocated by the buffer pool for unique_byte_buffer which is safer and easier to use
2019-05-16 12:35:01 +02:00
Francisco Paisana
0976ea6f27
created a unique byte buffer that automatically deallocates
2019-05-16 12:35:01 +02:00
Andre Puschmann
4edcedd2b3
add helper to create cexp function for entire subframe
2019-05-16 12:32:36 +02:00
Andre Puschmann
4f42c0796c
add CFO correction method with offset
...
- CFO correction which allows to specify the offset within
the correction table to allow phase-continuity across
multi-subframe transmissions (NB-IoT)
2019-05-16 12:32:36 +02:00
Andre Puschmann
7138126896
add short-cirtuit evaluation for calculating nof of ref symbols without passing object
2019-05-16 12:32:36 +02:00
Andre Puschmann
e647dac3e4
add simple cross-correlation method
...
- implements a cross-correlation that takes the complex conjugate
of one of the input signals (filter)
- the fft of this input signal is only computed once
2019-05-16 12:32:36 +02:00
Andre Puschmann
13c17ad9e7
add text output capabilities to filesink
2019-05-16 12:32:36 +02:00
Andre Puschmann
62dad5e21d
add nb-iot tag support to PCAP writer
2019-05-16 12:32:36 +02:00
Andre Puschmann
92f3f02f2d
remove radio_sync object
2019-05-16 12:30:26 +02:00
Andre Puschmann
dc9df36a24
remove unused radio_multi code
2019-05-16 12:30:26 +02:00
Francisco Paisana
7be183c223
rework scheduler
2019-05-14 22:34:50 +02:00
Xavier Arteaga
2aa36dd11c
Added backtrace print helper
2019-05-14 22:32:07 +02:00
Andre Puschmann
fcd086a1c5
fix metrics_hub compilation for older gcc using std::chrono
2019-05-10 13:49:42 +02:00
Xavier Arteaga
114f66f8b9
Reduce ctest execution time
2019-05-10 12:01:43 +02:00
Andre Puschmann
0f6997170b
fix unitialized var in pdu.h
2019-05-10 12:01:03 +02:00
Francisco Paisana
aca1e9612d
revert back from max_sizeof(...) to macros
2019-05-10 11:59:34 +02:00
Francisco Paisana
47ba5cd098
Set the optimization flag to Os for the rrc asn1 library
2019-05-10 11:59:34 +02:00
Francisco Paisana
14b6a1d483
setter method for choice types
2019-05-10 11:59:34 +02:00
Andre Puschmann
3f50e5f51c
fix overlapping memcpy detected by valgrind
...
this has been detected by valgrind+gcc on Ubuntu 16.04 but
isn't an issue for more recent versions. Not sure if that is because
of an issue in older libc and there memcpy implementation or a
bug in valgrind, or both.
In any case, overlapping memcpy may cause undefined behaviour so
it seems ok to only copy the symbols that do not contain the
DMRS, i.e. not symbol 3 in each slot.
2019-05-09 17:40:08 +02:00
yagoda
0213045d74
small cmake bugfix for case where srsenb is disabled
2019-05-09 16:16:19 +02:00
Ismael Gomez
efe74e765b
Fix coverty non-inititalized variables in tdec
2019-05-08 10:56:48 +02:00
yagoda
c25f3b0acf
increasing rlc UM window size for eMBMS, small adjustment to eMBMS PHY common
2019-05-06 17:06:25 +02:00
Andre Puschmann
780ea8867c
fix asn1_m2ap test
...
- there was an issue in the stack allocation of the large
m2ap pdu struct that was fixed by heap-allocating it
- there was also an issue in the m2ap packing that used
a temporary struct that was not initialized
2019-05-03 12:09:57 +02:00
Andre Puschmann
fc432adb66
fix uninitialize variable in ue_ul.c
2019-05-03 11:16:58 +02:00
Andre Puschmann
779d599289
fix naming of unittest for ch_estimation (was overwriting previous test)
2019-05-03 11:02:21 +02:00
Andre Puschmann
723cd71a3a
remove usage of <assert> in rlc_um_test
2019-05-03 10:58:05 +02:00
Andre Puschmann
46cc5a1985
use buffer pool in rlc_um_test
2019-05-03 10:52:16 +02:00
Francisco Paisana
896ef5ee64
added default init for booleans and integers
2019-05-03 09:54:57 +02:00
Francisco Paisana
37d104a2c5
max_sizeof(...) now does a divide a conquer to reduce recursion depth
2019-05-03 09:53:30 +02:00
Ismael Gomez
786830daf3
Fix minor issues for TDD
2019-05-02 19:31:46 +02:00
Andre Puschmann
498c1bae26
remove usage of <assert> in asn1_m2ap test
2019-05-02 13:38:59 +02:00
Andre Puschmann
e77adbe5a5
fix uninitialized members in ue_interface
2019-05-02 12:43:19 +02:00
Andre Puschmann
a559077b54
fixed uninitialized member in radio.h
2019-05-02 12:06:21 +02:00
Pedro Alvarez
2edc0a6b00
Fix printf of possibly uninitialized variable in chest_test_dl.c.
2019-05-02 11:41:59 +02:00
Pedro Alvarez
a18196cdc2
Making sure that string gets NULL terminated in benchmark_radio.cc when using strncpy. Fixes compiler warning in GCC 8.2
2019-05-02 11:41:59 +02:00
Pedro Alvarez
a8fe44252e
Removed memcpy and memset in rlc_am.cc to remove compiler warnings.
2019-05-02 11:41:59 +02:00
Pedro Alvarez
f2530eb57b
Fix rlc_am_data_test to avoid compiler warning from memset
2019-05-02 11:41:59 +02:00
Pedro Alvarez
3a502ccd13
Removed memset from rlc_status_pdu in test, to avoid compiler warnings.
2019-05-02 11:41:59 +02:00
Ismael Gomez
5e5e797cb9
Adjust 75 PRB radio offset and clean log
2019-05-01 07:40:53 +02:00
Xavier Arteaga
0b796c2956
Fixed random isnan
2019-04-30 17:25:50 +02:00
Xavier Arteaga
c18a59730c
Solved PHY unit test memory leaks
2019-04-30 15:56:47 +02:00
Xavier Arteaga
794325fa29
Fixed in-buffer time and use vector sine generator
2019-04-30 15:08:48 +02:00
Xavier Arteaga
baac179d95
Added vector complex sine generator
2019-04-30 15:08:39 +02:00
Xavier Arteaga
7bd3a9a43b
Added ringbuffer read function with timeout
2019-04-30 15:06:39 +02:00
Xavier Arteaga
a1a797589a
Added UE synchronization error metric (hard-coded disabled by default)
2019-04-30 15:02:08 +02:00
Xavier Arteaga
06a9d8eb6f
Added vector estimate frequency
2019-04-30 14:52:16 +02:00
Xavier Arteaga
4187781268
Random module return pointer object and solved NAN issue
2019-04-30 14:48:13 +02:00
Francisco Paisana
1674c8939f
automatically resolve invalid prach_offset for prb6
2019-04-29 15:53:59 +02:00
Ismael Gomez
47acbc1e08
Compute per-antenna and per-port chest metrics in chest_res
2019-04-29 15:25:01 +02:00
Ismael Gomez
2d9b7756df
Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next
2019-04-29 14:36:49 +02:00
Ismael Gomez
860e192cfb
Do not stop/start stream if timed commands are not supported
2019-04-29 14:36:41 +02:00
yagoda
3842beab0f
- fixing pmch file test for standard LTE rates
...
- adding special value for MTCH stop
- adding error messages for config values incompatible with MBMS
2019-04-29 12:04:42 +02:00
Andre Puschmann
4b01a2e4a0
update copyright notice
2019-04-29 09:20:02 +02:00
Andre Puschmann
205db6f229
add missing license headers
2019-04-26 21:20:12 +02:00
Andre Puschmann
c4e8bed042
log SDU dropping in info in RLC AM
2019-04-26 12:10:45 +02:00
Xavier Arteaga
e2daeca0b5
UHD v3.14 Set sample rate walkaround for N310 and X310
2019-04-26 11:56:55 +02:00
Ismael Gomez
7780b1aba5
add tdd/ca support
2019-04-25 20:57:58 +02:00
Xavier Arteaga
963a5faad0
Disable UHD inmediate messages automatically
2019-04-25 17:27:51 +02:00
Xavier Arteaga
54d11f9e88
UE AGC Fix. Tries to set the Rx gain even if it reaches the limit.
2019-04-25 17:05:13 +02:00
Andre Puschmann
c6e19645af
add zmq-based rf driver
2019-04-25 10:25:49 +02:00
Andre Puschmann
f2266bb264
add uint64 (sample based) time stamp helpers
2019-04-22 15:35:26 +02:00
Xavier Arteaga
ed6b138cb2
Added safe and good quality random generator in phy/utils
2019-04-21 21:41:17 +02:00
Xavier Arteaga
c42fbbe6a5
Created 3GPP fading channel emulator
2019-04-21 15:27:31 +02:00
Andre Puschmann
3149e4191a
Merge branch 'master' into next
2019-04-15 15:23:33 +02:00
David Rupprecht
735f97ceb6
Fixed Bearer ID for data Bearer and changed debug type for enc data pdus
2019-04-11 21:38:01 +02:00
David Rupprecht
b84e49310e
Enable encryption in reconfiguration and after security mode command (NOT TEST)
2019-04-11 21:38:01 +02:00
David Rupprecht
eb3a83ac45
User Plane key in configuration interface
2019-04-11 21:38:01 +02:00
Pedro Alvarez
ca603810ce
Adding Downlink data notification and paging functionality to the EPC.
...
This entails:
* Adding S1AP paging messaging to the MME.
* Adding the Downlink Data Notification, Donlink Data Notification Acknoledgment, and Downlink Data Notification Failure Messages.
* Adding the logic at the GTP-U to detect that Downlink Data notification needs to be sent.
* Proper handling of the new GTP-C messages at the MME GTPC and SPGW GTPC classes
* Add queuing mechanisms at the GTP-U while waiting for paging response. Queue is flushed when paging fails (timeout or other).
* Make sure eNB's SCTP information is properly stored.
* Make sure UE's GUTI information is properly stored.
2019-04-09 16:59:44 +02:00
Pedro Alvarez
1db959c661
Added NAS timer functionality to the EPC. This entails:
...
* Adding timer creation at NAS using timerfd_create
* Adding the ability to add and remove the timer file descriptor to the MME main select loop
* Adding the ability to the MME for the NAS to check if a timer is running
* Adding the timer expiry handling functionality at the MME
2019-04-08 13:05:54 +02:00
aholtzma
429ee9019d
Fix enb putting the SSS in the wrong place with ext CP enabled.
2019-04-05 09:19:49 +02:00
Francisco Paisana
dc0b903130
added default enum inits
2019-04-02 11:03:37 +02:00
Pedro Alvarez
5f7b6ba79e
Split GTP-C and GTP-U functionality into seperate classes in the SPGW. Added GTP-U specific logging in the EPC. Added handle_s11_pdu function to both the MME GTP-C entity and the SPGW GTP-C entity.
2019-04-02 09:17:00 +02:00
Andre Puschmann
3405a1bff6
add multi-channel support for soapy
2019-03-20 14:07:15 +01:00
Andre Puschmann
beec489dd4
fix issue in SoapySDR tx routine
...
correct offsetting tx buffer when first call couldn't tx all samples
2019-03-20 14:07:15 +01:00
Pedro Alvarez
add60c1288
Applied clang-format to the EPC.
2019-03-20 14:00:02 +01:00
Francisco Paisana
7fd8ca82c6
fix complex.h issue
2019-03-11 13:31:43 +01:00
Andre Puschmann
1cc6ae3c60
enable c++11 support
2019-03-11 13:31:43 +01:00
Francisco Paisana
18f61b13d9
fixed asn1 to_json converter for extensions
2019-03-01 11:06:39 +01:00
Andre Puschmann
e84d26ae4e
fix RLC UM reestablishment
2019-03-01 11:01:58 +01:00
Andre Puschmann
c49dddc09a
fix RLC UM bug and enable Rx after reestablishment
2019-02-22 09:51:59 +01:00
Andre Puschmann
c4c44c33f4
use blocking pool_allocate in pdu_queue
2019-02-21 16:10:04 +01:00
Francisco Paisana
80031d0846
shortened enumerated string/number conversion implementations.
2019-02-21 15:56:23 +01:00
Francisco Paisana
ca3ea5e658
shortened enumerated types declarations
2019-02-21 15:56:23 +01:00
Francisco Paisana
e50c062084
added extra separator comments
2019-02-21 15:56:23 +01:00
Andre Puschmann
afb591ee97
add ctor for worker class in thread_pool
2019-02-20 16:14:48 +01:00
Andre Puschmann
94481c1963
removed warning in RLC if LCID isn't valid for all methods called by BSR procedure
...
this was causing many warnings in the log because the BSR checks with RLC
if a bearer has data even if it doesn't exist
2019-02-11 23:58:19 +01:00
Andre Puschmann
0aef6f8d4a
fix various uninitialized variables
2019-02-10 09:08:06 +01:00
Andre Puschmann
c8f8c16d50
make EIA and EEA algorithms configurable ( #323 )
...
this patch allows to configure the EIA and EEA algorithms
the UE uses and announces during attach. They can
be specified as a comma-separated list.
The patch also removes a dedicated NAS config class and uses
the default nas_args_t type for this. There was a full
duplication of members before.
The patch also converts nas_args_t and usim_args_t into a class
with a default constructor that initialize all booleans.
2019-02-08 22:37:16 +01:00
Andre Puschmann
86232c143e
expose RLC tx queue length through config struct
2019-02-01 17:11:55 +01:00
Andre Puschmann
84c8626808
print error when RLC bearer LCID change is not successful
2019-02-01 16:34:45 +01:00
Andre Puschmann
5dfc126a30
improve RLC logging when LCID is not valid
2019-02-01 16:33:22 +01:00
Ralf Lindstedt
5c088d75ae
Fixed check for valid cell-identity group
2019-02-01 10:28:43 +01:00
Andre Puschmann
7343453e25
fix bug in rf_imp
...
- set thread gain run variable to false by default
2019-01-31 15:31:40 +01:00
Andre Puschmann
ef544e64c2
expose RF device as paramter for pdsch_enodeb/_ue
2019-01-31 15:31:33 +01:00
Xavier Arteaga
c782ef2aa5
Solved unitialised values in UE (up to prach) and free
2019-01-22 12:23:57 +01:00
Andre Puschmann
2e1b8240e6
fix uninitialized timeval struct in metrics_hub
...
This was causing issue in some builds done on the Ubuntu
PPA systems leading to an SIGILL when starting the UE/eNB
2019-01-22 12:23:24 +01:00
Andre Puschmann
77ca1d9882
load config file from user's home directory first before checking etc
2019-01-22 12:09:52 +01:00
Andre Puschmann
788f283492
Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next
2019-01-21 15:53:49 +01:00
Francisco Paisana
840b9ce364
fixed octstring to_number() endianess
2019-01-21 14:16:21 +00:00
David Rupprecht
3d458319c9
fixed decoding of multiple s1ap plmns
2019-01-21 10:55:06 +01:00
Francisco Paisana
0204db2e12
new asn1 rrc library
2019-01-17 17:43:13 +01:00
yagoda
d4e72d7128
small change to eMBMS channel estimation
2019-01-16 16:30:05 +01:00
Andre Puschmann
646eb9c0e3
Merge pull request #313 from softwareradiosystems/next_mme_encryption
...
NAS MME encryption
2019-01-15 21:31:25 +01:00
Andre Puschmann
4655ad92fe
fix mem leak in radio
2019-01-15 16:33:17 +01:00
Andre Puschmann
2590ebd10b
fix bugs reported by coverity
2019-01-15 15:59:38 +01:00
Pedro Alvarez
584c190773
Merge branch 'next' into next_mme_encryption
...
Updating next_mme_encryption to the latest next.
2019-01-14 14:16:59 +00:00
Andre Puschmann
04f6569113
fix missing newline in RLC log
2019-01-14 14:38:41 +01:00
Andre Puschmann
0abc7d4dbd
fix bug when stopping ringbuffer
2019-01-11 13:28:32 +01:00
Andre Puschmann
e328681343
add decode/encode when printing CB misconfig
2019-01-11 13:28:27 +01:00
Andre Puschmann
53850e5353
delete MRB bearer during PDCP destruction
2018-12-30 22:58:41 +01:00
Andre Puschmann
98780c1af5
free mem for UHD handler if no UHD device was found
2018-12-30 22:35:37 +01:00
Pedro Alvarez
997c24c099
Added config of cipher_algo and integ_algo initialization in NAS class.
2018-12-18 18:27:31 +00:00
Pedro Alvarez
d7b92b8f77
Small commit to fix PDCP SN packing in liblte_s1ap
2018-12-18 12:13:56 +00:00
Andre Puschmann
955f5dd37a
add mutex in pdcp entity
...
write_sdu and write_pdu are not re-entrant because all functions
that deal with the counters, e.g. integrity check and generate,
must be protected because MAC threads may call them at the same time.
this addresses issue #254
2018-12-18 11:54:54 +01:00
Andre Puschmann
bdbdef41c0
fix compiler warning in pdsch_ue
2018-12-18 11:53:16 +01:00
Andre Puschmann
db3ce8ade9
remove clang-tidy execution for srslte_upper
2018-12-18 11:53:12 +01:00
Andre Puschmann
0e7512f349
fix RLC UM params for eMBMS
2018-12-17 17:47:27 +01:00
Andre Puschmann
59d9a78869
add eia1 tests and fix sib2 bug ( #311 )
...
* Starting to add EIA1 tests.
* Initial tests for EIA1
* Bit shifted bearer by 27. Test case 1 and 4 are passing now.
* Adding EIA test case 7.
* Making sure the test is called.
* Fixed double initialization of msg_len_bits.
2018-12-17 16:33:11 +01:00
Andre Puschmann
df7ab7ffe8
Merge branch 'master' into next
2018-12-14 16:54:46 +01:00
Eric Schreiber
46d41a5dc5
Remove undefined increment of an erased iterator. ( #274 )
2018-12-14 12:01:44 +01:00
Pedro Alvarez
3205121015
M2 interface packing/unpacking ( #305 )
...
* Starting to add M2AP serialization structures.
* Added M2AP procedure ids.
* Added some M2AP max values.
* Removing m2ap.cc for now.
* Adding cause IE.
* Adding dummy m2ap.cc to check correct compilation of m2ap.h
* Fixed compilation issues in m2ap.h
* Adding Cell Information IE.
* Added Criticality diagnostics IE.
* Adding eNB-MBMS-ConfigurationDataItem.
* Adding MBMS-Service-Area-Id-List
* Added MBMS Service Area Id.
* Added Global eNB Id IE.
* Added Global MCE id IE.
* Added MBMS-Service-associatedLogicalM2-ConnectionItem IE.
* Added MBSFN_SUBFRAME_CONFIGURATION IE
* Added MCCHrelatedBCCH-ConfigPerMBSFNArea IE.
* Added MCH scheduling period IE.
* Added PMCH-Configuration IE.
* Added Time-to-Wait IE.
* Added TNL-Information IE.
* Starting to add M2SetupRequest msg.
* Adding M2 Setup Request message.
* Fixed up enums related to initiating messages, successful outcome and unscesseful outcome.
* Starting to add m2ap apck/unpack PDU functions.
* Started to add a test for M2 Setup Request Pack/Unpack.
* Filling in M2SetupRequest structure.
* Adding packing of more IEs in the M2SetupRequest.
* Starting to add unpacking functions to M2SetupRequest.
* Continuing to unpack M2SetupRequest. Unpacking PLMN Identity correctly now.
* Fixed up enb_id unpacking. eNB Id and eNB name unpacking correctly now.
* Starting to add unpacking for dataconfiguration item.
* Adding support for eCGI unpacking.
* Adding MBSFN Synchronization Area id Unpacking.
* Adding service area unpacking.
* Added unpacking functionality to the rest of the IEs in the M2 Setup Request. Unpacking the M2 Setup Request is passing unit test.
* Fized mistake in packing eNB Id. Starting to add packing to eCGI.
* Starting to pack value in ENB MBMS Configuration item.
* Fixed packing of ENB MBMS configuration item header.
* Packing of M2 Setup request is now passing the unit test.
* Starting to add M2setup response.
* Starting to add packing/unpacking succeful outcome.
* Starting to add M2SetupResponse to test.
* Continue to add testing to setup response. Choice type seems OK.
* Starting to add unpacking to MCE Id.
* Adding MCEname packing/unpacking.
* Continue to unpack m2setupresponse.
* Adding MBMS Area Id unpacking
* Added pddch length unpacking.
* Adding more IE unpacking.
* Adding more code to unpack M2 Setup response.
* Added M2 Setup response unpacking.
* Added M2 response packing. Fixed mistake on eCGI packing/unpacking, which broke M2 Setup request.
* M2 setup request and response pack and unpacking seems to work.
* Starting to add MBMS Session Start Request.
* Continue to unpack MBMS session start request.
* Added TMGI unpacking.
* Continue to add unpacking to MBMS session start request
* Starting to add TNL Information unpacking
* Added unpack for MBMS session start request.
* Strating to add MBMS session start request packing.
* Adding MCE MBMS M2AP Id packing.
* Added MBMS Session Start Reqeust pack and unpack.
* Added MBMS Session start response packing/unpacking.
* Starting to add unpacking of MBMS Scheduling information.
* Adding MCCH Update time Unpacking.
* Adding MBSFN Area Configuration List Unpacking.
* Starting to add unpack PMCH configuration Item.
* Adding AllocatedSubframesEnd unpack
* Fixed multiple mistakes in unpacking PMCH configuration.
* Unpacking MCH Scheduling Period
* Continue to unpack MBMS Session List Per PMCH Item.
* Added unpacking of PMCH Configuration List. Starting to add unpacking of MBSFN Subframe Configuration List.
* Adding radioframe allocation period and offset unpacking.
* Added unpacking of MBMS Scheduling Information (needs testing.)
* Added more testing to MBMS Scheduling Info.
* Small commit.
* Added more testing to the unpacking of MBMS Scheduling Information. Unpacking correctly now.
* Continue to pack MBMS Scheduling information. Packing PMCH Configuration.
* Fixed mistach in packing PMCH configuration list.
* Adding more packing to MBMS scheduling info message.
* Fixed more mistakes in MBMS Scheduling information packing. Passing tests now.
* Added MBMS Scheduling Information Response.
* Remove debug prints.
2018-12-12 15:22:35 +01:00
Ismael Gomez
a8a0c3ebe7
Fixed compilation in zynq
2018-12-12 14:34:13 +01:00
Ismael Gomez
8f541cf4e1
Merge branch 'next' into neon_windowed_tdec
2018-12-12 11:47:50 +01:00
yagoda
3762738bc1
adding windowed neon turbodecoder (can be further optimized)
2018-12-12 11:27:07 +01:00
Andre Puschmann
c88cc35fdf
try to load config files from /etc/srslte before checking users's home
2018-12-11 17:40:48 +01:00
Andre Puschmann
59435c2c34
add own cpuid helper to detect avx2 support
...
the cpuid.h version caused issues with older GCC 5.4
2018-12-10 22:16:13 +01:00
Andre Puschmann
34f552fae9
add universal executable to select binary based on current ISA
...
- using cpuid to check x86 features
- using hwcap on ARM to check for NEON
2018-12-10 17:48:52 +01:00
Andre Puschmann
d6196ba234
simplify RRC-NAS interface and only have msg as param (RRC selects LCID)
2018-12-10 17:48:52 +01:00
Andre Puschmann
e02ed62d02
update tx adv nsamples calibrated with UXM
2018-12-10 17:48:52 +01:00
Andre Puschmann
c3441046c9
simplify RLC buffer status query procedures
...
- add a simple and low-overhead has_data() method to check whether
an RLC entity has data to transmit or not
- use this method for all calls that are actually not interested
in the amount of data to send
- use the more expensive get_buffer_state() for all cases where
the actual size of the buffer is of importance
2018-12-10 17:48:52 +01:00
Andre Puschmann
df40259c26
fix issue in PDCP when bearer ID for DRBs was not starting with 1
2018-12-10 16:58:08 +01:00
Pedro Alvarez
e88e1bb4d2
Fixed TMSI packing length (was giving trouble with Xperia).
2018-12-07 10:28:05 +00:00
Andre Puschmann
e25d0f5d8a
fix Soapy deactivation during build if lib was found
2018-12-03 14:59:44 +01:00
Pedro Alvarez
553f8260bb
Fixing up logs and comments.
2018-11-30 21:42:43 +01:00
Pedro Alvarez
dc727a192b
Changing way UL NAS count is used to generate the K_enb.
2018-11-30 21:42:43 +01:00
Andre Puschmann
fb78cc2996
Adding some debug prints.
2018-11-30 21:41:30 +01:00
yagoda
b31538a0b9
small fix to interpolator to fix pmch test
2018-11-28 16:20:26 +01:00
Andre Puschmann
8ca73b9c4e
remove unused variable
2018-11-28 16:17:36 +01:00
yagoda
2acf282a8b
adding fixes to embms channel estimation
2018-11-28 14:14:40 +01:00
yagoda
69dc16c4c8
changes to fix arm compilation
2018-11-27 14:27:59 +01:00
Andre Puschmann
398e271eee
add out-of-order test for RLC AM PDUs
2018-11-22 13:18:53 +01:00
Andre Puschmann
1ffd8d48ce
log warning when receiving unexpected RLC AM segment
2018-11-22 11:46:24 +01:00
Xavier Arteaga
8c3a0153b9
Added missing AVX512 intrinsics and flags. Fixes #291 .
2018-11-21 18:09:09 +01:00
Andre Puschmann
db910cb84b
add CSV metrics for eNB
2018-11-20 12:15:04 +01:00
Andre Puschmann
8a1368c8d6
send connection reject if MME isn't connected
2018-11-16 14:56:39 +01:00
Andre Puschmann
b71dab87f1
add function to query if RLC bearer exists (the implementation)
2018-11-02 21:46:03 +01:00
Andre Puschmann
0af19b070c
add function to query if RLC bearer exists to UE interface
2018-11-02 21:28:03 +01:00
Andre Puschmann
1ed225a10b
add getter for IPv4 and IPv6 addresses
2018-10-26 13:09:03 +02:00