1. 22 Feb, 2018 3 commits
    • Cedric Roux's avatar
      remove compilation warnings · 365ca71a
      Cedric Roux authored
      365ca71a
    • Cedric Roux's avatar
      integration: cleanup · 8ca5fb4e
      Cedric Roux authored
      - remove spaces at the end of lines
      - remove useless dead code
        use: git show -p <this commit> -w
        to see it clearly
      8ca5fb4e
    • Cedric Roux's avatar
      integration fix: fix crash · 58eab751
      Cedric Roux authored
      With value 4 when connecting one UE and doing some downlink
      iperf TCP there is a crash. Probably due to the multiple wrong
      RA detected leading to uplink failure of fake UE that never
      sends Msg3 (because, well, there is no other UE).
      
      This is another problem that will be fixed at some point.
      
      Anyway, this value 4 fails. Let's put back 3.
      58eab751
  2. 18 Feb, 2018 1 commit
  3. 17 Feb, 2018 2 commits
  4. 14 Feb, 2018 1 commit
    • Cedric Roux's avatar
      fixup previous bad merge (UE disconnection did not work properly anymore) · 91332d39
      Cedric Roux authored
      Doing airplane mode off to connect a cots UE followed by airplane mode on
      to disconnect it gives very bad results (bad disconnection with lots of
      UL failures followed by lots of logs in the eNB). It used to work properly
      after the work done by Xu Bo.
      
      It turns out that in 2018.w04 things were still working okay. But
      in 2018.w05 no.
      
      So I ran:
      
          git diff 2018.w04 2018.w05
      
      And I checked all the modifications that I thought were relevant
      (everything related to the UE, oaisim, if4 and fapi has not been checked).
      
      This commits takes back the version of 2018.w04.
      
      The modifications in openair2/RRC/LITE/rrc_eNB.c are necessary, I think.
      
      The other modifications may not be necessary or even wrong. To be checked
      at some point.
      91332d39
  5. 13 Feb, 2018 1 commit
  6. 09 Feb, 2018 2 commits
  7. 05 Feb, 2018 1 commit
  8. 31 Jan, 2018 2 commits
    • Robert Schmidt's avatar
      free memory when stopping/restarting lte-softmodem · d0922311
      Robert Schmidt authored
      - add function free_td() -> complements init_td() [seems to not be used, added
        for completeness]
      - add function free_td8() -> undoes init_td8() [free memory of 8-bit LLR Turbo
        decoder]
      - add function free_td16() -> undoes init_td16() [free memory of 16-bit LLR
        Turbo decoder]
      - change function free_tdavx216() -> undoes init_tdavx216() [free memory of
        16-bit LLR Turbo decoder, AVX2 version]
      - add free_lte_top() -> frees memory allocated by init_lte_top()
      - change free_ul_ref_sigs() to set freed pointers to NULL
      - add method free_transport() -> frees memory of ULSCH/DLSCH transport channels
      - use the above functions when stopping/restarting the lte-softmodem
      d0922311
    • Robert Schmidt's avatar
      add phy_free_RU() and phy_free_lte_eNB() · 4f1c51f3
      Robert Schmidt authored
      this methods free the memory that is allocated by the functions
      phy_init_RU() and phy_init_lte_eNB()
      4f1c51f3
  9. 28 Jan, 2018 1 commit
  10. 22 Jan, 2018 1 commit
    • Cedric Roux's avatar
      bugfix: fix issue 285 - connect/disconnect multiple time · 4b5b5564
      Cedric Roux authored
      As reported by Emad Alizade:
      
          According to "Issue255 256 257 paging reesta release" that has been
          merged in develop version, we have a question: In rrc_eNB_free_UE()
          function only all ulsch related memory of user has been cleaned, but
          I think not only ulsch memory but also dlsch memory must be cleaned.
          I tested the latest develop version and with repetition UE attach-detach
          procedures we find that the dlsch memory has not been cleaned and after
          repeat this sequence (45 times) assertion with cause UE_id!=-1 (no free
          or exiting dlsch_context, dci_tools.c: fill_dci_and_dlsch() ) occurred
          and no UE will be attached to system.
      
      The fixes in this commit are from Emad Alizade.
      4b5b5564
  11. 21 Jan, 2018 2 commits
  12. 16 Jan, 2018 4 commits
  13. 15 Jan, 2018 3 commits
    • Mongazon's avatar
      Fix #582, RTAI, RTAI_ENABLED, ENABLE_RTAI_CLOCK, RTAI_ISNT_POSIX,... · cf0e9175
      Mongazon authored
      Fix #582, RTAI, RTAI_ENABLED, ENABLE_RTAI_CLOCK, RTAI_ISNT_POSIX, _RTAI_MATH_H, CELLULAR, TIMER_ONESHOT_MODE, EMOS, EMOS_CHANNEL, OAI_EMU, OPENAIR_EMU, PHY_ABSTRACTION, PHY_ABSTRACTION_UL removed
      cf0e9175
    • Cedric Roux's avatar
      Fix NFAPI integration · 922b5b59
      Cedric Roux authored
      This commit fixes issues introduced by the previous commit.
      
      Summary of work:
      - cleanup:
        - fix LOG_XX to be less verbose
        - fix cmake_targets/CMakeLists.txt
        - fix oaienv
        - remove dead code
      - bug fixes:
        - in openair1/SCHED/fapi_l1.c we had:
            eNB->pdcch_vars[subframe&1].num_dci           = number_dci;
          should be:
            eNB->pdcch_vars[subframe&1].num_dci           = 0;
          This bug let the PHY send more DCIs than what should have been
          sent because num_dci is incremented later on in the code.
          This fix may be a problem for fapi mode, to be checked.
        - add new T VCD traces
        - revert openair1/PHY/TOOLS/file_output.c to 'develop' version
        - remove thread_id in logRecord/logRecord_mt
        - revert (and adapt) configuration files
        - be careful when doing frame++, we need to % 1024
        - revert target_rx_power in openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
      - NFAPI:
        - the open-nFAPI code has been included in the repository. See nfapi/README.
          Maybe we should "git clone" the Cisco repository instead. We have to be
          careful of availability though.
      
      What has been tested:
      - monolithic eNB FDD 5/10MHz with one UE, iperf UDP/TCP uplink/downlink
      
      Anything else may fail to work, especially the FAPI mode, which has not
      been tested at all.
      922b5b59
    • Cedric Roux's avatar
      import NFAPI work from David Price from Cisco (non-working commit, do not use it) · 7757b9e7
      Cedric Roux authored
      It has been chosen to not include the full history of commits
      from David. He included a binary version of wireshark, probably
      a modified one that understands NFAPI. Wireshark is released under
      the GPL license, we cannot include it in the repository. We could
      have done a next commit to remove this binary. But then it would
      still be present in the history of commits, which may not be allowed.
      And it would take space on disk. We could edit the history to remove
      wireshark entirely. But this operation is too complicated.
      
      There was also a pcap capture file, which has nothing to do in
      the history of commits and would take space on disk. There again,
      it's too difficult to edit the history to remove it.
      
      There was a file .gitignore that was also removed.
      
      The original history can be found on David's repository:
      https://gitlab.eurecom.fr/daveprice/openairinterface5g/
      The branch is: nfapi-ru-rau-split.
      
      A copy of that branch has been included in the internal OAI
      repository, for those who have access to it.
      The branch is the same. The last commit ID is
      91064382.
      
      You can compare the current commit with the commit 9106...
      to see what differs.
      
      The current commit has to be considered non-working.
      The commit following the current commit will fix problems with
      the work in the current commit.
      
      If you use git bisect, don't spend time analyzing the current
      commit.
      7757b9e7
  14. 14 Jan, 2018 1 commit
  15. 11 Jan, 2018 1 commit
  16. 10 Jan, 2018 1 commit
  17. 08 Jan, 2018 1 commit
  18. 03 Jan, 2018 1 commit
    • Cedric Roux's avatar
      hotfix: clear DCI padding bits · c5ca2bd8
      Cedric Roux authored
      The problem is the following (as reported by an user):
      
        "one UE is attached to OAI system. UE is near the antenna. Try to detach
        the UE and attach again. Repeat this procedure for 5-6 times. OAI system
        does not work and any the UE can not attach to this system. I use TEMS
        software and I can see MIB signaling on this UE but UE can not decode SIB1
        and SIB2."
      
      What happens is that the DCI for SIB1 and SIB2 is not cleared before
      use. That is the bits in the 'padding' field keep the values that were
      set before. If the structure has been used to transmit other DCIs
      (eg. for UEs) in the past, it may be reused with some of those bits set
      to 1. When receiving this DCI, the UE won't accept it because it
      gets some bits at 1 where it expects them to be 0.
      
      The short-term/quick solution is to clear the 'padding' field.
      A better solution would be to rewrite this part of the code,
      which is way too complicated for what it does. But this takes
      too much time.
      
      In dci.h the field 'dummy' of some structures was renamed to 'padding'.
      The fields 'padding32' and 'padding64' were also renamed to 'padding'
      for consistency.
      
      Some structures (DCI2B_1_5MHz_TDD, DCI2B_10MHz_FDD, DCI2D_1_5MHz_FDD,
      DCI2D_5MHz_FDD, DCI2D_10MHz_FDD) had a 'padding' field at the end, which
      was renamed to 'padding0'. I don't know if this field should be here at all.
      To me this field looks very suspicious. When we test DCIs 2B and 2D we
      should be careful.
      c5ca2bd8
  19. 02 Jan, 2018 1 commit
  20. 30 Nov, 2017 1 commit
  21. 28 Nov, 2017 1 commit
  22. 14 Nov, 2017 1 commit
  23. 04 Nov, 2017 1 commit
  24. 25 Oct, 2017 1 commit
    • Cedric Roux's avatar
      bugfix: fix timing advance · 6da42658
      Cedric Roux authored
      - remove global variables in the function lte_est_timing_advance_pusch
      - do the smoothing logic that was in lte_est_timing_advance_pusch
        in rx_sdu (is it necessary? is it correct?)
      - put back the value 100 in prach_procedures for the test on prach energy
      - change the value of timing_advance_update
      
        it was:
      
           timing_advance_update                  = sync_pos - eNB->frame_parms.nb_prefix_samples/4; //to check
      
        it is now:
      
           timing_advance_update                  = sync_pos; // - eNB->frame_parms.nb_prefix_samples/4; //to check
      
        this should be checked somehow. The computation looked suspicious. Maybe
        the new one is wrong.
      6da42658
  25. 23 Oct, 2017 2 commits
  26. 22 Oct, 2017 1 commit
  27. 20 Oct, 2017 1 commit
  28. 19 Oct, 2017 1 commit
    • Cedric Roux's avatar
      bugfix/warning removal · bf926e35
      Cedric Roux authored
      The warning was:
      
      /roux/ru/openairinterface5g/openair1/PHY/LTE_TRANSPORT/pucch.c: In function 'generate_pucch2x':
      /roux/ru/openairinterface5g/openair1/PHY/LTE_TRANSPORT/pucch.c:729:73: warning: array subscript is above array bounds [-Warray-bounds]
             AssertFatal(1==0,"Illegal modulation symbol %d for PUCCH %s\n",B2,pucch_format_string[fmt]);
                                                                               ^
      /roux/ru/openairinterface5g/common/utils/./itti/assertions.h:52:53: note: in definition of macro '_Assert_'
                       __FUNCTION__, __FILE__, __LINE__, ##aRGS);  \
                                                           ^~~~
      /roux/ru/openairinterface5g/openair1/PHY/LTE_TRANSPORT/pucch.c:729:7: note: in expansion of macro 'AssertFatal'
             AssertFatal(1==0,"Illegal modulation symbol %d for PUCCH %s\n",B2,pucch_format_string[fmt]);
             ^
      The root cause was that the array pucch_format_string was not in sync with
      the structure. (This plus why force its size and put \0 in the string...)
      bf926e35