Commit Graph
87 Commits
Author SHA1 Message Date
Guy De Souza 5b970ac4a0 lte-softmodem NB_timing fix 2018-05-16 17:21:15 +02:00
Guy De Souza 7e5ee477d8 RU malloc fix 2018-05-16 12:11:55 +02:00
Guy De Souza 3ac00170b2 Compiling version- Merge with UE directory split 2018-05-16 11:37:57 +02:00
Guy De Souza 303d677197 Merge branch 'develop-uedirectorysplit' into nr_initialsync 2018-05-02 16:21:33 +02:00
Raymond Knopp ea784f2b4b full IF4p5 simulation working 2018-04-29 09:35:23 -07:00
Raymond Knopp 83b2f1c01c Merge remote-tracking branch 'origin/develop' into develop-uedirectorysplit
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	openair1/PHY/LTE_UE_TRANSPORT/transport_proto_ue.h
	openair1/PHY/defs_eNB.h
	openair1/SCHED_UE/phy_procedures_lte_ue.c
	openair2/LAYER2/MAC/mac.h
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.h
2018-04-23 23:08:10 -07:00
Raymond Knopp 861d06e855 UE directory splits, creation of UE-specific files, common UE/eNB files and extraction of UE/common components from eNodeB files. renaming of files to minimize common names across directories (i.e. defs.h, vars.h, extern.h) 2018-04-22 11:33:43 -07:00
Cedric Roux e29d500db6 integration fix: various fixes
- fix compilation of dlsim/ulsim/oaisim by defining some needed
  global variables
- fix compilation of oaisim: compile coding and params_libconfig
- fix running of if4p5 with low CPU count (oaisim was not working
  on the machine 'haswell' because of this)
2018-04-11 17:15:14 +02:00
Cedric Roux 1f446432f6 Merge remote-tracking branch 'origin/develop-simL1-fixes' into develop_integration_2018_w15 2018-04-11 15:15:54 +02:00
WANG Tsu-Han 68fdd19cb7 fixs for 5-7 core 2018-04-11 15:09:07 +02:00
WANG Tsu-Han 658aa00119 bug fix for threading with under 8core 2018-04-10 16:52:05 +02:00
Guy De Souza 1b68a4f270 NR exe update(compiling) 2018-04-09 14:42:32 +02:00
Raymond Knopp 0f5470b913 removal of logging in UE 2018-04-05 11:11:58 -07:00
Raymond Knopp 9fa001c3c5 prevent UL_indication from overlapping with tx process which cause the drop 2018-04-05 16:33:08 +02:00
Raymond Knopp 846268fdd3 bug fix for qpsk modulation 2018-03-20 18:02:52 +01:00
Wang Tsu-Han 71a98a977e bug fix for killing thread 2018-03-16 18:18:55 +01:00
Raymond Knopp 8d90eda600 bug fix after merge 2018-03-14 16:21:51 +01:00
Raymond Knopp b2cc1252c6 Merge remote-tracking branch 'origin/develop' into RU-RAU-split-parallel-EMUFH-phy-test-merge
Conflicts:
	cmake_targets/build_oai
	common/utils/itti/intertask_interface.c
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_TRANSPORT/dci.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/defs.h
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/ENB_APP/enb_paramdef.h
	openair2/LAYER2/MAC/defs.h
	openair2/LAYER2/MAC/eNB_scheduler.c
	targets/ARCH/COMMON/common_lib.c
	targets/COMMON/create_tasks.c
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-ru.c
	targets/RT/USER/lte-softmodem.h
2018-03-12 12:10:48 +01:00
Cedric Roux 963805820c add a stop_rf function in the RU
When the program exits it has to stop the streaming of the USRP.
The function exit_fun is supposed to do that. When quitting with
control+c (very common case) this function is not called. The
code is very unclear there, so let's add a stop_rf in the RU,
as there is already a start_rf.

If we don't call trx_end_func, then at the next run the USRP
device may be in an unstable state and behave improperly.

If the program crashes then the USRP device may be in an
unstable state. The only solution to this problem is to reset
the USRP device.

Maybe there is a way to clean the state of the device when we
open it, before we start using it. Sort of a cleanup before
use. That could be a better solution to "bad state after program
crash".

