Commit Graph

1084 Commits

Author SHA1 Message Date
Ismael Gomez e26653c87f Move tti_clock() call from worker_end to txrx class in enb 2020-06-18 15:15:12 +01:00
Francisco Paisana 64e8f5e3ed update license year 2020-06-18 12:41:54 +01:00
Pedro Alvarez 9c1a7d2cf1 Removed get_bearer_status in PDCP. Renamed get_state/set_state to
get_bearer_state/set_bearer_state.
2020-06-18 12:13:57 +01:00
Pedro Alvarez 208a539499 Split PDCP tx_count state variable into tx_hfn and next_pdcp_tx_sn
variables.
2020-06-18 12:13:57 +01:00
Pedro Alvarez fb088a8c54 Restoring PDCP state only when using RLC AM. 2020-06-18 12:13:57 +01:00
Pedro Alvarez 66d4f320e5 Added intereface to set PDCP state after reestablishment. 2020-06-18 12:13:57 +01:00
Pedro Alvarez 217f16d137 Getting PDCP state on re-establishment. 2020-06-18 12:13:57 +01:00
Pedro Alvarez 33567d81db Added interface to get internal PDCP state. 2020-06-18 12:13:57 +01:00
Xavier Arteaga e0e8405285 SRSUE: initial scell sync
SRSUE: SCell Synch feedbacks delay

SRSUE: Implemented SCell Radio offset correction
2020-06-18 09:51:51 +02:00
Xavier Arteaga f04cf2090a Integrates number of samples in radio buffer
Fix minor issue

Radio: Fix minor bug and add unit test
2020-06-16 11:00:51 +02:00
Xavier Arteaga de230826b9 Added string helper for removing spaces and parsing list
Fix

Fix string parser
2020-06-16 11:00:51 +02:00
Xavier Arteaga 89b24b54e5 Refactored radio class for acommodating multiple RF devices 2020-06-16 11:00:51 +02:00
Andre Puschmann e2146e90ad enb: remove usleep after sending RRC Connection Release to UE
this cause a "dead-lock" with ZMQ because it made the stack
thread sleep for 50ms. With a sync-queue size of 1 (now the default
using ZMQ) the zmq-based radio to timeout. as a result
the rx/tx between UE and eNB stopped so the UE never reached
RRC Idle state.
2020-06-14 21:44:16 +02:00
Francisco Paisana cd0202aeaf use alternative method for conres CE scheduling 2020-06-13 13:23:53 +01:00
Francisco Paisana df1f8836b1 fix issue #1418 by changing the ConRes CE scheduling mechanism 2020-06-13 13:23:53 +01:00
Andre Puschmann 06d31f46ba enb: set maximum allowed TTI difference between PHY and Stack TTI clocks for ZMQ
this fixes the issue where PHY and MAC threads, and the processing
of events therein, are drifting apart too much.

This patch effectivly enforces a strong wait on the PHY if the
stack thread is too slow in processing its tasks.

