Commit Graph

3467 Commits

Author SHA1 Message Date
Pedro Alvarez b577c9ac8c Merge branch 'mnc_plmn_217' into next 2018-09-25 17:24:30 +01:00
Andre Puschmann 1985d7b37c fix byte_buffer copy and assignment ctor 2018-09-25 17:26:12 +02:00
Andre Puschmann 601b2a357b fix fail logic in RLC stress test 2018-09-25 16:23:00 +02:00
Andre Puschmann 07e42c1964 Merge branch 'rlc_am_subclass' into next 2018-09-25 16:08:29 +02:00
Andre Puschmann d652a0df1c remove c-type cast in RLC 2018-09-25 16:04:24 +02:00
Pedro Alvarez c4a5af11d5 Fixed nibble order in mccmnc_to_plmn and plmn_to_mccmnc. Fixed corresponding PLMN test 2018-09-25 14:55:12 +01:00
Andre Puschmann 10a43f04ba Merge branch 'master' into next 2018-09-25 15:10:48 +02:00
Andre Puschmann b27ff06e79 Merge remote-tracking branch 'origin/issue_178' into next 2018-09-25 15:10:38 +02:00
Joseph Giovatto dc3e88079a moved earb_info from parent to be unique per ue to avoid overwrites (#234)
consult integrity check result before proceeding
2018-09-25 14:18:24 +02:00
Andre Puschmann 86e02921f0 fix regression in RLC base introduced during refactor causing eMBMS to fail 2018-09-25 14:04:06 +02:00
Pedro Alvarez b4f9fb06dd Changing EPC to use uint32_to_uint8 function 2018-09-25 12:09:18 +01:00
Andre Puschmann 22b4396c39 increase default tx_queue length for RLC UM and AM
- With the current default tx queue length (16 SDUs) the BSR reported by the UE
  is too low if the size of the SDU is relativly small (e.g. 100 B).
  This effectivly causes the eNB to only allocate a small grant
  to the UE and thus reduces the UL throughput for small SDUs.
2018-09-25 12:33:25 +02:00
Andre Puschmann f5c3bd5328 cleaup RLC stress test 2018-09-25 11:00:35 +02:00
Andre Puschmann ba87819ff1 retransmit random RLC AM PDU in case tx window is full 2018-09-25 10:46:36 +02:00
Andre Puschmann b75506ac16 add CMake option to enable memory sanitizer 2018-09-25 10:46:36 +02:00
Andre Puschmann 891ef59d78 fix RLC AM status pdu packing 2018-09-25 10:46:36 +02:00
Andre Puschmann 7572299615 enable clang-tidy for srslte_upper library 2018-09-25 10:46:36 +02:00
Andre Puschmann 34535c7efb fix RLC AM issues reported by clang-tidy 2018-09-25 10:46:36 +02:00
Andre Puschmann 6764fdb964 fix member initialization in phch* 2018-09-25 10:45:15 +02:00
Andre Puschmann c9186f110c add log_filter dtor 2018-09-25 10:45:15 +02:00
Andre Puschmann 6c4aaa6e10 adapt AM test to new MAC timer 2018-09-25 10:45:15 +02:00
Andre Puschmann 860d8af911 Merge branch 'master' into next 2018-09-24 15:50:10 +02:00
Andre Puschmann 22599bffda fix bug in PUSCH decoding when multiple UEs provide HARQ feedback 2018-09-24 15:48:38 +02:00
Ismael Gomez 6f0c554445 TA estimate correction factor calibrated for all bandwidths 2018-09-24 15:39:14 +02:00
Pedro Alvarez 49c44a2bd4 Moved int_helpers to lib so that the EPC can use those functions too. 2018-09-24 14:08:00 +01:00
Zhe Huang 8b526e1c20 Fix SQN incrementation arithmetic (#212)
* Fix SQN incrementation arithmetic

Current implementation of increment_sqn function increments the 48 bits
SQN directly by 1 which is incorrect according to 3GPP TS 33.102 version
11.5.1 Annex C. This bug causes commercial UEs to report AUTHENTICATION
FAILURE EMM cause #21 "synch failure" when SQN is out of sync.

According to 3GPP TS 33.102 version 11.5.1 Annex C, 48 bits SQN consists
of 43 bits SEQ and 5 bits IND parts where SEQ are incremented during
generation of authentication vector or resync procedure. A
new IND value is also assigned when an authentication vector is
generated. However, resync procedure will use the same IND value.

This patch implements the increment_sqn function according to 3GPP TS
33.102 version 11.5.1 Annex C. A new function increment_seq_after_resync
is added to handle the special case of SQN arithmetic during SQN
resynchronization.

This patch is tested with two comercial UEs (Oneplus One and Oneplus 3T).

* Fix the maximum value of SEQ value to be 2^43-1

The SEQ value is 43 bits long and previous maximum value has a typo (one
extra F) which allows SEQ value to be 2^47-1. This patch corrects the typo.
2018-09-24 11:28:07 +02:00
Ismael Gomez 13cba873d5 Make SIB2 mbsfn settings optional 2018-09-24 11:27:22 +02:00
Ismael Gomez 2e53478a3b Allow time_adv_nsamples parameter to be negative 2018-09-24 11:26:30 +02:00
Ismael Gomez 4068ad0064 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-21 17:03:35 +02:00
Ismael Gomez d0c392e3dd Increase radio preamble buffer 2018-09-21 17:03:25 +02:00
Andre Puschmann 3d4e90029c fix RLC UM issue when dropping PDU that is neither start nor end aligned 2018-09-21 10:29:41 +02:00
Andre Puschmann 9a4ce125fb fix RLC stress test with respect to timer handling 2018-09-21 10:29:41 +02:00
Andre Puschmann 4b0171ccea fix MAC timer handling in rlc_stress_test 2018-09-21 10:29:41 +02:00
Andre Puschmann 5469a958be Merge branch 'next_test_after_merge' into next 2018-09-21 10:28:38 +02:00
Andre Puschmann b73f48f91e Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-21 10:23:04 +02:00
Ismael Gomez 90875973c5 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-20 19:26:09 +02:00
Ismael Gomez a0c87dcd15 Increased maximum burst samples 2018-09-20 19:25:57 +02:00
Andre Puschmann a9d46cbad3 Merge branch 'master' into next_test_after_merge 2018-09-20 13:01:43 +02:00
Zhe Huang cd1fb0d81e Set AMF to all zeros during resync (#213)
During the resync procedure, the security_milenage_f1_star generates a
MAC_S value that does not match the MAC_S value reported in AUTS. This
posts a security risk.

According to 3GPP TS 33.102 version 11.5.1 section 6.3.3, the AMF used
to calculate MAC-S assumes a dummy value of all zeros so that it does
not need to be transmitted in the clear in the re-synch message.

This patch corrects this problem. MAC_S reported by AUTS matches the
MAC_S calculated using f1_star function after the fix.
2018-09-20 12:57:47 +02:00
Andre Puschmann d981f129e0 Merge branch 'master' into next 2018-09-20 12:54:05 +02:00
Andre Puschmann 1fab8e6702 fix reset of NAS counters after receiving security mode command
- reported by cpetersgit
- reset only needed after receiving initial security mode command
2018-09-20 12:16:44 +02:00
Andre Puschmann f458d58527 fixed handling of UE indentity request 2018-09-20 11:55:42 +02:00
Joseph Giovatto 2dddfa2aac added ability to track tput per bearer (#233)
added mac_metrics for ul/dl harq retex counts
2018-09-20 11:22:22 +02:00
Ismael Gomez 4a8d83721a Fix unnecessary memory usage in radio 2018-09-20 09:45:46 +02:00
Ismael Gomez 2cf381823c Fixed bug in commit 197d855d3f 2018-09-19 18:00:47 +02:00
Zhe Huang 3433b0ffde assign correct values from BladeRf manual calibration to correction
* Assign correct values from BladeRf manual calibration to correction

The rf_calibration function for blade RF was assgiing dc_gain to
BLADERF_CORR_FPGA_PHASE and dc_phase to BLADERF_CORR_FPGA_GAIN. This hot
fix corrects the value assignments in both rf_blade_set_tx_cal and
rf_blade_set_rx_cal functions.
2018-09-19 17:43:18 +02:00
Ismael Gomez e43eb3ffc1 Merge branch 'next' of github.com:softwareradiosystems/srsLTE into next 2018-09-19 17:37:28 +02:00
Ismael Gomez dabfbfb75a Fixes #250 2018-09-19 17:37:23 +02:00
Xavier Arteaga f865296421 Added BladeRF Micro Support (required bladerf driver > 2.0.2) 2018-09-19 17:36:38 +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