Commit Graph

616 Commits

Author SHA1 Message Date
Ismael Gomez 4a8d83721a Fix unnecessary memory usage in radio 2018-09-20 09:45:46 +02:00
IgnasJ 67c8bf1368 Fixes for srsLTE on ARM (#229)
* Fix ARM NEON code compilation

Fix LV_HAVE_NEON defintion incorrecly used instead of HAVE_NEON in some places
Replace vqabsq_s32 with vabsq_f32 as vqabsq_s32 requires int type (fails to compile)
Fix missing NEON code path in mat.h in srslte_mat_2x2_mmse_csi_simd()

* Fix timestamp overflow issue on 32-bit systems with Soapy driver

'time_t secs' can be 32-bit on some systems. This causes calculation:
'secs * 1000000000;' to overflow.
2018-09-19 17:34:59 +02:00
Ismael Gomez 0294923e2b Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-19 16:42:11 +02:00
Ismael Gomez 197d855d3f Fix issue #240 2018-09-19 16:41:59 +02:00
Xavier Arteaga a9fcd64b1f Fixes #259: Turbodecoder AVX2 instructions under LV_HAVE_AVX (instead of LV_HAVE_AVX2) 2018-09-19 12:35:37 +02:00
Andre Puschmann 184539b87d add LCID change API to UE interface, add method to reestablish single RLC bearer 2018-09-18 15:09:24 +02:00
Andre Puschmann 10bc01a7ae add API to change LCID of RLC bearers 2018-09-17 13:11:03 +02:00
Andre Puschmann 27459bf706 add API to change LCID of PDCP bearers 2018-09-17 13:10:44 +02:00
Andre Puschmann adbec3ee70 fix warning in common.h reported by clang-tidy 2018-09-13 17:12:32 +02:00
Ismael Gomez 243a7708d4 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-07 14:06:27 +02:00
Ismael Gomez 826fbccf11 Fixed memory leaks in new decoder 2018-09-07 14:05:45 +02:00
Andre Puschmann c0899ddda9 refactor RLC AM, add tx/rx subclasses 2018-09-07 10:49:52 +02:00
Ismael Gomez bc9d342959
New optimization on the PHY for both UE and eNodeB (#251)
* New parallel Turbodecoder implementation in SSE/AVX 16-bit and 8-bit

* Optimised UL Interleaver

* Include TB CRC calculation in FEC encoder

* New threading priorities
2018-09-04 17:51:35 +02:00
Pedro Alvarez 0d80ae795b Added IMSI attach from unknown UE as a static function. 2018-08-27 19:17:23 +01:00
Pedro Alvarez 860e1b5491 Changing Handling of initial UE NAS messages to use static methods. Handling of unknown GUTI attach request should be ok. 2018-08-27 16:06:18 +01:00
Pedro Alvarez 93222f582c Changed authentication response to use downlink_nas_transport(). 2018-08-21 15:17:08 +01:00
Pedro Alvarez f6b8982939 Moved most of the GUTI attach to nas.cc. 2018-08-20 15:48:23 +01:00
Pedro Alvarez 1fba7f0afa Moved function that gets NAS type string to liblte_mme.cc 2018-08-14 18:42:48 +01:00
Pedro Alvarez 127e214b07 Added function to print string of NAS message type based on the message code. 2018-08-14 17:19:19 +01:00
Pedro Alvarez 7077530a29 Merge branch 'next' into nas_cleanup 2018-08-13 11:59:23 +01:00
Andre Puschmann f56592b0fe add getter for PDCP ul/dl counter 2018-08-08 16:26:32 +02:00
Andre Puschmann 91492b87ef add del_bearer for RLC/PDCP 2018-08-06 13:17:51 +02:00
Andre Puschmann 3b8371d090 add detach support (for switch off) 2018-08-06 11:10:12 +02:00
Andre Puschmann 2ef2baf72a increase size of buffer_pool
- This solves an issue where in the worst-case an RLC AM instance would
  block because no new data nor control PDUs could be created to flush
  the buffers, effectivly causing a system stall.
- Happens in RLC AM stress test regularly with higher drop rates.
2018-07-30 15:11:31 +02:00
Andre Puschmann 89df8f1582 unify RLC interface for writing SDUs w/ and w/o blocking 2018-07-25 16:08:07 +02:00
Andre Puschmann 3950629a75 remove obsolete RLC_MODE struct and move existing one to rlc_interface.h 2018-07-25 16:06:42 +02:00
Andre Puschmann ee5b055829 rename pdcp function for GW to is_lcid_enabled() 2018-07-25 15:09:19 +02:00
David Rupprecht bf4c84ef7b Fixed clear function in blocked queue (#199) 2018-07-25 09:54:22 +02:00
Andre Puschmann 6a2dc8677b remove obsolete header 2018-07-24 16:44:40 +02:00
Andre Puschmann b8438e9cc3 extend PDCP interface to allow non-blocking write of SDUs 2018-07-24 15:49:09 +02:00
Andre Puschmann 27d3d697df refactor RLC part#2
- move metrics into entities
- make configure interface return true/false on success/failure
- add own srslte mode type
2018-07-23 17:30:32 +02:00
Pedro Alvarez de8679b536 Continuing to cleanup. Starting to compile again. 2018-07-23 15:30:19 +01:00
Andre Puschmann 8e8fab027b refactor RLC base class
- add rwlock
- put RLC entities into map
- general cleanup
2018-07-23 15:42:54 +02:00
Pedro Alvarez f03967776a Continuing to clean nas.cc 2018-07-20 19:50:46 +01:00
Pedro Alvarez b25c12a084 Fixing nas.cc 2018-07-18 19:25:59 +01:00
Pedro Alvarez 85672d4a3f Fixing up s1ap.cc 2018-07-18 17:25:37 +01:00
Andre Puschmann b8b5ad9755 Merge branch 'pdcp_refactor' into next 2018-07-17 17:42:13 +02:00
Xavier Arteaga a21db86a78 SCH Codeblock CRC is computed at same time than parity 0 2018-07-17 15:37:57 +02:00
Andre Puschmann 47a8b1343f add rwlock to PDCP 2018-07-17 15:27:04 +02:00
Andre Puschmann 93c11e4416 turn PDCP array into map 2018-07-17 12:50:10 +02:00
Andre Puschmann b257204471 fix public PDCP interface 2018-07-17 12:17:55 +02:00
Andre Puschmann 31ba175b37 add public PDCP entity interface 2018-07-17 12:17:55 +02:00
Pedro Alvarez 3663d59920 Starting to add s1ap_interface_gtpc and s1ap_interface_nas. Adapting send initial context setup request accordingly. 2018-07-16 13:50:12 +01:00
Andre Puschmann be3b2fbc08
Merge pull request #239 from softwareradiosystems/epc_stacktrace
Epc stacktrace
2018-07-13 14:28:13 +02:00
Pedro Alvarez 84e7925f69 Fixed up a comment. 2018-07-13 12:06:27 +01:00
Pedro Alvarez 8017b792cf Changing SRSLTE_PHY_DEBUG back to SRSLTE_DEBUG. 2018-07-13 11:59:03 +01:00
Pedro Alvarez 597cf18b9d Changing common/debug.h to crash_handler.h 2018-07-13 11:57:15 +01:00
Andre Puschmann 291d80119c fix conflicts after merging 2018-07-13 12:42:54 +02:00
Ismael Gomez 3f38165827 Add log to pool deallocate 2018-07-12 18:41:25 +02:00
Ismael Gomez 2d5cdc4f35 Add log to pool deallocate 2018-07-12 18:13:27 +02:00
Ismael Gomez 5474f6d55f Add log to pool deallocate 2018-07-12 18:13:19 +02:00
Ismael Gomez 3cb9f51460 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-07-12 18:12:32 +02:00
Andre Puschmann 936001aaf5 add blocking allocation to buffer_pool 2018-07-12 17:52:53 +02:00
Pedro Alvarez c3ef88e112 Fixing conflicts with next. 2018-07-12 15:43:27 +01:00
Andre Puschmann a9b023258c refactor RLC UM to have separate tx/rx objects 2018-07-12 16:13:03 +02:00
Andre Puschmann 4c59f52f9a
Merge pull request #237 from softwareradiosystems/epc_pcap
Epc pcap
2018-07-12 16:00:31 +02:00
Ismael Gomez 3122d8e959 RLC reestablish to re-enable tx_enabled 2018-07-12 11:18:14 +02:00
Ismael Gomez 75e8df2e9f Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-07-11 15:33:22 +02:00
Andre Puschmann 55b3b61ec1 Merge branch 'master' into next 2018-07-11 13:00:47 +02:00
Ismael Gomez bd5c1fd83a deallocate dedicatedInfoNAS in rrc 2018-07-11 12:56:14 +02:00
Ismael Gomez 074db8478c deallocate dedicatedInfoNAS in rrc 2018-07-10 19:52:46 +02:00
Pedro Alvarez bd43b6e937 Cleanup comment. 2018-07-10 15:56:57 +01:00
Andre Puschmann 9b894799f0 add support for ciphered authentication response 2018-07-10 12:34:25 +02:00
Pedro Alvarez ff49e56871 Starting to add s1ap_pcap class. 2018-07-09 18:25:43 +01:00
Pedro Alvarez 7aaa9a1789 Moved srslte_debug_handle_crash to common/debug.c 2018-07-09 14:33:50 +01:00
Pedro Alvarez 96786e96da Splitting the lib debug into phy and common debug. 2018-07-09 13:15:35 +01:00
Ismael Gomez 005fe87ae9 RLC reestablish to re-enable tx_enabled 2018-07-09 00:26:58 +02:00
Ismael Gomez 493706eab1 Incorrect default value in buffer pool 2018-07-06 16:20:15 +02:00
Ismael Gomez 2da9787907 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-07-06 15:31:29 +02:00
Ismael Gomez a2615628aa Increase buffer pool size for enb 2018-07-06 15:30:51 +02:00
Pedro Alvarez b460ece601 Merge branch 'mbms_tun' into next 2018-07-06 13:01:14 +01:00
Andre Puschmann 355330dab9
Merge pull request #234 from softwareradiosystems/log_fix
Log fix
2018-07-06 13:07:55 +02:00
Ismael Gomez 85a7daa09d Move RLC buffer size to common 2018-07-06 09:08:29 +02:00
Ismael Gomez 589e569ce9
Changes on srsENB mutexing logic to fix general race condition and deadlock issues (#229)
* fixed some issues with the UL scheduling

* Hack to fix UL scheduler

* minor fix

* Cleaned up code and fixed issue with the update_allocation function

* fixed the console printing in the enb

* log/console fix

* fixed the log print

* added a normalization factor

* RLC: entity uses dynamic instances. Simplified stop/reset/reestablish procedure. Added non-blocking interface

* Limit decimals in metrics stdout

* Changed mutexes to rwlock in RLC/RRC/MAC/PDCP to fix race conditions when removing users

* Fix deadlock bug for MIMO

* Remove headers

* Fix missing unlock causing overflows

* Do not decrease CQI when PUCCH (this is a temporal fix, requires to reduce the maximum MCS)

* Fix mutex unlock in worker

* Configurable RLC tx buffer. Default to 512 for enodeb

* Check NULL SDU in write_sdu()

* Protect RLC objects and tx_queue from being destroyed while using it

* Remove superfluous code

* Disable SIB logging

* Fix block_queue for enb
2018-07-05 11:00:19 +02:00
Pedro Alvarez 0e135adc6f Starting to change gtpu_read_header and gtpu_write_header to lib. 2018-07-03 14:30:20 +01:00
Andre Puschmann 87fd218c72 remove unused cond variable in logger 2018-07-03 13:17:48 +02:00
Andre Puschmann 4deb251071 remove duplicate run-state variable in logger_file 2018-07-03 13:09:43 +02:00
jctallon 50589108c6 Mbms fixes (#225)
* fixing the threading structure for mbms in the gtpu

fixing some leaks in pmch tests

fixing stack overflow caused by radio objext

* adding sib.conf.mbsfn.example

* creating a different thread_mch object for the gtpu

* Make mch_thread an isolated class

* excluding mbsfn subframes from noise estimation and cfo estimation

* fixing pdsch ue plotting to only show pmch constellation when mbsfn is activated.
2018-07-02 17:51:09 +02:00
Andre Puschmann 05ede38ea6 remove obsolte config.h 2018-06-29 15:31:34 +02:00
Ismael Gomez 8c92f3fddc
Improvements and fixes on srsENB scheduler (#228) 2018-06-29 11:25:22 +02:00
Andre Puschmann 46436efb3b
Merge pull request #227 from softwareradiosystems/qci_epc
Qci epc
2018-06-28 14:30:48 +02:00
Andre Puschmann 1cba6b18ee
Merge pull request #221 from softwareradiosystems/op_vs_opc
Op vs opc
2018-06-28 12:44:39 +02:00
Xavier Arteaga f01f7b4945 Added Vector max abs SIMD function 2018-06-28 09:28:17 +02:00
Pedro Alvarez 0a6540d8bf Saving QCI into ESM context. Different QCIs should be working now. 2018-06-27 17:45:19 +01:00
Ismael Gomez e18ba937dc Limit uplink signal normalization to avoid clipping 2018-06-27 16:29:40 +02:00
Pedro Alvarez 66db3deeb4 Starting to add Bearer QoS parameter to create session request. 2018-06-27 15:10:17 +01:00
Pedro Alvarez 1b43c40422 Starting to add Bearer QoS IE to Create Session Request. 2018-06-26 18:53:04 +01:00
Pedro Alvarez f301bb6373 Merging next into op_vs_opc and resolving conflicts. 2018-06-26 11:36:40 +01:00
Andre Puschmann 064d7bd2dc use original UE establishment cause in S1AP initial UE message 2018-06-25 18:19:57 +02:00
Xavier Arteaga 5e4fb48184 Refactored CQI reporting logging in UE. Fixes #199 2018-06-25 14:57:12 +02:00
Andre Puschmann ecfa685dde add ctor to radio_multi, fix tearing down radio when not initialized 2018-06-20 16:40:10 +02:00
Andre Puschmann 01f6395d70 add option to force IMSI attach by not loading NAS ctxt from file 2018-06-19 14:23:47 +02:00
Pedro Alvarez 75c5e476f1 Added OPc option to UE. (needs testing.) 2018-06-18 15:19:04 +01:00
Pedro Alvarez 02bc1c9956 Revert "Starting to add OP/OPc support."
This reverts commit 1766e11076.
2018-06-18 11:34:45 +01:00
Pedro Alvarez e3d1cff4a3 Revert "Adding OPc option to security functions."
This reverts commit 0eeb70bede.
2018-06-18 11:29:40 +01:00
Pedro Alvarez 0eeb70bede Adding OPc option to security functions. 2018-06-18 11:24:35 +01:00
Pedro Alvarez 1766e11076 Starting to add OP/OPc support. 2018-06-15 13:28:23 +01:00
Ismael Gomez 6120f20290
Changes in RRC and S1AP to make enb more robust on UE add/rem operations.
* Consolidated functions in S1AP

* Fixed ASAN in some GCC

* Stop quicker the enb

* Minor typo edit

* Fixed mutexing issues in RRC and possibly RLC/PDCP when adding/removing users
2018-06-12 17:31:07 +02:00
Xavier Arteaga 301415a00a Fixed AGC out of bounds gain 2018-06-11 13:14:47 +02:00
Xavier Arteaga d9db80d17c Merge branch 'next' into pdsch-coworkers 2018-06-06 17:35:09 +02:00