Commit Graph

2682 Commits

Author SHA1 Message Date
Xavier Arteaga bd46c40650 srsLTE: fix minor aesthetics 2020-08-25 16:19:52 +02:00
Xavier Arteaga 7bad21c30a Radio: added locks to protect sample rate change concurrent access 2020-08-25 16:19:52 +02:00
Xavier Arteaga 029f36b449 srsLTE: added efficient integer resampler and srsue/srsenb integration 2020-08-25 16:19:52 +02:00
Francisco Paisana 834c0b3929 integrated new observer pattern into phy controller fsm 2020-08-24 22:10:32 +01:00
Francisco Paisana 48dd436d86 integrated observer pattern into rrc phy ctrl fsm 2020-08-24 22:10:32 +01:00
Francisco Paisana b2313e3631 observer pattern classes. Allows auto and explicit dispatch, and specifying which trigger method to use of an observer. 2020-08-24 22:10:32 +01:00
Xavier Arteaga 0e96ef3df0 Channel emulator takes SNR as input parameter 2020-08-24 10:46:11 +02:00
Andre Puschmann 9149cf852d rf_uhd: fix rx timeout error after late with B210
it fixes #1623.

this happens more often with MIMO since lates are more likely here.

after a late, the Rx stream must not be stopped on the B2xx either.

<log>
RF status: O=3, U=0, L=1
/home/anpu/src/srsLTE/lib/src/phy/rf/rf_uhd_imp.cc.1209: Error timed out while receiving samples from UHD.

stop rx stream
./home/anpu/src/srsLTE/lib/src/phy/rf/rf_uhd_imp.cc.1209: Error timed out while receiving samples from UHD.

stop rx stream
/home/anpu/src/srsLTE/lib/src/phy/ue/ue_sync.c.775: Error receiving samples

/home/anpu/src/srsLTE/lib/src/phy/ue/ue_cell_search.c.312: Error calling srslte_ue_sync_work()

/home/anpu/src/srsLTE/lib/src/phy/ue/ue_cell_search.c.272: Error searching cell
</log>
2020-08-21 15:28:08 +02:00
Andre Puschmann 5e40bfe72c mac_pdu: unpack and print BSR index as well as BSR value in bytes
before the BSR was extracted but the actual index (between 0 and 63)
was not stored but directly converted into bytes.

