Commit Graph

508 Commits

Author SHA1 Message Date
Francisco Paisana c46402c836 fix phy configuration during handover on srsenb. The function srsenb::rrc::ue::fill_scell_to_addmod_list assumes that the phy_cfg of the PCell is up-to-date, which was not the case. With this PR, the srsenb rrc updates the phy_cfg before the ho cmd is sent, but, in the case of intra-enb ho, the updates are not submitted to the phy before the reception of the crnti mac ce 2020-10-07 09:10:47 +01:00
Francisco Paisana 5325a15d42 fix libconfig std::string cast linking issue 2020-10-07 09:29:48 +02:00
Francisco Paisana 0f51d70aac fix measObj addition in srsenb. Now the enb considers both scells and meas_cells in the rr.conf 2020-10-06 21:16:18 +01:00
Francisco Paisana d42cdca729 fix scell activation in the phy during intra-enb handover. 2020-10-06 17:08:08 +02:00
Francisco Paisana 688dda30a4 favour carriers with best channel conditions for UL grants due to SRs 2020-10-01 19:58:00 +01:00
Francisco Paisana 137e554eb3 reestablish pdcp bearers is required in case of AM bearers 2020-10-01 16:57:08 +01:00
Francisco Paisana 4c88404801 fix measurement report handling in case of intra enb handover 2020-09-30 18:03:03 +01:00
Francisco Paisana 942c28881d converted member method of list of cells in the enb to a free function 2020-09-25 15:03:58 +01:00
Francisco Paisana 3a924a1d80 avoid sending cellsToAddModList if cell offsets are zero 2020-09-25 15:03:58 +01:00
Francisco Paisana da70c0fdaf fix cellsToAddModList handling. Now the eNB always adds PCell+SCells as measObjects in the RRC Reconfiguration messages. It may also further include cellsToAddModList if they are provided in the rr.conf file 2020-09-25 15:03:58 +01:00
Francisco Paisana 141960fbda remove unnecessary shared_ptrs and use value semantics instead for the var_meas_cfg of the different enb cells 2020-09-24 09:52:09 +01:00
Xavier Arteaga b633c1abcd SRSENB: report MAC CSI measurements of all configured cells 2020-09-16 20:07:20 +02:00
Francisco Paisana 7e6487b6fa perform PUCCH+PRACH PRB reservation right at the start of a new TTI in the scheduler 2020-09-15 16:10:50 +01:00
faluco 5e8a4c898d
Bring back the circular array object. (#1712) 2020-09-09 17:16:47 +02:00
Ismael Gomez 59b6301cc8 Remove legacy arbritrary 1s timeout for eNB requests 2020-09-08 22:28:35 +02:00
Andre Puschmann 87d4a5dc9c enb: use circular array to access TTI and HARQ based data structures
this makes use of the new circular array to remove the need
to apply the modulo operation when safely accessing the underlying
array.
2020-09-07 15:56:48 +02:00
Ismael Gomez 38e2ffe414 Use Format1A when using CA and 15 PRB due to DCI size ambiguity 2020-09-03 10:45:06 +02:00
Xavier Arteaga af8898943f SRSENB: implement console cell_gain command
SRSENB: fix 5GNR compilation

SRSENB: fix override methods
2020-09-01 09:37:52 +02:00
Francisco Paisana fddcc3d8ea In the case of Handover, postpone the activation of the CQI and SR config present in the HO command for after the RA proc completion to the target eNB 2020-08-28 10:14:23 +01:00
Xavier Arteaga 3aec23f7d8 SRSENB: calculate TA from PUCCH messages 2020-08-27 09:31:05 +02:00
Francisco Paisana 13caf287f9 fix S1 Handover with UE CA. The HandoverPreparation message was not being filled correctly 2020-08-26 17:24:57 +01:00
Ismael Gomez a4835dd2c8
More accurate MCS reduction when PUSCH carries UCI (#1630) 2020-08-25 22:30:35 +02:00
Xavier Arteaga 029f36b449 srsLTE: added efficient integer resampler and srsue/srsenb integration 2020-08-25 16:19:52 +02:00
Francisco Paisana cc469fc7a3 fix reestablishment after S1 handover by setting ncc accordingly 2020-08-25 14:41:09 +01:00
Francisco Paisana b47f8e6c1a increased rrc inactivity timer to avoid unnecessary pagings while
setting up an initial enb-ue iperf connection
2020-08-25 11:47:24 +01:00
Francisco Paisana 0036941af4 added extra state to S1 target enb mobility FSM. Accounts for out-of-order arrival of MMEStatusTransfer. Also, now we avoid creating DRBs before the MMEStatusTransfer 2020-08-22 09:40:09 +01: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
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 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 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 cfd3f51931
Import of srslog into srsepc and srsenb. (#1574)
* - Import of srslog into srsepc and srsenb.
* - Removed logger_file and logger_stdout files.
2020-07-30 19:17:23 +02:00
Xavier Arteaga 55a208ede8 SRSENB: added PRACH worker plot 2020-07-28 09:31:34 +02:00
Xavier Arteaga 443378adcb SRSENB: Add GUI window for every cell/carrier 2020-07-28 09:31:34 +02:00
Ismael Gomez dda91b14f7 Remove duplicate add_rnti() function since already done in set_config 2020-07-27 17:58:06 +02:00
Francisco Paisana 35fa5346b9 only reduce mcs if the current tti requires uci 2020-07-21 10:51:11 +01:00
Francisco Paisana 58c4bcf288 reduce mcs for UL grants carrying UCI 2020-07-21 10:51:11 +01:00
Xavier Arteaga 0192130742 SRSUE/SRSENB: UCI bits are carrier by the lowest serving cell index
SRSENB: Fix UCI in lowest serving cell index PUSCH transmission
2020-07-15 07:34:14 +02:00
Andre Puschmann a7911f0dab pdcp,rlc: refactor SDU queueing policy
this patch refactors the SDU queuing and dropping policy of the RLC and PDCP layer.
the previous design had issues when packets have been generated at a higher
rate above the PDCP than they could be consumed below the RLC.

When the RLC SDU queues were full, we allowed two policies, one to block on the write
and the other to drop the SDU. Both options are not ideal because they either
lead to a blocking stack thread or to lost PDCP PDUs.

To avoid this, this patch makes the following changes:

* PDCP monitors RLC's SDU queue and drops packets on its north-bound SAP if queues are full
  * a new method sdu_queue_is_full() has been added to the RLC interface for PDCP
* remove blocking write from pdcp and rlc write_sdu() interface
  * all writes into queues need to be non-blocking
  * if Tx queues are overflowing, SDUs are dropped above PDCP, not RLC
* log warning if RLC still needs to drop SDUs
  * this case should be avoided with the monitoring mechanism
2020-07-13 17:05:28 +02:00
Francisco Paisana 5e06430455 removal of stack handler interface 2020-07-13 11:19:25 +01:00
Francisco Paisana 039977aeb5 renamed interfaces 2020-07-13 11:19:25 +01:00
Francisco Paisana 1a9c04bf2f use of task scheduler handle in pdcp 2020-07-13 11:19:25 +01:00
Francisco Paisana e9f34c7613 using task scheduler in enb stack 2020-07-13 11:19:25 +01:00
Francisco Paisana 4f5e65781f created task scheduler class to deal with timers, thread pool, multiqueue, internal tasks 2020-07-13 11:19:25 +01:00
Pedro Alvarez 89b6e0f714 Send paging message to all cells. 2020-07-10 10:14:08 +01:00