1. 24 May, 2024 11 commits
    • Robert Schmidt's avatar
      Sort LCs by priority · 6c71775e
      Robert Schmidt authored
      Introduce new LC configuration "priority", as specified in 38.321, and
      use to sort LCs by priority. We set the priority of an SRB according to
      38.331 Section 9.2.1, and for a DRB to be the minimum priority of the
      QoS flows associated to this DRB.
      6c71775e
    • Robert Schmidt's avatar
      Add functions for LC add/release at MAC · ee957099
      Robert Schmidt authored
      Introduce new functions to add/release LCs without needing to go through
      the intermediate CellGroupConfig. This harmonizes LC handling at the "DU
      handler" to keep it consistent with RLC bearer handling.
      
      These functions allow to group LC configuration handling, and we can
      remove functions for setting NSSAIs and QoS by handling in one central
      place (while adding LCs).
      
      nr_mac_add_test_ue() is used by simulators and also in NSA mode to add a
      new UE. Ideally, these users should also call the ue context setup
      request handler to add a UE context; for the moment, respect the passed
      list of LCs to add. Similarly, for do-ra, we require a dedicated
      function to still parse the CellGroupConfig, so we keep that part of
      functionality.
      
      On reestablishment, since we do not process the CellGroupConfig from the
      old UE, we need to add LCs for the new UE based on the onces from old
      UE.
      ee957099
    • Robert Schmidt's avatar
      MAC: use seq_arr to group LC configuration · 7accbd97
      Robert Schmidt authored
      Use a common structure nr_lc_config_t to group LC configuration for one
      logical channel. Use seq_arr for simple lookup, adding, removing of
      elements without manual indexing logic.
      
      This commit retains the previous logic of adding/releasing LCs through
      the process_CellGroupConfig(), although we know while building the
      CellGroupConfig if we add/release LCs. The next commit fixes this.
      7accbd97
    • Robert Schmidt's avatar
      Move get_lcid_from_srbid/drbid() to central gNB MAC primitives · 850f26fc
      Robert Schmidt authored
      In later commits, we will call these functions from multiple places in
      the scheduler, so move them to a central place.
      850f26fc
    • Robert Schmidt's avatar
      Avoid gigantic array · 9e5c5497
      Robert Schmidt authored
      If we do not make this change, with the next commit, we get the
      following error from gcc:
      
        openair2/E2AP/RAN_FUNCTION/O-RAN/ran_func_kpm.c:299:46: error: assignment of read-only location '*(arr_ue_id.ue_info_list + (sizetype)(arr_ue_id.sz * 2444864))'
        |         arr_ue_id.ue_info_list[arr_ue_id.sz] = *ue;
      9e5c5497
    • Robert Schmidt's avatar
      rename find_if_arr -> find_if to avoid name clashes · 6dfd7cdc
      Robert Schmidt authored
      In a later commit, we will use find_if in L2. In the case of building
      with E2 agent, we link e2_agent which comes with its own implementation
      of find_if_arr(), which results in a name clash. Rename the OAI
      implementation, as nothing uses this, anyway.
      6dfd7cdc
    • Robert Schmidt's avatar
      Remove outdated/useless comment · 7cfd5a1f
      Robert Schmidt authored
      7cfd5a1f
    • Robert Schmidt's avatar
      Merge branch 'integration_2024_w21b' into 'develop' · 92491310
      Robert Schmidt authored
      Integration: `2024.w21b`
      
      Closes #734
      
      See merge request oai/openairinterface5g!2755
      
      * !2700 Fix UE PUCCH multiplexing infinite loop
      * !2724 Correct PRACH preamble tx power calculation.
      * !2726 NR SA Tutorials
      * !2728 Use existing function for bits reversal
      * !2732 CU handle F1 setup Req- TAC conversion
      * !2738 Correct data offset for unscrambling in PUSCH processing
      * !2742 UE: fix mutex locking verification
      * !2737 rename persisted ul harq status per pid with a uniq name, make better mutual exclision of processSlotTX()
      92491310
    • Robert Schmidt's avatar
    • Robert Schmidt's avatar
      Revert "remove asserts on min RX/TX, set the RX/TX shift as 2 in the UE" · 58335443
      Robert Schmidt authored
      This reverts commit 0d0e1111.  It was
      set to UE RX to TX time to 2 as it was deemed that the UE could sustain
      this time. However, we noticed a degradation of performance, so reset
      the RX to TX time to something higher to ensure proper performance.
      58335443
    • Robert Schmidt's avatar
      Revert "ci: set min_rxtxtime = 2 in OAIUE pipeline" · b5159b5e
      Robert Schmidt authored
      This reverts commit 31b4f48e.
      b5159b5e
  2. 23 May, 2024 8 commits
  3. 22 May, 2024 9 commits
  4. 21 May, 2024 2 commits
  5. 20 May, 2024 2 commits
  6. 16 May, 2024 5 commits
  7. 15 May, 2024 1 commit
  8. 10 May, 2024 1 commit
  9. 08 May, 2024 1 commit
    • Bartosz Podrygajlo's avatar
      Correct PRACH preamble tx power calculation. · 70f536a0
      Bartosz Podrygajlo authored
      Removed arbitrary offset of 30dB.
      Changed sign for pathloss: pathloss calculated in compute_nr_SSB_PL is the difference between transmitted and received power.
      Transmission power for preamble should compensate the pathloss, therefore power should increase with pathloss.
      70f536a0