What has been tested:
- monolithic eNB only
2018-03-08 10:29:28 +01:00
Wang Tsu-Han 822416e9e2 fep initialization for less core 2018-03-06 15:41:05 +01:00
Wang Tsu-Han ac95f89aa5 fixes for fewer core 2018-03-05 11:43:14 +01:00
Wang Tsu-Han 23f5628735 changing into double sided signal for pipeline 2018-03-05 11:20:51 +01:00
Wang Tsu-Han cb4dc53042 adding wait stage for every wakeup 2018-02-22 15:59:23 +01:00
Cedric Roux 365ca71a4a remove compilation warnings 2018-02-22 15:03:45 +01:00
Wang Tsu-Han 56a32a22d4 changing emulate-rf into an executional option instead of compiler option 2018-02-21 18:13:34 +01:00
Wang Tsu-Han 869b9a5c6f fix for phy-test UL and adding wakeup_txfh 2018-02-20 15:05:00 +01:00
Cedric Roux 8cab562b9f Merge remote-tracking branch 'origin/feature-merge-merge-f68' into develop_integration_2018_w07 2018-02-15 09:58:26 +01:00
Emad 1056604b25 I tried to change rx and tx attenuation by the config file, but they are not changed. The bug is because att_rx and att_tx do not put in RC.rru when local_rf is "yes" in config file. We need to put att_rx and att_rx for both local_rf = "yes" and "no". Also RF config which send to RF device must be fill by this parameters. 2018-02-12 15:12:22 +01:00
Robert Schmidt 6cff88b9c8 free memory on teardown after all RU/eNB threads have been released 2018-02-09 10:56:14 +01:00
Robert Schmidt c8ae5b7c09 decrease warning 2018-02-08 18:55:23 +01:00
Robert Schmidt a21bc513bb Merge branch 'develop' into feature-merge-f68 2018-02-08 18:05:28 +01:00
Eurecom 863c469d35 bug fix for adjustable thread structure 2018-01-31 17:53:54 +01:00
Robert Schmidt d092231181 free memory when stopping/restarting lte-softmodem
- 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
2018-01-31 16:49:24 +01:00
Robert Schmidt 4f1c51f38c add phy_free_RU() and phy_free_lte_eNB()
this methods free the memory that is allocated by the functions
phy_init_RU() and phy_init_lte_eNB()
2018-01-31 16:49:24 +01:00
Robert Schmidt 8e9d9807ae lte-ru.c: fct for interface -dependant config, export more functions
- add set_function_spec_param() which configures RU_t instance depending on its
  function(al split)
- export more functions like kill_RU_proc() so that they can be reused by
  restart functionality
2018-01-31 16:49:24 +01:00
Robert Schmidt a91a35877d join all RU threads 2018-01-31 16:49:24 +01:00
Robert Schmidt 9333c16ecb bugfixes: correctly initialize mutexes, conds of RU_proc_t, unlock RU.mutex after using 2018-01-31 16:49:24 +01:00
Eurecom f0e10b0d89 bug fix for shared info between threads 2018-01-30 14:56:23 +01:00
Raymond Knopp 0d05de6382 minor changes after merge with develop for noS1 simulation 2018-01-28 13:13:59 +01:00
Wang Tsu-Han 3efaa38394 adjustable thread structure 2018-01-26 18:05:17 +01:00
Eurecom 30d5f151c3 specified modulation for QPSK 2018-01-22 18:02:02 +01:00
Rohit Gupta 046589e76d fixes after merge with develop. Partial UE/eNB separation in build to avoid problems with NFAPI in oaisim UE/RRU.
tested with simulator.
2018-01-21 22:15:45 +01:00
Wang Tsu-Han cfec3ffd56 adding EMULATE_RF into CMakelist 2018-01-16 15:50:57 +01:00
Raymond Knopp d32cdd1f33 Merge remote-tracking branch 'origin/develop' into develop-nos1-fixes
Conflicts:
	openair1/SCHED/fapi_l1.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/LAYER2/MAC/config.c
2018-01-16 03:55:37 -08:00
Cedric Roux 922b5b595a Fix NFAPI integration
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.
2018-01-15 15:24:50 +01:00
Cedric Roux 7757b9e7e7 import NFAPI work from David Price from Cisco (non-working commit, do not use it)
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
9106438239e0bc626ff1fa1d97d911caadd0fbb9.

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.
2018-01-15 11:32:30 +01:00
Raymond Knopp 380222eefd timestamp handling for IF4p5, attenuation parameters 2018-01-10 21:07:45 +01:00
Eurecom d1f7346c08 bug fix for missing wait sync 2018-01-05 17:02:49 +01:00
Wang Tsu-Han cabb4561d5 seperating rx tx process and fixixng coding threads on different cores 2018-01-03 12:01:48 +01:00
Wang Tsu-Han 22e7b1e6da extending dlsch_coding into four thread 2017-12-14 15:29:05 +01:00