An error occurred fetching the project authors.
  1. 16 Jul, 2024 2 commits
    • Robert Schmidt's avatar
      Remove "global" UE variable spCellConfig · 05aa348f
      Robert Schmidt authored
      Variable spCellConfig is only used in function rrc_add_nsa_user(). Make
      it local to this function to prevent possible bugs (limit the possible
      scope as much as possible).
      05aa348f
    • Robert Schmidt's avatar
      Remove "global" UE variable reconfig · 3a18c17d
      Robert Schmidt authored
      Variable reconfig is only used in function rrc_add_nsa_user(). Make it
      local to this function to prevent possible bugs (limit the possible
      scope as much as possible).
      3a18c17d
  2. 04 Jun, 2024 1 commit
    • batuhan duyuler's avatar
      Preparation of Neighbour Configuration & Measurement Configuration | Parsing the configuration · cec6b892
      batuhan duyuler authored
      - neighbour_config.conf file includes neighbour and measurement related parameters
      Neighbour List:
       - nr_cellid: the identity of existing cell who has neighbour
       - neighbour_cell_configuration(list): includes the identity parameters
         of the neighbour cell such:
          - gNBID (incase of N2 Handover / to be identified from AMF)
          - nr_cell_id (target gNB needs to consider)
          - physical_cellId (needed for measurement reporting)
          - absoluteFrequencySSB (needed for measurement reporting)
          - subcarrierSpacing (needed for measurement reporting)
          - plmn / tracking area code (incase of N2 Handover / needed for AMF
            to identify / allow HO)
      
      NR Measurement Configuration
       - Periodical
          - enable (default is 0, 1 enables the reporting)
          - includeBeamMeasurements, maxNrOfRS_IndexesToReport (configurable
            reporting parameters)
       - A2
          - enable (default is 0, 1 enables the reporting)
          - threshold , timeToTrigger (configurable reporting parameters)
       - A3
          - cell_id (the nr_cellid of neighbour cell. So this A3 parameters
            will be used for the neighbour
              - [-1] means default. so it can be applied to any neighbour if
                there is no specific config
              - Neighbour specific A3 Threshold can be used or default can be
                selected depending to the neighbour planning
              - The neighbour-config.conf specifies, apply default A3 for
                neighbours 3 and 4 | apply specific one for neighbour 2
      
          - offset, hysteresis, timeToTrigger (configurable reporting parameters)
      
      the neighbour_config.conf can be included in the gNB.conf file. Example
      is given: gnb.sa.band78.106prb.rfsim.neighbour.conf
      
      A sequence array container is used for neighbour cell configuration. RRC
      structure has this container.  A Measurement configuration structure is
      defined. This structure has Periodical / A2 Event structures and also a
      sequence container for A3 Event List.
      
      These structures are filled during the initialization. While F1 Setup
      Response is coming from DU to CU, the intra frequency / inter frequency
      neighbour decision is given for the existing cell. Also new neighbours
      could be added here if needed.
      cec6b892
  3. 27 May, 2024 1 commit
    • Cedric Roux's avatar
      bugfix/cleanup: remove uint8_t to encode size plus some cleanup · 31274f6c
      Cedric Roux authored
      The starting point was the function do_NR_DLInformationTransfer() which
      may deal with more than 256 bytes.
      
      Then why not cleanup all the functions in the same file.
      (And do a bit of formattting fixing while we're here.)
      
      Then cleanup the callers of those functions.
      
      Then, because of do_SIB23_NR() let's also cleanup in some
      structures.
      
      Not all the codebase was cleaned up, there surely remain some uint8_t
      (and char/short/uint16_t) which are wrong.
      31274f6c
  4. 06 May, 2024 6 commits
  5. 28 Mar, 2024 1 commit
  6. 06 Mar, 2024 1 commit
  7. 01 Mar, 2024 1 commit
  8. 28 Feb, 2024 1 commit
  9. 03 Feb, 2024 8 commits
    • Robert Schmidt's avatar
      Delay PDU session resource setup request if necessary · 0f100a6e
      Robert Schmidt authored
      The next commit moves the UE Capability Enquiry after the first
      reconfiguration. This has the effect that for some UEs (e.g., iPhone),
      the Setup Requests come too close to each other, triggering RRC
      Reconfigurations while previous transactions are ongoing.
      
      I think the "true" solution would be to implement some tracking of
      transactions across RRC, F1AP, E1AP, but this might require many
      changes. For the moment, limit to delaying PDU session resource setups
      to prevent above problem. Delaying is done using ITTI timers (to be able
      to serve other UEs), waiting 10ms each time, up to 20 times (to not
      deadlock the transaction -- after all, if the UE is unhappy, it will
      drop the connection).
      0f100a6e
    • Robert Schmidt's avatar
      8302a060
    • Robert Schmidt's avatar
      RRC transactions: mark "no action" · 62200cde
      Robert Schmidt authored
      62200cde
    • Robert Schmidt's avatar
      Remove unused variables · 2494a7bc
      Robert Schmidt authored
      2494a7bc
    • Robert Schmidt's avatar
      Remove superfluous function, rename variable · d5257ca8
      Robert Schmidt authored
      The function rrc_gNB_process_RRCReconfigurationComplete() does almost
      nothing, we can delete it.
      
      The variable name ue_reconfiguration_after_reestablishment_counter is
      misleading, as it counts all reconfigurations; rename to make it clear.
      d5257ca8
    • Robert Schmidt's avatar
      Remove drb_active array · 1c2e4c71
      Robert Schmidt authored
      The drb_active array keeps track of active DRBs. However, it only
      replicates some of the information in established_drbs, and could lead
      to a reuse of DRB IDs when two bearers are to be set up. Consider the
      following:
      1. trigger first DRB creation at RRC
      2. DRB ID chosen from free drb_active entry
      3. trigger second DRB creation at RRC
         -> The first reconfiguration has not been acknowledged
         -> drb_active is not marked as DRB_ACTIVE
      4. The second DRB ID is chosen from a free drb_active entry, which is
         the same as in 2.
      
      By reusing established_drbs everywhere, this cannot happen, as we
      1. select the DRB to be used using next_available_drb() and then
      2. use generateDRB(), which marks the DRB used
      all from within fill_DRB_configList, which gives a new DRB.
      
      The logic is still overly complex, though.
      1c2e4c71
    • Robert Schmidt's avatar
      Store 5G-S-TMSI from UE if received · 1ee89735
      Robert Schmidt authored
      This commit implements retrieval of 5G-S-TMSI from Parts 1&2, or the
      entire 5G-S-TMSI, depending on what the UE sends. Further, if it has
      been retrieved, print a log of all constituent parts of it.
      
      The UE-specific variable ng_5G_S_TMSI_Part2 is not needed, as we compute
      the full 5G-S-TMSI as soon as we have Part2 (and 1).
      
      The correct forwarding to the core is implemented in the following
      commit.
      1ee89735
    • Robert Schmidt's avatar
      Introduce UE flag for AS security · 4b81e9a4
      Robert Schmidt authored
      Keeping track if AS security is activated. This is important for a later
      commit, where we use this to decide if we send a F1 UE Context Setup Req
      with security command after receiving the E1 bearer context setup
      response. The corresponding AssertFatal() removed in the same commit
      implementing PDU session handling in NGAP Initial UE Context Setup.
      4b81e9a4
  10. 31 Jan, 2024 1 commit
  11. 19 Dec, 2023 1 commit
    • Laurent THOMAS's avatar
      move common code file in common directory · 63b64d4f
      Laurent THOMAS authored
      remove several unused files
      remove mem_block_t that is never used in a different way than a simple heap buffer
      move up IP address type and remove duplications of the same struct declaration
      63b64d4f
  12. 08 Nov, 2023 1 commit
  13. 27 Oct, 2023 1 commit
  14. 26 Oct, 2023 1 commit
  15. 25 Oct, 2023 5 commits
  16. 02 Oct, 2023 1 commit
  17. 22 Sep, 2023 7 commits