For RF hardware the default is still 8192 TTIs, for ZMQ 1 TTI is used.
2020-06-12 21:37:10 +02:00
Andre Puschmann a1d64c1efe enb: improve error message when RAR cannot be sent 2020-06-12 21:37:10 +02:00
Andre Puschmann 1f73e6ae69 multiqueue: add option to create queue with non-default capacity
this allows to create a queue that has a non-default capacity
currently this is 8192, but the value might now be suitable in some
cases like for TTI sync events
2020-06-12 21:37:10 +02:00
Francisco Paisana 3c2e3dbdbf added latest mac nr updates 2020-06-11 15:50:36 +01:00
Francisco Paisana 057980d1fb use common log helper macros 2020-06-11 15:50:36 +01:00
Francisco Paisana 27e5d98ef9 added vnf phy nr 2020-06-11 15:50:36 +01:00
Francisco Paisana 6509399ed3 fix for move-only events 2020-06-11 10:37:35 +01:00
Francisco Paisana 611a1c667f remove the requirement that pusch grant for uci data being a newtx 2020-06-10 22:22:41 +01:00
Francisco Paisana 1393bd11fa avoid using PUCCH for SCell DL allocations 2020-06-10 22:22:41 +01:00
Francisco Paisana 2f421d3e30 added cqi configuration in ca testing 2020-06-10 22:22:41 +01:00
Francisco Paisana d859c33035 added check for UCI collision during DL scheduling for CA 2020-06-10 22:22:41 +01:00
Francisco Paisana 53b85691b5 moved sf result to sched class. This way each carrier has a view to the results of the remaining carriers in the same subframe 2020-06-10 22:22:41 +01:00
Francisco Paisana 5d33acdb53 changed name of sched_ue_carrier class 2020-06-10 22:22:41 +01:00
Ismael Gomez 60b5fb9a74 Refactor variable name 2020-06-10 21:30:39 +02:00
Ismael Gomez edb1fcc892 srsENB: Apply new PUCCH configuration when setting dedicated config 2020-06-10 21:30:39 +02:00
Pedro Alvarez 9df40c3af0 Added debug GTPU print. 2020-06-10 15:08:32 +01:00
Pedro Alvarez 20c5ea7d17 Fix warning with GCC 10.1 with EEA/EIA prefrence list. 2020-06-10 15:08:32 +01:00
Andre Puschmann 8512c10286 create simple helper method to log command line arguments 2020-06-09 20:55:38 +02:00
Andre Puschmann db7478e9f0 enb: fix eNB shutdown if layers cant be initialized
this fixed #1392 which ocurrured because we were going on with the eNB
init even if the radio failed to initialize
2020-06-08 10:25:42 +02:00
Xavier Arteaga 039f2164a6 Initial Sounding Reference Signals implementation 2020-06-08 09:33:51 +02:00
Francisco Paisana 857c4de420 extended handover test to check for correct SR/CQI resource setup 2020-06-06 12:16:00 +01:00
Francisco Paisana 7ce23e0afb extend handover intraenb handover fsm to account for multiple C-RNTI CEs 2020-06-06 12:16:00 +01:00
Francisco Paisana 92c4b3f226 fix non-final sdap/mac/rlc dtor error 2020-06-05 15:10:11 +01:00
Francisco Paisana e4a91a207d remove unused variables 2020-06-05 15:10:11 +01:00
Francisco Paisana b843585abc add srsgnb stack class 2020-06-05 15:10:11 +01:00
Francisco Paisana f5174415f8 add srsenb::sdap class 2020-06-05 15:10:11 +01:00
Francisco Paisana b0717cd560 remove unecessary macros 2020-06-05 15:10:11 +01:00
Francisco Paisana cea2fe797d add rrc nr test 2020-06-05 15:10:11 +01:00
Francisco Paisana 613003ac53 add srsenb::rrc class 2020-06-05 15:10:11 +01:00
Francisco Paisana 0916e29de4 add srsenb::rlc_nr class 2020-06-05 15:10:11 +01:00
Francisco Paisana 9001117b2d add srsenb::pdcp_nr class 2020-06-05 15:10:11 +01:00
Xavier Arteaga 6398cd841d SRSENB: PHY reports MAC all UL grants 2020-06-05 10:47:34 +02:00
Xavier Arteaga fbce38dc27 SRSENB: PHY tries to remove always the RNTI in PHY-lib. No error messages prompted. 2020-06-03 19:19:33 +02:00
Francisco Paisana 6908e0fab1 disabled all UL in the MAC during handover, including scheduling requests 2020-06-03 11:28:44 +01:00
Pedro Alvarez 960c0e97cd Added handling of RRC re-establishment to srsENB.
* Added the appropriate code for handling and sending the
   re-establishment procedure messages to rrc_ue.c/.h.
 * Triggered RRC reconfiguration after the reception of RRC
   re-establishment complete
 * Refreshed K_eNB at the reception of re-establishment
   request
 * Changed the mapping of TEIDs to RNTIs in the GTP-U layer,
   as the RNTI might change with reestablishment.
2020-06-02 11:19:17 +01:00
Francisco Paisana 452c043370 created a global map of lcids to srbs/drbs for NR 2020-05-29 14:11:23 +01:00
Francisco Paisana 6a164e032d added srsue::rrc_nr 2020-05-29 14:11:23 +01:00
Xavier Arteaga 9f5aef30e6 SRSENB: fix DL ACK decoding 2020-05-28 10:29:51 +02:00
Francisco Paisana 43635c3fa1 added cqi cfg to handover command 2020-05-26 14:46:41 +01:00
Francisco Paisana 026628a84f use of reestablishment method to reset the RLC bearers during handover 2020-05-26 14:46:41 +01:00
Ismael Gomez 6a19a19f00 Fix memory fault during exiting and waiting for worker 2020-05-26 14:55:37 +02:00
Francisco Paisana 9a0ea6e08c use log_helper for log macros 2020-05-26 10:02:08 +01:00
Francisco Paisana edba7f57e4 corrected mac_nr_pdu includes 2020-05-26 10:02:08 +01:00
Francisco Paisana 0b701022a3 added ue nr mac 2020-05-26 10:02:08 +01:00
Francisco Paisana d7b35ba7d1 added nr mac 2020-05-26 10:02:08 +01:00
Andre Puschmann a0e4b18507 enb_mac: pre-allocate UE object for quicker PRACH/RAR handling
we've seen long delays in handling PRACH on low-power devices
such as the RPi4. This was mainly caused by long delays
in creating the UE object on the fly during PRACH handling.

