Commit Graph
466 Commits
Author SHA1 Message Date
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 596736afae dlsim/ulsim functional. lte-softmodem/lte-uesoftmodem compile. 2018-04-24 22:14:20 -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
Florian Kaltenberger a413f12d9c adding support for bandwidths 40 and 80 MHz to usrp_lib and rru 2018-04-09 08:07:52 -07:00
Raymond Knopp be816fab6f Merge branch 'develop' into RU-RAU-split-parallel-EMUFH-phy-test-merge 2018-04-06 15:12:46 +02:00
Guy De Souza 7b524674c6 Intermediate commit/ Not working(defs issue) 2018-04-05 16:48:26 +02:00
Cedric Roux 3288a6bbe4 Merge remote-tracking branch 'origin/bugfixes-2018-w12' into develop_integration_2018_w12 2018-03-23 10:47:43 +01:00
Cedric Roux 16cb7eba64 remove start_background_system from eNB softmodem
This is only needed by the UE code, to setup IP settings.
The eNB does not need this. (To be reverted if this is
wrong.)
2018-03-23 10:44:13 +01:00
Robert Schmidt 318e4a345e free configmodule memory when shutting down
It is possible to restart the lte-softmodem via the FlexRAN controller. For
this to work, the end_configmodule() method needs to be called when shutting
the lte-softmodem down so that the configuration can be read again during a
restart.
2018-03-20 14:41:58 +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 00f234029a Merge remote-tracking branch 'origin/bugfixes-2018-w10' into develop_integration_2018_w10 2018-03-09 14:58:37 +01:00
oai da50d68b06 more NB-IoT integration 2018-03-08 17:35:35 +01:00
oai b04f3b54a4 introduce distinct executables for ue and eNodeB (lte-uesoftmodem, lte-softmodem) 2018-03-08 17:29:34 +01:00
oai 45302792ee config module fix and extensions for Nb-IoT, shared lib loader and telnet server implementation 2018-03-08 17:24:23 +01:00
Cedric Roux 5a61f9944c cleanup - remove unnecessary calls to get_cpu_freq_GHz
The one in lte-enb.c disrupts the realtime. Using a B200mini with
20MHz bandwidth leads to the UE unable to connect for it seesms like
the UL and DL are not properly time synched because of this sleep
of one second that happens after the USRP streaming has started.
We see some random access attempts but the decoded preamble is
wrong.

This may be dependant on the setup. I had sporadic errors with
a B210, where sometimes the UE could connect and sometimes not.
2018-03-08 10:11:09 +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
Robert Schmidt adec4e39df remove all conditional FlexRAN-related compilation directives 2018-02-12 14:38:44 +01:00
Robert Schmidt d746ff6127 update comments in restart_L1L2() 2018-02-09 16:29:59 +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 a21bc513bb Merge branch 'develop' into feature-merge-f68 2018-02-08 18:05:28 +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 3f043c7d73 FlexRAN: implement possibilty to await a configuration
Through configuration, the lte-softmodem can be halted to await a
reconfiguration from the lte-softmodem. A mutex and condition variable are used
to implement this.

Furthermore, the dependance of lte-softmodem.c on FlexRAN has been reduced to
one include and the flexran_agent_start() call.
2018-01-31 16:49:24 +01:00
Robert Schmidt 811ada2429 soft-restart (i.e. only layers PHY-RRC) the lte-softmodem 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
Robert Schmidt 6a6729bdac fix various compilaton errors due to merge 2018-01-31 16:48:29 +01:00
Wang Tsu-Han 3efaa38394 adjustable thread structure 2018-01-26 18:05:17 +01:00
Raymond Knopp 8b052dadd5 Merge branch 'develop-nos1-fixes' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop-nos1-fixes
Conflicts:
	cmake_targets/CMakeLists.txt
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/RRC/LITE/rrc_UE.c
	openair2/RRC/LITE/rrc_common.c
	targets/SIMU/USER/oaisim_functions.c
2018-01-25 00:00:24 -08:00
Raymond Knopp f8b0cd5bd4 Merge remote-tracking branch 'origin/develop' into develop-nos1-fixes
Conflicts:
	cmake_targets/CMakeLists.txt
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair2/RRC/LITE/rrc_UE.c
2018-01-24 23:36:39 -08:00
Robert Schmidt 6198a673f0 correctly instantiate flexran agent 2018-01-24 11:51:35 +01:00
Robert Schmidt 78dd80b086 Merge branch 'feature-68-enb-agent' into feature-merge-f68
Try to merge feature-68-enb-agent into develop
develop should be fast-forwarded later to this branch to complete the merge
This code does not compile yet. Among other things:
- the scheduler structure needs to be reworked for FlexRAN
- the config is structured differently. The files enb_config.{c,h} from develop
  have been copied in here, the files with merge annotations are in
  enb_config.{c,h}.before_merge
- the restart needs to be restructured, since the PHY vars data structure lives
  in RC now
2018-01-24 11:47:28 +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
Cedric Roux 282f6a5077 Merge branch 'issue255_256_257_paging_reesta_release' into develop_integration_2018_w03
Conflicts:
	targets/RT/USER/lte-softmodem.c
2018-01-17 11:49:44 +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
Guy De Souza 9d03290858 rx_dump_frame ue_mode fix 2018-01-09 22:15:15 +01:00
Raymond Knopp 840d37edf3 Merge branch 'oaisim_config_module_fix' into develop-nos1-fixes
Includes the following updates:
1. oaisim/lte-softmodem in noS1
2. UE fixes for oaisim
3. IF4p5 fixes (doesn't work on develop)
4. UE fixes for DCI handling (corrects problem introduced in develop)
Conflicts:
	cmake_targets/CMakeLists.txt
	targets/SIMU/USER/oaisim_functions.c
2018-01-01 08:34:02 -08:00
Robert Schmidt 359e1528dd refactor: FlexRAN reads eNB configuration automatically 2017-12-14 13:06:05 +01:00
Robert Schmidt f39dd5df18 bugfix: handle variable start_eNB in restart 2017-12-14 13:06:05 +01:00
Robert Schmidt fea641220b Start FlexRAN agent directly, lock with mutex&condition
- lock with mutexes
- don't start ENB_APP task, but Agent directly and wait in case of
  reconfiguration
2017-12-14 13:06:05 +01:00
Robert Schmidt 730ffc76f4 stop_L1L2(): no sleep, better oai_exit handling 2017-12-14 13:06:05 +01:00
Robert Schmidt c619f6eff7 Feature: Provide restart for lte-softmodem
- {restart,stop}_L1L2() in lte-softmodem.c
- add function start_phy_rrc() in enb_app.{c,h}, accessible from outside
- will be used to restart PHY and RRC when lte-softmodem is restarted

use only one FlexRAN wait function
2017-12-14 13:06:05 +01:00
Robert Schmidt ea65ddad2c fill PHY_vars_eNB_g in own function 2017-12-14 13:06:05 +01:00
Robert Schmidt c62be7a101 Uniform messages of exiting threads 2017-12-14 13:06:04 +01:00
Navid Nikaein 612ab055d7 Add control logic to reconfigure and start eNB 2017-12-14 13:05:34 +01:00
Wang Tsu-Han d82a0d900d adding ulsch_decoding multiy threading 2017-12-12 15:24:00 +01:00