for log parsing and debugging it is easier to follow the index
value. this patch therefore adds both values to the log message
and extends the API accordingly.
2020-08-21 12:03:07 +02:00
Andre Puschmann 55336665b9 rlc: remove timers and sdu queue length from RLC TM ctor
timers aren't used in RLC TM, also the default queue length is
fine to be used at all times.
2020-08-21 12:03:07 +02:00
Francisco Paisana bb5dd92dca implemented s1 handover cancellation procedure to force the target enb to release the ue ctxt 2020-08-21 00:05:58 +01:00
Francisco Paisana 8c9e596f89 refactored s1ap handover request interface. cleaned up rrc tenb s1 handover code 2020-08-21 00:05:58 +01:00
Andre Puschmann 8e44d0504c radio: fix device mapping for mimo
commit #51c6e8d1 introduced a regression in which the 2nd antenna
port was never considered. All MIMO ZMQ based tests therefore failed.
this fixes #1608
2020-08-19 15:39:13 +02:00
Xavier Arteaga 710700d0eb SRSUE: Fix synch error correction for multiple channels 2020-08-19 15:39:13 +02:00
Andre Puschmann d5da4bd8b6 radio: fix printf for 32bit 2020-08-19 11:57:04 +02:00
Francisco Paisana 7cd4f45d62 fsm refactor.
- avoid triggering directly a subfsm
- improved metafunctions
- other cleanups
2020-08-18 16:07:21 +01:00
Francisco Paisana 5d1343fe75 implemented S1 bearer status transfer 2020-08-18 13:55:17 +01:00
Francisco Paisana db8af399f8 extended rrc tenb s1 handover test. implemented layer reconfig during s1 handover 2020-08-18 13:55:17 +01:00
Francisco Paisana 7605c7df23 added s1ap handover notification, fixed s1ap asn1 bug, and fixed bad fields for admitted erabs in ho req ack 2020-08-18 13:55:17 +01:00
Francisco Paisana 841b884796 remove extern C flags from common_helper.h 2020-08-18 13:54:23 +01:00
Francisco Paisana a2b8bc9e0a check all cpus scaling governor 2020-08-18 13:54:23 +01:00
Francisco Paisana 5be5409f62 scaling governor function moved to common header file 2020-08-18 13:54:23 +01:00
Francisco Paisana 9146e6ddf1 change method name to resize intervals 2020-08-14 15:06:06 +01:00
Francisco Paisana 4457bbda7e added new asserts to interval interface 2020-08-14 15:06:06 +01:00
Francisco Paisana 8b174ce2f4 changed interval interface to disallow interval::stop < interval::start via an assertion 2020-08-14 15:06:06 +01:00
Francisco Paisana 39b380c8e0 fix compilation issue for gcc version < 5 2020-08-14 15:06:06 +01:00
Francisco Paisana 2f689372dd added missing header 2020-08-14 15:06:06 +01:00
Francisco Paisana c1755727d7 changed interval method names, and added comments and assertions 2020-08-14 15:06:06 +01:00
Francisco Paisana b2dd46ccad remove extra space in to_string 2020-08-14 15:06:06 +01:00
Francisco Paisana 20b69fb22e substitution of ul_alloc_t for prb_interval 2020-08-14 15:06:06 +01:00
Francisco Paisana 26f46ea067 add S1 Handover Request handling in target eNB 2020-08-14 14:28:56 +01:00
Francisco Paisana 857cc141c7 fix macro checking for exceptions, added missing includes, fixed bounded bitset methods' noexcept specifiers 2020-08-13 13:13:34 +01:00
Francisco Paisana cceeff10de moved expected, bounded_bitset, move_callback to adt folder. created a test for bitset 2020-08-13 13:13:34 +01:00
Francisco Paisana caf862c99f moved expected, bounded_bitset, move_callback to adt folder. created a test for bitset 2020-08-13 13:13:34 +01:00
Ismael Gomez 382811e10e
Update S1AP RNTI context when doing Reestablishment (#1582) 2020-08-12 23:48:20 +02:00
faluco 1253740da3 - Extracted traits from class to a detail namespace. 2020-08-11 19:47:26 +01:00
faluco 072e84cec8 - Simplified the usage of span now with implicit constructors as it should be.
- Added overload for generic containers that have size and data members like vector.
- Removed unnecessary uses of make_span.
2020-08-11 19:47:26 +01:00
faluco 158edd4fe7 Removed init list constructor test. 2020-08-11 19:47:26 +01:00
faluco eb4b2d4e43 - Added a clarification comment on why to use make_span.
- Moved byte_buffer utilities to common.h thus breaking the dependency of ADT to COMMON.
- Fixed compilation failures in tests.
2020-08-11 19:47:26 +01:00
faluco af8dfcf19c Extended a bit the span implementation with the following changes:
- Documented methods and class.
- Adapted interface to the latest standard: no init list and generic container constructors, new iterator pair ctor.
- Implemented some SFINAE for managing conversions in constructors.
- Re-organised some methods to be grouped by category (modifiers, observers, iterators, ...).
- Added convenience make_span functions.
- Added some more  asserts.
- Adapted test to use some syntax that was modified.
2020-08-11 19:47:26 +01:00
Francisco Paisana 76a62909c1 use of span type for universal array views 2020-08-11 19:47:26 +01:00
Francisco Paisana a9d882c1f1 fix task_scheduler_test. Fix potential reference invalidation in task_scheduler internal tasks data structure 2020-08-11 17:16:06 +01:00
Francisco Paisana 9d877e55b3 add test for when scope exit lambda is an lvalue 2020-08-10 17:23:43 +01:00
faluco 9e2a116e11 - Fix a missing template parameter in the constructor.
- Decay the type to the template.
- Switched member order to improve memory layout.
2020-08-10 17:23:43 +01:00
Francisco Paisana 0f67bee556 creation of a scope exit standalone file. Created a new folder ADT. Added test for scope exit. 2020-08-10 17:23:43 +01:00
Andre Puschmann cb2d7f4c16 rf_uhd_generic: add explicit ctor and dtor
clang 6 complained about a missing virtual dtor and thus
failed compilation. this patch adds both, an explicit ctor and dtor.
2020-08-10 10:42:54 +02:00
Andre Puschmann 498af989bf rf_uhd: add missing endl to UHD log macros 2020-08-06 22:42:48 +02:00
Xavier Arteaga 46ab07123d UHD: fix compatibility with 3.9.7 LTS 2020-08-06 22:42:48 +02:00
Andre Puschmann 5867668c0c rf_uhd_rfnoc: fix compilation for UHD before 3.15
the enable_rx_timestamps() for the radio_ctrl object has only been
introduced in Nov 2019 for UHD 3.15 and therefore needs
to be excluded when compiling for 3.14 and below.

Note: According to the original UHD commit in
67dbaa41f2 (diff-60a9387c0fc8406fd5b39fa995dd8c14)
it looks like the Rx timestamps are disabled by default
for UHD versions before 3.15

This commit fixes #1602
2020-08-05 13:05:29 +02:00
Xavier Arteaga 0cd61145ca RFNOC: added optional FPGA FIFO 2020-07-31 13:11:10 +02:00