Commit Graph

869 Commits

Author SHA1 Message Date
Francisco 7076dbfef8 feature, scheduler: Add configuration parameter to set minimum TTI interval between TPCs 2021-05-25 21:51:10 +02:00
Francisco 4627ae9802 bugfix, scheduler: effectively disable adaptive mcs when target bler is unspecified 2021-05-25 21:51:10 +02:00
Francisco dedd9c09a7 feature, scheduler: Add abitility to set minimum aggregation level in PDCCH, and disable adaptive aggregation level based on target BLER 2021-05-25 21:50:56 +02:00
Francisco c5029fc266 feature - implement adaptive link adaptation in DL and UL 2021-05-24 19:33:27 +02:00
Francisco 8811b7c9a7 fix handling of CRNTI CE in the RRC. The scheduler should not allocate more grants for the new rnti after this point. 2021-05-24 19:33:16 +02:00
Andre Puschmann fbb151af2d enb,rrc: fix bearer re-activation after max KO
this patch makes sure that if RBs have been deactivated after
max KO on either the DL or the UL, they are reactivated if either
of them is working again.

UL/DL are always activated together, even if just one of them
recovers. The KO counter (or timer), however, is not stopped implicitly.
2021-05-24 19:33:16 +02:00
Francisco a17e3b71e7 set minimum snr under which the UL SNR estimate is not updated 2021-05-24 17:25:07 +02:00
Francisco 8df6ed07c6 sched small fixes - use 0.930 instead of 0.932 for max coderate. Allow computing mcs/tbs based on max coderate directly. Other small fixes 2021-05-24 17:25:07 +02:00
Francisco 41bc7e4810 avoid letting repeated s1ap::user_release calls to deem the user as in zombie state. Use timer instead to auto-remove user from s1ap if no response from mme arrives 2021-05-24 17:24:31 +02:00
Francisco f705735093 optimization - only allow some multiqueue queues to notify the multiqueue consumer of the arrival of tasks 2021-05-24 17:24:12 +02:00
yagoda 9501283c1c fixing support for extended Cyclic Prefix
small cosmetic fixes of CP code
2021-05-20 18:16:15 +02:00
yagoda f90f6f0c7e adding MAC 0 padding support 2021-05-20 10:26:50 +02:00
Francisco 0a1ae0e4ad redesign and fix enb rrc message logs 2021-05-19 12:42:41 +01:00
Francisco 22f1f2d56c move ngap files into their own folders 2021-05-17 15:32:57 +01:00
Francisco 1488606156 refactor - create s1ap dedicated folder 2021-05-17 15:32:57 +01:00
Francisco 0e0835a805 move scheduler rbg/prb/cce mask and interval types and associated helper functions to a separate file 2021-05-17 14:30:23 +01:00
Francisco c6d543efdf fix conversions of drb id to erab id in srsenb 2021-05-17 15:17:27 +02:00
Andre Puschmann 167200f5cd rrc_bearer_cfg: replace fixed E-RAB to DRB mapping
also make sure we don't assign LCIDs beyond the possible
number.

possible fix for https://github.com/srsran/srsRAN/issues/658

Co-authored-by: herlesupreeth <herlesupreeth@gmail.com>
Co-authored-by: Francisco <francisco.paisana@softwareradiosystems.com>
2021-05-17 15:17:27 +02:00
Francisco 4d3ff0d139 implementation of basic search for optimal rbgmask for subband CQI 2021-05-14 19:58:03 +01:00
Francisco f8b6eae2bf use of min DL cqi across all PRBS to compute required DL PRBs 2021-05-14 19:58:03 +01:00
Francisco 8564996eaf fix sched_dl_cqi method to compute cqi-optimal rbgmask 2021-05-14 19:58:03 +01:00
Francisco 485c6ee129 subband CQI feature - add K parameter in sched_interface::ue_cfg_t and update it from RRC 2021-05-14 19:58:03 +01:00
Francisco 84ad6dd8ee Integrated new sched_dl_cqi class in sched_ue_cell
- extend sched_dl_cqi interface to allow getting tti when cqi was last updated
- extend sched_dl_cqi to quickly get average cqi across the whole bandwidth
2021-05-14 19:58:03 +01:00
Francisco 16d05ff042 Remove time exponential averaging of DL cqi
- renaming: sched_cqi -> sched_dl_cqi
- testing: add unit test for sched_dl_cqi wideband cqi mode.
- feature: remove time exponential averaging of dl cqi
2021-05-14 19:58:03 +01:00
Francisco 28c24a89ef sched subband cqi - create method to get cqi-optimal RBG mask 2021-05-14 19:58:03 +01:00
Francisco eeb8ad6571 sched,feature - creation of sched_cqi class to manage the update of CQI in a subband CQI setting 2021-05-14 19:58:03 +01:00
Francisco f25dbea4de fix PCCH assembly in srsenb rrc 2021-05-14 19:57:52 +01:00
Francisco 32228389a9 fix latest static analysis warnings in rrc paging 2021-05-11 21:14:47 +01:00
Francisco bfdb0332db remove undefined methods from rrc_ue 2021-05-11 16:54:14 +01:00
Francisco 46cfdaf9e5 Handle case when old rnti gets removed during RRC reestablishment
This is achieved via:
- keep restarting the inactivity timer whenever a ReestablishmentRequest is received
- in case the RRC ReestablishmentComplete is very late and the old rnti was removed anyway,
  abort RRC reestablishment procedure and release new rnti
