1392 Commits (114f66f8b997d00b6d5e629ad3d43b4ef89970b1)

Author SHA1 Message Date
Andre Puschmann 3149e4191a Merge branch 'master' into next 6 years ago
David Rupprecht 735f97ceb6 Fixed Bearer ID for data Bearer and changed debug type for enc data pdus 6 years ago
David Rupprecht b84e49310e Enable encryption in reconfiguration and after security mode command (NOT TEST) 6 years ago
David Rupprecht eb3a83ac45 User Plane key in configuration interface 6 years ago
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.
6 years ago
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
6 years ago
aholtzma 429ee9019d Fix enb putting the SSS in the wrong place with ext CP enabled. 6 years ago
Francisco Paisana dc0b903130 added default enum inits 6 years ago
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. 6 years ago
Andre Puschmann 3405a1bff6 add multi-channel support for soapy 6 years ago
Andre Puschmann beec489dd4 fix issue in SoapySDR tx routine
correct offsetting tx buffer when first call couldn't tx all samples
6 years ago
Pedro Alvarez add60c1288 Applied clang-format to the EPC. 6 years ago
Francisco Paisana 7fd8ca82c6 fix complex.h issue 6 years ago
Andre Puschmann 1cc6ae3c60 enable c++11 support 6 years ago
Francisco Paisana 18f61b13d9 fixed asn1 to_json converter for extensions 6 years ago
Andre Puschmann e84d26ae4e fix RLC UM reestablishment 6 years ago
Andre Puschmann c49dddc09a fix RLC UM bug and enable Rx after reestablishment 6 years ago
Andre Puschmann c4c44c33f4 use blocking pool_allocate in pdu_queue 6 years ago
Francisco Paisana 80031d0846 shortened enumerated string/number conversion implementations. 6 years ago
Francisco Paisana ca3ea5e658 shortened enumerated types declarations 6 years ago
Francisco Paisana e50c062084 added extra separator comments 6 years ago
Andre Puschmann afb591ee97 add ctor for worker class in thread_pool 6 years ago
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
6 years ago
Andre Puschmann 0aef6f8d4a fix various uninitialized variables 6 years ago
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.
6 years ago
Andre Puschmann 86232c143e expose RLC tx queue length through config struct 6 years ago
Andre Puschmann 84c8626808 print error when RLC bearer LCID change is not successful 6 years ago
Andre Puschmann 5dfc126a30 improve RLC logging when LCID is not valid 6 years ago
Ralf Lindstedt 5c088d75ae Fixed check for valid cell-identity group 6 years ago
Andre Puschmann 7343453e25 fix bug in rf_imp
- set thread gain run variable to false by default
6 years ago
Andre Puschmann ef544e64c2 expose RF device as paramter for pdsch_enodeb/_ue 6 years ago
Xavier Arteaga c782ef2aa5 Solved unitialised values in UE (up to prach) and free 6 years ago
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
6 years ago
Andre Puschmann 77ca1d9882 load config file from user's home directory first before checking etc 6 years ago
Andre Puschmann 788f283492 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 6 years ago
Francisco Paisana 840b9ce364 fixed octstring to_number() endianess 6 years ago
David Rupprecht 3d458319c9 fixed decoding of multiple s1ap plmns 6 years ago
Francisco Paisana 0204db2e12 new asn1 rrc library 6 years ago
yagoda d4e72d7128 small change to eMBMS channel estimation 6 years ago
Andre Puschmann 646eb9c0e3
Merge pull request #313 from softwareradiosystems/next_mme_encryption
NAS MME encryption
6 years ago
Andre Puschmann 4655ad92fe fix mem leak in radio 6 years ago
Andre Puschmann 2590ebd10b fix bugs reported by coverity 6 years ago
Pedro Alvarez 584c190773 Merge branch 'next' into next_mme_encryption
Updating next_mme_encryption to the latest next.
6 years ago
Andre Puschmann 04f6569113 fix missing newline in RLC log 6 years ago
Andre Puschmann 0abc7d4dbd fix bug when stopping ringbuffer 6 years ago
Andre Puschmann e328681343 add decode/encode when printing CB misconfig 6 years ago
Andre Puschmann 53850e5353 delete MRB bearer during PDCP destruction 6 years ago
Andre Puschmann 98780c1af5 free mem for UHD handler if no UHD device was found 6 years ago
Pedro Alvarez 997c24c099 Added config of cipher_algo and integ_algo initialization in NAS class. 6 years ago
Pedro Alvarez d7b92b8f77 Small commit to fix PDCP SN packing in liblte_s1ap 6 years ago
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
6 years ago
Andre Puschmann bdbdef41c0 fix compiler warning in pdsch_ue 6 years ago
Andre Puschmann db3ce8ade9 remove clang-tidy execution for srslte_upper 6 years ago
Andre Puschmann 0e7512f349 fix RLC UM params for eMBMS 6 years ago
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.
6 years ago
Andre Puschmann df7ab7ffe8 Merge branch 'master' into next 6 years ago
Eric Schreiber 46d41a5dc5 Remove undefined increment of an erased iterator. (#274) 6 years ago
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.
6 years ago
Ismael Gomez a8a0c3ebe7 Fixed compilation in zynq 6 years ago
Ismael Gomez 8f541cf4e1 Merge branch 'next' into neon_windowed_tdec 6 years ago
yagoda 3762738bc1 adding windowed neon turbodecoder (can be further optimized) 6 years ago
Andre Puschmann c88cc35fdf try to load config files from /etc/srslte before checking users's home 6 years ago
Andre Puschmann 59435c2c34 add own cpuid helper to detect avx2 support
the cpuid.h version caused issues with older GCC 5.4
6 years ago
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
6 years ago
Andre Puschmann d6196ba234 simplify RRC-NAS interface and only have msg as param (RRC selects LCID) 6 years ago
Andre Puschmann e02ed62d02 update tx adv nsamples calibrated with UXM 6 years ago
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
6 years ago
Andre Puschmann df40259c26 fix issue in PDCP when bearer ID for DRBs was not starting with 1 6 years ago
Pedro Alvarez e88e1bb4d2 Fixed TMSI packing length (was giving trouble with Xperia). 6 years ago
Andre Puschmann e25d0f5d8a fix Soapy deactivation during build if lib was found 6 years ago
Pedro Alvarez 553f8260bb Fixing up logs and comments. 6 years ago
Pedro Alvarez dc727a192b Changing way UL NAS count is used to generate the K_enb. 6 years ago
Andre Puschmann fb78cc2996 Adding some debug prints. 6 years ago
yagoda b31538a0b9 small fix to interpolator to fix pmch test 6 years ago
Andre Puschmann 8ca73b9c4e remove unused variable 6 years ago
yagoda 2acf282a8b adding fixes to embms channel estimation 6 years ago
yagoda 69dc16c4c8 changes to fix arm compilation 6 years ago
Andre Puschmann 398e271eee add out-of-order test for RLC AM PDUs 6 years ago
Andre Puschmann 1ffd8d48ce log warning when receiving unexpected RLC AM segment 6 years ago
Xavier Arteaga 8c3a0153b9 Added missing AVX512 intrinsics and flags. Fixes #291. 6 years ago
Andre Puschmann db910cb84b add CSV metrics for eNB 6 years ago
Andre Puschmann 8a1368c8d6 send connection reject if MME isn't connected 6 years ago
Andre Puschmann b71dab87f1 add function to query if RLC bearer exists (the implementation) 6 years ago
Andre Puschmann 0af19b070c add function to query if RLC bearer exists to UE interface 6 years ago
Andre Puschmann 1ed225a10b add getter for IPv4 and IPv6 addresses 6 years ago
Pedro Alvarez 5c29dba741 Changed Interface between NAS and GW to avoid the GW start function being called twice in IPv4v6 mode. 6 years ago
Pedro Alvarez ac1c300126 Adding the ability to set the interface local link IPv6 address. 6 years ago
Pedro Alvarez 25108e2e2b Added configuration options to UE for IPv6 PDN. Starting to send PDN connectivity requesting IPv6. 6 years ago
Andre Puschmann 23836a8ab3 Merge branch 'next' into nas_cleanup 6 years ago
Andre Puschmann 3f36594f1e fix copy ctors in bit_buffer_t 6 years ago
Andre Puschmann 481a1829dd stop metrics hub thread before calling stop on listeners 6 years ago
Andre Puschmann 270707b7a8 add missing initialization in block_queue 6 years ago
Andre Puschmann 2979e43b37 reword PDCP log when dropping PDU 6 years ago
Andre Puschmann 93d17fed3e disable buffer pool logging by default 6 years ago
Andre Puschmann aebea06f15 fix RLC UM timer expiration after stopping entity 6 years ago
Andre Puschmann cecc28540b add crash handler to rlc_stress_test 6 years ago
Andre Puschmann 42747edb54 fix issue where successfully rx'ed SDU was not detected 6 years ago
Andre Puschmann 6ca0d4494a do not transmit new PDUs after calling stop 6 years ago
Andre Puschmann f7d907f1b2 remove pedantic flag from RLC stress test 6 years ago
Andre Puschmann 580ce3e298 add extra length check for RLC UM 6 years ago