This patch pre-allocates one UE object that is then used
during the PRACH.
2020-05-25 13:12:19 +02:00
Ismael Gomez 270c7ce9dc Separate PHY interface to add rnti and pregenerate sequences. Calculate the sequences on the reception of ConnectionSetup instead of PRACH 2020-05-25 13:12:19 +02:00
Francisco Paisana b4b5cd7cd6 added nr gnb and ue interfaces 2020-05-25 11:48:16 +01:00
Francisco Paisana d36ae722d5 added extra debug logs 2020-05-22 16:46:42 +01:00
Ismael Gomez a1f0f8de35
Add callback to RLC to indicate BSR for TX and reTX queues (used in ENB) (#1361) 2020-05-22 11:20:33 +02:00
Francisco Paisana 860174a819 remove comment and changed handover_type enum 2020-05-21 16:45:16 +01:00
Francisco Paisana b37923312e added intraenb handover fsm and respective test 2020-05-21 16:45:16 +01:00
Francisco Paisana 65ef16c7f1 void sending rrc connection release as msg4 2020-05-20 18:43:46 +01:00
Francisco Paisana 61680d64d7 move rrc::ue to separate file 2020-05-19 18:54:55 +01:00
Xavier Arteaga 9d5c2d70df SRSENB: Fix PHY reconfiguration for HO
Minimal aesthetic change
2020-05-19 16:38:55 +02:00
Francisco Paisana 7713df2cf9 fix fixed mcs issue 2020-05-15 14:29:17 +01:00
Pedro Alvarez 51f8ba60da Make MBMS MCS configurable for the eNB. 2020-05-15 10:58:42 +01:00
Francisco Paisana 04961148e9 removed old code to compute meas obj diffs 2020-05-14 20:51:16 +01:00
Francisco Paisana b8339031f6 updated code for crnti update during handover and reset of the mac 2020-05-14 20:51:16 +01:00
Francisco Paisana 45cd893e21 update handover test 2020-05-14 20:51:16 +01:00
Francisco Paisana e8aff22e1b using new rrc obj id util methods in handover code 2020-05-14 20:51:16 +01:00
Francisco Paisana f43985b6cd small updates for testing handover and configuring the rrc 2020-05-13 21:02:53 +01:00
Francisco Paisana f2af447b1a use of unique_byte_buffer for sib scheduling to allow for padding 2020-05-13 14:38:21 +01:00
Francisco Paisana 598bad1f0e changed rrc ue cfg files names 2020-05-13 12:39:58 +01:00
Francisco Paisana ea5ba93f25 changed file names 2020-05-12 21:04:57 +01:00
Francisco Paisana ad03d7caf7 move position of security cfg 2020-05-12 17:28:11 +01:00
Francisco Paisana d43448e8a1 created security cfg handling class for rrc ue and refactor bearer_list handling 2020-05-12 17:28:11 +01:00
Francisco Paisana 09cafaa4bb update ded_info_nas_list handling 2020-05-12 14:17:57 +01:00
Francisco Paisana 2e4e22dc68 revert clang-format change 2020-05-12 14:17:57 +01:00
Francisco Paisana 1ac91f2f93 updated erab_setup_test 2020-05-12 14:17:57 +01:00
Francisco Paisana 0515229240 perform mac bearer addiction via the bearer handler class 2020-05-12 14:17:57 +01:00
Francisco Paisana 6bcb5910c9 usage of new bearer list cfg class for srb1/srb2 setup 2020-05-12 14:17:57 +01:00
Francisco Paisana ca0db7fffe created generic methods to apply toaddmodlist and removelists. 2020-05-12 14:17:57 +01:00
Francisco Paisana c65c081b51 created separate files to handle rrc bearers 2020-05-12 14:17:57 +01:00
Francisco Paisana dbcaec6689 avoid dangling reference 2020-05-11 12:44:08 +01:00
Francisco Paisana 71520d681a changes in pucch res allocation api to allow replacing p/scells 2020-05-11 12:44:08 +01:00
Andre Puschmann c892ae56be rrc_cell_cfg: fix potential div by zero
similar fix has been applied for SR resources
2020-05-09 14:01:34 +02:00
Andre Puschmann 248e2b5f7e rrc: fix potential division by zero 2020-05-08 14:15:10 +02:00
Xavier Arteaga b11ffaee7e SRSENB: fix channel emulator for multiple channels 2020-05-07 13:09:46 +02:00
faluco dacf265d20 Fix typo. 2020-05-07 10:10:24 +02:00
faluco 7ff251f112 - Fixed warnings caught by Clang 9.0.0 2020-05-07 10:10:24 +02:00
yagoda 210eae8e7e fixing small rr.conf config error 2020-05-06 11:33:39 +02:00
Francisco Paisana aab989022d avoid forward declarations 2020-05-05 17:33:03 +01:00
Francisco Paisana 08e1f01c72 allocation of the sr/cqi/pucch_cs resources takes place at a frequency basis now 2020-05-05 17:33:03 +01:00
Francisco Paisana ee994468f7 separate sr and pucch_cs allocation from rrc class 2020-05-05 17:33:03 +01:00