2021-05-11 16:54:14 +01:00
Andre Puschmann b61be7878a enb,rrc: split RLF counter and timer handling for DL/UL/RLC
this patch splits the counter and timer handling for PHY DL, PHY UL,
and RLC errors and makes sure that, for example, a successful DL
does not cancel the UL RLF timer, and vice versa.

They all use the same timeout value which is user-configurable.
2021-05-10 18:43:37 +02:00
David Rupprecht f9c0009d23 Remove setup erabs function 2021-05-10 17:54:38 +02:00
Francisco 0d800eb8f6 stack, multiqueue - bugfix for multiqueue destruction, and addition of unit test 2021-05-10 15:27:21 +01:00
Francisco b54bb35343 use rnti_map_t in scheduler 2021-05-07 10:58:04 +01:00
Francisco 6b84754ede fix rrc and gtpu bearer rnti update during reestablishment. The rnti of UE's rrc_bearer_handler was not being updated 2021-05-07 10:58:04 +01:00
Francisco 1677abce8d create typedef for circular map of rntis. check return of gtpu ue creation 2021-05-07 10:58:04 +01:00
Francisco 9464f36714 make eNB UE release timer after RLF detection configurable 2021-05-07 09:51:59 +01:00
Francisco 15484e9472 rrc - make t304 configurable via rr.conf 2021-05-06 18:07:20 +01:00
Francisco c6b9c12ba2 gtpu, feature - added the ability to configure gtpu indirect tunnel timeout value. This parameter is useful in the case that the end marker is not received 2021-05-06 18:07:20 +01:00
Francisco b619a2b649 application of new cache allocator to deques in scheduler 2021-05-06 18:06:10 +01:00
David Rupprecht c117b563c9 Initial commit for ngap in enb 2021-05-05 13:54:57 +02:00
Francisco 04ded030ea srsenb,bugfix - avoid logging error message when UE sends CRNTI MAC CE for old rnti whose context has already been erased. 2021-05-03 21:43:48 +01:00
Francisco f7016633d2 sched, fix - avoid tpc commands when target pusch and pucch snr are not specified 2021-05-03 17:43:41 +01:00
Francisco d3c51fdad4 limit minimum UL grant size to accommodate both BSR and RLC headers 2021-05-03 17:43:41 +01:00
Francisco cde61a5796 rrc paging - reduce the space taken by paging manager class
Paging messages can only be transmitted in a subset of subframes - {0, 4, 5, 9}
I avoid now creating objects for the subframes that are not part of this subset
2021-05-03 15:58:21 +01:00
Francisco b014cbfe0f rrc paging - removal of redundant mutexes in paging manager class. Now mutexes are indexed by subframe index instead of paging buffer index 2021-05-03 15:58:21 +01:00
Francisco 8487c10956 removal of unused variables 2021-05-03 15:58:21 +01:00
Francisco 01eace2631 rrc paging mechanism improvements
- moved paging record handling to separate class
- parallel access to pending pcch messages by phy workers based on TTI and without common lock
- asn1 pcch message packing now takes place in stack thread, to avoid real-time issues
2021-05-03 15:58:21 +01:00
Andre Puschmann 598594c51a all: bunch of pass by const& changes suggested by LGTM 2021-04-29 10:00:09 +02:00
Francisco Paisana d39183419c
Separate TPC PUSCH and PUCCH target SINR (#2740)
* separate target pusch and pucch sinr configurations in tpc class and rr.conf
2021-04-27 10:12:40 +01:00