Compare commits

...

2466 Commits

Author SHA1 Message Date
Raymond Knopp
ea71fa3e2e added new complex multiplication code from M. Fogliato and L. Rossi to ul_7_5kHz.c 2018-06-17 08:13:31 +00:00
Raymond Knopp
19bcb45215 Merge branch 'develop-aarch64build' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop-aarch64build 2018-06-17 08:05:46 +00:00
Raymond Knopp
7220271c7e removal of debugging traces 2018-06-17 08:05:09 +00:00
knopp
eda824663e Merge branch 'dlsch_mod_opt' into 'develop-aarch64build'
Optimized dlsch_modulation, removed debug print in slot_fep

See merge request oai/openairinterface5g!315
2018-06-16 13:55:01 +02:00
monti
9f6cc62057 Optimized dlsch_modulation, removed debug print in slot_fep 2018-05-30 11:31:01 +00:00
Raymond Knopp
562ce28806 corrections for ARM NEON port. IFFT/FFTs are validated (512/1024/2048), 7.5 kHz frequency-shift for eNodeB RX, UE TX validated. UL channel estimation ok for DMRS symbols, interpolation is broken on NEON. 2018-05-20 21:23:29 +00:00
Raymond Knopp
48b95afc9c added ARM64 for unitary simulation of FFTs 2018-05-20 09:23:22 +00:00
Raymond Knopp
687bdebeb3 Merge branch 'Monti/openairinterface5g-fix-x86_64' into develop-aarch64build 2018-05-20 08:05:32 +00:00
Paolo Monti
a28bd74b62 Fix build for x86_64 2018-05-20 07:54:02 +02:00
Raymond Knopp
813a21e522 fix out-of-bound access in dci_tools.c (coherency check) 2018-05-09 08:44:06 +00:00
Raymond Knopp
bddf6304aa addition of query of virtual timer frequency and computation of timing information for __aarch64__ 2018-05-03 09:45:47 +00:00
Raymond Knopp
f6641237d2 cpu frequency extraction 2018-05-03 00:58:13 +00:00
Raymond Knopp
0e80157cb5 fixes for dlsim compilation for aarch64 2018-05-03 00:32:04 +00:00
Raymond Knopp
7156ccb8d0 ulsim compiles, dlsim mostly done 2018-04-24 02:13:38 +00:00
arabica
9d287e2df9 build -I -w USRP for aarch64 (tested with 16.04 build on macchiato double shot). Needed to add copy of /usr/share/misc/config.guess nd /usr/share/misc/config.sub to /tmp/asn1c to replace the ones generated by asn1c.
Also, had to added universe to "xenial" and "xenial-updates" in /etc/apt/sources.list

2018-04-23 21:50:52 +00:00
Cedric Roux
184d51c6ea Merge remote-tracking branch 'origin/develop_integration_2018_w15' into develop
Summary of changes:
- some work on better parallel processing of eNB
  try the eNB with options: --fepw --codingw
- small changes for multi-UE simulation and simulation accuracy
  (UE power levels)
- initial work for the UE to use TUN device instead of ue_ip.ko
  only done for oaisim, default bearer, compile with:
    ./build_oai --ue-nas-use-tun <rest of options>
2018-04-16 12:19:20 +02:00
Cedric Roux
79eb6eb4d2 integration fix: fix UE softmodem compilation 2018-04-16 11:23:05 +02:00
Cedric Roux
17dda7bd70 integration fix: minor fix 2018-04-13 11:59:56 +02:00
Cedric Roux
fa4a9a0cb9 integration fix: update T tracer: add new VCD variables 2018-04-12 11:36:31 +02:00
Cedric Roux
a1a60dc19a integration fix: revert target_rx_power to 178 in eNB_scheduler_ulsch.c
158 does not work well with the eNB softmodem.
2018-04-12 11:28:51 +02: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
Cedric Roux
86599d47a9 Merge remote-tracking branch 'origin/ue-use-tun-for-nas' into develop_integration_2018_w15 2018-04-11 15:15:49 +02:00
Cedric Roux
bf678f7fb0 Merge remote-tracking branch 'origin/RU-RAU-split-parallel-EMUFH-phy-test-merge' into develop_integration_2018_w15 2018-04-11 15:15:39 +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
Raymond Knopp
0ab2b2b261 modifications for simulator : power normalizations for UE TX, small changes to SNR targets for power control, default UE power (23 dBm now) 2018-04-06 10:27:23 -07:00
Cedric Roux
cf45997110 Use TUN device for NAS for the UE instead of ue_ip.ko
This work is based on work by NTT.

To use the code, do:
./build_oai --oaisim --ue-nas-use-tun -t ETHERNET -c

This commit only handles oaisim in S1 mode.

We won't handle noS1 mode.
2018-04-06 16:53:42 +02:00
Raymond Knopp
eee7673893 warning remove 2018-04-06 15:57:23 +02:00
Raymond Knopp
be816fab6f Merge branch 'develop' into RU-RAU-split-parallel-EMUFH-phy-test-merge 2018-04-06 15:12:46 +02:00
Raymond Knopp
fb4752a2cf default RF configuration 2018-04-06 00:07:23 +02:00
Raymond Knopp
3d8a21636a multi-ue checks in pdcp 2018-04-05 22:32:18 +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
Cedric Roux
1272cabb35 Merge remote-tracking branch 'origin/develop_integration_2018_w12' into develop
Summary of changes:
- 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.
- Feature agent
  Implements an agent ID, consisting of the OAI module ID, the OAI eNB ID
  and the cell ID. The agent reads this information in its configuration
  read function and forwards it to the controller.
  This MR also contains some code forwarding SI info to the controller.
- various bugs fixed
  - remove start_background_system from eNB softmodem
  - fix memory leak when doing traffic
  - disable ITTI dump (does someone uses this?)
  - disable U-plane inactivity timer: it's very simple to put this back,
    but as of now it comes with its own problems that we don't have time
    to check/fix
2018-03-23 16:24:17 +01:00
Cedric Roux
ff3c929ecf fix PHY simulators compilation
Only ulsim and dlsim compile. The others (dlsim_tm4 pucchsim prachsim
pdcchsim pbchsim mbmssim) have been disabled.

Command line to compile: ./build_oai --phy_simulators
2018-03-23 15:15:51 +01: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
f15b446469 Merge remote-tracking branch 'origin/feature-agent-id' into develop_integration_2018_w12 2018-03-23 10:47:36 +01:00
Cedric Roux
b79e6bfb10 Merge remote-tracking branch 'origin/fix-softmodem-restart' into develop_integration_2018_w12 2018-03-23 10:47:31 +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
Cedric Roux
3a0d9339dc bugfix: fix a memory leak
When doing TCP downlink traffic with iperf for several
hours, the memory consumption of lte-softmodem does not
stop to grow.

After analysis, this commit seems to be the only fix needed.
To be checked somehow.
2018-03-23 10:42:36 +01:00
Cedric Roux
e7bca7fdac Disable ITTI dump
If anyone needs it, it's a simple matter of reverting this
basic commit.
2018-03-23 10:42:36 +01:00
Cedric Roux
5fdc3077db disable U-plane inactivity timer.
It is annoying and does not seem to work properly.
To be checked/reworked if needed.

Keep in mind that we also want oaisim to be functional.
2018-03-23 10:42:30 +01:00
Robert Schmidt
9c47c860bc FlexRAN: RCconfig_flexran(): only read necessary information
if the FlexRAN agent is disabled, do not read all the data and skip reading
of more information
2018-03-23 09:20:19 +01:00
Robert Schmidt
d54d415125 FlexRAN: add Information in enb_config_reply msg 2018-03-22 18:43:15 +01:00
Robert Schmidt
1854826053 FlexRAN: send agent_id (aka enb_id) 2018-03-22 18:43:15 +01:00
Robert Schmidt
e7a60fc992 FlexRAN: make agent_id for identification purposes, discern from mod_id
The agent_id is a uint64 consisting of: module ID (i.e. mod_id, the several
instances of OAI at once, 16 bit), the enb_id from the configuration file (32
bit) and the cell_id from the configuration file (16 bit).

The module ID is part of the agent ID but it is easier to have it directly in
the struct.
2018-03-22 18:41:14 +01:00
Raymond Knopp
846268fdd3 bug fix for qpsk modulation 2018-03-20 18:02:52 +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
Cedric Roux
3fe90157e6 Merge remote-tracking branch 'origin/bugfixes-2018-w11' into develop 2018-03-19 10:57:35 +01:00
Cedric Roux
89201888e3 Merge remote-tracking branch 'origin/cherry-pick-5722d493' into develop 2018-03-19 10:57:16 +01:00
Cedric Roux
d393814772 bugfix: send UL NACK (on PHICH) at the right place
The PHICH was not programmed for the last round (4) because it was
not programmed in rx_sdu but in schedule_ulsch_rnti, only in case
of a programmed retransmission (there is obviously no retransmission
programmed after the last round).

The case of Msg3 is not handled. To be done somehow.
2018-03-19 10:28:16 +01:00
Wang Tsu-Han
71a98a977e bug fix for killing thread 2018-03-16 18:18:55 +01:00
Cedric Roux
3da8cac59b bugfix: try to release HARQ processes properly
The code is too complex. This commit may not be enough.
2018-03-15 10:48:16 +01:00
Raymond Knopp
8d90eda600 bug fix after merge 2018-03-14 16:21:51 +01:00
Eino Virtanen
445524bc87 fix building protobuf when user name is not the same as primary group name 2018-03-12 15:57: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
e56ae69bc3 Merge remote-tracking branch 'origin/develop_integration_2018_w10' into develop
Summary of changes:
- bug fix in the FlexRAN API (correct a check)
- bug fix for sending the right RNTI in a FlexRAN message
- fixes small bug in ulsim which kills one RX antenna in channel simulation.
  Another simple but bad bug in ulsch_demodulation.c (bad access of avgU
  array). This probably resulted in a performance degradation for non-ideal
  channels, even for 1 antenna. The avgU was read in position 1 instead of
  0 for 1-antenna and in positions 1 and 2 instead of 0 and 1 for 2-antennas.
- work from Nokia:
    1) shared library loader, with integration for oai devices, encoder and telnet server
    2) telnet server (use build-oai --build-telnetsrv option and --telnetsrv softmodem option)
    3) UE/eNB in different executables (lte-uesoftmodem and lte-softmodem + noS1 variants)
    4) config module fixes and extensions
    5) very preliminary NB-IoT integration preparation, using shared lib loader ( use make NB-IoT to build, after building the eNB softmodem)
    6) Rename NB-IoT configuration sources from nbiot_ to NB-IoT_ to be consistent with other NB-IoT developments.
- various bugs fixed:
  - try to avoid "buffer full" problem when pushing DL traffic
  - add a stop_rf function in the RU
  - cleanup - remove unnecessary calls to get_cpu_freq_GHz
    (was disrupting realtime at startup, generating lots of UU and LL)
  - cleanup MAC PDU generation

Compilation with Rel10 is not functional anymore.
Compilation of unitary simulator is not functional anymore.
2018-03-09 16:47:08 +01:00
Cedric Roux
e7cfe377db integration fix: fix file format (dos2unix)
End of line character has to be unix-style, not dos-style.
2018-03-09 16:43:08 +01:00
Cedric Roux
92bb82eb2b integration fix: fix license version to 1.1 2018-03-09 16:40:09 +01:00
Cedric Roux
cd103f7c3d Merge remote-tracking branch 'origin/fixes-flexran' into develop_integration_2018_w10
* bug fix in the FlexRAN API (correct a check)
* bug fix for sending the right RNTI in a FlexRAN message
2018-03-09 14:58:51 +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
Cedric Roux
727e29e3c0 Merge remote-tracking branch 'origin/ulsch-rx-2ant-fix' into develop_integration_2018_w10
fixes small bug in ulsim which kills one RX antenna in channel simulation.
Another simple but bad bug in ulsch_demodulation.c (bad access of avgU
array). This probably resulted in a performance degradation for non-ideal
channels, even for 1 antenna. The avgU was read in position 1 instead of
0 for 1-antenna and in positions 1 and 2 instead of 0 and 1 for 2-antennas.
2018-03-09 14:57:32 +01:00
Cedric Roux
3e99c7aa97 Merge remote-tracking branch 'origin/develop-nbiotconf-shlibloader' into develop_integration_2018_w10
1) shared library loader, with integration for oai devices, encoder and telnet server
2) telnet server (use build-oai --build-telnetsrv option and --telnetsrv softmodem option)
3) UE/eNB in different executables (lte-uesoftmodem and lte-softmodem + noS1 variants)
4) config module fixes and extensions
5) very preliminary NB-IoT integration preparation, using shared lib loader ( use make NB-IoT to build, after building the eNB softmodem)
6) Rename NB-IoT configuration sources from nbiot_ to NB-IoT_ to be consistent with other NB-IoT developments.
2018-03-09 14:56:18 +01:00
Cedric Roux
71e7f9713a hack: try to avoid "buffer full" problem when pushing DL traffic
This is hack-level development.

With this commit you can do UDP DL traffic of say 100Mb/s over
a 5MHz link with one connected UE and the eNB should not crash
because of memory exhaustion. Of course on the receiver side
you won't get 100Mb/s and many many lost packets. But the system
should not crash. 1Gb/s does not work. So in any case try to
remain within some reasonable limits. There is no reason to
push more than twice the maximum achievable throughput of
the link.

This work is based on a patch proposed by Francesco Gringoli.
2018-03-09 10:18:12 +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
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
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
Cedric Roux
1a8d81ba57 cleanup MAC PDU generation (plus some general cleanup)
The code was very unclear and potentially buggy.
This new version is more robust.

We can waste up to 2 bytes because the last header in the MAC PDU
does not contain a length field and when we request data from RLC
we suppose a 3-bytes MAC header. This might be optimized at some
point, but the benefit would be low.

This commit also contains some general cleanup:
- formatting
- variables' types: let's use 'int' instead of trying to be clever
  by using small types that may generate bugs if the value is
  too big
- remove 'tpc_accumulated' which was globally used for all UEs
  and has no purpose other than logging. We may want to rework
  a bit the TPC machinery at some point. As the code is today
  we may repeatedly send TPC over and over without caring about
  the 3GPP limits, in which case no one knows how the UE is
  supposed to behave: does it clamp the current max value or does
  it accumulate over and over and take the clamped value to compute
  its actual power? If we send a reverse TPC (reduce power instead
  of increase) does it do it immediately or does it have to decrease
  n+1 times if we previously ordered it to increase n times?)

We do not address the problem of prioritizing LCIDs. As of today there
is only one dedicated traffic channel (DTCH), so it's not a problem
at this point.

What has been tested:
- monolithic eNB 5/10/20MHz with one cots UE, TCP/UDP UL/DL. At 20MHz the
  machine used was not capable of keeping up, generating lots of Us
  and Ls when the throughput reaches 60Mb/s. USRP B210 was used.
2018-03-08 10:04:18 +01:00
Raymond Knopp
957cdbab48 fixes bug in ulsim for 2 antenna RX. 2018-03-07 01:26:04 +01:00
Raymond Knopp
bcaabe513f bugfix on access of avgU array 2018-03-06 23:32:51 +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
Robert Schmidt
4924b18ebd FlexRAN: send RNTI in protobuf mac_stats_reply message 2018-03-02 17:36:43 +01:00
Robert Schmidt
8cace6537e correctly check for MAC presence in FlexRAN RAN API 2018-03-02 17:36:43 +01:00
Cedric Roux
307e2f299a Merge remote-tracking branch 'origin/hotfix-rlc-2018-w09' into develop 2018-03-02 15:29:36 +01:00
Cedric Roux
2f8dc35583 Merge remote-tracking branch 'origin/fix-unnecessary-decl' into develop 2018-03-02 15:29:10 +01:00
Cedric Roux
26d68e9c5e hotfix: fix bad RLC UM packet creation
Running TCP DL traffic with one connected UE showed a lot of
fluctuations in throughput. After analysis it was found that
sometimes the RLC UM PDU was not correct. It contained one byte
more than it should. On the receiver side, the TCP packet
contained in the RLC packet seems to be rejected by the TCP
stack of the UE (it has one byte more than it should),
leading to a brutal reduction of the throughput, probably due
to some congestion detection in the TCP implementation.
Or something.

This hotfix seems to solve the problem. Using iperf in downlink
with a 5MHz eNB, we see no more fluctuations, the traffic is
very steady at 16.8Mb/s, as reported by the iperf server running
on the phone. (17.5 in the PHY plot of the T tracer.)

A rewrite of both the MAC and RLC UM packet generation is needed.
The code is way too complex for what it does and may contain
several similar problems that only trigger in specific rare
conditions.
2018-03-02 12:02:06 +01:00
Robert Schmidt
7d8d1588c3 remove unnecessary function declaration
has been introduced in commit 365ca71a4a
2018-03-01 09:04:41 +01:00
Cedric Roux
6858b55c60 Merge remote-tracking branch 'origin/develop_integration_2018_w08' into develop
Summary of changes:
- fix dlsim/ulsim
- fix centOS compilation
- Move the accounting phase of the DL pre-processor in a separate procedure
  and fix some issues
- additional Mac stats and Improvements
- minor fix in test setup v2
2018-02-26 11:43:27 +01:00
Cedric Roux
9f1530c3c9 Merge remote-tracking branch 'origin/fix-centos-network-device-compilation' into develop_integration_2018_w08 2018-02-26 11:34:36 +01:00
Wang Tsu-Han
4b39203763 adding te/td distructure 2018-02-23 16:59:57 +01:00
Raymond Knopp
dc0638d7f6 added compilation directives for nasmesh and ue_ip kernel modules to allow for building on RHEL systems. 2018-02-22 16:45:18 +01:00
Cedric Roux
37425ee967 bugfix: revert bad change
Without this revert, the following does not compile:

    ./build_oai --oaisim
2018-02-22 16:03:45 +01:00
Wang Tsu-Han
cb4dc53042 adding wait stage for every wakeup 2018-02-22 15:59:23 +01:00
Cedric Roux
b23a8ad0fe integation fix: minor typo 2018-02-22 15:04:09 +01:00
Cedric Roux
84882d9414 Merge remote-tracking branch 'origin/fix-test-setup-2018-w08' into develop_integration_2018_w08 2018-02-22 15:03:57 +01:00
Cedric Roux
365ca71a4a remove compilation warnings 2018-02-22 15:03:45 +01:00
Cedric Roux
8ca5fb4ef2 integration: cleanup
- remove spaces at the end of lines
- remove useless dead code
  use: git show -p <this commit> -w
  to see it clearly
2018-02-22 15:03:09 +01:00
Cedric Roux
58eab7515f integration fix: fix crash
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.
2018-02-22 15:02:30 +01:00
Cedric Roux
d5e179fa1f Merge remote-tracking branch 'origin/flexran-mac-stats' into develop_integration_2018_w08 2018-02-22 15:02:15 +01:00
Cedric Roux
4fb2e609fd Merge remote-tracking branch 'origin/enhancement-preprocessor' into develop_integration_2018_w08 2018-02-22 15:02:04 +01:00
Cedric Roux
7b06a540d8 Merge remote-tracking branch 'origin/fix-centos-compilation-2018-w08' into develop_integration_2018_w08 2018-02-22 15:01:54 +01:00
Cedric Roux
5e581a4b06 Merge remote-tracking branch 'origin/dlsim-ulsim-fix' into develop_integration_2018_w08 2018-02-22 15:01:38 +01:00
Robert Schmidt
e66bd0e2b1 RAN API: unify style, declare missing function in header 2018-02-22 12:03:10 +01:00
Cedric Roux
1e2a7156e0 test setup v2: minor bugfix 2018-02-22 11:54:16 +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
shahab SHARIAT BAGHERI
9a9c867a75 additional Mac stats and Improvements 2018-02-20 15:09:24 +01:00
Wang Tsu-Han
869b9a5c6f fix for phy-test UL and adding wakeup_txfh 2018-02-20 15:05:00 +01:00
Niccolò Iardella
10e91d4e2f Move the accounting phase of the DL pre-processor in a separate procedure 2018-02-19 15:48:17 +01:00
Cedric Roux
62787a8893 fix CentOS compilation
The following was not working properly:

    ./build_oai -I -w USRP

After this commit it works.

And so does:

  ./build_oai --eNB -w USRP
2018-02-19 14:09:09 +01:00
Wolfgang A. Mozart
2194bc8564 fixed timing issue for phy-test scheduling UL. UL is broken after first execution of dlsch decoding 2018-02-19 10:45:34 +01:00
Raymond Knopp
1c46dd7c69 updates for oaisim 2018-02-18 17:31:40 +01:00
Raymond Knopp
b42d83bead memory allocation bugs for 2x2 transmission in dlsim 2018-02-18 12:19:31 +01:00
Raymond Knopp
da83df84f1 Merge remote-tracking branch 'origin/develop' into dlsim-ulsim-fix
Conflicts:
	openair1/PHY/INIT/lte_init.c
2018-02-18 01:39:36 -08:00
Raymond Knopp
a1dc99724b missing file 2018-02-17 11:15:53 -08:00
Raymond Knopp
f7c58f27ca dlsim and ulsim functional. dlsim 1-2 antenna ports, TM1/2. ulsim 1-2 antenna ports. 2018-02-17 11:08:56 -08:00
Wang Tsu-Han
bf601fce71 adding phy-test for UL 2018-02-16 19:15:40 +01:00
Cedric Roux
5357ef2050 Merge remote-tracking branch 'origin/develop_integration_2018_w07' into develop
Summary of changes:
- a lot of work on flexran
- several compilation bugfixes
- some bugfixes for some bad conflict resolutions
- various bugs fixed
2018-02-16 15:30:23 +01:00
Cedric Roux
2d6dd02b95 bugfix: fix bad conflict resolutions from previous commits
Some more fixes for some bad conflict resolutions.

I ran:

    git diff 2018.w04 2018.w05

And saw some problems with config_sib2.

There was also something strange in openair2/LAYER2/openair2_proc.c
in the function dump_eNB_l2_stats. Maybe the fix is wrong for
this one. To be checked.
2018-02-16 11:11:50 +01:00
Cedric Roux
c0be5a129c integration fix: set default max MCS for UL back to 20
Doing an iperf UDP uplink test, we could reach only 6Mb/s
with very good radio conditions instead of around 8Mb/s.

It turns out the MCS was limited to 16.

With this commit, we are back to a bit more than 8Mb/s
as it used to be.

(This is with a 5MHz bandwidth.)
2018-02-15 16:50:30 +01:00
Cedric Roux
b2ac257ef5 integration fix: compilation failed
The following compilation failed before this commit:

    ./build_oai --eNB -w USRP -c --T-tracer
2018-02-15 13:40:34 +01:00
Cedric Roux
e4a5470d47 integration fix: noS1 compilation
The following compilation did not work anymore:

    ./build_oai --eNB -c -w USRP --noS1

Neither did:

    ./build_oai --UE --noS1
2018-02-15 11:34:53 +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
Cedric Roux
91332d3906 fixup previous bad merge (UE disconnection did not work properly anymore)
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.
2018-02-14 17:59:04 +01:00
Robert Schmidt
a4f260f5a4 fix: no FLEXRAN_AGENT_SB_IF compilation directive 2018-02-14 17:50:41 +01:00
Niccolò Iardella
7e3b1f5d0a Niccolo: Add sorting policy 2018-02-14 17:06:04 +01:00
Robert Schmidt
7b1afbb0bf provide stop_L1L2()/restart_L1L2() in oaisim
the functions are meant to restart the lte-softmodem (lower layers) and are not
supported in oaisim. They are provided to make oaisim compile.
2018-02-14 16:45:14 +01:00
Robert Schmidt
9dcd1f9b89 bugfix: max_allowed_rbs has been renamed max_rbs_allowed_slice 2018-02-14 16:45:14 +01:00
Robert Schmidt
50f7053159 return 0 for unsigned in RAN API 2018-02-14 16:44:29 +01:00
Robert Schmidt
d741b951fa define&send IMSI in Protobuf 2018-02-13 19:01:47 +01:00
Robert Schmidt
df43d19c35 refactoring of the original IMSI extraction code
- move IMSI extraction code to function, remove FLEXRAN comp. directive
- refactor the code, esp. don't do deep if-nesting
- remove m-tmsi part (does not give correct value)
- copy complete IMSI info to UE context, decode in RAN API
2018-02-13 19:01:47 +01:00
Robert Schmidt
d8a6715395 store IMSI information + provide FlexRAN API to query UE's IMSI 2018-02-13 19:01:47 +01:00
Robert Schmidt
9d05a9a3b1 track IMSIs by decoding NAS messages
Original Author: Xenofon Foukas
Changed formatting
does not compile
RS: cast to get rid of compiler warning
-> ImsiEpsMobileIdentity_t to ImsiMobileIdentity_t which is defined the same
way
2018-02-13 19:01:47 +01:00
Robert Schmidt
ef78dcde55 send UE Capabilities to Flexran RTController 2018-02-13 19:00:34 +01:00
Raymond Knopp
e9d536972c updated dlsim to FAPI interfaces 2018-02-13 07:18:52 -08:00
Cedric Roux
2f1acb16ab Merge remote-tracking branch 'origin/oaisim-compilation-ubuntu-17-10_2018-w07' into develop_integration_2018_w07 2018-02-13 15:33:04 +01:00
Cedric Roux
22742a4c9c hack: get oaisim to compile on Ubuntu 17.10
The following did not work before this commit
on ubuntu 17.10:

    ./build_oai --oaisim -c

oaisim has not been tested. It may fail to work. To be tested.
2018-02-13 15:30:39 +01:00
Robert Schmidt
12ac8b180d prevent warnings: init Protocol__FlexHeader to NULL 2018-02-13 14:29:15 +01:00
Robert Schmidt
c33e184dde bugfix: selectively inform FlexRAN RTController of UE state change 2018-02-13 14:25:50 +01:00
Robert Schmidt
a68d70a13d bugfix: prevent segfault in pre_processor.c 2018-02-13 14:23:54 +01:00
Navid Nikaein
5865c141d0 Improve UL/DL MCS assignment 2018-02-13 11:45:16 +01:00
Cedric Roux
e794f920c7 integration fix: remove definition of OAI_NW_DRIVER_USE_NETLINK in source file
This is done better by commit 6210eb056f.
2018-02-12 16:15:09 +01:00
Cedric Roux
0b5d0a1761 Merge remote-tracking branch 'origin/fix-ue-compilation-2018-w07' into develop_integration_2018_w07 2018-02-12 16:12:19 +01:00
Cedric Roux
d68ddebe21 Merge branch 'develop-oaisim-ue-hotfix' into develop_integration_2018_w07 2018-02-12 16:11:17 +01:00
Cedric Roux
8d0f964755 Merge remote-tracking branch 'origin/tx_att_rx_att' into develop_integration_2018_w07 2018-02-12 16:09:35 +01:00
Cedric Roux
94a11ee54e Merge branch 'emad72:patch-1' into develop_integration_2018_w07
The branch has been rebased to current origin/develop before merge.
2018-02-12 16:08:13 +01:00
Emad
ddd3e97f14 srb_id must be between [1,3] 2018-02-12 16:07:22 +01:00
Robert Schmidt
4bf4ad8e98 change build scripts: always compile FlexRAN 2018-02-12 15:30:30 +01:00
Cedric Roux
6210eb056f bugfix: fix ue_ip.ko compilation
Not sure that the use of __KERNEL__ is the correct solution.
To be checked at some point.

After this commit, the following works:
./build_oai --UE -c
2018-02-12 15:26:45 +01:00
Robert Schmidt
54e803e71a Sample configuration FlexRAN: Agent is disabled 2018-02-12 15:21:44 +01:00
Robert Schmidt
135b06ae66 bugfix: only send eNB stats to controller if agent enabled 2018-02-12 15:21:02 +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
219b5bc92f make FlexRAN Agent activation configurable 2018-02-12 15:11:19 +01:00
Robert Schmidt
adec4e39df remove all conditional FlexRAN-related compilation directives 2018-02-12 14:38:44 +01:00
Robert Schmidt
3768723c62 remove unnecessary comments 2018-02-12 13:50:48 +01:00
Robert Schmidt
ceece5694d rename flexran_slice_member() -> ue_slice_membership() 2018-02-12 13:50:48 +01:00
Robert Schmidt
8108d59a0b no regression, fixes compilation warnings&errors 2018-02-12 13:50:48 +01:00
Robert Schmidt
cf0a5ca920 fix RAN API due to merge + repair functions 2018-02-12 13:50:48 +01:00
Robert Schmidt
a78aaa451c fix slicing capability in ulsch scheduler 2018-02-12 13:50:45 +01:00
Raymond Knopp
4070f0bfdf Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop
Conflicts:
	openair2/LAYER2/MAC/config.c
2018-02-09 22:47:29 -08:00
Raymond Knopp
b073445f99 removed NFAPI libraries from oaisim target. added #define to allow ue_ip.ko to compile. This should be revisited, there's a problem in CMakelists.txt, no flags.cmake generate for all 3 kernel modules. 2018-02-09 19:15:30 +01:00
Robert Schmidt
8877b18a9a fix eNB_ulsch_dlsch_scheduler() broken by merge 2c8443121d 2018-02-09 19:05:36 +01:00
Robert Schmidt
e8e58e2594 Merge branch 'develop' into feature-merge-merge-f68 2018-02-09 17:10:41 +01:00
Robert Schmidt
d746ff6127 update comments in restart_L1L2() 2018-02-09 16:29:59 +01:00
Robert Schmidt
1eabadb137 remove unnecessary code from lte-enb.c 2018-02-09 15:47:59 +01:00
Robert Schmidt
386fd21c93 free_eNB_{d,u}lsch(): remove log, complete function dlsch 2018-02-09 15:31:59 +01:00
Cedric Roux
6868329384 Merge remote-tracking branch 'origin/develop_integration_2018_w06' into develop
Summary of changes:
- fix MAC indentation
- bug fixes:
  - fix uplink over-scheduling
  - fix CQI updating (it was done even when it shouldn't)
  - fix rrc rel10 compilation
  - some minor bug fixes related to ASN.1
2018-02-09 11:20:28 +01:00
Cedric Roux
26073a353b Merge remote-tracking branch 'origin/fix-enb-name-2018-w06' into develop_integration_2018_w06 2018-02-09 11:04:56 +01:00
Robert Schmidt
bb6fd31de6 free all memory for lte_ul_ref* structures 2018-02-09 10:59: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
Cedric Roux
11fe5f97c7 bugfix: fix eNB name in configuration files
'_' is not a valid character.

S1AP specs say:

    ENBname ::= PrintableString (SIZE (1..150,...))

And X.680 (08/2015) 41.4 table 10 lists the valid characters for
PrintableString. '_' is not there. We replace by '-' which is there.

Connection of eNB to ppenair-cn has not been tested. There is no reason
why it would fail.
2018-02-09 10:49:50 +01:00
Robert Schmidt
c518ed89e2 bugfix after merge 2018-02-08 19:12:20 +01:00
Robert Schmidt
1a1ad6ed8f remove non-existing files from build description file 2018-02-08 19:11:57 +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
Cedric Roux
7ce1621622 Merge remote-tracking branch 'origin/fix-sib3-2018-w06' into develop_integration_2018_w06 2018-02-08 11:04:27 +01:00
Cedric Roux
f3e7a72e55 Merge remote-tracking branch 'origin/fix-cqi-update-2018-w06' into develop_integration_2018_w06
Conflicts:
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
2018-02-08 11:03:50 +01:00
Cedric Roux
724970e2ef Merge remote-tracking branch 'origin/fix-ul-buffer-info-2018-w06' into develop_integration_2018_w06
Conflicts:
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
2018-02-08 10:59:19 +01:00
Cedric Roux
f6345f048e Merge remote-tracking branch 'origin/fix-rrc-rel10-compilation-2018-w06' into develop_integration_2018_w06
Conflicts:
	openair2/LAYER2/MAC/eNB_scheduler_RA.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
2018-02-07 15:12:08 +01:00
Cedric Roux
8e3ecf3399 Merge remote-tracking branch 'origin/fix-s1ap-2018-w06' into develop_integration_2018_w06 2018-02-07 15:03:56 +01:00
Cedric Roux
d23b02af56 Merge remote-tracking branch 'origin/mac-indentation-fix' into develop_integration_2018_w06 2018-02-07 15:03:38 +01:00
Cedric Roux
1fce1bbf82 bugfix: fix SIB3 encoding
The unused bits are the lower bits, so we need to shift.

Not sure that the value 1 is what we want though.
2018-02-07 14:51:50 +01:00
Cedric Roux
c0bcd78673 bugfix: don't take into account report CQI in case of NACK or DTX
The problem that may happen is that when the UE does not transmit
on PUCCH (for whatever reason) we may get no signal at all, and
thus compute a very low CQI. Later on we may ask the UE to transmit
louder which may lead to saturation and more problems.

The solution is simple: don't care about CQI in case of DTX
(and NACK also, as done for PUSCH).

Only FDD case done.
For TDD it seems that:
- nfapi structures are not correct. See nfapi_harq_indication_tdd_rel13_t
  in nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface.h, all the cases
  (bundling, multiplex, ...) use nfapi_harq_indication_tdd_harq_data_t
- the function extract_harq does not handle TDD
2018-02-07 12:31:26 +01:00
Cedric Roux
9b7364a3ca minor: fix AssertFatal 2018-02-07 12:30:00 +01:00
Cedric Roux
eccb96c4c2 bugfix: fix UL over scheduling
There is too much UL scheduling because the buffer status is
overestimated.

This commit tries to make things simpler.
2018-02-06 14:37:03 +01:00
Cedric Roux
a21c0b809f bugfix: fix RRC Release 10 compilation
The following compilation did not work anymore:

    ./build_oai --eNB -w USRP -r Rel10 -c

(Rel8 still does not work.)
2018-02-05 17:21:40 +01:00
Cedric Roux
f55cbe475c bugfix: fix initialUEMessage criticality
S1AP specs say:

    initialUEMessage S1AP-ELEMENTARY-PROCEDURE ::= {
        INITIATING MESSAGE      InitialUEMessage
        PROCEDURE CODE          id-initialUEMessage
        CRITICALITY             ignore
    }

So let's use "ignore", not "reject".

The online decoder http://asn1-playground.oss.com/ did
not decode a message encoded by the eNB because of this.

Only the S1AP messages captured while doing a simple connection
of one UE have been tested with the online decoder.

So, not all the S1AP messages have been checked, maybe some
instances of this problem are still there.

It does not seem to harm the actual UE<->eNB<->EPC communication
(because we don't check the integrity of messages or because
asn1c does not do it), so it's not a big deal.
2018-02-05 16:50:52 +01:00
Raymond Knopp
01f06bcf09 compilation success 2018-02-03 08:11:48 -08:00
Raymond Knopp
4af41d2a26 more correction of indentation 2018-02-03 07:53:33 -08:00
Raymond Knopp
2c8443121d Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into mac-indentation-fix
Conflicts:
	openair2/LAYER2/MAC/config.c
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
2018-02-03 06:23:55 -08:00
Raymond Knopp
1a082041b8 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop
Conflicts:
	openair2/LAYER2/MAC/config.c
2018-02-03 06:03:04 -08:00
Cedric Roux
be8d32d55f Merge remote-tracking branch 'origin/develop_integration_2018_w05' into develop
Summary of changes:
- noS1 fixes
- various bugs fixed
2018-02-02 11:43:54 +01:00
Cedric Roux
ea0d778176 Merge remote-tracking branch 'origin/develop-nos1-fixes' into develop_integration_2018_w05 2018-02-02 10:18:31 +01:00
Eurecom
863c469d35 bug fix for adjustable thread structure 2018-01-31 17:53:54 +01:00
Robert Schmidt
fcddbc2b44 RAN API: add functions using UE_Capability
- flexran_get_half_duplex()
- flexran_get_intra_sf_hopping()
- flexran_get_type2_sb_1()
- flexran_get_ue_category()
- flexran_get_res_alloc_type1()
2018-01-31 16:49:24 +01:00
Robert Schmidt
6eeb257717 add UE_Capability to type eNB_RRC_UE_t and read it when received 2018-01-31 16:49:24 +01:00
Robert Schmidt
dd7d2ef63b Navid: revise RRC 2018-01-31 16:49:24 +01:00
Robert Schmidt
e669f83dc1 Navid: revise RAN API 2018-01-31 16:49:24 +01:00
Robert Schmidt
6dcac9234c Navid: revise FlexRAN 2018-01-31 16:49:24 +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
shahab SHARIAT BAGHERI
2c8dd796e8 Scheduler must send FlexRAN stats updates 2018-01-31 16:49:24 +01:00
Robert Schmidt
d5b8310fb9 add some logging for RRM command parsing 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
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
Robert Schmidt
1576b7bd08 bugfix: max_rbs_allowed_slice is array over CC, not LCID 2018-01-31 16:49:24 +01:00
Robert Schmidt
6179d9d748 Navid: fix access to non-existent harq_pid_* variables via RC read 2018-01-31 16:49:01 +01:00
Robert Schmidt
356d406cff Navid: remove FlexRAN Agent MAC xface function callbacks for scheduling 2018-01-31 16:48:37 +01:00
Robert Schmidt
3740afecc7 consider changed RAN API 2018-01-31 16:48:36 +01:00
Robert Schmidt
56d4d0ebef Bugfix: avoid cyclic header dependency, use FlexRAN variables instead 2018-01-31 16:48:36 +01:00
Robert Schmidt
6a6729bdac fix various compilaton errors due to merge 2018-01-31 16:48:29 +01:00
Robert Schmidt
dfece3ff58 correct scheduler typedefs 2018-01-31 16:42:01 +01:00
Robert Schmidt
9b4d3bbae7 move scheduler function pointer typedef to proto.h 2018-01-31 16:42:01 +01:00
Robert Schmidt
a03877e7f7 delete unnecessary code 2018-01-31 16:42:01 +01:00
Robert Schmidt
7dfac059b0 Review Navid: UL Scheduler: make slice aware 2018-01-31 16:42:01 +01:00
Robert Schmidt
024904db90 repair enb_app.c after merge, delete unnecessary code 2018-01-31 16:42:01 +01:00
Robert Schmidt
a6098dbf09 delete unnecessary FlexRAN source files
all the FlexRAN scheduling code is now also handled by the general OAI
scheduling code
2018-01-31 16:42:01 +01:00
Robert Schmidt
b45a340b63 RAN API: no set_RC_vars(), check use RC directly, give error messages 2018-01-31 16:42:01 +01:00
Robert Schmidt
cdbf65f5af revise RAN API
- when changing values RC.rrc[i]->configuration should be changed too
- then, RRC_RECONFIGURATION_REQ will pass the changed conf down until PHY
- give warnings at functions that are not implemented

- rename functions
flexran_get_tdd_ack_nack_feedback() -> flexran_get_tdd_ack_nack_feedback_mode()
flexran_get_ue_pmi() -> flexran_get_ue_wpmi()
2018-01-31 16:41:56 +01:00
Eurecom
5f028730cd bug fix for RXTX same thread 2018-01-30 17:22:34 +01:00
Eurecom
f0e10b0d89 bug fix for shared info between threads 2018-01-30 14:56:23 +01:00
Raymond Knopp
200be2b1ee Merge branch 'develop-nos1-fixes' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop-nos1-fixes 2018-01-28 13:14:51 +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
Florian Kaltenberger
13c8931bf2 bugfix in modulation 2018-01-25 16:20:25 +01:00
Raymond Knopp
2d610d95c8 Merge branch 'develop-nos1-fixes' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop-nos1-fixes 2018-01-25 15:55:24 +01:00
Raymond Knopp
fe1912a193 correcting issues after merge with develop 2018-01-25 06:54:01 -08: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
ceb4edf7e6 minor changes 2018-01-25 08:53:40 +01: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
Raymond Knopp
866a23a136 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2018-01-24 23:25:16 -08:00
Massive
a6db17ffcd Merge branch 'RU-RAU-split-parallel-EMUFH' of http://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split-parallel-EMUFH 2018-01-24 15:29:24 +01:00
Robert Schmidt
6198a673f0 correctly instantiate flexran agent 2018-01-24 11:51:35 +01:00
Robert Schmidt
ab3f9dad49 add flexran sample config 2018-01-24 11:51:35 +01:00
Robert Schmidt
fac968246d define FlexRAN data in RAN context and use it
- defines RCconfig data structures
- adds method to read data
- use it in source files
2018-01-24 11:51:35 +01:00
Robert Schmidt
765d6370f6 update FlexRAN configuration definition (paramdef) 2018-01-24 11:51:35 +01:00
Navid Nikaein
0937339a53 Update MAC scheduler for slicing (not tested) 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
Cedric Roux
cd8e8458cf Merge remote-tracking branch 'origin/develop_integration_2018_w04' into develop
Summary of changes:
- heavy code cleanup (#ifdef removal)
- bugfixes
2018-01-23 09:30:04 +01:00
Cedric Roux
ecd4aebbe0 Merge remote-tracking branch 'origin/issue-285-connect-disconnect-multiple-time' into develop_integration_2018_w04 2018-01-22 18:44:32 +01:00
Eurecom
30d5f151c3 specified modulation for QPSK 2018-01-22 18:02:02 +01:00
Cedric Roux
97ebc165cc Merge remote-tracking branch 'origin/282-flags-cleanup' into develop_integration_2018_w04
Conflicts:
	openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	openair1/SCHED/defs.h
	openair2/LAYER2/PDCP_v10.1.0/pdcp.c
	openair2/RRC/LITE/rrc_eNB.c
2018-01-22 17:47:01 +01:00
Cedric Roux
b5513cadf1 hotfix: fix nfapi for correct compilation on ubuntu 17.10 2018-01-22 16:00:21 +01:00
Cedric Roux
4b5b556493 bugfix: fix issue 285 - connect/disconnect multiple time
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.
2018-01-22 15:32:41 +01:00
Massive
5d199f4500 adding an addition error check on harq_pid as it is sometimes not in range. root cause still to be identified 2018-01-22 12:52:37 +01:00
Raymond Knopp
b350f8557e fixes for broken automatic indentation in MAC #1 2018-01-21 16:58:21 -08:00
Raymond Knopp
20c7af9a96 forgot to add a file 2018-01-21 22:21:30 +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
91dd7ed4b6 Merge remote-tracking branch 'origin/develop_integration_2018_w03' into develop
Summary of changes:
- Implementation of paging (see issue #255 in gitlab)
- Implementation of RRC RE-ESTABLISHMENT (see issue #256 in gitlab)
- Implementation of RRC CONNECTION RELEASE (see issue #257 in gitlab)

Some modifications with timers have been done.
Expect (and report) problems, thanks.

What has been tested:
- monolithic eNB 5 and 10MHz with one commercial UE. UDP and TCP
  traffic, uplink and downlink, with iperf (with a third party
  EPC, not openair-cn). TCP downlink traffic is not stable.
  Reason yet unknown. Will be fixed later.
2018-01-19 16:32:18 +01:00
Cedric Roux
3a867ac767 integration fix: add T trace 2018-01-19 15:51:38 +01:00
Massive
f0376d1b4f adding uhd network interface 2018-01-19 13:00:51 +01:00
Raymond Knopp
dd3dce8fcf small changes after merge with develop 2018-01-19 00:35:11 -08:00
Eurecom
dea858849e code cleanup 2018-01-17 16:30:50 +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
Wang Tsu-Han
cfec3ffd56 adding EMULATE_RF into CMakelist 2018-01-16 15:50:57 +01:00
bruno mongazon
9c93307ab4 Fix #582, merge from develop 2018-01-16 14:31:23 +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
Raymond Knopp
5dc0d7ccea Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop
Conflicts:
	openair2/LAYER2/MAC/config.c
2018-01-16 03:46:24 -08:00
bruno mongazon
d100398658 Fix #582, double check all removed flags in cmake template files 2018-01-16 12:45:06 +01:00
bruno mongazon
8d2f0931a7 Fix #582, NB_ANTENNAS_TXRX removed 2018-01-16 12:35:56 +01:00
bruno mongazon
88d0b68c7b Fix #582, MIH_C_MEDIEVAL_EXTENSIONS removed 2018-01-16 12:24:58 +01:00
bruno mongazon
28497cae6f Fix #582, SPECTRA removed 2018-01-16 12:15:21 +01:00
bruno mongazon
339905d191 Fix #582, OPENAIR1, NO_OPENAIR1 removed 2018-01-16 12:11:33 +01:00
bruno mongazon
da7a4a19cd Fix #582, HARD_RT removed 2018-01-16 11:39:16 +01:00
bruno mongazon
ea3aff84e9 Fix #582, PUCCH removed 2018-01-16 11:33:45 +01:00
bruno mongazon
7943ea92d1 Fix #582, RANDOM_BF removed 2018-01-16 11:27:34 +01:00
bruno mongazon
f4d19c0d63 Fix #582, PERFECT_CE removed 2018-01-16 11:22:45 +01:00
bruno mongazon
f44064a221 Fix #582, NEW_FFT removed 2018-01-16 11:16:49 +01:00
bruno mongazon
2157727f5f Fix #582, PC_TARGET removed 2018-01-16 11:10:05 +01:00
bruno mongazon
dac7888f27 Fix #582, PC_DSP removed 2018-01-16 10:52:41 +01:00
bruno mongazon
f7653f90b0 Fix #582, PBS_SIM removed 2018-01-16 10:44:59 +01:00
bruno mongazon
71a6b5d0f0 Fix #582, ENABLE_FXP removed 2018-01-16 10:35:53 +01:00
bruno mongazon
bbaf588352 Fix #582, DISABLE_USE_NAS removed 2018-01-16 10:26:42 +01:00
bruno mongazon
d62fe071cb Fix #582, ENABLE_PGM_TRANSPORT removed, RRH related removed 2018-01-16 10:15:35 +01:00
bruno mongazon
cf0e9175dd 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 2018-01-15 18:47:07 +01:00
Cedric Roux
8489e40659 Merge remote-tracking branch 'origin/develop_integration_2018_w02' into develop
Summary of changes:
- integration of Cisco work on nFAPI.
  See commits 7757b9e7e7
  and 922b5b595a for details.
- support Ubuntu 17.04 and 17.10
- bugfix: DCI padding bits
  This bug made the system non-working because the DCIs for
  SIBs were wrong. See commit c5ca2bd862
  for details.
- fix issue 281: IQ record/playback explicit filename segv.
2018-01-15 17:04:56 +01:00
Cedric Roux
55641754d9 Merge remote-tracking branch 'origin/issue281_iq_filename' into develop_integration_2018_w02 2018-01-15 15:58:48 +01:00
Cedric Roux
c3ba7ba713 Merge remote-tracking branch 'origin/support-ubuntu17' into develop_integration_2018_w02 2018-01-15 15:45:47 +01:00
Cedric Roux
9c8b6e56f2 Merge remote-tracking branch 'origin/hotfix-dci-clear-padding-bits' into develop_integration_2018_w02 2018-01-15 15:45:18 +01:00
Cedric Roux
cb250cba35 Merge remote-tracking branch 'origin/nfapi-integration' into develop_integration_2018_w02 2018-01-15 15:44:41 +01: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
Rohit Gupta
39d33dc4df Merge branch 'develop-nos1-fixes' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop-nos1-fixes 2018-01-14 08:56:21 +01:00
Rohit Gupta
3120f16610 changes for noS1 IP addressing (UE side) 2018-01-14 08:55:46 +01:00
Rohit Gupta
8b5a963346 changes for noS1 IP addressing 2018-01-14 08:54:51 +01:00
bruno mongazon
afcc9aabd8 Fix #582, USER_MODE flag removed 2018-01-11 16:50:50 +01:00
bruno mongazon
1823ce9525 Fix #281 2018-01-11 10:37:17 +01:00
Younes
5a202db54d removal of assertions which failed for TDD 2018-01-10 21:10:35 +01:00
Raymond Knopp
380222eefd timestamp handling for IF4p5, attenuation parameters 2018-01-10 21:07:45 +01:00
Guy De Souza
9d03290858 rx_dump_frame ue_mode fix 2018-01-09 22:15:15 +01:00
Xu Bo
89ea5ed988 fix RRCConnection timer thres when GTPV1U_ENB_DELETE_TUNNEL_RESP 2018-01-09 13:52:41 +09:00
Eurecom
67c37417b6 timing measure for full coding process 2018-01-08 16:31:13 +01:00
Xu Bo
0f2cb0aada fix the timer between reestablishment and reestablishmentComplete 2018-01-08 18:53:30 +09:00
Raymond Knopp
b74bab25b5 Merge remote-tracking branch 'origin/develop' into develop-nos1-fixes 2018-01-07 23:57:17 -08:00
Xu Bo
27c3074ff9 fix RRCConnectionReestablishment issue when multiple RRCConnectionReestablishment happen 2018-01-08 15:27:54 +09:00
Eurecom
d1f7346c08 bug fix for missing wait sync 2018-01-05 17:02:49 +01:00
Cedric Roux
ec56a416b7 Add support for Ubuntu 17.04 and 17.10.
Basically, build_helper has been adapted so that:
  ./buil_oai -I -w USRP
works for Ubuntu 17.04 and 17.10.

Concerning those systems:
- compilation with "--eNB --UE -w USRP" works
- the enb softmodem runs on 17.04 (not tested on 17.10)
- nothing else has been tested.

Users should report any problem.
2018-01-04 16:35:09 +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
Cedric Roux
c5ca2bd862 hotfix: clear DCI padding bits
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.
2018-01-03 11:19:54 +01:00
Raymond Knopp
b6b86292d0 small changes in tracing 2018-01-02 08:39:08 -08:00
Wolfgang A. Mozart
55af824cc0 some extra logging 2018-01-02 08:06:05 +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
Raymond Knopp
02d18cc583 noS1 will compile and run correctly on develop, also for oaisim/RRU 2017-12-28 17:30:00 -08:00
shahab SHARIAT BAGHERI
a09728addb Warning decreasing 2017-12-24 10:17:18 +01:00
shahab SHARIAT BAGHERI
b1acde2007 Neighbouring cell RRC measurement + decrease warning 2017-12-21 13:55:37 +01:00
navid nikaein
63ba3f9543 Better slice management in FlexRAN UL/DL scheduler 2017-12-15 18:13:18 +01:00
Navid Nikaein
b049f0c820 Ue stats bugfix for dynamic reconfiguration 2017-12-15 18:10:12 +01:00
shahab SHARIAT BAGHERI
ccac021050 Ue stats bugfix for dynamic reconfiguration 2017-12-14 18:34:41 +01:00
Wang Tsu-Han
409eadc937 measuring time for coding worker 2017-12-14 17:17:31 +01:00
Wang Tsu-Han
7c27e09fcd Bug fix for coding worker thread 2017-12-14 15:38:02 +01:00
Wang Tsu-Han
22e7b1e6da extending dlsch_coding into four thread 2017-12-14 15:29:05 +01:00
Navid Nikaein
d35f52a228 Add observation window to the PDCP stats 2017-12-14 15:15:00 +01: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
022916305c Fix multiple compilation warnings 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
eb2dfa1b70 kill_eNB_proc(): join all PHY threads 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
e88a3cdf46 bugfix ITTI: clean up in itti_exit_task()
- when exiting task, the task is set as "not configured"
- this permits to start a task again
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
1aa5d2930a Handle TERMINATE_MESSAGE in TASK_MAC 2017-12-14 13:06:04 +01:00
Robert Schmidt
c313dff2ad better logging, remove warnings 2017-12-14 13:06:04 +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
Robert Schmidt
6e6a462dc4 check whether RRC instance is present in RAN API 2017-12-14 12:49:25 +01:00
Navid Nikaein
49ea474807 Fix the compilation issues 2017-12-13 17:00:33 +01:00
Navid Nikaein
33696a4e93 *Update RRC RSRP/RSRQ measurement reports for multiple UEs, and add the corresponding RAN APIs
*Fix the issue with the PDCP UE ID/RNTI management
2017-12-12 20:24:29 +01:00
Wang Tsu-Han
79b11d6b93 Bug fix for ulsch_decoding 2017-12-12 16:23:38 +01:00
shahab SHARIAT BAGHERI
b74c668ddb bug zero division for pdcp stats 2017-12-12 15:57:24 +01:00
Wang Tsu-Han
d82a0d900d adding ulsch_decoding multiy threading 2017-12-12 15:24:00 +01:00
Navid Nikaein
b7a1661855 Better management of frame counter and stats in PDCP 2017-12-12 11:57:24 +01:00
Navid Nikaein
38627c85d0 Minor fix in the PDCP stats update 2017-12-12 10:14:30 +01:00
Navid Nikaein
9601ea66c5 Update PDCP stats 2017-12-11 16:46:22 +01:00
Wang Tsu-Han
7ac9d2ab81 Deadline scheduling for 40MHz 2017-12-11 14:27:26 +01:00
Xu Bo
9d5ae645d0 Merge branch 'issue255_256_257_paging_reesta_release' of https://gitlab.eurecom.fr/oai/openairinterface5g into issue255_256_257_paging_reesta_release 2017-12-11 05:15:11 +00:00
Xu Bo
e108727c80 merge develop 2017.w48 into origin/issue255_256_257_paging_reesta_release 2017-12-11 05:02:51 +00:00
shahab
acd996d2eb ul proto msg 2017-12-10 18:23:21 +01:00
shahab SHARIAT BAGHERI
cd74f4d61b Message balance 2017-12-10 16:19:27 +01:00
shahab
5e20c970e9 warning decreasing 2017-12-09 17:41:06 +01:00
Navid Nikaein
dc9cada6c2 Add PDCP stats and update agent and RAN APIs 2017-12-08 18:05:42 +01:00
Xu Bo
404801ee68 merge develop 2017.w48 into issue255_256_257_paging_reesta_release 2017-12-08 17:34:57 +09:00
Raymond Knopp
1a5a029768 minor changes to config.c 2017-12-02 15:15:30 -08:00
Cedric Roux
a2d16b34dd Merge remote-tracking branch 'origin/develop_integration_w48' into develop
Summary of changes:
- bug fixes: random access, crash on physicalConfigDedicated)
- some work on the UE to have it functional again
- IQ record and playback (work from Nokia)
  see documentation at: https://gitlab.eurecom.fr/oai/openairinterface5g/merge_requests/244
2017-12-01 14:54:32 +01:00
Cedric Roux
a7b7de35b9 integration fix: remove compilation warning (not sure -1 is the correct value) 2017-12-01 12:16:01 +01:00
Cedric Roux
e68d6bd4c0 integration fix: remove compilation warning 2017-12-01 12:15:07 +01:00
Cedric Roux
1b4ae8fb2c Merge remote-tracking branch 'origin/bugfixes_w48' into develop 2017-12-01 11:55:52 +01:00
Raymond Knopp
7489644cc1 added .ipe file for L1_L2_procedures slides and updated .pdf file
Conflicts:
	targets/DOCS/oai_L1_L2_procedures.pdf
2017-12-01 11:54:30 +01:00
Cedric Roux
487ef8c2ad Merge branch 'florian.kaltenberger/openairinterface5g-fix_ue' into develop 2017-12-01 11:45:49 +01:00
Cedric Roux
4d4ffac482 Merge remote-tracking branch 'origin/feature-iq-record-playback' into develop 2017-12-01 11:38:42 +01:00
Florian Kaltenberger
87535679f4 Merge branch 'fix_ue' of https://gitlab.eurecom.fr/florian.kaltenberger/openairinterface5g into fix_ue 2017-11-30 11:46:21 +01:00
Florian Kaltenberger
5847a14053 bugfix in phy_procedures_lte_ue
making oaisim_nos1 compile
2017-11-30 11:45:33 +01:00
Florian Kaltenberger
5af3d77890 Merge remote-tracking branch 'origin/oaisim_config_module_fix' into fix_ue 2017-11-30 08:29:27 +01:00
Florian Kaltenberger
b98a98b95b few minor fixes 2017-11-28 14:42:33 +01:00
Xu Bo
d81438cd17 merge the implemention of Paging, RRCConnectionRelease, RRCConnectionReestablishment, E-RAB Modify, E-RAB Release 2017-11-28 11:13:03 +09:00
Cedric Roux
4526622b36 bugfix: don't check for physicalConfigDedicated at the wrong places
physicalConfigDedicated may be legitimately NULL at some places
with the current code.

A cleaner solution is needed (we should always have a dedicated
config, initialized with values from the 3GPP specs, not have
a NULL as we do now).
2017-11-27 16:45:01 +01:00
Wang Tsu-Han
d174e15ac8 Measure timing wait for FEP and FEPTX 2017-11-27 11:27:10 +01:00
Cedric Roux
b0d505d2e8 bugfix: always cancel Random Access Process
Even if the old UE is not found, we have to cancel the random access.
2017-11-27 11:19:12 +01:00
Wang Tsu-Han
22911600a8 Adding measurment for waking up the thread 2017-11-24 14:31:19 +01:00
Florian Kaltenberger
1940750a91 fixing -r option for UE 2017-11-23 11:30:42 +01:00
oai
8ada5496c2 Merge branch 'fix_ue' of https://gitlab.eurecom.fr/florian.kaltenberger/openairinterface5g into fix_ue 2017-11-22 19:03:47 +01:00
oai
28c4c6a478 fix config problems preventing UE to start 2017-11-22 18:09:42 +01:00
Florian Kaltenberger
27387ee8c2 fixing -C option 2017-11-22 17:50:04 +01:00
Wolfgang A. Mozart
bc54a0d83f making noS1 mode compile 2017-11-22 10:36:32 +01:00
Florian Kaltenberger
5f25852693 fix UE init sequence 2017-11-22 09:58:06 +01:00
Florian Kaltenberger
bcb6f1715f patch from francois UE config 2017-11-22 09:56:43 +01:00
Wang Tsu-Han
6b99b1b1e4 emulated RF using seperate thread condition signal every time period 2017-11-21 14:41:36 +01:00
bruno mongazon
98e87ab193 provides feature #272 iq record-playback 2017-11-20 16:21:25 +01:00
Raymond Knopp
fb9776d2aa adds config module initialization to oaisim target. 2017-11-17 07:55:19 -08:00
Navid Nikaein
e996f5d0f5 Add new RAN APIs form SMA app based on the initial eNb config file 2017-11-17 16:53:58 +01:00
Wang Tsu-Han
8950c6ddd3 Bug fix for UDP loading 2017-11-17 16:42:17 +01:00
Raymond Knopp
65b8e824e1 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop
Conflicts:
	targets/DOCS/oai_L1_L2_procedures.pdf
2017-11-17 07:17:04 -08:00
Cedric Roux
fc0a60e191 Merge remote-tracking branch 'origin/develop_integration_w46' into develop
Summary of changes:

- minor changes in RA code (functionality not changed, only notation)
- automatic indentation of some files (with indent -kr)
- bugfixes for TDD in RRU (IF4p5) and timing statistics of fronthaul and
  compression
2017-11-17 15:55:40 +01:00
Cedric Roux
e190c4e2bc Merge remote-tracking branch 'origin/RA-notation' into develop_integration_w46 2017-11-17 15:27:38 +01:00
Cedric Roux
4a3489887a Merge remote-tracking branch 'origin/rru-tdd' into develop_integration_w46 2017-11-17 15:27:28 +01:00
Wang Tsu-Han
69e90fa6cb Creating Emulated FH 2017-11-17 11:11:24 +01:00
bruno mongazon
90731761e3 This commit provides the IQ record-playback feature know under issue #272 2017-11-14 19:03:46 +01:00
Raymond Knopp
79458ae7c5 added .ipe file for L1_L2_procedures slides and updated .pdf file 2017-11-14 13:57:34 +01:00
Raymond Knopp
7d3ce9bd1d added .ipe file for L1_L2_procedures slides and updated .pdf file 2017-11-13 07:15:08 -08:00
Wang Tsu-Han
81177a8a73 making the numerology into a executional option 2017-11-10 15:42:50 +01:00
Wang Tsu-Han
29bc996641 Merge branch 'RU-RAU-split-parallel' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split-parallel 2017-11-10 14:26:33 +01:00
Wang Tsu-Han
3f6c5430a2 changing back the rxtx thread and add another worker thread for coding 2017-11-10 14:23:18 +01:00
Wolfgang A. Mozart
8d5dc07a15 making noS1 mode compile 2017-11-10 09:04:10 +01:00
Raymond Knopp
d01aa2d08a changing of notation for Random-Access procedure to match documentation. Function remains the same. Indentation (-kr) run on all files in LAYER2/MAC 2017-11-04 09:55:11 -07:00
Raymond Knopp
8f621c3ed7 bugfixes for TDD in RRU (IF4p5) and timing statistics of fronthaul and compression. 2017-11-04 07:09:10 +01:00
Wang Tsu-Han
c8420152de seperate processing thread into RX thread and TX thread 2017-11-03 14:57:45 +01:00
Wang Tsu-Han
caef8c6e56 fixing the sleep delay problem for tx 2017-11-03 12:27:39 +01:00
Wang Tsu-Han
c84ddacd00 Seperate Front haul RX TX and process into three threads 2017-11-02 16:37:03 +01:00
Cedric Roux
d915c20899 Merge remote-tracking branch 'origin/develop_integration_w43' into develop
Summary of changes:
- fix a bug with Timing Advance.
  This should improve the stability of the connection
  (for now, only the scenario with one connected UE works).
- use RRC Release 14.3
- add some T tracers, minor fixes for T
2017-10-27 17:07:27 +02:00
Cedric Roux
047b54da19 Merge remote-tracking branch 'origin/develop_bugfixes_w43' into develop_integration_w43
Conflicts:
	common/utils/T/.gitignore
	common/utils/T/tracer/Makefile
2017-10-27 16:21:49 +02:00
Cedric Roux
9ddae27cf1 Merge remote-tracking branch 'origin/T-add-tracer' into develop_integration_w43 2017-10-27 16:18:20 +02:00
Cedric Roux
fbd5fff7b0 Merge remote-tracking branch 'origin/rrc-rel14-3' into develop_integration_w43 2017-10-27 16:17:55 +02:00
Florian Kaltenberger
ecee5edcce enabling new modulation 2017-10-27 16:16:05 +02:00
Cedric Roux
4d1705e3a5 T: minor: close socket
Sometimes when the user does ctrl+c to quit, it may not quit
if nothing comes on the socket. Closing the socket in the
signal handler fixes this.
2017-10-27 16:14:39 +02:00
Cedric Roux
faae3c8cd5 T: cleanup
Do not link the X stuff for tracers not needing it.
2017-10-27 16:14:39 +02:00
Cedric Roux
7e7fd3c4d5 T tracer: add a tracer to dump to VCD file
Later on, use this file with gtkwave.
To be used to check realtime behaviour of the system.
2017-10-27 16:14:39 +02:00
Cedric Roux
2beac6fed7 T: minor update of .gitignore 2017-10-27 16:14:39 +02:00
Cedric Roux
8dd3a2bdc4 T: add extract_output_subframe
This tracer extracts output subframes generated by the eNodeB,
so they can be analyzed with some external tools.
2017-10-27 16:14:39 +02:00
Cedric Roux
98b5faae47 RRC release 14.3 2017-10-27 16:13:41 +02:00
Cedric Roux
6322010e0a T: add a tracer: extract
This tracer extracts the content of a buffer field of an event
that was previously saved using the tracer 'record'.

For example, to extract the channel estimation done in
frame 924 and subframe 2 as saved in the file input_record.raw
and to store it in the file output.raw, do:

./extract -d ../T_messages.txt -o output.raw input_record.raw ENB_PHY_UL_CHANNEL_ESTIMATE chest_t -f frame 924 -f subframe 2
2017-10-27 16:09:08 +02:00
Wang Tsu-Han
ccba43e2f0 adding phy-test to config. fixing power allocation for phy-test. 2017-10-27 15:47:09 +02:00
Wang Tsu-Han
85ce7de775 added thread for TX streaming 2017-10-27 10:33:30 +02:00
Cedric Roux
6da4265876 bugfix: fix timing advance
- 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.
2017-10-25 14:26:49 +02:00
Cedric Roux
2e5f0a07c7 minor: fix tracing utility (no malloc for it takes too long at startup) 2017-10-24 10:21:57 +02:00
Cedric Roux
4b9f58c085 T tracer: fix traces (add/remove to be in synch with VCD module) 2017-10-23 17:40:58 +02:00
Cedric Roux
d413de0ad7 Merge remote-tracking branch 'origin/RU-RAU-split' into develop 2017-10-23 15:29:43 +02:00
Cedric Roux
61234aae05 update README for version 0.6.1. 2017-10-23 15:15:56 +02:00
Florian Kaltenberger
2466f16ec3 adding flag for phy-test 2017-10-23 15:02:08 +02:00
Florian Kaltenberger
5487c709b1 adding some missing parameters 2017-10-23 15:02:08 +02:00
Florian Kaltenberger
2dc1a602c6 first phy-test version to be tested 2017-10-23 15:02:07 +02:00
Cedric Roux
1fa317733c Merge remote-tracking branch 'origin/update-license' into develop 2017-10-23 15:02:06 +02:00
Cedric Roux
b4a48e199e Merge remote-tracking branch 'origin/update-license' into RU-RAU-split
Conflicts:
	openair1/PHY/CODING/rate_matching.c
	openair1/PHY/LTE_REFSIG/primary_synch.h
	openair2/LAYER2/layer2_top.c
	openair2/RRC/LITE/rrc_config.c
2017-10-23 15:00:30 +02:00
Wang Tsu-Han
23c54b8db4 added parallelization of fep and encoding
added numerology paramter
2017-10-23 14:47:26 +02:00
Cedric Roux
1b1f941e3c upgrade license to version 1.1 2017-10-23 12:22:13 +02:00
Cedric Roux
5502026ae1 adjust prach detection level
just a quick fix before merge, the real solution
is to disable pusch scheduling in the prach, to be
done later
2017-10-23 10:31:12 +02:00
Raymond Knopp
8846260bdf Added prach background noise detection and threshold dependent on noise measurement. 2017-10-22 21:58:31 +02:00
Raymond Knopp
26d4ad2bb6 don't call fronthaul write on RX in TDD. 2017-10-22 17:28:50 +02:00
Raymond Knopp
761a77fad0 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-20 16:49:10 +02:00
Raymond Knopp
5fefa11234 TDD for RRU IF4p5, modifications and testing. 2017-10-20 15:02:25 +02:00
Cedric Roux
6087ede004 fix asn1_msg.c
- compile with warning enabled (changes in CMakeLists.txt)
- remove warnings that were present
2017-10-20 14:53:35 +02:00
Cedric Roux
5afc71f382 bugfix: fix featureGroup
- allocate memory, memory on stack does not survive the function
- avoid uint32_t, use a char buffer, for endianness neutrality
2017-10-20 14:49:45 +02:00
Raymond Knopp
c090015741 MTU tuning for IF4p5 fronthaul 2017-10-20 14:21:39 +02:00
Cedric Roux
e3d39a0192 bugfix/compilation warning removal (not sure if correct)
basically the T_xx variables are int, not uint
2017-10-20 12:10:19 +02:00
Cedric Roux
bf926e3546 bugfix/warning removal
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...)
2017-10-19 17:23:15 +02:00
Cedric Roux
f1e8bff3ec remove gcc warnings
phy_init_lte_ue_signal was renamed init_lte_ue_signal in openair1/PHY/INIT/defs.h
maybe it's the opposite that should have been done?

Functions used in one file and defined in another may have been
declared in the wrong header file.
2017-10-19 17:00:30 +02:00
Raymond Knopp
cc47fbed90 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-19 12:27:13 +02:00
Raymond Knopp
b09a281b09 modifications for TDD and IF4p5 (in particular TDD). Both in RRU and RAU components. Monolithic is unchanged. 2017-10-19 12:25:51 +02:00
Cedric Roux
311f439a6a T tracer: add uplink TBS (retransmissions not handled) 2017-10-19 12:05:16 +02:00
Cedric Roux
0ed42440ab bugfix: set max MCS to 10 when UL scheduling a UE with no known uplink data 2017-10-19 10:54:04 +02:00
Cedric Roux
c78351c20e bugfix: clear memory
Old values valid for a previous UE have to be reset for the new UE.
2017-10-19 10:24:50 +02:00
Cedric Roux
1a04ba5bfc bugfix: do not modify dlsch structure at all in case of PDCCH order for RAPROC
introduce a new function to deal with this special case
2017-10-18 17:40:10 +02:00
Cedric Roux
f96491577f bugfix: don't check /usr/include/uhd when compiling with -w USRP
Compilation will fail if UHD is not installed, there is no need
to check. Plus the test is wrong when you install UHD somewhere
else.
2017-10-18 16:28:40 +02:00
Cedric Roux
2516216d14 T tracer: improve a bit enb tracer
- UE_id 0 is for rnti 65535 (sib)
- UE_id 1 is for rnti 65534 (this is a hack)
- UE_id 2 is for rnti 2     (RA RNTI as of today's code/config)
- we start enb by displaying UE_id 3
- there was a bug: we need to lock when resetting UE ids (reset_ue_ids)
2017-10-18 12:06:16 +02:00
Raymond Knopp
73723a56aa Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-18 11:38:46 +02:00
Raymond Knopp
49f86b0aa9 added LUT for finer-grain ULSCH power measurement compensation based on TBS. Still seems too high, to be checked some more. 2017-10-18 11:37:26 +02:00
Cedric Roux
6d3fb2dca0 add some documentation for 3276 USB LTE dongle usage 2017-10-18 10:38:14 +02:00
Cedric Roux
0289b51969 set pucch_nRB_CQI to 0 in configuration files
see commit 622b919b37
2017-10-18 10:26:43 +02:00
Cedric Roux
256c5ab060 improve crnti reception (still not correct, we need to reconfigure the UE)
TODO: if the UE did random access (followed by a MAC uplink with
CRNTI) because none of its scheduling request was granted, then
according to 36.321 5.4.4 the UE's MAC will notify RRC to release
PUCCH/SRS. According to 36.331 5.3.13 the UE will then apply
default configuration for CQI reporting and scheduling requests,
which basically means that the CQI requests won't work anymore and
that the UE won't do any scheduling request anymore as long as the
eNB doesn't reconfigure the UE.
We have to take care of this. As the code is, nothing is done and
the UE state in the eNB is wrong.
2017-10-18 09:56:29 +02:00
Cedric Roux
599ba826a8 add some debug tracing 2017-10-17 16:50:40 +02:00
Cedric Roux
f1f31a7861 minor: cleanup spacing 2017-10-17 16:19:45 +02:00
Cedric Roux
783667552e T: add -rb option to enb tracer 2017-10-17 13:16:44 +02:00
Cedric Roux
ac54521aed do not put random bits in DCI, put 0 instead (to avoid false DCI detections) 2017-10-17 12:31:35 +02:00
Cedric Roux
ba11d72b63 minor: add some documentation for bandrich dongle and NetworkManager 2017-10-17 12:26:43 +02:00
Raymond Knopp
ccfe5a0472 removed "short_offset" code from normal_prefix_mod. removed static declaration in PHY_ofdm_mod which was a cause for problems when parallelizing FFTs for FEP TX. 2017-10-17 09:41:27 +02:00
Cedric Roux
3d14d5716a trying to get better power management
- change target values
- change upper/lower limit to trigger a tpc
- don't use ul_cqi from SR

The value of ul_cqi is not convincing, for both PUSCH and PUCCH,
more work/analysis is required.
2017-10-16 17:23:41 +02:00
Raymond Knopp
5c60764408 testing FEP parrelization, default set back to single-thread. Reduced logging in MAC 2017-10-15 18:38:24 +02:00
Raymond Knopp
8420dce1aa addition of worker thread for fep TX procedures in RU 2017-10-15 01:47:14 -07:00
Raymond Knopp
667b9f1a88 time profiling for RU and activation of feprx worker thread in RU if get_nprocs()>2 2017-10-15 08:31:10 +02:00
Raymond Knopp
75040edfdb put pucch metric into uci->stat before calling harq_indication. Fixes an issue with PUCCH1 SNR measurements coming from HARQ. 2017-10-14 22:24:37 +02:00
Raymond Knopp
424c1b502a added deactivation of ULSCH harq process after 3rd retransmission. Avoids problem of accumulating failed RA processes. 2017-10-14 21:14:05 +02:00
Raymond Knopp
549a0b61b4 Adjustment for received power calculation in eNB pusch procedures. Added factor to account for mcs (mimic the power control adjustment in UE).
activated periodic trace for PHR/PUSCH SNR/PUCCH SNR in MAC.
2017-10-14 11:17:27 +02:00
Raymond Knopp
1f9ab059f9 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-13 18:06:25 +02:00
Cedric Roux
747372685a bugfix: clear memory 2017-10-13 13:22:15 +02:00
Cedric Roux
00f45ec9f5 bugfix: modulo from frame 2017-10-13 12:19:12 +02:00
Cedric Roux
cf208d4192 bugfix: frame is bigger than 8 bits 2017-10-13 12:11:08 +02:00
Cedric Roux
dd44c82760 bugfix: fix assert 2017-10-13 11:52:34 +02:00
Raymond Knopp
1d8bec80a0 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-12 17:03:12 +02:00
Raymond Knopp
737c3e8ae1 traces for debugging 2017-10-12 17:02:13 +02:00
Cedric Roux
493110af7a bugfix: fix schedule_SRS (not sure this is the correct solution) 2017-10-12 16:33:52 +02:00
Cedric Roux
beaeea740d bugfix: careful when setting harq_mask (didn't work for dci 1a sent to UE to do uplink) 2017-10-12 16:28:37 +02:00
Cedric Roux
f80f1f617d bugfixes
- better ulsch harq management in phy (maybe not over)
- don't do schedule_CSI if UE not in RRC_CONNECTED (not sure if correct)
- don't call find_ulsch in fill_dci0
- some spaces cleaned
- log improved
2017-10-12 14:39:55 +02:00
Cedric Roux
84bd5bd665 put nfapi public include file in the project 2017-10-12 14:34:10 +02:00
Cedric Roux
a85a341cae debug: add an abort() when receiving crnti Control Element
this is not handled correctly as of now, let's crash
2017-10-12 11:44:32 +02:00
Cedric Roux
d6fdbb4da5 bugfix: check UE presence 2017-10-12 11:42:21 +02:00
Cedric Roux
748a0790c9 T: hack for enb tracer 2017-10-12 11:00:33 +02:00
Cedric Roux
df3ebacd88 add an assert 2017-10-12 10:01:38 +02:00
Cedric Roux
6abbf040be bugfix: test existence before adding a new one 2017-10-11 17:45:53 +02:00
Cedric Roux
c407cdba2d bugfix: use rnti 0 to mean "unused" instead of -1
-1 does not work
2017-10-11 16:44:27 +02:00
Cedric Roux
b49fd36c15 bugfix: fix calls to CCE_allocation_infeasible (bad format_flag) 2017-10-11 12:18:31 +02:00
Cedric Roux
ac6f09eb2f fix find_dlsch and find_ulsch 2017-10-11 12:08:28 +02:00
Cedric Roux
1f487d6757 fix coment 2017-10-11 12:01:22 +02:00
Cedric Roux
6d7a1a1623 minor: improve T tracer logs 2017-10-11 11:40:42 +02:00
Cedric Roux
6e269b363b bugfix: fix tpc on pusch (maybe not the end of the story) 2017-10-10 17:55:50 +02:00
Cedric Roux
854d2dfbda bugfix: forgot this for timing advance 2017-10-10 17:53:32 +02:00
Cedric Roux
0404f5f3ba minor: add more tracing 2017-10-10 17:52:11 +02:00
Cedric Roux
9b428e5e2f bugfix: fix timing advance
- re-use ta_timer
- when ta_timer is running:
  - no TA sent to UE
  - no TA from UE (for UE to have time to apply previous TA command)
- decrease ta_timer every TTI
- be careful to use correct value of ta_update (31 means no TA)

Maybe not correct, to be checked.
2017-10-10 14:10:32 +02:00
Cedric Roux
a9d6e04cf2 T: modify extract_input_subframe to dump several subframes 2017-10-09 16:33:05 +02:00
Raymond Knopp
8e6cc01905 handling of PDCCH order. stoping UE-specific scheduler during RA procedure. checking for DCI format (resource allocation) to not overwrite resource_block_coding for format 1A DCIs. 2017-10-09 01:25:23 +02:00
Raymond Knopp
6bfc0d63b4 put 50 PRB back in default enb configuration. added handling of UE release in L1/L2. detection of stale ULSCH configuration 2017-10-08 13:04:08 +02:00
Raymond Knopp
c9b8dfabb1 fixes for UE removal (update linked lists) searching of UE lists in schedule_SR/SRS/CSI 2017-10-08 00:06:07 -07:00
Raymond Knopp
7cf40fe877 trace for removing UE in MAC 2017-10-07 02:49:32 -07:00
Raymond Knopp
210754c034 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-07 08:23:17 +02:00
Raymond Knopp
b8235ff707 bugfix in dci generation (padding bits set to 0 in format 0 DCI)
removal of LOG_I put for debugging.
2017-10-07 08:22:02 +02:00
frtabu
3b824c9067 telnet server and shared library loader enhancement 2017-10-07 00:35:23 +02:00
Cedric Roux
5d778a5cec add debugging tool tcp_bridge
internal use, no documentation, no support.
2017-10-06 16:53:18 +02:00
Cedric Roux
43d12970a2 bugfix: fix TX pdu_index usage (maybe still not correct) 2017-10-06 16:41:01 +02:00
Cedric Roux
71cbdf2a56 bugfix 2017-10-06 16:00:48 +02:00
Cedric Roux
e1f19b6c61 rewrite to improve readability 2017-10-06 16:00:02 +02:00
Cedric Roux
ed1714aa63 minor: fix spacing 2017-10-06 14:54:53 +02:00
Cedric Roux
79b7b8ad0f minor 2017-10-06 13:36:13 +02:00
Cedric Roux
a9d0bec8bc add some optional debug tracing code for fapi 2017-10-06 13:34:03 +02:00
Cedric Roux
1485cbda77 bugfix: fix handle_ulsch_harq_pdu
we can't use &ul_config_pdu->ulsch_harq_pdu.harq_information directly,
because that function is called for 2 cases and the substructure
harq_information is not as the same position in both cases.
2017-10-06 12:29:41 +02:00
Cedric Roux
2c9867ff5b spacing cleanup 2017-10-06 12:18:19 +02:00
Cedric Roux
60d10c0a9e bugfix: fix schedule_SR (and some spacing cleanup) 2017-10-06 11:55:46 +02:00
Raymond Knopp
09e683a3be switching some LOG_I to LOG_D, fixes for RRU IF4p5. It was broken after changes in configuration procedures. Some configuration file changes. 2017-10-05 23:24:44 +02:00
Raymond Knopp
2abe404847 deleted more old configuration files 2017-10-05 09:38:24 -07:00
Raymond Knopp
4e10d5a9e5 deleted many old configuration files 2017-10-05 09:29:32 -07:00
Cedric Roux
e52c57b894 bugfix 2017-10-05 12:39:20 +02:00
Cedric Roux
10a63f3d05 add T trace 2017-10-05 11:57:31 +02:00
Cedric Roux
4e7f9312f8 bugfix: alignment for avx2 2017-10-05 09:50:59 +02:00
frtabu
4685536b8c telnet display log level fix 2017-10-05 00:36:29 +02:00
Cedric Roux
f2cb406bfb fix some T traces 2017-10-04 17:58:30 +02:00
Cedric Roux
a993c9588f T: fix trace 2017-10-04 17:27:08 +02:00
Cedric Roux
c97e054691 bugfix: fix CQI reporting
- don't use o_flip anymore in ulsch_decoding
- remove dl_cqi from eNB_UE_STATS
- put dl_cqi[NFAPI_CC_MAX] in UE_sched_ctrl
- adapt code for this dl_cqi change (from eNB_UE_STATS to UE_sched_ctrl)
- extract_pusch_csi has been fixed for CQI_ReportModeAperiodic_rm30,
  the others need to be done. Program will exit if one uses them.
  Not sure if setting sched_ctl->dl_cqi[CC_idP]  has to be done in this
  function...
2017-10-04 16:15:52 +02:00
Cedric Roux
0c6015cfa5 bugfix 2017-10-03 17:16:24 +02:00
Cedric Roux
6eed836f76 bugfix: fix frame/subframe 2017-10-03 16:19:37 +02:00
Cedric Roux
d31ad04cc2 bugfix: fix assert 2017-10-03 15:49:24 +02:00
Cedric Roux
b21b2dada3 bugfix: Msc_initial wrong 2017-10-03 15:31:16 +02:00
Cedric Roux
a2d04934c4 T: add a trace 2017-10-03 13:46:45 +02:00
Cedric Roux
52d4771324 re-enable full UL scheduling 2017-10-03 13:46:20 +02:00
Cedric Roux
ed4b2b74e2 cleanup + fix
- remove old unused code
- check dlsch0 the right way
2017-10-03 13:45:02 +02:00
Cedric Roux
30f8ed2da5 bugfix: fix compilation for T 2017-10-03 13:44:00 +02:00
Cedric Roux
70e30375eb bugfix: compute rhoA and rhoB at the right place 2017-10-03 13:41:44 +02:00
Cedric Roux
95f46eef23 bugfix: += was written as =+ 2017-10-03 13:39:38 +02:00
frtabu
ade874e753 add process related telnet command 2017-10-03 00:25:04 +02:00
Cedric Roux
8b662d7ec9 bugfix: bad pointer 2017-10-02 17:42:48 +02:00
Cedric Roux
ccfbe647aa bgufix: fix config srb1 parsing 2017-10-02 16:51:23 +02:00
Cedric Roux
60d96354ff minor: add warning 2017-10-02 12:10:10 +02:00
Cedric Roux
af6bf08bc1 cleanup CCE_allocation_infeasible 2017-10-02 10:23:29 +02:00
frtabu
8c22204a6c temporary fix undefined symbols in telnet shared lib 2017-10-02 00:07:59 +02:00
Raymond Knopp
502e450973 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-01 15:01:46 -07:00
Raymond Knopp
7fb01d4ea9 NFAPI SNR interfaces for PUCCH1/PUSCH integrated with power control loops. 2017-10-01 15:00:56 -07:00
frtabu
072d9d4350 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-10-01 19:22:37 +02:00
frtabu
d88b72498d remove getopt call in configuration module, it changes the argv order. Fix configuration module bugs (command line arguments sometimes not properly processed 2017-10-01 19:19:36 +02:00
Raymond Knopp
14b2827cec fixed various bugs in NFAPI interface and DCI CCE allocations (eNB_scheduler_primitives.c:allocate_CCEs()) 2017-10-01 02:56:46 -07:00
oai
b5a36dd90c Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-29 16:16:14 +02:00
oai
16eb450927 Add generic shared lib loader 2017-09-29 16:15:04 +02:00
Raymond Knopp
68d9bae1ae Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-28 23:14:13 -07:00
Raymond Knopp
539c8de27d fixed coherency issue across slots for PUCCH 1A/B detection (energy detection component). Introduced a variable scaling for channel matched filter in PUCCH1A/B detector. Current version goes as far on simulator as RU-RAU-split prior to merge with develop 2017-09-28 23:12:14 -07:00
frtabu
30abbdf826 prepare for telnet server integration 2017-09-29 02:07:33 +02:00
oai
4ceb5916ca log utility configuration enhancement 2017-09-28 20:08:47 +02:00
Cedric Roux
4843960fed bugfix: fix ack/nack 2017-09-28 17:17:09 +02:00
Cedric Roux
42667d6a2a bugfix: wrong buffer passed to fill_nfapi_tx_req 2017-09-28 16:43:55 +02:00
Cedric Roux
682823d5b8 bugfix: fix check for 1st round 2017-09-28 16:24:42 +02:00
Raymond Knopp
28707a6948 fixed Msg4 retransmissions. PUCCH still null after merge with develop 2017-09-28 01:05:38 -07:00
Cedric Roux
4aa1a41edc bugfix: fix usrp_lib.cpp 2017-09-27 18:02:21 +02:00
Cedric Roux
e6936f1b7c update T tracer
not finished, UE may not work, many things bad/to fix properly
2017-09-27 17:59:08 +02:00
Cedric Roux
d46dd64f7e bugfix: fix mme address initialization
this and some cleanup, duplicate defs in .h file
2017-09-27 13:49:45 +02:00
Cedric Roux
f2e20c8071 bugfix: fix sctp config params 2017-09-27 12:37:31 +02:00
Cedric Roux
4d07eb1255 bugfix: fix compilation: layer2_init_UE does not exist 2017-09-27 11:10:59 +02:00
Cedric Roux
3d44973c0f bugfix: fix compilation 2017-09-27 11:08:34 +02:00
Raymond Knopp
a5ab75e1f3 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split
Conflicts:
	common/config/config_userapi.h
	openair2/ENB_APP/enb_config.c
	targets/RT/USER/lte-softmodem.c
2017-09-26 22:30:13 -07:00
Raymond Knopp
bc9c587b48 Merge remote-tracking branch 'origin/develop' into RU-RAU-split
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_ESTIMATION/defs.h
	openair1/PHY/LTE_ESTIMATION/lte_ue_measurements.c
	openair1/PHY/LTE_TRANSPORT/dci.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/defs.h
	openair1/PHY/LTE_TRANSPORT/dlsch_decoding.c
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	openair1/PHY/LTE_TRANSPORT/if5_tools.c
	openair1/PHY/LTE_TRANSPORT/phich.c
	openair1/PHY/LTE_TRANSPORT/proto.h
	openair1/PHY/defs.h
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SCHED/phy_procedures_lte_ue.c
	openair1/SCHED/pusch_pc.c
	openair2/ENB_APP/enb_config.c
	openair2/LAYER2/MAC/defs.h
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	openair2/LAYER2/MAC/pre_processor.c
	openair2/LAYER2/MAC/ue_procedures.c
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-softmodem.h
	targets/RT/USER/lte-ue.c
	targets/SIMU/USER/init_lte.c
	targets/SIMU/USER/oaisim_functions.c
2017-09-26 21:43:03 -07:00
oai
fe64b14185 Fix default values for RUs section which trigger if4p5 mode 2017-09-26 17:34:58 +02:00
oai
53907d3739 fix command line processing crash 2017-09-26 15:35:26 +02:00
oai
aae10bf0c2 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-26 13:22:30 +02:00
oai
7ce0e45db3 fix process_cmdline error, 2017-09-26 13:21:41 +02:00
oai
d09a0a2a5d Remove legacy configuration mechanism 2017-09-25 17:31:25 +02:00
Raymond Knopp
7e9bff372d Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-25 07:40:58 -07:00
Raymond Knopp
c91d68ae37 ULSCH debugging RK. 2017-09-25 07:40:40 -07:00
Francois TABURET
ada735527a debugging of ULSCH with nFAPI 2017-09-25 16:33:14 +02:00
Raymond Knopp
c1dae3d38f Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-24 16:01:45 -07:00
Raymond Knopp
e750248252 uplink TPC disabled, fixed clearing of uci->active flag after processing uci in eNB RX. 2017-09-24 16:00:41 -07:00
frtabu
6c00bd1aec Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-24 23:47:36 +02:00
frtabu
3e27fc89fd Improve configuration module error management at init time, Fix command line help option processing, remove shotopt field from parameter structure 2017-09-24 23:43:48 +02:00
Raymond Knopp
e2ec5451a7 UL without cqi_req for testing 2017-09-24 13:57:56 -07:00
Raymond Knopp
3e86d30b82 some correction in RA processing for Msg4 harq handling 2017-09-24 11:33:00 -07:00
Raymond Knopp
55a9054ec5 handling of harq_pid in RA procedure and cce_idx in allocate_CCEs 2017-09-22 14:37:32 -07:00
oai
efe1ccf5e5 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-22 12:18:25 +02:00
oai
cc79250fcc Fix configuration module shared library improperly build and not loadable when libconfig version is below 1.5 2017-09-22 12:13:32 +02:00
Cedric Roux
acca14b2ba bugfix:!fix AssertFatal 2017-09-22 11:41:20 +02:00
Raymond Knopp
7ea7891b67 more warning removal 2017-09-21 15:53:54 -07:00
Raymond Knopp
3135647219 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-21 21:29:23 +02:00
Raymond Knopp
d75dc39a32 removal of more compilation warnings 2017-09-21 21:28:49 +02:00
Francois TABURET
ac18ff67ca Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split
push 2 hours ago just before i retrieved the branch...
2017-09-21 19:34:16 +02:00
Francois TABURET
32786cc7f7 Integration of configuration module. Temporarily keep the legacy mode.
lte-softmodem -O <config file> will trigger legacy config mode
ltesoftmodem  -O libconfig:<config file> will trigger configuration module usage.
2017-09-21 19:30:00 +02:00
Cedric Roux
e6bf9698ed bugfix: fix do_MIB
- carrier->MIB will be reused, so "spare" has to be allocated
- wrong parameters sent to uper_encode_to_buffer
2017-09-21 17:08:18 +02:00
Raymond Knopp
293bcf1316 removed some warnings 2017-09-21 12:34:47 +02:00
Cedric Roux
94fd0e8320 bugfix: fix feptx_ofdm 2017-09-21 12:14:40 +02:00
Cedric Roux
4ac5d5f8d7 bugfix: fix prach function 2017-09-21 12:05:07 +02:00
Cedric Roux
6c5deb41fd minor: fix T trace 2017-09-21 10:55:07 +02:00
Raymond Knopp
b421d467ad Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-20 23:35:40 -07:00
Raymond Knopp
91f312ebde 12->16bit rescaling (transmission) for USRP device 2017-09-20 23:34:54 -07:00
Raymond Knopp
dbb20c23fa removal of ITTI messages eNB MAC->RRC 2017-09-20 12:52:04 +02:00
Raymond Knopp
0fccd99446 patch for open-nfapi 2017-09-19 04:59:15 -07:00
Raymond Knopp
0b5be18c8a extracted FAPI interface functions into fapi_l1.c 2017-09-16 06:29:07 -07:00
Raymond Knopp
55a39eb2f3 initial version for testing with nFAPI interfaces. Still lots of debugging traces. 2017-09-15 06:09:12 -07:00
Raymond Knopp
d2249d5c56 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-09-14 07:16:10 -07:00
Raymond Knopp
362f584d66 integration of remaining nFAPI messages 2017-09-14 07:15:49 -07:00
frtabu
cdca16f655 add configuration module, with compilation, but not yet integrated in softmodem 2017-09-04 00:12:35 +02:00
Cedric Roux
1fb76157c8 Merge remote-tracking branch 'origin/develop_integration_w34' into develop
Summary of changes:

- USRP driver improvements (GPSDO handling, GPIO for TDD)
- multi-UEs scenario improvements, mostly the MAC scheduler
- mobipass standalone driver
- bug fixes for VCD tracing code
- some cleanup in the installation scripts
- some work on the T tracer

To use the GPSDO with the USRP device (notably B210), use the
command line argument: --gpsdo-clock
2017-08-30 10:10:51 +02:00
Cedric Roux
6f812f7003 fix the prach hack, only deals with fdd prach config 0 2017-08-30 09:38:11 +02:00
Cedric Roux
761bf3c4c2 T: fix VCD traces 2017-08-29 17:18:23 +02:00
Cedric Roux
8575b151fc integration fix: add license text to source files 2017-08-29 12:21:01 +02:00
Cedric Roux
78e0a53d03 integration fix: remove compilation warnings 2017-08-29 12:18:11 +02:00
Cedric Roux
a945f85d6f Merge remote-tracking branch 'internal/T-new-traces' into develop_integration_w34 2017-08-29 10:25:41 +02:00
Cedric Roux
41d16f1696 Merge remote-tracking branch 'internal/mac-multi-ue' into develop_integration_w34 2017-08-29 10:25:33 +02:00
Cedric Roux
a35865b749 Merge remote-tracking branch 'internal/mobipass-standalone' into develop_integration_w34 2017-08-29 10:25:26 +02:00
Cedric Roux
cdcc1d54f4 Merge remote-tracking branch 'internal/usrp-cherry-pick' into develop_integration_w34 2017-08-29 10:25:20 +02:00
Cedric Roux
35f34bbdcc Merge remote-tracking branch 'internal/build_oai_cleanup' into develop_integration_w34 2017-08-29 10:25:13 +02:00
Cedric Roux
121da9468e Merge remote-tracking branch 'internal/T-tracer-extract-input-subframe' into develop_integration_w34 2017-08-29 10:25:06 +02:00
Cedric Roux
e3cc82b9fe Merge remote-tracking branch 'origin/bugfix-vcd' into develop_integration_w34 2017-08-29 10:24:40 +02:00
Cedric Roux
0daf79bfc8 T: add some new traces
- ENB_PHY_OUTPUT_SIGNAL to trace output signal
- ENB_MAC_SCHEDULING_REQUEST to trace scheduling requests
2017-08-29 10:23:06 +02:00
Cedric Roux
f38572b444 add a configuration file for mobipass standalone
Parameters are for Eurecom internal use.
2017-08-29 09:51:01 +02:00
Cedric Roux
622b919b37 improve multi-UEs scenario
This commits contains several fixes to improve a multi-UE scenario.

This is not the end of the story.

Summary of work:
================

1 - improve SR (scheduling requests):

    We configured n1pucch == 3 for scheduling requests, for all
    UEs. We now use 71 - UE_id/10.

    For it to work, it is vital that pucch_nRB_CQI in the configuration
    file is set to 0, otherwise the SR will go to an RB used for
    PUSCH and uplink decoding will fail whenever an UE does SR.

    Note that we will have problems with 20MHz when we use a CCE that
    let the UE send the ACK/NACK using a n1pucch allocated for SR,
    because when the PDCCH is of size 3, we can have 87 CCEs
    and it may lead to an n1pucch colliding with one for SR.

    The work done in this patch is a quick solution, seems to work
    with 10MHz.

    The real solution is to disable the use of those CCEs that would
    lead an UE to use a n1pucch colliding with an SR n1pucch. Then
    we can use whatever n1pucch we want for SR, as long as the
    scheduler protects them.

    Impacted files: configuration files
                    openair2/RRC/LITE/MESSAGES/asn1_msg.c

2 - some fixes for uplink scheduling:

    - Do not use PRACH for PUSCH, that leads to too many false
    PRACH detection. Plus the PUSCH receiving may fail if one
    UE uses the PRACH at the same time.

    - Take care of retransmissions. That was not done at all, so
    we could allocate one RB to several UEs. The current design
    of the code makes it hard to do it properly, so we chose a
    quick and dirty solution, which is to increase "first_rb"
    to skip any RB used for retransmission. In this process we
    may skip a lot of free RBs. A proper solution is needed here.

    - Do not allocate the last RB. This one is used for PUCCH.
    It was sometimes allocated to PUSCH.

    - In the pre-processor we didn't pre-allocate RBs to UEs
    with an empty buffer status. We didn't check if the UE
    sent an SR. For example in a three UEs scenario, we
    could have the third UE never scheduled in the uplink.

    - rb_table_index was not decreased properly, so we allocated
    too much RBs to some UEs and thus not enough to others.

    Impacted files: openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
                    openair2/LAYER2/MAC/pre_processor.c
                    openair1/SCHED/phy_procedures_lte_eNb.c

3 - some fixes for downlink scheduling:

    - The check on CCE allocation was not correct. We did something
    like:

        if (cce allocation is possible) {
          prepare
        }

    We should have done:

        save current cce allocation
        if (cce allocation is possible) {
          allocate cce
          prepare
        }
        reset current cce allocation

    Basically, when we scheduled several UEs, they were checked
    separately, and the totality of them was not checked.

    Impacted file: openair2/LAYER2/MAC/eNB_scheduler_dlsch.c

    - The retransmissions are probably not handled correctly.
    Check in openair2/LAYER2/MAC/pre_processor.c, near
    the comment "// control channel or retransmission",
    the case "round > 0" was added. It's probably not enough,
    even maybe not correct.

    - Change SF05_LIMIT with SF0_LIMIT. We accept to use
    central blocks in SF 5. The code was also not correct,
    vrb_map was not set properly because the loop on j
    was wrong for the last RBG (which can have one less
    RB than the others).

    This is not satisfying. The real solution is to use the
    central RBs and check that the MCS used is compatible
    with the numbers of resource elements allocated (we don't
    want to put too more data bits than what fits).

4 - some fixes in PUCCH decoding:

    See: openair1/PHY/LTE_TRANSPORT/pucch.c

    Probably not enough. Some more work and analysis is
    required for a proper use of the PUCCH. What we see
    is that the PUCCH constellation gets wrong when there
    are several UEs, meaning the received ACK/NACK is
    not properly decoded (this, or something else...).

5 - several fixes/checks added here and there:

    - The final allocate_CCEs in eNB_dlsch_ulsch_scheduler
      is checked and we brutally exit if it fails.

    - We exit in get_num_pdcch_symbols in case of failure
      (this should never happen anyway, no big deal normally).

    - Some logs added or changed to error/warning instead
      of debug.

    - In dlsch_scheduler_pre_processor an abort() was added.
      The code here looks suspicious.

    - In assign_max_mcs_min_rb, rb_table_index was not set
      to 2, the value 0 was used. This was not correct.

What remains to be done:
========================

    - Correct CCE allocation (take into account SR n1pucch,
      check that all the n1pucch that will be used are "compatible").

    - Take into account the PHICH when scheduling uplink. As of
      today it is very possible to have two UEs use the same PHICH
      group and PHICH sequence index. We can use n_DMRS in the DCI
      to have uniqueness (see 36.213 table 9.1.2-2). We can drop an
      allocation if there is no free PHICH group/sequence index for
      a given UE.

    - When there is an uplink retransmission in the PRACH, we have
      to disable PRACH detection. It is possible that one UE does
      PRACH at the same time, but then what to do? We could use
      DCI0-based retransmission in this specific case maybe...

    - Handle free RBs in uplink in a much better way in case of
      a retransmission. We may have a lot of free unused RBs with
      the current code.

    - Check downlink retransmissions. Not much has been done there.

    - Surely more stuff not clear yet. In some situations we don't
      have a good behavior of the system. Hard to describe more
      precisely at this point.
2017-08-24 17:34:18 +02:00
Florian Kaltenberger
30e11cbf53 adding one more dummy ofdm symbol to the TX part of the special subframe to improve EVM 2017-08-23 14:46:54 +02:00
Cedric Roux
c866677a8f mobipass standalone driver
How to use:

1 - compilation of softmodem:
  ./build_oai --eNB -t ETHERNET

2 - compilation of mobipass driver:
  cd cmake_targets/lte_build_oai/build
  make oai_mobipass
  ln -sf liboai_mobipass.so liboai_transpro.so

3 - configuration:
  edit the configuration file, set "node_timing" to
  "synch_to_mobipass_standalone"
  that is, have the line:
    node_timing               = "synch_to_mobipass_standalone";

4 - run:
  run as usual: sudo ./lte-softmodem -C <configuration file>
2017-08-23 10:22:08 +02:00
Florian Kaltenberger
592bcf3867 fix in trx_usrp_start when gpsdo is not used 2017-08-22 15:48:07 +02:00
Xenofon Foukas
c8c4b42317 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-08-22 14:44:12 +03:00
Cedric Roux
5df5b70909 cleanup build_oai: do not un-install gnutls and nettle
These steps take time and are not necessary.
2017-08-21 09:48:42 +02:00
Cedric Roux
0293141817 T tracer: add a new tool: extract_input_subframe
This program extracts a given subframe from a recorded trace.
2017-08-20 22:52:35 +02:00
Florian Kaltenberger
c5fd670803 making use of gpsdo optional 2017-08-18 17:18:02 +02:00
Florian Kaltenberger
9c167fc3bf adding GPIO control for TDD to USRP 2017-08-18 11:13:47 +02:00
Florian Kaltenberger
d7096758aa USRP GPS sync 2017-08-18 11:12:15 +02:00
Raymond Knopp
f962c2e371 added configuration file for nFAPI PNF (oaiL1) and modifications in startup procedure to initialize L1 only. When executed, it just waits for configuration, which will never come ... Provides and initial framework to integrate NFAPI PNF modules. 2017-08-17 17:17:32 -07:00
Raymond Knopp
7b650ef1b9 configuration file example for nFAPI VNF (single instance MACRLC + RRC/PDCP/S1AP/GTP), no L1/RU 2017-08-17 16:34:00 -07:00
Raymond Knopp
f374544418 eMTC extensions in L1/L2 after interoperability testing with COTS Cat-M device. 2017-08-17 16:32:44 -07:00
Raymond Knopp
fc283a321f added edci.c, forgotten on last commit 2017-08-17 01:15:46 -07:00
Raymond Knopp
5c0ea2b446 addition of MPDCCH format 5. X_u_br sequences for BL/CE UE support and bugfixes in rx_prach0 for eMTC. 2017-08-17 00:51:23 -07:00
Raymond Knopp
7356082754 added narrowband to first rb maping for L2 2017-08-15 00:51:50 -07:00
Raymond Knopp
828077c2de bugfixes for eNB on usrp, some minor fixes for eMTC 2017-08-13 23:04:16 -07:00
Raymond Knopp
faa111ecc0 complete programming of Msg2/Msg4 procedures for eMTC. Addition of skeleton for PUCCH UCI (NFAPI) in L1. Some cleanup of eNB_scheduler.c 2017-08-13 05:13:27 -07:00
Raymond Knopp
41f864ef09 modicaitions for rru, initial configuration exchage 2017-08-11 17:43:42 +02:00
Raymond.Knopp
ec6236f8c7 tests with monolithic eNB. runs fluidly. No UE stimulus yet 2017-08-11 01:44:22 +02:00
Raymond Knopp
af4b4c3fe5 modification in eNB_scheduler_RA to handle when eMTC is not enables 2017-08-10 12:52:34 -07:00
Raymond Knopp
a9eb51f177 prach.rxsigF allocation 2017-08-10 12:12:39 -07:00
Raymond Knopp
b360afd018 fixes for RRU/RAU function after changes for monolithic eNB (some things during init were broken for RRU) 2017-08-10 10:24:20 -07:00
Raymond Knopp
b219be2e6d added RRU configuration file and more L2 cleanup 2017-08-10 07:56:30 -07:00
shahab SHARIAT BAGHERI
c3adbb9545 warnings 2017-08-09 22:46:42 +02:00
shahab SHARIAT BAGHERI
4d3689a56c warning reducing 2017-08-09 13:42:50 +02:00
Cedric Roux
17b9a9e917 hotfix: protobuf-c compilation failure
protobuf-c does not compile anymore.

Let's handle this a bit better.

We now install protobuf and protobuf-c only for the
flexran agent. That is, if you want to use the flexran
agent, you need to install protobuf/protobuf-c and
you do it this way:

  ./build_oai -I -a

(you add -a)

Other targets don't need protobuf nor protobuf-c, so
it's not installed by the -I command of build_oai,
unless you pass -a with -I.

Also, we now use protobuf 3.3.0, not 2.6.1. The code
has been adapted, a quick test seems to indicate that
the system works, but it has not been intensively tested.
2017-08-08 09:58:36 +02:00
Raymond Knopp
ad98f5aa9e L1/L2 scheduling extensions for BL/CE operation, BR random-access procedure, BR PRACH detection. Still untested, but compilation succeeds. Missing elements in L2 - PUSCH programming for Msg3, Msg4 retransmission programming for BL/CE. DLSCH/ULSCH programming for UE-specific DLSCH/ULSCH for BL/CE 2017-08-07 23:25:17 -07:00
Cedric Roux
309ca06685 fix vcd
several problems were present:
- there was no comma after "ue0_trx_write_ns_missing" in the array
  eurecomVariablesNames;
  comma was put, and also commas for the last element in the array,
  which doesn't hurt and will prevent future problems
- bad order of values in eurecomVariablesNames, which
  was different from the enum vcd_signal_dump_variables;
  order was checked and fixed
- strange/wrong use of VCD_SIGNAL_DUMPER_MODULE_END/LAST;
  the whole logic was removed/simplified
2017-08-07 10:41:37 +02:00
shahab SHARIAT BAGHERI
0b3e617089 Merge branch 'feature-68-enb-agent' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-68-enb-agent 2017-08-05 00:21:56 +02:00
Anta Huang
1e857d5ba5 Update the naming of cell config parameters 2017-08-04 18:19:38 +02:00
Anta Huang
863e9404fc Add additional cell config info to flexran API and message 2017-08-04 17:42:32 +02:00
shahab SHARIATBAGHERI
3cc3762ed9 carrier index 2017-08-04 16:27:15 +02:00
shahab SHARIATBAGHERI
d12f55d2ed add operating downlink frequency 2017-08-04 16:22:57 +02:00
shahab SHARIATBAGHERI
8e5b174047 merge to 68 2017-08-04 16:02:17 +02:00
shahab SHARIATBAGHERI
8de28502e1 Merge branch 'feature-68-uplink' into feature-68-enb-agent 2017-08-04 14:49:25 +02:00
Cedric Roux
f7466b0e1a Merge branch 'develop_integration_w30' into 'develop'
Summary of changes:
- UE: new thread idx
- UE: Pdcch optim
- UE: slot0 slot1 parallelization
- bugfixes for RLC AM (see gitlab issue 250)
- fix bug "unknown UE_id for rnti"

Note: due to the new UE threading architecture,
oaisim and the phy simulators may not work properly
anymore. Adaptation in the code has been done, automatic
tests seem to pass, but it may not be enough.

See merge request !215
2017-08-03 12:23:24 +02:00
Cedric Roux
2fbb26789f remove gcc warning when compiling oaisim 2017-08-03 11:51:43 +02:00
Cedric Roux
ebc8cbf4e0 fix oaisim (ue structures changed) 2017-08-03 11:51:16 +02:00
Cedric Roux
8633d6c2df remove compilation warnings 2017-08-03 10:40:04 +02:00
Cedric Roux
9e4f700aae bugfix for phy simulators (not sure if enough)
With the new threading architecture of the UE dlsim
(and others) does not work properly anymore.

When looking at the scope, you see a difference
in PDSCH LLR display. The end is always 0 where
in the current develop branch (tag 2017.w25) it's not.

This commit attempts to fix it.

We still don't have the same behavior as in 2017.w25.
I disabled channel simulation (so that UE RX = eNB TX)
and I have one error where in 2017.w25 I have zero.
For example, here comes the output of a run of "./dlsim":

**********************SNR = 0.000000 dB (tx_lev 51.000000)**************************
Errors (1(0)/1000 0/1 0/0 0/0), Pe = (1.000000e-03,0.000000e+00,-nan,-nan), dci_errors 0/1001, Pe = 0.000000e+00 => effective rate 99.900100, normalized delay 0.001472 (1.001000)

And in 2017.w25 we have (with the same hack to disable
channel simulation):

**********************SNR = 0.000000 dB (tx_lev 51.000000)**************************
Errors (0(0)/1000 0/0 0/0 0/0), Pe = (0.000000e+00,-nan,-nan,-nan), dci_errors 0/1000, Pe = 0.000000e+00 => effective rate 100.000000, normalized delay 0.001471 (1.000000)

There may be a problem somewhere. Or there was one before and we should
have had one error and the new UE architecture fixed things and now
it's as it has to be. Hard to say at this point...

When looking at the scope we quickly see some zeros for the PDSCH
LLR, at the begining this time, not at the end. This is just when
the GUI appears and then all is fine, so this seems to be for the
first frame only. In 2017.w25 this does not happen.
2017-08-03 10:27:06 +02:00
Cedric Roux
2ed9a48d6e more fix for dlsim_tm7 2017-08-03 10:24:16 +02:00
gabrielC
5917cdaff8 correct dlsim execution problem 2017-08-01 16:57:37 +02:00
gabrielC
1661294de5 Correct T-tracer compilation 2017-08-01 10:46:08 +02:00
Cedric Roux
030a345258 bugfix: fix sync for oaisim
With the current implementation of oaisim
(rxdata and channel simulation), we cannot
call trx_read_func on a dummy buffer. The
code will actually modify the rxdata buffers
of the UE.

This is has to be rewritten properly. In the
meantime, let's introduce a simple hack. The
idea of the read at this point is to wait for
the synch to finish and not lose samples from
the hardware in the real UE. In the simulator,
as it is today, we can simply sleep until the
synch code has finished its work.
2017-07-31 16:32:07 +02:00
Cedric Roux
3ed32a77d0 integration fix: let oaisim work again
In case of oaisim, dl_phy_sync_success has to be called
by initial_sync, as it used to be.

We introduce an #if OAISIM, this is not elegant, but will
do it for the moment.
2017-07-31 16:29:46 +02:00
tct-labo4
4c2c1a3631 fix dlsim 2017-07-31 16:18:57 +02:00
tct-labo4
96db5ea596 ue fix 3 threads and add define for slot parallelization function 2017-07-31 14:17:08 +02:00
gabrielC
f5be2be550 Correct DCIFormat and AgregationLevel to put them in pdcch structure 2017-07-28 16:39:25 +02:00
Cedric Roux
10c9d899bb Merge remote-tracking branch 'origin/bugfix-258-unknown-ue-id-for-rnti' into develop_integration_w30 2017-07-28 10:06:39 +02:00
Cedric Roux
8d5901c815 bugfix: fix bug "Unknown UE_id for rnti"
This bug happens when we detect uplink failure for one UE.
In this case, a DCI format 1A is sent to the UE to ask it
to do random acces.

The way this DCI is generated was not compatible with how
the software is organized. It was expected that the DCI are
added (with add_ue_spec_dci and add_common_dci) in a very
specific order: first all DCIs in common space are added
(with add_common_dci) then all DCIs in UE specific space
are added (with add_ue_spec_dci).

The problem was that the DCI format 1A DCI sent to the UE
for it to do random access is added (with add_ue_spec_dci)
before the DCIs in common space.

That totally messed up the logic in add_common_dci and
add_ue_spec_dci.

The solution is to get rid of Num_common_dci and Num_ue_spec_dci,
replace those two counters by only one (Num_dci) and add
"search_space" in the dci_alloc structure to be used later by
the function "allocate_CCEs" when calling "get_nCCE_offset".

The software had to be adapted to the new variables, everywhere.

I am not sure that the simulators work. It seems that some
of them didn't use Num_common_dci and Num_ue_spec_dci to
decide on what space (common or UE specific) to put the DCI,
but relied on the rnti (comparing with SI_RNTI). To be tested
properly.

The modified simulators are:
  - openair1/SIMULATION/LTE_PHY/dlsim.c
  - openair1/SIMULATION/LTE_PHY/dlsim_tm4.c
  - openair1/SIMULATION/LTE_PHY/dlsim_tm7.c
  - openair1/SIMULATION/LTE_PHY/framegen.c
  - openair1/SIMULATION/LTE_PHY/pdcchsim.c
  - openair1/SIMULATION/LTE_PHY/syncsim.c
2017-07-27 17:12:19 +02:00
tct-labo4
a2f37668f1 Merge branch 'ue_new_thread_idx' into develop_integration_w30 2017-07-26 16:11:07 +02:00
tct-labo4
a738eeade4 ue using new thread index instead of modulo 2017-07-26 16:09:03 +02:00
Raymond.Knopp
1fc67381f4 updates for gtkwave 2017-07-25 22:32:55 +02:00
Raymond.Knopp
8ee3f3b353 initial tests with USRP as monolithic eNB, "connectionless" execution is fine. 2017-07-25 22:15:52 +02:00
Raymond Knopp
09a43fae25 Merge branch 'RU-RAU-split' of https://gitlab.eurecom.fr/oai/openairinterface5g into RU-RAU-split 2017-07-25 11:24:53 -07:00
Raymond Knopp
80c80bb5fe bug fixes for monolithic eNB target 2017-07-25 11:23:46 -07:00
shahab SHARIATBAGHERI
9e7e57de74 DL Fixed Bug get TBS 2017-07-25 19:12:42 +02:00
Raymond.Knopp
cd686fc09a fix bug from faulty merge 2017-07-25 17:45:37 +02:00
Raymond Knopp
89ad7c70d5 added mdci.h 2017-07-25 08:42:02 -07:00
Raymond Knopp
b61a2e0efe small changes to allow for monolithic eNB execution. 2017-07-24 17:18:34 -07:00
Raymond Knopp
ae884afe24 integration of LTE-M SIB1/SI interfaces and scheduling 2017-07-24 16:19:24 -07:00
Anta Huang
e51d8d3fd7 Add the slice_maxmcs_uplink to flexran agent ulsch 2017-07-20 13:24:16 +02:00
hbilel
767606f9f2 - fix init prach struct + fix TO compensation for 20MHz case 2017-07-20 10:09:43 +02:00
Raymond Knopp
d56525c807 NFAPI UL indications added and full UE connection tested. 2017-07-19 03:07:40 -07:00
fnabet
a64bcb1408 fix warning w/o ue-timing option 2017-07-17 16:49:04 +02:00
fnabet
04b5954f96 Merge Fix Issue 250 RLC AM Tpoll Retx 2017-07-17 16:24:06 +02:00
gabrielC
aae302f15e Merge branch 'pdcch_optim' into develop_integration_w30
Conflicts:
	targets/RT/USER/lte-softmodem.c
2017-07-17 16:20:00 +02:00
tct-labo4
b5eec87e75 Merge branch 'ue_slot0_slot1_parallelization_bis' into develop_integration_w30 2017-07-17 15:16:21 +02:00
tct-labo4
ed145f5799 [OAI-UE] slot0/1 parallelization part2 2017-07-17 15:11:40 +02:00
gabrielC
a2cf0a2295 PDCCH optimisation : Stop reading DCI0 when found 2017-07-17 10:40:38 +02:00
Xenofon Foukas
e2ac251cc6 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-07-14 12:53:54 +03:00
Xenofon Foukas
f7e376ed5f Added support of FlexRAN agent compilation for oaisim with S1 enabled 2017-07-14 12:52:51 +03:00
Raymond Knopp
8da1c4b5bb Note: this commit is work in progress. Contains initial integration of NFAPI data structures which are tested for TX path. RX path to follow. 2017-07-06 08:18:32 -07:00
gabrielC
bcdb62e140 Optimisation of rx_pdcch : save some time by reading one symbol pdcch first and read symbol 2 and 3 if needed
Optimisation of nb of candidate when searching DCI
2017-07-06 10:03:27 +02:00
gabrielC
4ac34f7c7c Valid for OAI : Save some processing timing when looking for candidate DCI 2017-07-04 15:06:07 +02:00
fnabet
40e42c4c2d fix Issue 250 RLC AM 2017-06-29 17:15:10 +02:00
gabrielC
33e242de6a PDCCH optimisation to read only the DCI / agregation we have preconfigured 2017-06-29 10:54:50 +02:00
tct-labo4
bf7eb25cf5 [OAI-UE] timing measurements for slot0/slot1 parallelization 2017-06-28 12:15:25 +02:00
tct-labo4
0b332b5536 rebase from 2017.w25 part2 2017-06-27 17:03:16 +02:00
fnabet
cb637c033c rebase from 2017.w25 2017-06-27 15:01:28 +02:00
fnabet
232f56b9e6 prepare for rebase from 2017.w25 2017-06-26 12:16:30 +02:00
Cedric Roux
08b8b3142d Merge branch 'develop_integration_w25' into 'develop'
develop_integration_w25 into develop

Summary of changes:
- UE: configurable thread
- UE: fix in dci format1c decoding
- bladeRF hack
- configuration files for oaisim

See merge request !209
2017-06-26 10:12:41 +02:00
shahab SHARIAT BAGHERI
4b696e9341 Merge branch 'feature-68-uplink' into feature-68-enb-agent 2017-06-24 23:22:13 +02:00
Cedric Roux
4deeb083fc Merge remote-tracking branch 'origin/fix-oaisim-w25' into develop_integration_w25 2017-06-23 11:22:15 +02:00
Cedric Roux
9adfa48de8 fix: let run_enb_ue_virt_s1 work with "default" openair-cn
changes:
- ue mcc/mnc 208.93
- use correct key/opc for user
- change addresses in conf file for them to be easier to understand
  (maybe)

With those changes, running:
   sudo ./run_enb_ue_virt_s1
in cmake_targets/tools should work out of the box

The user still has to configure correct IP addresses in
targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.generic.oaisim.local_mme.conf

We supposed oaisim (enb+ue) machine to be on IP address 10.0.1.1
and EPC (hss, mme, spgw) machine to be on IP address 10.0.1.2.
2017-06-23 11:09:04 +02:00
Cedric Roux
28171c1aa7 Merge remote-tracking branch 'origin/hack-bladerf-w24' into develop_integration_w25 2017-06-23 10:36:08 +02:00
Cedric Roux
ef87ec519e Merge remote-tracking branch 'origin/ue_configurable_thread' into develop_integration_w25 2017-06-23 10:35:08 +02:00
Cedric Roux
d102d96431 Merge remote-tracking branch 'origin/ue_fix_dci1c' into develop_integration_w25 2017-06-23 10:34:55 +02:00
Cedric Roux
a8ae85f6ca bladerf: minor: add log for RX overrun 2017-06-23 10:32:28 +02:00
Cedric Roux
0da6027438 bladerf: tentative to have it functional
Several problems are present.

The first is that _write returns 0 instead of the
number of samples. We solve it by returning
nsamps.

The second is that _read may return less samples at
the beginning and we don't want to exit for that.
We solve it also by returning nsamps.
(We still need to log more in this, to be done in the
next commit.)

The third is that after initialization we don't send
anything for a while, time for the softmodem to finish
its init. This generates lots of "RX overrun".
We solve it by disabling TX and RX modules after init
and then in trx_brf_start we activate them again (and
also call bladerf_sync_config, which seems to be
mandatory, and bladerf_calibrate_dc, which may be avoided,
perhaps).

Maybe not the end of the story. Sometimes it works, UE connects,
traffic is fine (tested only with 5MHz). Sometimes it does not,
UE does not connect, or it connects but then traffic is bad,
especially uplink.

To be refined.
2017-06-23 10:32:28 +02:00
Gabriel
bc2a93183d ue fixes slot parallelisation 2017-06-21 17:49:56 +02:00
hbilel
2e559d8237 change back to eurecom test config 2017-06-21 17:15:52 +02:00
hbilel
fdae0065ac Make RX thread number configurable 2017-06-21 16:17:22 +02:00
fnabet
d951795ae4 build fixes 2017-06-21 15:58:12 +02:00
hbilel
5d936f3518 [OAI-UE] fix in dci format1c decoding 2017-06-21 14:11:52 +02:00
Cedric Roux
f364d13ddf Merge branch 'develop_integration_w24' into 'develop'
develop_integration_w24 into develop

Summary or changes:
- work on transmission mode 3 and 4

See merge request !204
2017-06-19 10:42:23 +02:00
Cedric Roux
85ac4e4648 T: minor makefile fix 2017-06-16 14:51:13 +02:00
Cedric Roux
0b4b2dda14 post-integration cleanup 2017-06-16 14:49:55 +02:00
Cedric Roux
a10a29b576 Merge remote-tracking branch 'origin/feature-59-tm4' into develop_integration_w24 2017-06-16 13:43:50 +02:00
Cedric Roux
00158f85d9 pre integration: more cleanup/hyeavy logs removal 2017-06-16 12:44:38 +02:00
Cedric Roux
3f1e218a01 pre-integration cleanup 2017-06-16 11:51:10 +02:00
Elena_Lukashova
727782a04a Setting default use_sic_receiver, otherwise it was working properly
only with XFORMS enabled.
2017-06-15 12:05:32 +02:00
Elena_Lukashova
ff9f54e187 Removing eraing llr and rxdataF_comp1 from lte_phy_scope_tm4.c
The way it was done was confusing.
However, now rank adaptation (if enabled) is not visualized correctly.
2017-06-15 12:03:13 +02:00
Elena_Lukashova
dd8eb2903e Fixing a bug in lte_phy_scope_tm4, now scope for transmission mode 1 is working fine. 2017-06-15 11:19:25 +02:00
Elena_Lukashova
71d7fcb016 Merge branch 'bugfix-243-dlsim' into feature-59-tm4 2017-06-14 15:49:20 +02:00
Elena_Lukashova
037da40423 Adding back return(0) in coherency check for format2. 2017-06-14 14:57:23 +02:00
Elena_Lukashova
adbb533de6 Setting a defaul state of the SIC button. 2017-06-13 16:31:16 +02:00
Elena_Lukashova
9566187ab3 Fixing a bug in check_dci_format2_2a_coherency. 2017-06-13 15:54:30 +02:00
Florian Kaltenberger
f152ddaa5e Merge remote-tracking branch 'origin/develop' into bugfix-243-dlsim 2017-06-13 15:23:43 +02:00
Elena_Lukashova
9be3a02fb9 Adding a button to XFORMS to switch dinamically between SIC and PIA. 2017-06-13 12:07:19 +02:00
hbilel
4aed32e786 [OAI-UE] slot0 / slot1 parallelization 2017-06-13 09:49:17 +02:00
Elena_Lukashova
fadb9b8378 Add debugging level to dlsim_tm4. 2017-06-12 23:12:22 +02:00
Elena_Lukashova
b7b13de36a Making sure llr is indexed per TB, and not per CW. 2017-06-12 23:10:45 +02:00
Elena_Lukashova
ce29fca6b6 Enabling new code for dci format 2 and incrementing round in UE->dlsch[subframe&0x1][0][1]. 2017-06-12 23:08:00 +02:00
Elena_Lukashova
39e74bc8ab Adding some debugging printouts. 2017-06-12 22:49:31 +02:00
shahab SHARIATBAGHERI
1ecdcba33a uplink VSF 2017-06-08 18:36:25 +02:00
Elena_Lukashova
a45fbd0fae Merge branch 'bugfix-243-dlsim' into feature-59-tm4 2017-06-08 15:12:57 +02:00
Florian Kaltenberger
68c72ac012 removing a few prints 2017-06-08 14:24:07 +02:00
Florian Kaltenberger
e10dd54a9b dlsim now returns -1 if a test does not pass 2017-06-08 14:23:33 +02:00
Elena_Lukashova
09fe0bdc24 Merge branch 'bugfix-243-dlsim' into feature-59-tm4 2017-06-08 14:16:22 +02:00
Florian Kaltenberger
2826ceea00 adding dlsim testcases for 20MHz (SISO) 2017-06-08 14:06:35 +02:00
Florian Kaltenberger
6194ef4831 removing printf 2017-06-08 13:42:31 +02:00
Florian Kaltenberger
9542e8a8f9 alternative version of dlsch_channel_level not needing floating point 2017-06-08 09:22:30 +02:00
Florian Kaltenberger
3c56a7edc5 a new proposal for the dlsch_channel_level function 2017-06-07 18:12:43 +02:00
Florian Kaltenberger
804a9a0630 fixing leftover issues from previous commit 2017-06-07 16:17:24 +02:00
Florian Kaltenberger
9eb6d6a4ec fixing handling of ndi/first_tx in dci. commenting out corner case of missed ACK, this needs to be done better 2017-06-07 11:22:47 +02:00
Florian Kaltenberger
0ef58f685a proper checking for detection of PDCCH/PDSCH, fix of error counters 2017-06-07 11:20:51 +02:00
Cedric Roux
7580d021d3 Merge branch 'develop_integration_w22' into 'develop'
develop_integration_w22 into develop

Summary of changes:
- UE:
  * TDD multiplexing
  * TDD autotest
  * bug fixes: power control management for Msg3, logging
- eNB:
  * CCE allocation fixes
  * S1U port in some configuration files set to 2152 (was 2153)
- support for RedHat enterprise linux 7 and derivatives (CentOS, ...)
  (work provided by RedHat)

See merge request !198
2017-06-06 17:59:32 +02:00
Elena_Lukashova
71ea13fa4b Merge branch 'bugfix-243-dlsim' into feature-59-tm4 2017-06-06 11:58:56 +02:00
Florian Kaltenberger
9ddaf93eab re-adding the possibility in dlsim to bypass the DCI/PDCCH generation. This is necessary for accuracy of the dlsim-tests, which are working again now. 2017-06-06 10:39:03 +02:00
Raymond Knopp
d23697aef3 Merge branch 'develop' into RU-RAU-split
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
	openair1/PHY/LTE_TRANSPORT/dci.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/dlsch_coding.c
	openair1/PHY/LTE_TRANSPORT/dlsch_decoding.c
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/LTE_TRANSPORT/if4_tools.c
	openair1/PHY/LTE_TRANSPORT/if5_tools.c
	openair1/PHY/LTE_TRANSPORT/if5_tools.h
	openair1/PHY/LTE_TRANSPORT/pcfich.c
	openair1/PHY/LTE_TRANSPORT/phich.c
	openair1/PHY/LTE_TRANSPORT/prach.c
	openair1/PHY/LTE_TRANSPORT/rar_tools.c
	openair1/PHY/LTE_TRANSPORT/srs_modulation.c
	openair1/PHY/defs.h
	openair1/PHY/impl_defs_lte.h
	openair1/PHY/impl_defs_top.h
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SCHED/phy_procedures_lte_ue.c
	openair2/COMMON/mac_rrc_primitives.h
	openair2/ENB_APP/enb_config.c
	openair2/ENB_APP/enb_config.h
	openair2/LAYER2/MAC/config.c
	openair2/LAYER2/MAC/eNB_scheduler.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	openair2/LAYER2/MAC/eNB_scheduler_mch.c
	openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	openair2/LAYER2/MAC/main.c
	openair2/LAYER2/MAC/proto.h
	openair2/RRC/LITE/MESSAGES/asn1_msg.c
	openair2/RRC/LITE/MESSAGES/asn1_msg.h
	openair2/RRC/LITE/rrc_UE.c
	openair2/RRC/LITE/rrc_common.c
	openair2/RRC/LITE/rrc_eNB.c
	targets/ARCH/COMMON/common_lib.c
	targets/ARCH/COMMON/common_lib.h
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.h
	targets/ARCH/ETHERNET/USERSPACE/LIB/if_defs.h
	targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.25PRB.lo.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.50PRB.lo.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.25PRB.oaisim.conf
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-ue.c
	targets/RT/USER/rt_wrapper.h
	targets/SIMU/USER/channel_sim.c
	targets/SIMU/USER/init_lte.c
	targets/SIMU/USER/oaisim.c
	targets/SIMU/USER/oaisim_functions.c
2017-06-05 15:33:38 -07:00
Raymond Knopp
4d58025ded Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2017-06-04 02:47:10 -07:00
Raymond Knopp
a5d540260e gtkw file for rru 2017-06-04 02:46:39 -07:00
Raymond Knopp
413df163d8 first working version with oaisim. This is prior to MAC interface reworking 2017-06-04 02:44:26 -07:00
Cedric Roux
00242daa6b Merge remote-tracking branch 'origin/feature-143-support-enterprise-linux-7' into develop_integration_w22 2017-06-02 18:06:54 +02:00
Cedric Roux
e48247f9eb test setup v2: minor: kill hss if there 2017-06-02 13:34:55 +02:00
Frank A. Zdarsky
633fda9a6e minor fixes and add building drivers from source for CentOS7
Signed-off-by: Frank A. Zdarsky <fzdarsky@redhat.com>
2017-06-02 12:32:15 +02:00
Cedric Roux
df691a2034 minor: remove user/password log in gitlab CI 2017-06-02 11:44:09 +02:00
Cedric Roux
60c4b5ecd7 integration fixes
- rename UE_NO_LOG to DISABLE_LOG_X
  because the name is misleading. The full software
  is impacted, not only the UE part
- same for compilation option ---ue-no-log
  that becomes --disable-log
- keep LOG_X for the standard case, that is the
  case without DISABLE_LOG_X where printf has been
  put. Two reasons:
  * printf is not realtime friendly
  * keep behavior similar for other users who may
    be troubled by different logs that don't add
    any benefit to previous logs
2017-06-02 11:24:22 +02:00
Cedric Roux
a08a4f4efb Merge remote-tracking branch 'origin/ue_autotest_tdd' into develop 2017-06-02 10:08:32 +02:00
Cedric Roux
cc41eb9dd8 Merge remote-tracking branch 'origin/ue_tdd_multiplexing' into develop 2017-06-02 10:08:19 +02:00
Cedric Roux
c9de7cfe6d Merge remote-tracking branch 'origin/fix-enb-s1u-port-w22' into develop 2017-06-02 10:08:06 +02:00
Cedric Roux
0617062560 Merge remote-tracking branch 'origin/MSG3_power_control_correction' into develop 2017-06-02 10:07:51 +02:00
Cedric Roux
bc0f099091 Merge remote-tracking branch 'origin/UE_logging' into develop 2017-06-02 10:07:25 +02:00
Cedric Roux
0a92f6ff41 Merge remote-tracking branch 'origin/fix-cce-allocation-w22' into develop 2017-06-02 10:07:06 +02:00
hbilel
8c6bd1d5be Additional fix for TDD multiplexing, CCE 2017-06-02 09:33:21 +02:00
Cedric Roux
d7e5e3193c change port ENB_PORT_FOR_S1U in config files
The port to use should be 2152, not 2153.
2017-06-02 09:20:50 +02:00
tctalcatel
56743415f9 Remove not used conf file 2017-06-02 09:19:19 +02:00
tctalcatel
32a330a4a4 UE autotest, adding TDD tests 2017-06-02 09:13:43 +02:00
Rohit Gupta
c5d321cb6f minor fixes for CentOS7 installation+compilation 2017-05-31 18:44:12 +02:00
Frank A. Zdarsky
c2a5199f0d Add support for RHEL/CentOS 7
Signed-off-by: Frank A. Zdarsky <fzdarsky@redhat.com>
2017-05-31 17:33:20 +02:00
tctalcatel
7a8aa100b0 Add conf file for TDD 50 and 100 RB 2017-05-31 17:03:38 +02:00
tctalcatel
f2607d336a TDD autotest 2017-05-31 15:03:51 +02:00
Xenofon Foukas
7a86fd3216 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent
Conflicts:
	openair2/RRC/LITE/rrc_eNB.c
2017-05-31 10:42:40 +00:00
Elena_Lukashova
ea39c866de Fixing typo in phy_procedures_lte_ue.c 2017-05-30 15:09:33 +02:00
gabrielC
32b636d77a power control correction for MSG3 2017-05-29 16:38:01 +02:00
gabrielC
0cc838702a Remove too frequent TDD log 2017-05-29 15:23:44 +02:00
hbilel
1029a62208 Fix for TDD multiplexing 2017-05-24 16:16:11 +02:00
Elena_Lukashova
82545b8265 Merge branch 'develop' into feature-59-tm4 2017-05-24 12:49:52 +02:00
Elena_Lukashova
10ad08db41 Changes in files outputs. 2017-05-24 10:45:41 +02:00
shahab SHARIAT BAGHERI
8458c8fcf8 uplink mac parser 2017-05-23 23:46:31 +02:00
Cedric Roux
b67847c9cf minor: fix file permissions (from 755 to 644) 2017-05-23 17:33:29 +02:00
Cedric Roux
31ef9b5203 cleanup - rewrite a bit allocate_CCEs for better logging
We want the log in case of failure also for the case:
    if (nCCE + (1<<dci_alloc->L) > nCCE_max)
2017-05-23 15:44:48 +02:00
Cedric Roux
324e6501d6 bugfix: wrong CCE allocation
We have to not only ensure that the CCE is free but
also that it's below the number of availables CCEs
with respect to the current PDCCH size.
2017-05-23 15:42:09 +02:00
shahab SHARIATBAGHERI
2e2b07ef9e push update load 2017-05-22 19:19:28 +02:00
gabrielC
8758d3d4cf --ue-no-log, add printf to verify attach is ok 2017-05-22 17:26:03 +02:00
Cedric Roux
9bef36f23a Release 0.6. 2017-05-22 11:41:14 +02:00
gabrielC
16acea57cc Merge tag '2017.w20' into UE_logging 2017-05-22 11:31:18 +02:00
Cedric Roux
a6f98a8b28 Merge branch 'develop_integration_w20' into 'develop'
develop_integration_w20 into develop

Summary of changes:
- bug fixes
  * UE TDD fixes
  * PDCCH size computation (at phy level, still to be corrected at mac level)
  * DAI increment
  * fix run_enb_ue_virt_noS1 and run_enb_ue_virt_s1 to use Rel14 and
     have --xforms to work
  * compilation warning removals
  * better oaisim logging (print UE security keys,
    print version (git commit ID) at runtime, print working directory)

See merge request !190
2017-05-22 11:03:55 +02:00
Cedric Roux
c98339e104 integration fix: remove compilation warnings 2017-05-22 10:41:33 +02:00
Cedric Roux
2237b431c2 integration fix: fix compilation warnings 2017-05-22 10:34:55 +02:00
Cedric Roux
c15a9a8294 post-integration fix: remove compilation warnings 2017-05-22 10:23:24 +02:00
Cedric Roux
f3914c74f0 Merge remote-tracking branch 'origin/UE_TDD_Fix' into develop_integration_w20 2017-05-19 17:23:03 +02:00
Cedric Roux
312fad1293 Merge remote-tracking branch 'origin/fjt_bug_fix_issue239' into develop_integration_w20 2017-05-19 17:22:39 +02:00
Cedric Roux
87eb459823 Merge remote-tracking branch 'origin/various-fixes-w20' into develop_integration_w20 2017-05-19 17:22:01 +02:00
Cedric Roux
65c845ea67 Merge remote-tracking branch 'origin/oaisim-logging-w20' into develop_integration_w20 2017-05-19 17:21:37 +02:00
Cedric Roux
b74f10a878 Merge remote-tracking branch 'origin/exmimo-compilation-fix-w20' into develop_integration_w20 2017-05-19 17:21:16 +02:00
Cedric Roux
8e57a58dd6 fix run_enb_ue_virt_noS1 and run_enb_ue_virt_s1
Problems reported by Jorge Muñoz Castañer <jorgem@gti.uvigo.es>.

- use Rel14 binaries (those are produced by default)
- let -x option work to have graphical output
- fix VCD missing 'echo'
2017-05-19 17:00:36 +02:00
Cedric Roux
9cf288f6f3 pre-integration fix: minor improvement
we can compute CCE_max_used_index out of the loop.
2017-05-19 16:29:07 +02:00
Cedric Roux
685464c204 pre-integration fix: correct comparison
get_nCCE returns the number of available CCEs.

We can put the CCEs numbers [ 0 .. get_nCCE-1 ],
so we need to use <, not <=.
2017-05-19 16:27:08 +02:00
gabrielC
dd7691ec60 Fix warning compilation 2017-05-19 16:22:51 +02:00
Cedric Roux
8625a8672a T: improve trace ENB_PHY_ULSCH_UE_DCI 2017-05-19 16:17:56 +02:00
gabrielC
abf30c20b1 Remove some logs 2017-05-19 16:01:38 +02:00
hbilel
667bfb0173 TDD config 4,5 harq,bundling,multiplexing,ack,nack
config 4 tested with Amarisoft
2017-05-19 15:37:57 +02:00
gabrielC
fe350d5b6f UE logging change :
--ue-trace : Enabling UE trace for debug
--ue-timing : Enabling UE timing trace
--ue-no-log : Disabling all LOG_X traces
2017-05-19 14:28:34 +02:00
echigoya
d79c186a13 Fujitsu No.6 Correct DAI incrementation 2017-05-19 09:36:47 +09:00
Tomohiro
8160f8a23f Fujitsu No.39 Correct pdcch symbol calculation 2017-05-19 09:24:49 +09:00
shahab SHARIATBAGHERI
042a16d1f6 Fix percentage 2017-05-18 17:26:08 +02:00
shahab SHARIATBAGHERI
5c7377e1c0 Fix bug header 2017-05-18 17:21:07 +02:00
Cedric Roux
c08bd6ba9c warning removal
force j to -1, there is a compilation warning with the T tracer
(variable may be used uninitialized)
2017-05-18 15:43:16 +02:00
Cedric Roux
dcfdd76113 minor: warnings removal
It seems that ciphering_algorithm is "unsigned int" in RRC Rel10
and "unsigned long" in RRC Rel14 (as processed by asn1c)

Let's force it to unsigned long in the log to avoid compilation-time
warnings.
2017-05-18 15:42:30 +02:00
shahab SHARIATBAGHERI
5de045b802 Uplink slices 2017-05-18 15:25:10 +02:00
Cedric Roux
9d65f4dd09 warnings removal in LOG_X
those popped up thanks to previous commit
2017-05-18 14:16:24 +02:00
Cedric Roux
94dd884325 redo commit cb67d586a4
Seems like this commit got lost at some point.

Here was the message:
-----------------------------------------------------------------------------
Author: Cedric Roux <cedric.roux@eurecom.fr>
Date:   Tue Jan 10 14:21:02 2017 +0100

    add format indicator to get LOG_X warnings

    The LOG_X macros emit a lot of warnings when compiling with the T
    because they call the function logRecord (or logRecord_mt)
    which has not been "marked" as calling printf, so gcc won't
    emit typical printf warnings.

    With the T, they directly translate to sprintf, so those warnings
    pop up, much more verbose due to several macro expansions.

    Let's make them pop up all the time so it's easier to fix them.
-----------------------------------------------------------------------------
2017-05-18 11:34:58 +02:00
Cedric Roux
f6693af628 add CQI to periodic logging of UE 2017-05-18 11:24:40 +02:00
Cedric Roux
4eefaffb47 minor: change files mode (from 755 to 644) 2017-05-18 11:12:11 +02:00
Cedric Roux
5e323eefa2 improve logging in oaisim
- print current working directory
- print git version (if available)
- print security keys
  this last one is a security breach, but as of today
  it's not a problem
2017-05-18 10:39:25 +02:00
Cedric Roux
dd07d878a3 bugfix: fix compilation for express MIMO target 2017-05-17 12:58:21 +02:00
Cedric Roux
430a8c4e11 Merge branch 'develop_integration_w19' into 'develop'
develop_integration_w19 into develop

Summary of changes:
- bug fixes:
  * RLC AM fixes
  * UE TDD fixes
  * Fujitsu bug fixes (TDD also)
  * mobipass fixes (bad management of carriers, softmodem was failing with more than one CC)
  * compilation warnings removal
- PUCCH format 3 preliminary support (work from Fujitsu)
- build fixes: do not include shared library in main executable (work from Nokia)
  express MIMO2 needs some more work here

See merge request !184
2017-05-15 22:45:56 +02:00
Cedric Roux
099b7f2ac6 integration fix: fix rrh_gw compilation 2017-05-15 16:13:32 +02:00
Cedric Roux
0023d448f7 integration fix: expressMIMO should be aligned with the rest now
No need for this special case. Plus, it fails with the work
from Nokia on compilation cleanup.
2017-05-15 16:12:33 +02:00
Cedric Roux
ce08fa8e9e integration fix: remove various warnings 2017-05-15 15:57:26 +02:00
Cedric Roux
15bb39704a integration fix: remove warnings introduced by PUCCH format 3 handling 2017-05-15 15:56:49 +02:00
Cedric Roux
f12350ce62 integration fix: remove warnings in dlsim 2017-05-15 15:42:27 +02:00
Cedric Roux
9cd3e2e887 integration fix: remove warnings in ulsim 2017-05-15 15:42:01 +02:00
Cedric Roux
11006597c9 integration fix: let dlsim and ulsim work again
There is now the function copy_harq_proc_struct and some
procedures for the UE have changed, which makes necessary
to have UE->dlsch valid for both subframes (odd and even).

We increase memory usage, maybe it's not the correct solution.
To be kept in mind if something goes wrong at some point.
2017-05-15 11:13:56 +02:00
Cedric Roux
0f42d5a344 Merge remote-tracking branch 'origin/bugfix_multiple_carriers_mobipass' into develop_integration_w19 2017-05-15 11:13:45 +02:00
Cedric Roux
9eaee53bb6 rewrite phy_stats_exist
We have to test that all active CCs of a given UE exist in the PHY layer.
Maybe not the end of the story...
2017-05-13 12:45:17 +02:00
Cedric Roux
0bb229451a Merge remote-tracking branch 'origin/bugfix_Fujitsu_reviewed' into develop 2017-05-12 15:57:33 +02:00
Cedric Roux
2d97b777b6 Merge remote-tracking branch 'origin/enhancement-124-hw_library_new' into develop 2017-05-12 15:57:10 +02:00
Cedric Roux
06f2889b2d Merge remote-tracking branch 'origin/UE_TDD_Fix' into develop 2017-05-12 15:56:52 +02:00
Cedric Roux
9107d2831b Merge remote-tracking branch 'origin/bugfix-238-rlc-am' into develop 2017-05-12 15:53:25 +02:00
Cedric Roux
d0b5d6539b Merge remote-tracking branch 'origin/issue-232-pucch3' into develop 2017-05-12 15:32:38 +02:00
Tien-Thinh Nguyen
3d4ba1a3b0 fix the errors related to multiple carriers (for a given UE considering only the CCs which this UE belongs to) 2017-05-12 15:23:07 +02:00
gabrielC
ad6d0ac59e bug fixes from Fujitsu (bug 37)
----------------------------------------------------------
bug 37

Ttile:
Sending side is as follows.
rar[3] = (((mcs&0x7)<<5)) | ((TPC&7)<<2) | ((ULdelay&1)<<1) | (cqireq&1);
So, 2 bit shift looks correct.

Bug Location:
ulsch->harq_processes[harq_pid]->TPC = (rar[3]>>3)&7;//rar->TPC;
----------------------------------------------------------
2017-05-12 13:54:49 +02:00
gabrielC
893f36e81e bug fixes from Fujitsu (bug 29)
----------------------------------------------------------
bug 29

Ttile:
FDD should be TDD.

Bug Location:
  switch (oai_emulation.info.frame_type[0]) {
  case FDD:
    frame_type = "FDD";
    break;

  case TDD:
    frame_type = "FDD";
    break;
  }
----------------------------------------------------------
2017-05-12 11:56:57 +02:00
gabrielC
899d150621 bug fixes from Fujitsu (bug 26)
----------------------------------------------------------
bug 26

Ttile:
g_buffer has only 32 index, but he/she tries to zero clear
1024 index.

Bug Location:
static uint8_t g_buffer[32];
:
memset (g_buffer, 0, 1024);

Note:
Detected by CppCheck
----------------------------------------------------------
2017-05-12 11:55:07 +02:00
Cedric Roux
adb3b25c67 bug fixes from Fujitsu (bug 24)
----------------------------------------------------------
bug 24

Ttile:
The last line "multicast_group = multicast_group" is hard
to understand. The local variable should be different name
than the global variable.

Bug Location:
const char *multicast_group_list[MULTICAST_LINK_NUM_GROUPS] = {
  "239.0.0.161",
  "239.0.0.162",
  "239.0.0.163",
  "239.0.0.164"
};
:
:
void multicast_link_start(void (*rx_handlerP) (unsigned int, char *),
                          unsigned char multicast_group, char *multicast_ifname)
{
  rx_handler = rx_handlerP;
  multicast_group = multicast_group;

Note:
Detected by CppCheck
----------------------------------------------------------
2017-05-12 11:52:52 +02:00
gabrielC
34c6805f7a bug fixes from Fujitsu (bug 22)
Note: not sure that the code is correct,
to be checked (Cédric Roux).

----------------------------------------------------------
bug 22

Ttile:
(subframe!=2)||(subframe!=7) is always TRUE. This coding
is really intended? Operator || should be && instead?

Bug Location:
((frame_parms->frame_type==TDD)&&(frame_parms->tdd_config==1)&&((subframe!=2)||(subframe!=7)))) {

Note:
Detected by CppCheck
----------------------------------------------------------
2017-05-12 11:47:58 +02:00
gabrielC
98a7a16ead bug fixes from Fujitsu (bug 21)
Note: this fix does not solve the issue with how
this buffer is used in this function, but I'm not
sure this code is used at all (Cédric Roux).

----------------------------------------------------------
bug 21

Ttile:
PAYLOAD_MAX=1500, so this coding results in index overflow.
Additionally, operator "!=" just compairs something, this
coding is meaningless.

Bug Location:
buffer[PAYLOAD_MAX] != '\0';

Note:
Detected by CppCheck
----------------------------------------------------------
2017-05-12 11:16:14 +02:00
gabrielC
bdaef7956d bug fixes from Fujitsu (bugs 18, 19, 20)
----------------------------------------------------------
bug 18

Ttile:
Probably he/she wants to copy the contents of arrays, but
this coding doesn't copy anything, moreover index overflow
occurs.

Bug Location:
u2e_t[UE_id][eNB_id]->tx_data[3]=tx[eNB_id][3];
u2e_t[UE_id][eNB_id]->rx_data[3]=rx[NB_eNB_INST+UE_id][3];

Note:
Detected by CppCheck
----------------------------------------------------------
bug 19

Title:
Probably he/she wants to copy the contents of arrays, but
this coding doesn't copy anything, moreover index overflow
occurs.

Bug Location:
e2u_t[eNB_id][UE_id]->tx_data[3]=tx[NB_eNB_INST+UE_id][3];
e2u_t[eNB_id][UE_id]->rx_data[3]=rx[eNB_id][3];

Note:
Detected by CppCheck
----------------------------------------------------------
bug 20

Title:
Probably he/she wants to copy the contents of arrays, but
this coding doesn't copy anything, moreover index overflow
occurs.

Bug Location:
tx_data[3]=cthread->tx_data[3];
rx_data[3]=cthread->rx_data[3];

Note:
Detected by CppCheck
----------------------------------------------------------
2017-05-12 11:06:10 +02:00
Francois TABURET
261353680c Fix shared lib build problem, where shared lib sources were also included in main exec's
Discovered and fix problems in shared lib build for usrp,bladerf and lime
2017-05-12 09:44:43 +02:00
shahab SHARIATBAGHERI
689eae92ee Fix Bug dl scheduler 2017-05-10 13:11:09 +02:00
hbilel
5904734d99 [OAI_UE] Compute O_ACK with ack status only for FDD 2017-05-03 16:59:27 +02:00
gabrielC
f2f79a1647 Remove subframe_DL function npot anymore needed 2017-05-03 15:42:32 +02:00
gabrielC
966291029d Clean and remove a problematic memcpy 2017-05-03 15:26:39 +02:00
fnabet
8d787768c4 Issue 238 fix: RLC AM 2017-05-03 14:43:45 +02:00
gabrielC
3fcdec1ad7 fix for FDD 2017-05-03 11:11:06 +02:00
hbilel
ceb13b8aa4 [OAI-UE] Additional TDD fix 2017-05-03 09:57:03 +02:00
hbilel
3c6e206e97 TDD fix for several issues 2017-05-02 18:01:47 +02:00
shahab SHARIATBAGHERI
eee0c1b84b uplink percentage 2017-04-27 09:29:00 +02:00
shahab SHARIATBAGHERI
b9b45c4ac0 uplink primitives 2017-04-26 19:15:39 +02:00
hbilel
cd7e479fc7 sss pss calculation 2017-04-26 17:05:29 +02:00
Xenofon Foukas
897c8da299 Fixed size of arrays for RSRP and RSRQ measurements 2017-04-26 07:50:04 +00:00
Xenofon Foukas
600c64a7f5 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-04-26 07:35:39 +00:00
Raymond Knopp
63a18b8193 first time UE connection established 2017-04-25 11:50:15 -07:00
shahab SHARIATBAGHERI
57129bc0af Uplink Slicing 2017-04-25 18:19:47 +02:00
gabrielC
780c7b03ba - fix for TDD config 3 2017-04-25 11:33:40 +02:00
Yoshi
bdcc8ecf66 Adjust parameters 2017-04-25 17:54:42 +09:00
Yoshi
655859b865 add comment 2017-04-25 12:31:21 +09:00
gabrielC
5e149161b7 add logging trace 2017-04-24 15:51:59 +02:00
HARADA Masayuki
7854030b90 Add pucch format3 test to pucchsim 2017-04-24 13:24:39 +09:00
shahab SHARIATBAGHERI
fdac4d178b uplink harq api 2017-04-22 12:43:04 +02:00
shahab SHARIATBAGHERI
5ce9858d63 uplink scheduling 2017-04-21 13:22:20 +02:00
Yoshi
46da64063b add comment 2017-04-21 14:04:56 +09:00
Yoshi
b7b057a162 Merge remote-tracking branch 'origin/develop' into issue-232-pucch3 2017-04-21 13:51:47 +09:00
Raymond Knopp
ca2c8357c9 vcd for rru/rau. bug fixing on fronthaul interfaces 2017-04-19 02:51:15 +02:00
shahab SHARIATBAGHERI
169f33464e Uplink Agent Mac function 2017-04-18 18:13:42 +02:00
gabrielC
8163d78ce3 Remove some logs 2017-04-18 14:28:15 +02:00
Raymond Knopp
98cbcf619b vcd modifications for RU-RAU split, gtkw for rau_if4 2017-04-18 04:45:42 -07:00
gabrielC
59e9e2e85f Merge tag '2017.w15' into ue_dlsch_dual_buffer_fix 2017-04-18 13:26:03 +02:00
Cedric Roux
c124e32ab5 Merge branch 'develop_integration_w15' into 'develop'
develop_integration_w15 into develop

Summary of changes:
- DCI1 20MHz phy-test bug fix
- RLC UM/AM max header size fix
- UE autotests improvements

See merge request !177
2017-04-18 10:03:46 +02:00
Cedric Roux
fc4d03d419 fix tm1 generic configuration file
- RBs set to 25
- disable SRS
2017-04-18 09:55:37 +02:00
Raymond Knopp
a63c53530a added rru configuration file for oaisim 2017-04-17 11:19:53 -07:00
Raymond Knopp
2f398d311e added ran_context.h 2017-04-17 11:17:00 -07:00
Raymond Knopp
b42aed9ed9 initial testing version of L1L-L1H split (RRU-RAU) 2017-04-17 10:40:23 -07:00
Cedric Roux
20a2bfd109 hotfix: fix TDD 20MHz DCI0 structure
In 20MHz the UE didn't do any uplink granted by DCI0.
It was replying to RAR, so uplink decoding was okay.

Turns out the DCI0 structure for TDD was wrong.
2017-04-14 18:17:13 +02:00
Cedric Roux
2e86a60982 Merge remote-tracking branch 'origin/UE_autotest_For_20Mhz' into develop_integration_w15 2017-04-14 16:18:19 +02:00
Cedric Roux
89292a763d Merge remote-tracking branch 'origin/eNB_phy-test_fix_20MHz' into develop_integration_w15 2017-04-14 16:18:05 +02:00
Cedric Roux
ab907918b0 Merge remote-tracking branch 'origin/bugfix-234-rlc-um-max-header-size' into develop_integration_w15 2017-04-14 16:17:51 +02:00
tctalcatel
58aa9f1f52 change eNB and UE name 2017-04-14 09:07:13 +02:00
tctalcatel
5498741f0b Add 20 MHz test for the default XML file 2017-04-14 09:03:12 +02:00
Xenofon Foukas
7df4a7813f Merge remote-tracking branch 'origin/feature-68-enb-agent' into feature-68-uplink 2017-04-12 15:43:19 +03:00
Yoshi
63b10db645 made generate_pucch3x and rx_pucch 2017-04-12 19:29:54 +09:00
tctalcatel
2e8d01f36b UE autotest 20 MHz 2017-04-12 12:01:32 +02:00
GabrielCouturier
fd618f4357 Fix eNB phy-test 20MHz DCI1 2017-04-11 16:56:07 +02:00
Xenofon Foukas
3bd3bedcd2 Fixed ue state change notification functionality for deactivation of UEs 2017-04-11 13:25:08 +00:00
Xenofon Foukas
e3df5d3de5 Fixed warnings and bugs 2017-04-11 11:46:34 +00:00
Xenofon Foukas
e36c5b6024 Fixed compilation errors when compiling without agent enabled 2017-04-11 09:28:22 +00:00
Xenofon Foukas
1603d3674d Merge remote-tracking branch 'origin/develop' into feature-68-RRC
Conflicts:
	openair2/ENB_APP/flexran_agent_common.c
2017-04-11 09:12:04 +00:00
Xenofon Foukas
14fb9e2ba2 Changed default scheduler to local 2017-04-11 08:58:20 +00:00
Cedric Roux
965aa5e6ef change value of RLC_AM_MAX_SDU_IN_PDU and RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU
Fabrice Nabet (TCL) suggests the value 128 for both.
See https://gitlab.eurecom.fr/oai/openairinterface5g/issues/234#note_3179
2017-04-11 09:32:14 +02:00
Cedric Roux
94f880ad23 bugfix: increase RLC UM header size
The constant RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU is set to 24. This is
too low. Running a downlink TCP iperf with a 10MHz or 20MHz cell
leads to lots of the following warning in the log:

[RLC][W][SN 792] Bad RLC header! Discard this RLC PDU (size=618)

The problem is that the uplink RLC PDU contains a lot of TCP ack.
We can see much more than 24 of them. The RLC layer is not happy
and discards the PDU.

Putting 256 for RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU (arbitrarily chosen,
big but not too big) solves the problem, at least for 10MHz.
2017-04-10 17:31:21 +02:00
Cedric Roux
fbcc9a2393 minor: bad comparison
it was:

    *num_li_pP >= RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU

it should be:

    *num_li_pP > RLC_UM_SEGMENT_NB_MAX_LI_PER_PDU
2017-04-10 17:30:43 +02:00
Cedric Roux
38abafed2e Merge branch 'develop_integration_w14' into 'develop'
develop_integration_w14 into develop

Summary of changes:
- minor bug fixes, minor improvements

See merge request !173
2017-04-10 11:00:11 +02:00
Cedric Roux
10113a3517 integration fix: change the way to print the version
Using "system" to call "git log" is too error-prone.
In the test setup, lte-softmodem was blocked because
"git log" uses a pager ("less") and the pager was
waiting for the user to press enter.

We could pass "--no-pager" to "git log" but then
what if someone runs the softmodem out of the source
tree?

cmake defines PACKAGE_VERSION, we can use that instead,
as is done in openair-cn.
2017-04-10 10:29:09 +02:00
Cedric Roux
f50ea1b14c Merge remote-tracking branch 'origin/update_readme' into develop_integration_w14 2017-04-10 09:39:18 +02:00
Florian Kaltenberger
01b1101288 update readme files 2017-04-08 17:20:32 +02:00
Cedric Roux
61033059c4 Merge remote-tracking branch 'origin/hotfix-rb-table-w14' into develop_integration_w14 2017-04-07 16:55:18 +02:00
Cedric Roux
6f02decf7a Merge remote-tracking branch 'origin/oai_ue_log_improvement' into develop_integration_w14 2017-04-07 16:55:06 +02:00
shahab SHARIATBAGHERI
77c4d3742f Wanring Preventing remote-sch 2017-04-07 11:28:51 +02:00
shahab SHARIATBAGHERI
714ad4d774 Warning Decreasing 2017-04-05 16:48:21 +02:00
shahab SHARIATBAGHERI
4cfa87b6b3 downlink throughput enhancement 2017-04-05 10:38:36 +02:00
Xenofon Foukas
a08178fa0e Made modifications to UL scheduling messages 2017-04-04 21:11:16 +00:00
gabrielC
8f75878544 Correction for dlsch dual buffer 2017-04-04 10:29:21 +02:00
Cedric Roux
e7f1cf4238 hotfix: revert value of 'rb_table_index'
This reverts commit 7f24927c43.

With value 13 uplink TDD for a 10MHz configuration was not working.
UDP traffic sent with: "iperf -c XX -u -b10M" was crashing
the eNB.
2017-04-03 14:22:10 +02:00
gabrielC
666ae5d0e1 commit id added to the log 2017-04-03 14:06:41 +02:00
Cedric Roux
316f6aba9e Merge branch 'develop_integration_w13' into 'develop'
Develop integration w13

Summary of changes:
- RLC AM reworking (a lot has changed)
- several bug fixes
  * support processing multiple MAC RAR control elements in a single MSG2
  * fix ACK/NACK resetting
  * do not correct USRP frequency from carrier offset estimation when --ue-carrier-scan == off
  * fix TDD uplink due to incorrect PUCCH format for SR in TDD
  * several other simple fixes
- better support for LMS SDR

See merge request !168
2017-04-03 10:36:45 +02:00
Cedric Roux
c36c04537a integration fix: fixes for pthread_getname_np
- define _GNU_SOURCE before including pthread.h
- do not use static for the array 'threadname' used
  to store the name, it makes it a global variable
  accessed by several threads in parallel
- increase size of 'threadname' (maybe not necessary)
- properly indent #define / #under (# should be at column 1)
2017-04-03 10:26:42 +02:00
shahab SHARIATBAGHERI
1a516df2db proto uplink mac 2017-03-31 16:40:26 +02:00
Cedric Roux
a032502713 Merge remote-tracking branch 'origin/bugfix-189-rlc-am-fixes' into develop_integration_w13 2017-03-30 10:21:10 +02:00
hbilel
49006696ac RLC AM add various fixes 2017-03-29 15:59:16 +02:00
hbilel
bb4131b33d RLC AM add fixes 2017-03-28 19:59:52 +02:00
shahab SHARIATBAGHERI
0b83862fc2 uplink proto 2017-03-28 18:28:30 +02:00
hbilel
3c7c61a46c RLC AM fix specific reassembly issue 2017-03-28 18:08:00 +02:00
Cedric Roux
2437d0fbd0 Merge remote-tracking branch 'origin/fix-dlsim-w13' into develop_integration_w13 2017-03-28 17:33:26 +02:00
Cedric Roux
37c71e5a02 Merge remote-tracking branch 'origin/dlsim-fix-w13' into develop_integration_w13 2017-03-28 17:33:16 +02:00
Cedric Roux
c207df8b0e bugfix: dlsim was not working anymore
When you ran it with the scope as:

    ./dlsim -X

you saw no activity in the "PDSCH I/Q of MF Output" window,
so matter what SNR you put (even for very high SNR, say: ./dlsim -X -s40)

this commit seems to fix it.

I am not sure it is the end of story. The 2 threads PDCCH/PDSCH structures
may still not be used correctly everywhere.
2017-03-28 17:25:27 +02:00
Florian Kaltenberger
99280926ed fix in dlsim to catch cases where pdcch is not decoded 2017-03-28 17:24:21 +02:00
Elena_Lukashova
81215a2461 Fixing commit 21481c4a6a. 2017-03-28 16:40:08 +02:00
Cedric Roux
72c387987b Merge remote-tracking branch 'origin/bugfix-229' into develop_integration_w13 2017-03-28 16:24:08 +02:00
Cedric Roux
26f06f35fe Merge remote-tracking branch 'origin/bugfix-226' into develop_integration_w13 2017-03-28 16:22:23 +02:00
Cedric Roux
0a33a1d3e7 Merge remote-tracking branch 'origin/bugfix-223' into develop_integration_w13 2017-03-28 16:21:20 +02:00
Cedric Roux
2af0ef847b Merge remote-tracking branch 'origin/bugfix-222' into develop_integration_w13 2017-03-28 16:20:21 +02:00
Cedric Roux
740d3f647d Merge remote-tracking branch 'origin/bugfix-221' into develop_integration_w13 2017-03-28 16:18:45 +02:00
Cedric Roux
b7762c6a7d Merge remote-tracking branch 'origin/bugfix-220' into develop_integration_w13 2017-03-28 16:15:32 +02:00
Cedric Roux
9814de0570 revert deletion of directories to before commit 9e78b40d2e 2017-03-28 16:13:31 +02:00
Cedric Roux
02bfef2184 fix UE variable setting in build_oai 2017-03-28 16:03:17 +02:00
Cedric Roux
9af7f280b7 Merge remote-tracking branch 'origin/bugfix-219' into develop_integration_w13 2017-03-28 10:24:01 +02:00
Cedric Roux
9a464ca077 fix: remove change in build_helper 2017-03-28 10:13:54 +02:00
Cedric Roux
ca0ff4b51f Merge remote-tracking branch 'origin/lmssdr-fix-w13' into develop_integration_w13 2017-03-28 10:05:21 +02:00
Wilson Thong
adf920b6a9 #229 add support on processing multiple RAR payloads in one single MSG2 2017-03-28 10:56:18 +08:00
Wilson Thong
f65150aa64 #226 fix incorrect resetting downlink ACK/NACK in the middle of UE_TX processing 2017-03-28 10:52:41 +08:00
Wilson Thong
40f9b9f4e0 #223 fixed USRP initialization when disabling --ue-carrier-scan option 2017-03-28 10:48:38 +08:00
Wilson Thong
002b9b0f65 #222 fix incorrect PUCCH format when sending SR in TDD 2017-03-28 10:42:22 +08:00
Wilson Thong
0487631c76 #221 fixed crash when processing false DCI1A due to incorrect HARQ-PID checking 2017-03-28 10:39:09 +08:00
Wilson W.K. Thong
8d88bae9e8 #221 fixed incorrect processing of CQI_PMI_Index in RRCConnectionReconfiguration 2017-03-28 10:39:09 +08:00
Wilson W.K. Thong
2660ac0570 #221 fixed RRC crash when parsing the RRCConnectionReconfiguration message with empty neighCellConfig in measObjectEUTRA 2017-03-28 10:39:09 +08:00
Wilson Thong
924c421beb #220 add help printout for run options 2017-03-28 10:17:51 +08:00
Vincent Ng
4fea65a265 #220 change the I/Q in soft-scope to be normalized wrt |h| 2017-03-28 10:17:51 +08:00
Wilson W.K. Thong
4a2f9d2571 #220 enhance logging to show also thread name 2017-03-28 10:17:51 +08:00
Wilson Thong
040957c1d4 #220 fixed incorrect wiresahrk SFN/SF for UL/DL data 2017-03-28 10:17:51 +08:00
Wilson Thong
9e78b40d2e #220 fixed minor typo 2017-03-28 10:17:51 +08:00
Wilson Thong
66c5892c9e #220 fixed incorrec path config for building usim/nvram 2017-03-28 10:17:51 +08:00
Wilson Thong
e6798f5b96 #219 add build option for building eclipse project files 2017-03-28 10:11:43 +08:00
Wilson Thong
5dfdec6c25 #219 add minimum support for running and building UE and eNB 2017-03-28 10:11:43 +08:00
Cedric Roux
fa0b8668fb bugfix: workaround a problem with timestamp and LMSSDR.
We have a strange problem with the timestamp of the very
first packets received from the LimeSDR that leads to
a complete failure of the eNB.

A simple workaround is to discard the first RX packet
just after a "start" of the device.

We also change the value of "tx_sample_advance" to a more
reasonable value. The problem of timestamp was "solved"
differently in the past and at the time we needed to put
a much higher value.

This may have to be refined at some point.
2017-03-27 16:32:42 +02:00
Elena_Lukashova
a0f40fd02b Merge remote-tracking branch 'origin/develop' into feature-59-tm4 2017-03-27 14:03:51 +02:00
Elena_Lukashova
800f66b3d4 Fixing a bug in HARQ for SIC.
Now the llrs after SIC procedure are updated.
In dlsim_tm in case of TB0_active==-1,
the llr were taken from the wrong buffer, and in dlsch_demodulation
the SIC llrs were written into the wrong buffer in the same case.
2017-03-27 11:50:58 +02:00
fnabet
1213521c30 merge from 2017.w12 2017-03-27 11:38:52 +02:00
Cedric Roux
a77082c1ed Merge branch 'develop_integration_w12' into 'develop'
develop_integration_w12 into develop

Summary of changes:
- RRC Rel14: tests done so far indicate no problem
- SRS support in eNB
- bug fixes / warning removals

See merge request !155
2017-03-27 11:03:57 +02:00
Cedric Roux
b6991ab2e0 autotest v2: remove nasmesh and ue_ip module kernels before anything else
The presence of one or the other may lead to some failure/crash in
some situations.
2017-03-27 10:19:23 +02:00
Elena_Lukashova
e05a417cd2 Fixing previous commit 2017-03-26 20:17:47 +02:00
Elena_Lukashova
78bf45f3f3 Removing unnecessary arguments in SIC llr functions. 2017-03-25 18:18:42 +01:00
Cedric Roux
5485f131c3 bugfix: Rel14 was missing 2017-03-24 18:05:11 +01:00
Cedric Roux
af8ce457f3 bugfix: fix nos1 compilation 2017-03-24 18:01:39 +01:00
Cedric Roux
4e3acb6a5d integration fix: disable XER_PRINT
This generates too much prints and may disrupt realtime.
This has to be off by default.
2017-03-24 17:18:51 +01:00
Cedric Roux
fc5c876a81 Merge remote-tracking branch 'origin/feature-228-rrc-rel14' into develop_integration_w12 2017-03-24 17:08:27 +01:00
Cedric Roux
75aff99bf6 Merge remote-tracking branch 'origin/bugfix-227-ue-ip-setting' into develop_integration_w12 2017-03-24 17:08:08 +01:00
Cedric Roux
fec6832122 Merge remote-tracking branch 'origin/if5-fixes-w11' into develop_integration_w12 2017-03-24 17:07:51 +01:00
Cedric Roux
c54cb41805 Merge remote-tracking branch 'origin/various-fixes-w12' into develop_integration_w12 2017-03-24 17:07:26 +01:00
Cedric Roux
b8c4365479 Merge remote-tracking branch 'origin/feature-218-srs' into develop_integration_w12 2017-03-24 17:07:10 +01:00
Cedric Roux
5db0548af0 bugfix 2017-03-24 16:55:30 +01:00
Cedric Roux
b5a03474bf remove asn1 compilation fixes that went to asn1c (IMPORTANT: reinstall asn1c!)
The files NativeInteger.c.diff and constr_SET_OF.c.diff
from asn1c were generating compilation warnings. We had
local patches applied on generated files by asn1c.

A new version of asn1c has been pushed to
https://gitlab.eurecom.fr/oai/asn1c
(commit 224dc1f991b7e7ad705ce92e171b942f87b7b7e7)
making obsolete the fixes we do here.

So we now remove those fixes.

*************************
* IMPORTANT BEGIN       *
*************************

Everyone should update their asn1c installation.

The simplest is to do:

    source oaienv
    cd cmake_targets
    ./build_oai -I

*************************
* IMPORTANT END         *
*************************
2017-03-24 16:46:42 +01:00
Cedric Roux
6448738e9b bugfix/compilation warning removal in ulsim 2017-03-24 15:53:52 +01:00
Cedric Roux
583123e042 bugfix/compilation warning removal in dlsim 2017-03-24 15:49:19 +01:00
Cedric Roux
53bb6a8c2c compilation warning removal 2017-03-24 15:33:51 +01:00
Cedric Roux
d296abb8d0 compilation warning removal 2017-03-24 15:24:35 +01:00
Cedric Roux
5345b160fc compilation warning removal 2017-03-24 15:23:43 +01:00
Cedric Roux
045132ba6e compilation warning removal 2017-03-24 15:20:56 +01:00
Cedric Roux
4080a63938 compilation warning removal 2017-03-24 15:18:57 +01:00
Cedric Roux
f754e31ead compilation warnings removal 2017-03-24 15:17:13 +01:00
Cedric Roux
7a6709a24e warning removal/bug fixes/adding logs in rb_tool.c 2017-03-24 15:12:52 +01:00
Cedric Roux
676ca5c3a0 compilation warning removal 2017-03-24 14:40:00 +01:00
Cedric Roux
dfcbeff0d4 bugfix/warning removal
not sure of this one, to be checked
2017-03-24 14:26:16 +01:00
Cedric Roux
181eb532e1 bugfix 2017-03-24 14:23:11 +01:00
Cedric Roux
bc10722013 warnings removal 2017-03-24 14:20:06 +01:00
Cedric Roux
60efa62dc8 compilation warning removal 2017-03-24 13:09:35 +01:00
Cedric Roux
7c7022a198 compilation warning removal 2017-03-24 13:08:45 +01:00
Cedric Roux
89c60dacfd compilation warning removal 2017-03-24 13:07:21 +01:00
Cedric Roux
34c303efb5 compilation warning removal 2017-03-24 13:05:08 +01:00
Cedric Roux
e9d88a101d bugfix: array too short for data
6 numbers (2 hexa digits each) separated by ':'
plus ending 0 makes 18 bytes, not 6, let's put 20
2017-03-24 13:02:52 +01:00
Cedric Roux
e5c5185eda compilation warning removal 2017-03-24 12:47:00 +01:00
Cedric Roux
e268611bec bugfix 2017-03-24 12:45:17 +01:00
Cedric Roux
4a6e433b21 compilation warning removal 2017-03-24 12:41:10 +01:00
Cedric Roux
b95ff08295 compilation warning removal 2017-03-24 12:40:11 +01:00
Cedric Roux
cfac326c00 compilation warning removal 2017-03-24 12:39:11 +01:00
Cedric Roux
c01d9dc1f0 compilation warning removal 2017-03-24 12:34:15 +01:00
Cedric Roux
99b521901c compilation warning removal 2017-03-24 12:33:09 +01:00
Cedric Roux
6977429706 compilation warning removal 2017-03-24 12:32:58 +01:00
Cedric Roux
ac437d3d12 compilation warning removal 2017-03-24 12:30:06 +01:00
Cedric Roux
d2098da06c fix targets/COMMON/openairinterface5g_limits.h
- LMSSDR was not handled
- bad #if usage
- bad indentation

still not very clean, but better
2017-03-24 12:27:46 +01:00
Cedric Roux
71fde41477 compilation warning removal 2017-03-24 12:21:45 +01:00
Cedric Roux
b3d9e19899 compilation warning removal 2017-03-24 12:21:04 +01:00
Cedric Roux
aaac4894c9 compilation warning removal 2017-03-24 12:17:08 +01:00
Cedric Roux
92ee6017cd compilation warning removal 2017-03-24 12:09:09 +01:00
Cedric Roux
7514e7139a compilation warning removal 2017-03-24 12:08:31 +01:00
Cedric Roux
048f07f67f compilation warning removal 2017-03-24 12:07:51 +01:00
Cedric Roux
3ce5f50755 compilation warning removal 2017-03-24 12:03:56 +01:00
Cedric Roux
a3f7ceb395 compilation warning removal 2017-03-24 12:02:08 +01:00
Cedric Roux
1789b3de59 compilation warning removal 2017-03-24 12:00:58 +01:00
Cedric Roux
e82c6764f9 compilation warning removal 2017-03-24 12:00:23 +01:00
Cedric Roux
bf3a4f6464 compilation warning removal 2017-03-24 12:00:04 +01:00
Cedric Roux
d8627b5e3f compilation warning removal 2017-03-24 11:59:27 +01:00
Cedric Roux
2291f4ebec compilation warning removal 2017-03-24 11:58:01 +01:00
Cedric Roux
216cd0bf02 compilation warning removal 2017-03-24 11:56:34 +01:00
Cedric Roux
8dd8a97c34 compilation warning removal 2017-03-24 11:55:32 +01:00
Cedric Roux
11856c6b00 compilation warning removal: allocate_REs set but not used
I removed this variable entirely because it's not used.

Maybe the bug is that it's not used after being set?
To be checked and fixed at some point.
2017-03-24 11:53:34 +01:00
Cedric Roux
774452bbbb compilation warning removal
this variable does not seem to be used, to be removed?
2017-03-24 11:50:56 +01:00
Cedric Roux
4fcb6272f4 RRC Rel14
- import RRC ASN.1 defintions from the specifications
  (file openair2/RRC/LITE/MESSAGES/asn1c/ASN1_files/RRC-e10.asn)
  contrary to rel8/10, all modules have been imported, maybe it's too much
  to refine in case of problems
- deal with rel14 in fix_asn1
- all code that was for Rel10 is now for Rel10/Rel14
- some incompatible changes (mostly in naming) were resolved in favor
  of rel14, see in openair2/RRC/LITE/defs.h
- unsure about the rlc layer, some arrays have changed (values appended),
  I only changed the definition and in tests in the code, I changed
  the index limit, maybe it's not enough

Rel14 is the default compilation mode.
2017-03-23 18:06:40 +01:00
Cedric Roux
cff9149920 fix issue 227 - UE IP settings disrupts realtime
see https://gitlab.eurecom.fr/oai/openairinterface5g/issues/227

When the UE connects to the eNodeB and receives its IP address from the
network, it calls system() to set it in the linux kernel world. This call
is not done in a realtime thread, but in the NAS, which uses its own thread,
independent of the realtime processing.

In some situations this totally disrupts realtime processing.

It is difficult to know precisely why that happens, but it seems that calling
fork(), as system() does, in a multi-threaded program is not a good idea. (So
say several people on the internet.) It is not clear why the softmodem is
impacted, but it seems that fork() is really what triggers the disruption.
Several tests lead to that conclusion.

To fix the problem, we create a child background process very early in main()
(before anything else basically). Then instead of calling system(), the main
process sends the string to the background process. The background process
gets the string, passes it to system() and reports the success/failure back
to the main process.

This solution involves a lot of system calls, but calling system() in the
first place is not cheap either. As long as no realtime thread uses this
mechanism, things should be fine. Time will tell.
2017-03-23 12:34:24 +01:00
Cedric Roux
89f747a218 minor fixes 2017-03-23 10:40:47 +01:00
Cedric Roux
238b22e5b5 fixes for IF5
This work was done by Bruno Mongazon.
2017-03-23 09:23:07 +01:00
Cedric Roux
fe0b84ddaf fix: revert ue_eurecom_test_sfr.conf to its previous state
Keys/IDs have been inadvertently changed.
2017-03-22 12:38:03 +01:00
Elena_Lukashova
b88fec2304 Some more printouts for rank adaptation. 2017-03-21 23:15:24 +01:00
Elena_Lukashova
23109e1a82 Optimizing bler files for rank adaptation. 2017-03-21 21:06:25 +01:00
Elena_Lukashova
9d2a4717d0 Changing the bler computation and printouts for the rank adaptation in tm4.
Now it counts how many times the TBs were set to active.
2017-03-21 18:52:41 +01:00
Elena_Lukashova
6219ddc581 Rank adaptation is now an argument of the command line. 2017-03-21 15:17:42 +01:00
Calisson
9d3eed3b43 fixing ulsim 2017-03-21 15:02:20 +01:00
Elena_Lukashova
48d7a1ef3a Fixing arguments of lte_ue_measurements in pbchsim.c 2017-03-21 14:35:32 +01:00
Calisson
7685cf1811 fixing srs in msg3. now all SRS subframe configs work. 2017-03-21 14:16:19 +01:00
Cedric Roux
668d7af7d2 align variables on stack in rank_estimation_tm3_tm4
dlsim_tm4 was crashing on massive. It was a problem
of misalignment of variables. The generated code by
the compiler was using 'movdqa' which requires alignment
to 16 bytes. Let's put 32, just in case, for avx2 maybe
(maybe not necessary but should not hurt).
2017-03-21 14:12:00 +01:00
Elena_Lukashova
79c304a24a Passing Conditional Number threshold as a command line argument. -V($) 2017-03-21 12:13:17 +01:00
Elena_Lukashova
ca0d8a445e Fixing dlsch_demod_shift. 2017-03-21 12:03:23 +01:00
Calisson
98efcd5220 fixing a bug related to SRS procedures 2017-03-21 09:37:08 +01:00
Elena_Lukashova
93c1315bbd Adequate throughput computation for rank adaptation. 2017-03-21 02:13:08 +01:00
Calisson
1677e8f847 Merge remote-tracking branch 'origin/develop' into feature-218-srs 2017-03-20 17:15:26 +01:00
Calisson
e2d46f8040 adding mechanism for SRS scheduling of multiple UEs. 2017-03-20 17:13:42 +01:00
Elena_Lukashova
b596ede727 Merge remote-tracking branch 'origin/develop' into feature-59-tm4 2017-03-20 14:33:03 +01:00
Cedric Roux
bd17343334 Merge branch 'develop_integration_w11' into 'develop'
Develop integration w11

Summary of changes:

- bug fixes
- RCC/RRU in automatic test setup
- more work on UE/MIMO
- LimeSDR support (5/10MHz)
- compilation under ubuntu 16.04, in particular kernel modules (nasmesh, ue_ip)

See merge request !148
2017-03-20 13:55:44 +01:00
Cedric Roux
d0a51bec01 hotfix: put back "system" for UE to setup its IP settings
We'll need to to do it in a separate thread/process.
To be done. In the meantime, put it back. It impacts
oaisim.
2017-03-20 13:45:29 +01:00
Cedric Roux
e2350103f4 hotfix: LLR was calling qam64_qam16_avx2 instead of qam64_qam64_avx2
Not sure of this one, to be checked by TCL.
2017-03-20 13:33:27 +01:00
Cedric Roux
1218cc8f65 bugfix: fix dump_dlsch2
the argument 'coded_bits_per_codeword' has to be an array in
case of several codewords.

The calling sites have been adapted.

Today, only the first index is used, so calling sites where
'coded_bits_per_codeword' is an integer pass the address
of it. It is expected that 'dump_dlsch2' will check in the
future that there is one or two codewords and only access
'coded_bits_per_codeword[1]' when it's sure there are
really two codewords.
2017-03-20 11:15:57 +01:00
Cedric Roux
7ffc20426b integration fix: let simulators compile again
- pucchsim
- prachsim
- pdcchsim
- pbchsim
- mbmssim

Mostly, add and initialize the variable 'cpuf'.
Also, pdcchsim was calling rx_pdcch with wrong
arguments.
2017-03-20 11:00:41 +01:00
Cedric Roux
5014b84c30 integration fix: let ulsim compile again + minor modification in dlsim_tm4 2017-03-20 10:43:50 +01:00
Cedric Roux
f2e9e3f2dc integration fix: let dlsim compile again
Same as previous commit 41dda3d3de
but for dlsim.
2017-03-20 10:40:26 +01:00
Cedric Roux
41dda3d3de integration fix: let dlsim_tm4 compile again
The variables that were duplicated per processing thread
were adapted. 'cpuf' was defined and initialized.
2017-03-20 10:38:25 +01:00
Cedric Roux
fd1e01579c bugfix: set cpuf in oaisim 2017-03-20 10:28:11 +01:00
gabrielC
d86c5a9092 Merge branch 'UE_Remove_LOG' into develop_integration_w11 2017-03-20 09:20:20 +01:00
gabrielC
1e2f952a9c Remove to frequent log in 20 MHz 2017-03-20 09:18:02 +01:00
Elena_Lukashova
b835f63956 1. There is probably a bug in generate_ue_dlsch_from_dci
for DCI format 2. Temporaryly going back to the previous
version of code.
2. Enabling rate adaptation with multiple HARQ rounds.
(no change inside the rounds).
2017-03-20 01:06:12 +01:00
Elena_Lukashova
a92ed31914 Merge branch 'develop' into feature-59-tm4 2017-03-19 15:52:45 +01:00
Cedric Roux
2011c7d689 Merge remote-tracking branch 'origin/ulsim-bugfix-w11' into develop_integration_w11 2017-03-18 00:10:50 +01:00
Cedric Roux
1c57eadd33 fix: remove useless test
One check introduced by previous commit was not necessary.
2017-03-18 00:09:48 +01:00
Cedric Roux
2a44ae639e Merge remote-tracking branch 'origin/rru-rrh-test-setup-w11' into develop_integration_w11 2017-03-17 19:39:50 +01:00
Cedric Roux
7847143610 Merge remote-tracking branch 'origin/bugfix-224-ue-tcrnti' into develop_integration_w11 2017-03-17 19:33:56 +01:00
Cedric Roux
a19a27ff33 test setup v2: add RRU/RRC tests
- README.txt modified
- tests added in test_case_list.xml
  (only for test setup v2)
- python code modified
- configuration files added
2017-03-17 18:58:55 +01:00
Cedric Roux
19bd4d8cf7 test setup v2: simplify softmodem tests variable definition 2017-03-17 16:08:25 +01:00
fnabet
7f9b19cce8 UE Issue224 fix on TCRNTI 2017-03-17 10:52:59 +01:00
Florian Kaltenberger
c13d5c21f3 added null pointer check for ulsim 2017-03-16 18:05:23 +01:00
Cedric Roux
639d2eefc6 Merge remote-tracking branch 'origin/phy-test-fix' into develop_integration_w11 2017-03-16 18:01:23 +01:00
Cedric Roux
faa5e07af8 Merge remote-tracking branch 'origin/T-compilation-fix-w11' into develop_integration_w11 2017-03-16 18:00:46 +01:00
Cedric Roux
b440abef33 Merge remote-tracking branch 'origin/ubuntu-16-compilation' into develop_integration_w11 2017-03-16 17:59:22 +01:00
Cedric Roux
b2bda9498c Merge remote-tracking branch 'origin/calib-LimeSDR' into develop_integration_w11 2017-03-16 17:57:48 +01:00
Cedric Roux
c6581031d5 various quick fixes 2017-03-16 17:37:05 +01:00
gabrielC
4ae599990a Merge branch 'UE_20MHz_and_Log_improvement' into develop_integration_w11 2017-03-16 17:08:42 +01:00
gabrielC
d5a9334306 20MHz improvement for scope (still need to be fixed for 20MHz LLR) and Log 2017-03-16 17:06:34 +01:00
fnabet
353334f69b RLC AM Rx PDU Segment changes 2017-03-16 16:45:44 +01:00
Cedric Roux
20b420bb84 fix compilation for ubuntu 16
This work was done by Laurent Thomas.
2017-03-16 14:44:38 +01:00
gabrielC
415201c3dc Merge remote-tracking branch 'origin/Correction_for_dlsch_channel_level_calculation' into develop_integration_w11 2017-03-16 11:47:25 +01:00
gabrielC
950c1c060e Correction of dlsch channel calculation 2017-03-16 11:45:07 +01:00
Cedric Roux
fc6dec9edd fix dependancies in CMakeLists.txt for the T tracer
On some hosts, compilations with the T tracer was failing.

The error was:
  common/utils/T/T.h:15:19: fatal error: T_IDs.h: No such file or directory

The problem was that in CMakeLists.txt some targets depend on the
pre-generation of T_IDs.h but this dependancy relation was not set,
so those targets could be generated before the T (it was the case
with HASHTABLE).

This commit fixes that. Basically, we take all the targets found in
"add_executable" and "add_library" and make them depend on the
T if the T is enabled. Almost all existing targets were added,
even those that may not need it.

The problem of this approach is that someone adding a new target
using the T will not necessarily add a dependancy there.

Another solution would be to generate T_IDs.h at "cmake" stage,
not "make" stage and use an "if (NOT EXISTS T_IDs.h)" to generate
the file. We lose the dependancy relation though.

Things may be changed if maintenance cost is too high.
2017-03-16 11:22:05 +01:00
fnabet
01530385f1 RLC AM fix Tx Status Report 2017-03-15 18:56:53 +01:00
Florian Kaltenberger
65f49f9ffd bugfixes to previous commit and ulsim. now srs estimaton seems to work. at least in ulsim. 2017-03-15 17:43:18 +01:00
Cedric Roux
f5aa0135b1 hotfix: fix buffer size for phy-test mode 20MHz
768*8 is too small, in 20MHz, the phy-test mode
(in default mode?) has a buffer of size 6378.

Let's set the buffer size to the input's one plus 4 bytes
(to accomodate for CRC, not sure about this).
2017-03-15 17:17:54 +01:00
gabrielC
40fa3e076c RLC AM Rx fixes 2017-03-15 16:58:54 +01:00
GabrielCouturier
18f628848c RLC AM Fix on ReTx 2017-03-15 16:54:01 +01:00
Florian Kaltenberger
b4f8219170 calibrations for 5/10/20 MHz LimeSDR 2017-03-15 16:04:42 +01:00
fnabet
bf71c6f01e RLC AM Tx Segment: fix 2017-03-15 10:10:32 +01:00
Calisson
1e193853eb WIP: adding srs channel estimation to eNB. estimation results yet to be checked. 2017-03-14 17:13:14 +01:00
gabrielC
752b305270 Merge branch 'pdcch_dual_buffer' into develop_integration_w11 2017-03-14 15:44:13 +01:00
gabrielC
28a50c15e9 Remove some print and correct rnti for the pdcch_vars odd/even subframe 2017-03-14 15:35:21 +01:00
fnabet
c1da605f6d RLC AM code cleaning 2017-03-14 10:10:36 +01:00
GabrielCouturier
cf9727c4be RLC AM fix bad assert for resegmentation 2017-03-13 19:44:52 +01:00
gabrielC
dabf833c10 RLC AM Rx Segment and Tx Status Report fixes 2017-03-13 19:41:24 +01:00
Elena_Lukashova
488933eddc Removing unnecessary minus_one and plus_one. 2017-03-13 17:04:36 +01:00
fnabet
4a331c6fb3 Merge tag '2017.w10' into bugfix-189-rlc-am-fixes 2017-03-13 16:13:07 +01:00
fnabet
3a43c08ae3 RLC AM fix RX Segment 2017-03-13 15:54:27 +01:00
hbilel
bd4898222f pdcch dual buffer 2017-03-13 15:50:10 +01:00
Cedric Roux
bd3394f528 Merge branch 'develop_integration_w10' into 'develop'
Develop integration w10

Summary of changes:
- MIMO for UE
- TDD in test setup
- bug fixes

See merge request !133
2017-03-13 15:48:07 +01:00
Cedric Roux
a500b2b293 integration fix: fix compilation of ulsim
We use the odd/even dlsch corresponding to the configured
subframe. It may not be the right thing to do.
2017-03-13 15:43:43 +01:00
Elena_Lukashova
21481c4a6a Adding check for the first transmission in prepare_dl_decoding_format1_1A. 2017-03-13 15:13:45 +01:00
fnabet
0e78513b5a RLC AM Tx Segment : missing data_ptr setting 2017-03-13 12:27:09 +01:00
hbilel
cec9cb7662 fix compilation error for dlsim 2017-03-13 12:05:47 +01:00
hbilel
b82b7781ee integration fix clear tx-buffer of ue in case of empty subframe
for all processing including oaisim
2017-03-13 10:14:26 +01:00
Cedric Roux
a194009e00 integration fix: put dlsch_demod_shift into dlsch_demodulation 2017-03-13 10:06:26 +01:00
hbilel
947e50f33d integration fix optional compilation of avx2 2017-03-13 09:49:56 +01:00
Elena_Lukashova
e5908bfdaa Fixing a bug in conjch0_mult_ch1 2017-03-12 00:29:50 +01:00
Elena_Lukashova
14d927d414 Fixing TM condition for rank estimation.
the eNB_id was overwriiten by the preceding loop
and setting ue->transmission_mode = 0.
2017-03-11 19:25:15 +01:00
Elena_Lukashova
263b7aa07a Fixing typo. 2017-03-11 18:48:57 +01:00
Cedric Roux
fe5fd2494c Merge remote-tracking branch 'origin/tdd_w10' into develop_integration_w10 2017-03-10 22:27:29 +01:00
Cedric Roux
8e8fec1e19 test setup v2: add TDD tests
New tests: 0186xx for TDD with the huawei 3276 dongle.
All necessary files to configure and use it have been added.
Existing code has been adapted for the TDD tests.
Only the test setup v2 has been adapted.
The file test_case_list.xml has been changed to add tests
0186xx, but only to work with test setup v2. It won't
work with test setup v1. To be completed if needed.

The tests are similar to FDD tests.
Throughputs for TDD have to be adjusted, the throughputs
of FDD are used for the moment.
2017-03-10 20:18:36 +01:00
Elena_Lukashova
9fd0f35134 In rank estimation rank 1 is for CLSM and OLSM, 0 is for Tx div. 2017-03-10 16:45:44 +01:00
Elena_Lukashova
112b3719e4 Merge branch 'develop' into feature-59-tm4 2017-03-10 16:42:11 +01:00
Elena_Lukashova
83a045ec83 Condition to compute Rank only for TM3, TM4. 2017-03-10 16:37:17 +01:00
Elena_Lukashova
e709933695 Fixing printouts. 2017-03-10 16:36:07 +01:00
Elena_Lukashova
132018a136 Adding Rank estimation for TM4.
Right now no feedback, only calculation.
To see the values, enable DEBUG_RANK_EST
in lte_ue_measurements.
2017-03-10 16:20:41 +01:00
Florian Kaltenberger
39c7e629fb bugfix: bundling flag was initialized after its use 2017-03-10 16:20:05 +01:00
Florian Kaltenberger
c135dd611b scheduling also UL SF 4 in TDD mode 3 2017-03-10 16:19:38 +01:00
Florian Kaltenberger
e14f3677e5 sending full rx signal to T in TDD mode 2017-03-10 16:18:49 +01:00
Rohit Gupta
02f3298a58 several fixes to previous commit. First tests in FDD with USRP and UE ok. 2017-03-10 16:18:40 +01:00
Elena_Lukashova
e704a3155c Enabling noise in the whole subframe and computing N0_total. 2017-03-10 16:16:54 +01:00
Florian Kaltenberger
a587e35a9d removal and renaming of LimeSDR configuration files 2017-03-10 15:37:26 +01:00
Florian Kaltenberger
340d05eebf Merge branch 'calib-LimeSDR' of https://gitlab.eurecom.fr/oai/openairinterface5g into calib-LimeSDR
Conflicts:
	targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
2017-03-10 15:26:46 +01:00
Florian Kaltenberger
7f24927c43 WIP: SRS configuration of PUSCH and PUCCH. No SRS detection yet. To be tested on HW 2017-03-10 12:42:04 +01:00
Cedric Roux
e6cd9873cd cleanup test setup README file 2017-03-10 12:19:29 +01:00
fnabet
0ce73b4d0e RLC AM Rx PDU Segment fixes 2017-03-09 18:08:43 +01:00
gabrielC
8e022654dc Merge remote-tracking branch 'origin/UE_20MHz_fix' into develop_integration_w10 2017-03-09 16:37:12 +01:00
gabrielC
4abc1d21e3 20 MHz UE fix 2017-03-09 16:33:07 +01:00
fnabet
7f60e38fee RCL AM: fixes on Tx resegmentation 2017-03-09 16:04:31 +01:00
gabrielC
83b311beac Merge branch 'remove_printf' into develop_integration_w10 2017-03-09 10:23:11 +01:00
gabrielC
28c009a072 Chenge LOG_I to LOG_D 2017-03-09 10:20:52 +01:00
gabrielC
212dff253f Merge remote-tracking branch 'origin/mimo_feature_ue_br' into develop_integration_w10 2017-03-09 09:49:42 +01:00
Florian Kaltenberger
19a2337c99 Merge remote-tracking branch 'origin/develop' into calib-LimeSDR
Conflicts:
	openair1/PHY/MODULATION/ofdm_mod.c
	targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
2017-03-09 08:54:34 +01:00
Raymond.Knopp
4342595ea8 calibration (RX) for LimeSDR. Use of new API for RF gains. 2017-03-09 02:43:31 +01:00
GabrielCouturier
7c7172ca18 RLC AM fix bad pointer init in ReSegmentation 2017-03-08 17:16:30 +01:00
hbilel
305ebf5c4b rebase branch to develop 2017.w09 2017-03-08 14:57:30 +01:00
hbilel
9dd65f2801 [OAI-UE] remove unused debug-printf 2017-03-08 14:21:14 +01:00
hbilel
05fe029a62 [OAI-UE] fix in de-precoding for tm3/4 2017-03-08 13:59:49 +01:00
hbilel
3d1e01e283 [OAI-UE] llr computation clean up 2017-03-08 12:16:38 +01:00
hbilel
bb8c6b2c52 [OAI-UE] code clean up for merge 2017-03-08 12:16:38 +01:00
hbilel
3dc1963a2d [OAI-UE] MIMO fixes + disabling MIB/SIB decoding on connected mode 2017-03-08 12:16:38 +01:00
Sebastian Wagner
42b834d64c Changes for 64qam_64qam for avx2
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
2017-03-08 12:16:38 +01:00
hbilel
ba55fcac27 [OAI-UE] Mimo LLR computation AVX2 + fix in TM3 deprecoding 2017-03-08 12:16:38 +01:00
hbilel
ff6d41b6e8 [OAI-UE] Mimo feature 2017-03-08 12:15:02 +01:00
fnabet
b218eea839 Merge tag '2017.w09' into bugfix-189-rlc-am-fixes 2017-03-08 11:52:46 +01:00
gabrielC
ce1ac08b19 RLC AM fix for PDU Segment insertion in case of gaps 2017-03-07 18:33:14 +01:00
gabrielC
b5ab7267c2 RLC AM fix for PDU insertion in case of gaps 2017-03-07 17:51:29 +01:00
GabrielCouturier
fd5932c544 RLC AM Tx: TPollRetx Expiry fix for BO 2017-03-07 16:58:39 +01:00
Rohit Gupta
477a171fbc adding config file for TDD testing 2017-03-07 16:53:50 +01:00
GabrielCouturier
dc960a6043 RLC AM: missing SN setup in Tx Pdu Management at first Tx 2017-03-07 16:01:35 +01:00
Florian Kaltenberger
b45e9a68a8 adding config file for band 38, TM1, usrp 2017-03-07 15:53:09 +01:00
Cedric Roux
5c375d3ae8 Merge branch 'develop_integration_w09' into 'develop'
Develop integration w09

Summary of changes:
- bug fixes

See merge request !128
2017-03-06 15:29:55 +01:00
fnabet
6504013077 RLC AM : fix update of vrMS in tReordering expiry 2017-03-04 15:19:58 +01:00
fnabet
709b1fd299 RLC AM: fix TReordering expiry 2017-03-04 13:40:13 +01:00
Cedric Roux
c1e460183b Merge remote-tracking branch 'origin/nokia-fixes-w08' into develop_integration_w09 2017-03-03 15:33:20 +01:00
Cedric Roux
05f89b3922 Merge remote-tracking branch 'origin/bug-fix-if-defs' into develop_integration_w09 2017-03-03 15:33:08 +01:00
Cedric Roux
1b1270e847 Merge remote-tracking branch 'origin/feature-59-tm4' into develop_integration_w09 2017-03-03 15:32:54 +01:00
Cedric Roux
f94835becf bugfix: "if_compress" parameter not taken into account
Bug reported by Bruno Mongazon from Nokia.

"Without this line, the config file parameter is not properly stored and
the FH will always work with compression."
2017-03-03 15:25:10 +01:00
Cedric Roux
94229ca593 bugfix: = instead of ==
Bug reported by Bruno Mongazon from Nokia.
2017-03-03 15:17:00 +01:00
Elena_Lukashova
b2c57f42fc Fixing bug in modulation for TM4 64QAM. 2017-03-02 22:40:54 +01:00
fnabet
e1293616d6 Merge tag '2017.w08' into bugfix-189-rlc-am-fixes 2017-03-02 14:53:56 +01:00
fnabet
684ca32e9b RLC AM Add Log points 2017-03-02 14:51:58 +01:00
fnabet
52006fc6ea RLC AM : Add Rx PDU Segment handling 2017-03-02 10:37:33 +01:00
Elena_Lukashova
74e2cf77fa Fixing throughput computations for multiple rounds in TM4. 2017-03-01 16:43:30 +01:00
Elena_Lukashova
7d649f432b Fixing bler limits for different receivers. 2017-03-01 16:00:56 +01:00
Elena_Lukashova
2e9dfe0fbb Changing names for bler and abstraction output files
in dlsim_tm4 to distinguish from the old runs.
2017-03-01 15:33:55 +01:00
khadraou
0a46cc56a2 fixed PRACH hardcoded size 2017-03-01 10:11:07 +01:00
Elena_Lukashova
25f35fbbb4 fix: remove verbose printfs 2017-02-28 16:18:30 +01:00
Elena_Lukashova
2edbcbdf66 bugfix: fix copy/paste error
mcs1 was taken instead of mcs2 in several places.
2017-02-28 16:17:48 +01:00
Elena_Lukashova
3d8fb53073 Merge remote-tracking branch 'origin/develop' into feature-59-tm4 2017-02-28 16:03:47 +01:00
Cedric Roux
5c0f42a277 Merge branch 'develop_integration_w08' into 'develop'
Develop integration w08

Summary of changes:
- various bugs fixed
- pre-commit script for better indentation: see commit 068ce4ca55
  For the moment, each contributor has to enable the script (and install astyle) by hand.
  Maybe at some point the script will be mandatory.

See merge request !124
2017-02-27 12:08:29 +01:00
Elena_Lukashova
b1bf9db8fa Merge branch 'develop' into feature-59-tm4 2017-02-25 01:39:17 +01:00
Elena_Lukashova
2ef3dd8ff7 Adjusting power level for TM4,5,6.
Before that the scaling was aplied in precoder.
Now it is done in sqrt_rho_a and sqrt_rho_b.
For TM4 there still remains 1/sqrt(2) instead of
1/2 both at the transmitter and receievr side.
2017-02-24 23:35:30 +01:00
Elena_Lukashova
b81ee87f4d Cleaning up for SIC llrs 2017-02-24 23:33:53 +01:00
Elena_Lukashova
bf6a3b522d Removing dlsch1 from arguments of dlsch_modulation_SIC 2017-02-24 23:30:35 +01:00
Elena_Lukashova
3a7fd01f22 Fixing dump_dlsch2 2017-02-24 23:28:35 +01:00
fnabet
daa308c33a Merge tag '2017.w07' into bugfix-189-rlc-am-fixes 2017-02-24 17:15:30 +01:00
Cedric Roux
465ab00bc5 Merge remote-tracking branch 'origin/compilation-T-quickfix-w08' into develop_integration_w08 2017-02-24 15:21:06 +01:00
Cedric Roux
fa9b91ad1d Merge remote-tracking branch 'origin/pre-commit-hook' into develop_integration_w08 2017-02-24 15:18:13 +01:00
Cedric Roux
2c238010a7 Merge remote-tracking branch 'origin/enhancement-212-warning-counts' into develop_integration_w08 2017-02-24 15:17:54 +01:00
fnabet
aac9c6119d RLC AM fix in Retx PDU segment 2017-02-23 17:44:47 +01:00
Cedric Roux
60b83d84ea hotfix: pass "%s" to LOG_W to avoid compilation warnings
The warning was:

------------------------
In file included from /roux/openairinterface5g/openair2/UTIL/LOG/log.h:306:0,
                 from /roux/openairinterface5g/openair1/PHY/defs.h:54,
                 from /roux/openairinterface5g/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c:33:
/roux/openairinterface5g/openair2/UTIL/LOG/log.h: In function 'printMeas':
/roux/openairinterface5g/common/utils/T/T.h:94:26: warning: format not a string literal and no format arguments [-Wformat-security]
 #define T_ID(x) ((struct T_header *)(uintptr_t)(x))
                          ^
/roux/openairinterface5g/common/utils/T/T.h:29:22: note: in definition of macro 'T_PUT_int'
     int T_PUT_var = (val); \
                      ^
/roux/openairinterface5g/common/utils/T/T.h:269:7: note: in expansion of macro 'T_HEADER'
       T_HEADER(t); \
       ^
/roux/openairinterface5g/common/utils/T/T.h:101:76: note: in expansion of macro 'T3'
         n18,n19,n20,n21,n22,n23,n24,n25,n26,n27,n28,n29,n30,n31,n32,n,...) T##n
                                                                            ^
/roux/openairinterface5g/common/utils/T/T.h:102:16: note: in expansion of macro 'TN'
 #define T(...) TN(__VA_ARGS__)
                ^
/roux/openairinterface5g/openair2/UTIL/LOG/log.h:308:28: note: in expansion of macro 'T'
 #    define LOG_W(c, x...) T(T_LEGACY_ ## c ## _WARNING, T_PRINTF(x))
                            ^
/roux/openairinterface5g/common/utils/T/T_IDs.h:71:30: note: in expansion of macro 'T_ID'
 #define T_LEGACY_PHY_WARNING T_ID(68)
                              ^
/roux/openairinterface5g/openair2/UTIL/LOG/log.h:308:30: note: in expansion of macro 'T_LEGACY_PHY_WARNING'
 #    define LOG_W(c, x...) T(T_LEGACY_ ## c ## _WARNING, T_PRINTF(x))
                              ^
/roux/openairinterface5g/openair2/UTIL/LOG/log.h:411:9: note: in expansion of macro 'LOG_W'
         LOG_W(PHY,txt2);
------------------------

over and over.

By replacing LOG_W(PHY,txt2) by LOG_W(PHY,"%s",txt2) all the warnings
are removed.
2017-02-23 11:01:45 +01:00
gabrielC
abfeb4ef06 Fix problem in DCI decoding following dci_handling_br branch integration 2017-02-23 10:49:06 +01:00
gabrielC
c17e81b2aa Merge remote-tracking branch 'origin/develop_UE_20MHz' into develop_integration_w08
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
2017-02-23 09:09:01 +01:00
gabrielC
2f4fcb5ecc Merge remote-tracking branch 'origin/bugfix214_timingoffset' into develop_integration_w08 2017-02-23 08:56:51 +01:00
gabrielC
dcb48081a0 Merge remote-tracking branch 'origin/dci_handling_br' into develop_integration_w08 2017-02-23 08:54:04 +01:00
fnabet
0030635237 RLC AM Tx buffer: fix sn modulo window size access 2017-02-22 13:00:30 +01:00
hbilel
34ca9a7f93 [OAI-UE] issue#214 fix timing offset compensation 2017-02-22 11:52:01 +01:00
fnabet
b0d468c0f7 RLC AM: add retransmission and Rx status pdu 2017-02-22 11:40:55 +01:00
Florian Kaltenberger
068ce4ca55 adding a client-side pre-commit script. This script needs to be installed by every developer manually. see comments in script. 2017-02-22 09:29:33 +01:00
gabrielC
46b37aaa31 UE 20 MHz fix + remove too restrictive assert 2017-02-21 14:35:00 +01:00
Cedric Roux
e98c3e8143 report warnings to user after compilation
Let the user see how many warnings a compilation generates.
The goal is to have 0 warning, for any compiled component
of openair.
2017-02-20 12:54:46 +01:00
Cedric Roux
38771f270b Merge branch 'develop_integration_w07' into 'develop'
Develop integration w07

See merge request !116

Summary of changes:
- integration of branch tm4-fixes (feature-59-tm4 + somes fixes)
- integration of branch enhancement-199-nas-multi-ue
- integration of branch develop-realtime-lts
- integration of branch enhancement-211-snapping
- various bugfixes
2017-02-20 11:52:32 +01:00
Cedric Roux
339353a96c integration fix: have a central place of definition for clock_difftime_ns
Prior to this commit, the following command failed to build dlsim:
    ./build_oai --phy_simulators -c

Choice has been made to define it in a .h file as a static inline
function.
2017-02-20 10:53:35 +01:00
Cedric Roux
c8e642494b integration fix: protect include file
The command line to get the error was:
    ./build_oai --eNB -w EXMIMO -c
2017-02-20 10:10:00 +01:00
Cedric Roux
ea858d54fa integration fix: strerror has to be used, not perror
The command line to get the error was:
    ./build_oai --eNB -w EXMIMO -c
2017-02-20 10:09:05 +01:00
Cedric Roux
b82e7c1a88 hotfix: forgot targets/COMMON/threads_t.h in a previous commit 2017-02-17 20:19:24 +01:00
Cedric Roux
39f26e945e Merge remote-tracking branch 'origin/enhancement-211-snapping' into develop_integration_w07 2017-02-17 18:27:33 +01:00
Cedric Roux
e62f569b5d Merge remote-tracking branch 'origin/various-l2-fixes-187' into develop_integration_w07 2017-02-17 18:23:00 +01:00
Cedric Roux
f9b5dafe29 T: let it compile with C++
We now have 4 versions of T_HEADER:
 - bad quality C++ version with time
 - good quality C version with time
 - bad quality C++ version without time
 - good quality C version without time
2017-02-17 18:16:22 +01:00
Cedric Roux
603c84c700 fix warnings: fix LOG_X problems when compiling lte-softmodem
The compilation line was:
    ./build_oai --eNB -w USRP

The file openairinterface5g/cmake_targets/log/lte-softmodem.Rel10.txt
has been checked and all LOG_X (and 'msg') warnings have been fixed.
2017-02-17 18:07:06 +01:00
Cedric Roux
96dc12ccce fix warning: add missing */ 2017-02-17 18:07:06 +01:00
Cedric Roux
37bc075cb2 fix: exit if memory_read fails in the function nas_user_initialize 2017-02-17 18:07:06 +01:00
Cedric Roux
74afbf84f4 warning fix: remove pragma in LFDS
Not sure that it's correct, but those #pragma seem
to be of no use for gcc. Let's remove them
completely.
2017-02-17 18:07:05 +01:00
Cedric Roux
baeb930397 use ln -sf instead of ln -s in cmake_targets/build_oai
When rebuilding oaisim, I had a failure because the target
link already exists. The -f flag forces the link to be done.
2017-02-17 18:01:17 +01:00
Cedric Roux
053704b5c2 remove wrong comment 2017-02-17 18:01:02 +01:00
Cedric Roux
ac7c0df520 integration fix: let oaisim (S1) work again
- some cleanup
- thread names to include UE Mod_id
- arg of UE_thread_rxn_txnp4 to be struct rx_tx_thread_data again
- sync in UE_thread_rxn_txnp4 to use instance_cnt_rxtx again
- UE_thread to call itti_send_msg_to_task with UE->Mod_id + NB_eNB_INST
  instead of INSTANCE_DEFAULT again

This may break the softmodem UE, to be tested.
The most problematic thing may be the synchronization.
I don't think it will impact the processing at all,
but I won't bet my shirt on it.
2017-02-17 17:55:27 +01:00
Cedric Roux
7c11cf9646 redo commit 5805215227
git show -p 5805215227
to see what it's about
2017-02-17 14:39:00 +01:00
Cedric Roux
122953d986 redo commit 157707b042
git show 157707b042
to see what it's about
2017-02-17 14:25:26 +01:00
Anta Huang
e3186c1741 Issue #211 - enhance build script for snapping package
- build script has ability to indicate location for downloading uhd images
- one simple wrapper to set environment variables and initiate another program (supposed to be lte-softmodem)
2017-02-17 13:56:00 +01:00
Cedric Roux
f58c7b1be9 integration fix: restore enb.band7.tm1.usrpb210.conf
Many variables were changed that should not have been changed.
2017-02-17 12:41:13 +01:00
Cedric Roux
76574a1ac0 Revert "fix nettle"
This reverts commit d31634c358.

Laurent Thomas had a problem on one machine with the build_oai
way of checking for nettle.

The problem with the alternative solution of including nettle/bignum.h
is that it is very unclear.

The problem with nettle is that the file nettle/config.h does not
exist for version 2. It was introduced in version 3.

We want to support both versions, but there is an API incompatibility.
So we need an #if #else mechanism.

The file nettle/bignum.h is present in both versions 2 and 3 and it
includes nettle/version.h in the version 3.

So by including this file, we can check for the existence of
NETTLE_VERSION_MAJOR (that comes from nettle/config.h) in the
code.

But as you can see, the reasoning is way too complex.

So it's better to keep the check in cmake_targets/CMakeLists.txt.

As long as we support version 2 this will be the way to go.

It is possible to force a given version in specific non-generic
customized environments.
2017-02-17 12:29:31 +01:00
Chia-Yu Chang
1b417979e9 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into various-l2-fixes-187
Conflicts:
	openair1/PHY/LTE_TRANSPORT/if4_tools.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/if_defs.h
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.25PRB.lo.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.50PRB.lo.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.50PRB.usrpb210.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.25PRB.oaisim.conf
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.50PRB.oaisim.conf
2017-02-17 12:01:26 +01:00
gabrielC
eadcba956e Merge branch 'develop-realtime-lts' into develop_integration_w07
Conflicts:
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-ue.c
2017-02-17 11:51:03 +01:00
pyroclaste
3dd1faadd4 Add the compression for IF5 and RTT measurements for FH and RF 2017-02-17 11:38:44 +01:00
Cedric Roux
10a50563eb Merge remote-tracking branch 'origin/bugfix-exmimo' into develop_integration_w07 2017-02-17 10:08:48 +01:00
Cedric Roux
9a5d17d967 bugfix: do not allocate memory
Memory was allocated which was "lost" because the
address of the block was put in a pointer that is
overwritten just after.

Discussing with Elena, the current commit is the correct
way to do things.
2017-02-16 15:37:56 +01:00
Cedric Roux
9535e7a276 bugfix: make some functions thread safe
Those functions modify a global char array (a string).

Let's pass a buffer to those functions, so that it's
thread safe. The caller has been modified, with hopefully
a buffer big enough (still bigger than what was there before,
so should not break more than it did).
2017-02-16 15:35:07 +01:00
fnabet
e7e48144e1 Remove RLC header size from UE L2 buffer occupancy 2017-02-16 15:03:26 +01:00
Cedric Roux
31c85b22ea integration fix: remove ^M from file
command run:
    dos2unix openair1/SIMULATION/TOOLS/taus.c
2017-02-16 14:35:19 +01:00
Raymond Knopp
71af8ce824 Merge remote-tracking branch 'origin/develop' into enhancement-10-harmony-RU2
Conflicts:
	openair1/PHY/defs.h
	openair1/PHY/impl_defs_lte.h
	openair1/PHY/vars.h
	targets/RT/USER/lte-enb.c
2017-02-16 05:24:28 -08:00
Cedric Roux
70c84ef835 integration fix: put correct licensing information 2017-02-16 14:19:04 +01:00
Cedric Roux
ba6d140445 integration fix: put correct licensing information 2017-02-16 14:16:29 +01:00
Cedric Roux
bcfeb7af32 integration fix: put correct licensing information 2017-02-16 14:04:56 +01:00
Cedric Roux
36bd7e1d75 integration fix: remove comment 2017-02-16 14:01:15 +01:00
Cedric Roux
1f3b1ff8ff integration fix: remove XER_PRINT from RRC 2017-02-16 12:53:25 +01:00
Cedric Roux
f92bd91544 Merge branch 'enhancement-199-nas-multi-ue' into develop_integration_w07
Conflicts:
	openair1/SCHED/phy_procedures_lte_ue.c
	targets/RT/USER/lte-softmodem.c
	targets/SIMU/USER/oaisim.c
	targets/SIMU/USER/oaisim_functions.c
2017-02-16 12:14:26 +01:00
laurent
be0541aa8c remove a race 2017-02-16 11:38:38 +01:00
Laurent
6f6f9acb52 merge develop; add option to set affinity in UE 2017-02-16 11:34:02 +01:00
fnabet
fbe109a66c RLC/MAC UE interface changes for Tx and adapt to eNB 2017-02-16 11:26:37 +01:00
Cedric Roux
6397e66c29 bugfix: fix PCDP inst (again)
This commit follows 7d9945e884.

lte-softmodem UE in S1 and lte-softmodem UE in noS1 modes behave
differently here.

This commit fixes the issue for thoses cases.

Other cases (eNB S1, eNB noS1, oaisim S1/noS1) have to be checked.
2017-02-16 11:23:24 +01:00
Cedric Roux
63c0ed7042 fix UE default configuration file
- fix OPc key
- clear EHPLMN_LIST, UE does not start the RA procedure when set
  to be fixed
2017-02-16 10:10:42 +01:00
Cedric Roux
7d9945e884 bugfix: fix PDCP inst
This commit is a continuation of 614d6bbe2a
(ue_ip: use correct instance).

Now in openair2/NETWORK_DRIVER/UE_IP/common.c the 'inst' is not
forced to 1 anymore, we take the value 'pdcph_p->inst'.

It turns out that 'pdcph_p->inst' is 0 instead of 1 when we
run lte-softmodem as an UE.

So let's modify PDCP to set 'inst' to 1 where it was set to 0 for
the UE softmodem case, and skip the places where it is reset to 0,
still for the UE softmodem case.

This may break things, I am not sure.
2017-02-15 17:21:02 +01:00
Cedric Roux
7b36af0597 bugfix: variable was on the stack
Guess what happens when we return from the function...
2017-02-15 15:38:37 +01:00
Florian Kaltenberger
7c4630057f fixing a wrongly placed } for correct exmimo initialization 2017-02-15 14:28:07 +01:00
Raymond Knopp
637fd846b0 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2017-02-14 11:03:23 -08:00
hbilel
bfa8a28ccb [OAI-UE] fix pucch format2 regression 2017-02-14 18:31:57 +01:00
Laurent
23c7547698 remove debug traces 2017-02-14 18:24:31 +01:00
Laurent
d65d91ddcc gcc warning fix 2017-02-14 18:18:34 +01:00
Cedric Roux
f52a42eda5 cleanup lte-softmodem.c
For whatever reason, lte-softmodem.c was totally messed up...

We took the version from the branch develop and added
abstraction_flag, which is needed in openair2/LAYER2/MAC/main.c
(this is not clean, previous commit added a comment for this).
This has to be cleaned at some point.
2017-02-14 16:41:07 +01:00
gabrielC
4ecdfa05f1 UE logging, Replace LOG_I by LOG_D 2017-02-14 16:34:56 +01:00
Cedric Roux
6c789a36bc minor: add a comment 2017-02-14 16:18:54 +01:00
Cedric Roux
09139ab018 fix build_oai
- the option --UE was abused! Let's introduce --UE-conf-nvram and
  --UE-gen-nvram
- the option name --UE-OUTPUT was not clear and is now replaced by
  --UE-gen-nvram
- the new options are described when running ./build_oai -h
- print_help has been modified (' replaced by ") to print
  $conf_nvram_path and $gen_nvram_path
2017-02-14 15:38:51 +01:00
gabrielC
2dc9dc0316 Merge remote-tracking branch 'origin/tm4-fixes' into develop_integration_w07
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/power_control.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	targets/SIMU/USER/oaisim_functions.c
2017-02-14 15:25:37 +01:00
fnabet
1a591da2bc Merge tag '2017.w06' into bugfix-189-rlc-am-fixes 2017-02-14 15:15:19 +01:00
Cedric Roux
614d6bbe2a ue_ip: use correct instance
The problem was the following.

Run oaisim with two UEs:

    sudo ../cmake_targets/oaisim_build_oai/build/oaisim -O enb.conf -u2 -s15 -AAWGN -y1 -b1 -Q0

Then wait for both UEs to be connected. The interfaces "oip1" and "oip2" are
activated, with IP addresses 192.172.0.2 for the first UE and 192.172.0.3 for
the second.

Then on the EPC machine, do:

    ping 192.172.0.3

No reply.
On the oaisim machine, we see that the packets are sent to "oip1" instead
of "oip2".

The fix may break softmodem UE. The inst was forced to "1" for some reason.
To be checked.
2017-02-14 10:58:06 +01:00
Cedric Roux
f66f6e49cb deal with empty subframes at UE side even in oaisim
The memset was also too big. It should only clear
one subframe.

Only tested without abstraction.
Abstraction does not work for the moment anyway, but just to
keep that in mind.
2017-02-14 10:27:24 +01:00
gabrielC
9ecae1837c [OAI-UE] fix ack/nack reporting on pusch 2017-02-13 18:15:07 +01:00
Cedric Roux
b904ce7978 rewrite synchronisation in oaisim/channel simulation
The idea is as follows.

oaisim waits for all tasks to be done for a TTI.
To do so it waits for last_rx_timestamp == current_rx_timestamp,
for all UEs and eNBs.

When it's done, it increases current_rx_timestamp by samples_per_tti,
to inform UEs and eNBs that a new TTI is ready.

In the functions [UE|eNB]_trx_read, we wait for a new TTI to be ready,
that is we wait for current_rx_timestamp != last_rx_timestamp.

The UE has also to wait for processing threads to be done.
In the eNB it's not necessary because the processing is all
done in one thread, that is: read subframe, process this subframe,
emit subframe+4, and then back to read subframe.

The code is not clean. We should not use usleep but semaphores.

Also, do_[DL|UL]_sig should not read from rxdata and write to txdata,
but use internal buffers.

The functions [UE|eNB]_trx_read should call do_[DL|UL]_sig and then
copy from the internal buffers of the channel simulator into rxdata.

The functions [UE|eNB]_trx_write should write data passed into the
internal buffers of the channel simulator.
2017-02-13 17:58:11 +01:00
Cedric Roux
14aa96787a bugfix: eNB_id should have been UE_id 2017-02-13 17:47:47 +01:00
Florian Kaltenberger
aefb958a6f tx calibration for LimeSDR band 13 2017-02-13 17:12:10 +01:00
hbilel
5805215227 [OAI-UE] fix freq offset correction during cell scan 2017-02-13 16:46:28 +01:00
hbilel
e88d1e739e [OAI-UE] new pucch procedure to support all formats 2017-02-13 16:15:47 +01:00
Florian Kaltenberger
d930378e13 calibration for new firmware/gateware 2017-02-13 16:05:40 +01:00
Raymond Knopp
cd6ac4529d addition of TX portion of pucch2a/b 2017-02-13 15:27:53 +01:00
Cedric Roux
6ba07564af fix: do not modify dlsch[0]->g_pucch
This is done in another function.
2017-02-13 15:12:08 +01:00
Cedric Roux
8d7c06b194 cleanup: setting status to ACTIVE is done below
Don't do it twice.
The logic is: if ndi changed or it's a first tx then round=0
and later: if round==0 then status=ACTIVE
2017-02-13 15:10:00 +01:00
Cedric Roux
4d8e41100a fix: check that dlsch[0] is not NULL
Note: the dci formats 2, 2A and 1E were not checked,
this has to be done. dlsch[0] and dlsch[1] (when
applicable) must be checked somehow.
2017-02-13 15:08:20 +01:00
Cedric Roux
82403ed1dd cleanup: comments "Needs to be checked" are not needed 2017-02-13 15:07:06 +01:00
Laurent
fa432bdd26 optim measurement function checkcpu() 2017-02-13 13:58:09 +01:00
Cedric Roux
b2b1dc9f18 Merge branch 'develop_integration_w06' into 'develop'
Develop integration w06

See merge request !110
2017-02-13 12:01:13 +01:00
Florian Kaltenberger
442bb79bd0 Merge remote-tracking branch 'origin/develop' into calib-LimeSDR
Conflicts:
	openair1/PHY/MODULATION/ofdm_mod.c
2017-02-13 11:17:28 +01:00
Cedric Roux
7fd46420d9 minor: fix log (from LOG_D to LOG_I) 2017-02-13 11:16:38 +01:00
Cedric Roux
cd1bd0467c test setup v2: minor: print commands before execution 2017-02-13 10:30:05 +01:00
Raymond Knopp
b325d0a1f7 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2017-02-11 11:11:40 -08:00
Xenofon Foukas
9e55f8ebcd Fixed bug in the establishment of DRBs 2017-02-11 17:57:11 +02:00
Cedric Roux
0bcee1e40e fix: set mcs, TBS and Qm only if round == 0
Not sure at all about this one, seemed necessary to me,
but I don't get the full logic in there.

To be refined.
2017-02-11 12:34:05 +01:00
Cedric Roux
8f7b6391a5 fix: enough to do it once
This is done a bit above in the code, no need to do it twice.
2017-02-11 12:31:45 +01:00
Cedric Roux
c5f400e9d3 fix: do not access array before check 2017-02-11 12:25:46 +01:00
Cedric Roux
fc46dcff36 fix format 1A DCI management
I am not sure this is enough. To be refined.
2017-02-11 12:23:05 +01:00
Cedric Roux
80f47817d9 fix: warn if no PDSCH active
I doubt the case should happen. If it does, let's print an
error, will ease debugging.
2017-02-11 12:21:05 +01:00
Cedric Roux
a75cfd9073 fix: set default value of nb_rb
Not sure if necessary, but better do it.
2017-02-11 12:20:15 +01:00
Cedric Roux
9bf108c227 Revert "Merge remote-tracking branch 'origin/calib-LimeSDR' into develop_integration_w06"
This reverts commit ce14050bb4, reversing
changes made to 0ada1e9e32.
2017-02-10 17:32:26 +01:00
Laurent
012d333c8e tune USRP/USB packet size 2017-02-10 17:08:28 +01:00
Cedric Roux
94e039ac87 Merge remote-tracking branch 'origin/fix-if4p5' into develop_integration_w06
Conflicts:
	openair1/PHY/LTE_TRANSPORT/prach.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
2017-02-10 14:59:39 +01:00
Younes
91e12a9724 Fix if4p5 2017-02-10 14:51:43 +01:00
Cedric Roux
2bf1180884 Merge remote-tracking branch 'origin/feature-68-enb-agent' into develop_integration_w06
Conflicts:
	openair2/LAYER2/MAC/flexran_agent_scheduler_dlsch_ue.c
2017-02-10 12:22:46 +01:00
Cedric Roux
ce14050bb4 Merge remote-tracking branch 'origin/calib-LimeSDR' into develop_integration_w06
Conflicts:
	openair1/PHY/MODULATION/ofdm_mod.c
2017-02-10 11:50:31 +01:00
Cedric Roux
0ada1e9e32 Merge remote-tracking branch 'origin/oaisim-rru' into develop_integration_w06
Conflicts:
	openair2/RRC/LITE/rrc_UE.c
2017-02-10 11:36:06 +01:00
Cedric Roux
ae674104b3 Merge remote-tracking branch 'origin/various-l2-fixes-187' into develop_integration_w06 2017-02-10 11:21:51 +01:00
Laurent
b9e03cf251 fix usrp thread priority 2017-02-09 19:17:28 +01:00
Elena_Lukashova
b31282ae30 Merge branch 'develop' into feature-59-tm4 2017-02-09 18:03:16 +01:00
laurent
3c191c26f3 fix BCH tracking 2017-02-09 17:46:04 +01:00
Cedric Roux
62bcd5edf9 fix: create tasks before sync in oaisim
Not sure if this is the right thing to do, but it seems to be.

"start_eNB = 1;" is also necessary when the l2l1 task gets INITIALIZE_MESSAGE
otherwise the eNB does not start.

As it is today, I don't think oaisim will work with more than one eNB.
2017-02-09 11:00:59 +01:00
Cedric Roux
3e77251f96 minor: add a message before aborting
The case instance == INSTANCE_DEFAULT should normally not happen,
but let's be a bit verbose if it does.
2017-02-09 10:57:46 +01:00
Cedric Roux
e400b5e709 fix: remove T_ENB_MASTER_TICK in oaisim.c
It's now done in lte-enb.c, even for oaisim.
2017-02-09 10:56:42 +01:00
Cedric Roux
234acfea7f fix: this piece of code should not be here
It was probably the result of a bad merge.

At this point eNB_inst is not valid. Plus the T_ENB_MASTER_TICK
is now handled in lte-enb.c, even for oaisim.
2017-02-09 10:53:15 +01:00
Cedric Roux
9c6cb96baf put UE id in thread names 2017-02-09 10:46:20 +01:00
Cedric Roux
393fe86563 fix: pass UE parameter to UE threads
oaisim is not functional with several UEs.
This fixes one issue. (It's still not functional for other reasons.)
2017-02-09 09:47:13 +01:00
Navid Nikaein
80eaec1d5c fix the protobuf installation under ubuntu 16.04 2017-02-09 09:23:13 +01:00
laurent
51b23b4061 merge latest develop, enhance real time, set back BCH tracing in UE as in develop branch 2017-02-08 21:19:10 +01:00
Cedric Roux
157707b042 fix USE_MME compilation flag
We should use ENABLE_USE_MME, not USE_MME.
This code is useless anyway (I think, not sure, that's why I
leave it here), because the other threads wait for 'sync_var'
to become >=0.
2017-02-08 18:06:24 +01:00
Navid Nikaein
5c09741fac Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into various-l2-fixes-187 2017-02-08 14:51:35 +01:00
Navid Nikaein
7e13688e80 fix again the compilation issue with flexran 2017-02-08 14:51:25 +01:00
Navid Nikaein
6b81ddf611 fix the compilation issue with flexran 2017-02-08 14:41:07 +01:00
Florian Kaltenberger
ce465e503a applying last dlsim fix to dlsim_tm4 2017-02-08 12:03:41 +01:00
Florian Kaltenberger
d3b4251053 yet another bugfix for dlsim 2017-02-08 11:36:48 +01:00
Florian Kaltenberger
b44c49bc30 adjusting power levels in alamouti receiver and dlsim. now TM2 dlsim tests pass again.
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/impl_defs_top.h
2017-02-08 11:10:37 +01:00
Raymond Knopp
4661138d87 protection in case of false DCI 2017-02-07 16:01:27 -08:00
fnabet
d3af6f1f36 Renaming or removing some Tx RLC AM fields 2017-02-07 10:47:47 +01:00
Florian Kaltenberger
e0b8998def fixing bug in PDSCH power allocation for TM2
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/LTE_TRANSPORT/power_control.c
2017-02-07 10:02:49 +01:00
fnabet
39bdc2bce8 fix Tx Status PDU 2017-02-06 16:29:01 +01:00
gabrielC
ab2c1fcc8e fix TStatus Prohibit 0ms 2017-02-06 14:55:50 +01:00
Elena_Lukashova
0cd250bc50 1. Fixing remaining bugs form merge. Both simulators pass all the test.
2. Adding dlsch_encoding_SIC, where the fisrt argument is UE structure.
3. Adding general test cases for dlsim_tm4 simulator. 015110.
2017-02-06 14:55:21 +01:00
Elena_Lukashova
d1d4bb9f0c Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2017-02-06 12:00:24 +01:00
Xenofon Foukas
274030c4d5 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-02-06 12:29:53 +02:00
fnabet
483822d427 Merge tag '2017.w05' into bugfix-189-rlc-am-fixes 2017-02-06 11:14:40 +01:00
Cedric Roux
e2ae88de23 Merge branch 'develop_integration_w05' into 'develop'
Develop integration w05

See merge request !102
2017-02-06 09:43:05 +01:00
Raymond Knopp
bb5ee76ad8 changes in oaisim to support RRU + fronthaul. minor bugs corrected in UE. 2017-02-05 14:31:00 -08:00
Xenofon Foukas
31dde6129c Fixed various FlexRAN-related compilation warnings 2017-02-05 20:00:57 +02:00
Xenofon Foukas
8250ecd794 Added info required for stability and fairness of remote scheduler 2017-02-05 19:54:14 +02:00
Elena_Lukashova
024af3e730 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2017-02-03 22:21:44 +01:00
Xenofon Foukas
0e687fb765 Fixed bug related to the reporting of timing advance to the controller that severely dropped the performance of the remote scheduler 2017-02-03 19:39:47 +02:00
fnabet
79242aaf54 RLC AM Tx changes 2017-02-03 17:02:42 +01:00
Florian Kaltenberger
41a261266a fixing some bugs 2017-02-03 16:17:52 +01:00
Cedric Roux
39ec1f7071 Merge remote-tracking branch 'origin/fix_T_messages' into develop_integration_w05 2017-02-03 16:02:25 +01:00
Cedric Roux
bebc2a1088 Merge remote-tracking branch 'origin/bugfix-202-oai_nw_drv' into develop_integration_w05 2017-02-03 16:01:47 +01:00
Cedric Roux
b55d80ffd2 Merge remote-tracking branch 'origin/hotfix-201-oaisim-abstraction' into develop_integration_w05 2017-02-03 16:01:30 +01:00
Elena_Lukashova
883310d88d Adding standard test cases for dlsim_tm4. test case number is 015110.
All the test pass.
2017-02-03 12:36:16 +01:00
Florian Kaltenberger
358e6926ca initializing dlsch_SI and dlsch_RA in dlsim.c 2017-02-02 18:18:16 +01:00
Cedric Roux
d72294b966 fix gen_emm_data
It was not setting emm_data->eplmn.plmn[X], only emm_data->eplmn.n_plmns,
leading to the UE to dig for PLMN 00000.

(It's not the end of the story, seems like the PLMN selection
does not work, the UE only tries one from what I've seen, but
I didn't dig much, may be wrong.)
2017-02-02 17:10:59 +01:00
Xenofon Foukas
a3427bf85b Bug fixes for proper reporting of HARQs to the controller 2017-02-02 17:51:58 +02:00
Cedric Roux
ea6fb5c481 better handle user input in hex_string_to_hex_value
Adapt calling sites too.

When data comes from the user, it is good to check that
what we read is correct and warn the user if it's not.
2017-02-02 16:35:45 +01:00
Raymond Knopp
d141195ea3 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2017-02-01 23:18:10 -08:00
Raymond Knopp
90cb9d6cb8 adding RRU/Fronthaul functionality to oaisim 2017-02-01 23:17:54 -08:00
gabrielC
7b1cbfc326 Merge branch 'offset_correction' into develop_integration_w05 2017-02-01 15:59:03 +01:00
gabrielC
723510f684 Remove LOG_I 2017-02-01 15:53:52 +01:00
Laurent
094ac2f3ea merge with head of branch 2017-02-01 15:03:57 +01:00
Laurent
00ebfbb0bc fix merge compilation 2017-02-01 15:00:01 +01:00
gabrielC
c935da6414 Cell sync Offset was not applied correctly in all case 2017-02-01 14:07:19 +01:00
Laurent
9f33d0904b merge develop 2017-02-01 13:08:35 +01:00
Cedric Roux
163c37a5a3 bugfix: return error in 'emm_msg_encode' in case of failure 2017-02-01 12:17:39 +01:00
Navid Nikaein
0a91243ca5 merge branch various-l2-fixes with the develop branch 2017-02-01 11:52:53 +01:00
gabrielC
73dded9a21 Merge remote-tracking branch 'origin/issue200_ulharqfix' into develop_integration_w05 2017-02-01 10:34:35 +01:00
gabrielC
e45f26e48e Fix for ACK not send when DCI0 and DCI1 received at same sfn 2017-02-01 10:26:59 +01:00
Xenofon Foukas
6d6e1c8687 Stability improvements for remote real-time control 2017-01-31 19:15:51 +02:00
gabrielC
03a39ccae2 Merge branch 'UE_S1_compilation' into develop_integration_w05 2017-01-31 14:22:08 +01:00
hbilel
29cc22bd18 [OAI-UE] bugfix issue#204: fix for pss/sss extraction during scan period 2017-01-31 09:53:15 +01:00
gabrielC
0e42ffa2a0 UE compilation for S1 2017-01-31 09:45:24 +01:00
fnabet
5551c5e596 Merge tag '2017.w04' into bugfix-189-rlc-am-fixes 2017-01-30 18:17:14 +01:00
fnabet
66b93704e2 RLC AM fix poll criteria 2017-01-30 18:16:16 +01:00
Cedric Roux
2d8ae33544 T: remove ENB_MAC_UE_UL_PDU_WITH_DATA from group HEAVY
we want those traces in the logs people send to us and
the group HEAVY is disabled in the wiki instructions.
2017-01-30 17:25:43 +01:00
Cedric Roux
03bf3a6dc5 put UE T messages above VCD ones
looks better
2017-01-30 17:24:44 +01:00
Cedric Roux
bb903e8d4f add/remove T traces to be up to date with current software 2017-01-30 17:24:08 +01:00
Cedric Roux
452b63fc36 remove oai_nw_drv from test setup 2017-01-30 16:06:25 +01:00
Cedric Roux
dd9778924d hotfix to be removed: oaisim -a abstraction flag disabled
The abstraction mode of oaisim does not work for the moment, it's better
to exit than to crash somewhere randomly.
2017-01-30 15:52:18 +01:00
Elena_Lukashova
90fbbe7ef4 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2017-01-30 15:16:09 +01:00
Elena_Lukashova
a51c30f459 Merge branch 'develop' into feature-59-tm4
dlsim_tm4 works fine.
dlsim has a bug in llr processing after llr computations (see XFORMS).
2017-01-30 13:37:24 +01:00
Xenofon Foukas
6337bc77b1 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-01-30 14:24:14 +02:00
Xenofon Foukas
f1d4f4b93c Changed behavior of API for PUCCH power reports 2017-01-30 14:23:19 +02:00
hbilel
7b64eae285 [OAI-UE] issue#200 release harq p[rocess after sending Ack 2017-01-30 12:00:08 +01:00
Cedric Roux
4eae34a9d8 Merge branch 'develop_integration_w04' into 'develop'
Develop integration w04

See merge request !93
2017-01-30 10:20:34 +01:00
Cedric Roux
61b3de99cb fix autotest v2 2017-01-30 09:28:35 +01:00
Raymond Knopp
02148c7950 refit for USRP (control of DSP cordic), no more trx_stop during synchronization 2017-01-29 16:15:08 -05:00
Raymond Knopp
afb60b8500 initial LMS7002M register configuration. modifications for lte-ue and rf_device to use LimeSDR. 2017-01-28 17:32:16 -05:00
Xenofon Foukas
9224d36176 Fixed bug that prohibited 2 UEs to be scheduled at the same time 2017-01-27 19:19:17 +02:00
Cedric Roux
dc5f420d88 fix compilation of unitary simulators
I'm not sure the fixes are correct.
2017-01-27 18:11:52 +01:00
Cedric Roux
0c13a37517 Merge branch 'timingOffsetLoopBranch' into develop_integration_w04 2017-01-27 16:16:46 +01:00
Cedric Roux
d1ef731728 Merge branch 'bugfix-197-autotest-fixes-2017-w03' into develop_integration_w04 2017-01-27 16:16:14 +01:00
Cedric Roux
11b3e6dfbb Merge branch 'bugfix-196-oai_nw_drv-compilation' into develop_integration_w04 2017-01-27 16:14:52 +01:00
Cedric Roux
53e416be0b update license information
Also included some source files not related to this branch.

	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_bf_channel_estimation.c
	modified:   openair1/PHY/LTE_TRANSPORT/pilots_ue_spec.c
	modified:   openair1/PHY/MODULATION/beamforming.c
	modified:   openair1/PHY/TOOLS/twiddle18432.h
	modified:   openair1/SIMULATION/LTE_PHY/dlsim_tm7.c
	modified:   openair3/NAS/TOOLS/nvram.c
	modified:   openair3/NAS/TOOLS/usim.c
	modified:   openair3/NAS/UE/user_defs.h
2017-01-27 16:09:56 +01:00
Cedric Roux
106f31524b update CMakeLists for ubuntu 16.04
The previous version did not compile on ubuntu 16.04.
I left the old version, commented, just in case.
2017-01-27 15:58:17 +01:00
Cedric Roux
f6e42ce9e4 fix compilation of oaisim
That's not the end of the story though.
2017-01-27 15:52:22 +01:00
Cedric Roux
c62b54a030 remove duplicated definitions
I am not sure if it's the right way to solve the
problem, so I keep the definitions here and
put them inside #if 0 #endif
2017-01-27 15:49:45 +01:00
Cedric Roux
1cd46a75d7 add missing #ifndef #endif guards in header file
modified:   targets/COMMON/openairinterface5g_limits.h
2017-01-27 15:49:00 +01:00
Florian Kaltenberger
b9407c40cf adding missing file 2017-01-27 15:31:39 +01:00
Anta Huang
471a7d7d10 revert the value of the aggregation 2017-01-27 10:49:04 +01:00
Elena_Lukashova
b98bb25fba Merge branch 'feature-60-tm4-fork' into feature-59-tm4
1. TM4 works on dlsim_tm4.c with full HARQ support for both PIA and SIC.
2017-01-27 10:36:10 +01:00
hbilel
d34a8019b2 [OAI UE] Fix: use double buffer for rxDataF, dlChannelEst and pdsch context
since two rx threads (even/odd) are used by OAI-UE
2017-01-27 08:18:02 +01:00
Anta Huang
c84f68cefc fix the issue with RAN sharing 2017-01-26 18:43:05 +01:00
Elena_Lukashova
e88561e90d copying dlsim.c to dlsim_tm4.c 2017-01-26 10:51:29 +01:00
Xenofon Foukas
974e5beebc Harmonized FlexRAN scheduler with MAC changes for support of multiple UEs 2017-01-25 20:02:38 +02:00
Elena_Lukashova
60eddd2c8f Fixing write_output arguments in dlsim_tm4.c 2017-01-25 17:42:04 +01:00
gabrielC
0dd076a37a [OAI-UE] fix time tracking and channel interpolation 2017-01-25 17:23:32 +01:00
Elena_Lukashova
a33a3ead22 1.Fixing the bug in lte_ue_measuments.c for rank indicator.
2. Fixing the arguments in the dump_dlsch2.
2017-01-25 17:21:56 +01:00
fnabet
26d99fae5d add changes for Tx Status PDU report 2017-01-25 17:06:37 +01:00
Xenofon Foukas
422c06c932 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-01-25 16:18:44 +02:00
Imad ALAWE
d2e02ee2e6 BUGFIX: Ip table clean when oaisim starts
Ip table clean use to run on oaisim shutdown. It is moved to run on oaisim starts.
2017-01-25 13:59:47 +01:00
Imad ALAWE
8bff2cff3e BUGFIX(GTP-U): Add missing ip rules in order to have point to point connection 2017-01-25 13:59:47 +01:00
Imad ALAWE
b3ded7799a openairinterface5g: Fix multi definition of UE/eNB NB_MAX
In openairinterface5g many definitions in many layers of UE or eNB NB_MAX.
We created a file called openairinterface5g_limits.h
located at openairinterface5g_dir/targets/COMMON/ declaring the number max
of UE and eNB to be used in ALL layers depending on launching conditions
(LARGE_SCALE for example).
2017-01-25 13:58:53 +01:00
Imad ALAWE
a731de2f13 openair2: fix abstraction mode for oaisim with MME
When using abstraction mode, layer2_init_UE() and openair_rrc_ue_init()
are called according to first_sync state and only without MME support.

We added the global variable abstraction_flag to allow abstraction mode
when MME is enabled.
Openair2 is also used in lte-softmodem, so it must have a global variable
abstraction_flag. So we moved it out from the main() scope.
2017-01-25 13:34:14 +01:00
Frédéric Leroy
3fdcf5b676 feat(conf2uedata): uses nvram and usim binary
This commit reverts behaviour of data generation as before
commit 7207c65b05fd812a18371827f2bfb1431fc58696:

    fix .ue* filenames in scripts and documentation

    TODO add option to conf2uedata and adapt script
2017-01-25 13:29:48 +01:00
Frédéric Leroy
3d0fbc00a1 feat(conf2uedata): reintroduce nvram binary 2017-01-25 13:29:48 +01:00
Frédéric Leroy
30fde6bfe2 feat(conf2uedata): reintroduce usim binary 2017-01-25 13:29:48 +01:00
Frédéric Leroy
e439a24f03 feat(conf2uedata): print USIM filename on display 2017-01-25 13:29:48 +01:00
Frédéric Leroy
d8aa8d4a64 fix(conf2uedata): update INT_ALGO to match openair develop branch 2017-01-25 13:29:48 +01:00
Frédéric Leroy
95503ffd52 fix(conf2uedata): update ue_eurecom_test_sfr.conf to match openair develop branch 2017-01-25 13:29:48 +01:00
Frédéric Leroy
747cea249b feat(conf2uedata): add a selector for displaying files 2017-01-25 13:29:48 +01:00
Frédéric Leroy
af4027660b feat(conf2uedata): add a selector for writing files 2017-01-25 13:29:48 +01:00
Frédéric Leroy
6c588589ac refactor(conf2uedata): move parser functions to conf_parser.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
bf699414d1 style(conf2uedata): use bool type for readability 2017-01-25 13:29:48 +01:00
Frédéric Leroy
86c8d0f95a refactor(conf2uedata): move plmns functions to conf_user_plmn.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
51c7753526 refactor(conf2uedata): move networks function to conf_networks.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
1b54e18a47 refactor(conf2uedata): add networks_t for managing known_networks 2017-01-25 13:29:48 +01:00
Frédéric Leroy
8d36213f6f refactor(conf2uedata): add make_plmn_from_conf() 2017-01-25 13:29:48 +01:00
Frédéric Leroy
459a6ec372 refactor(conf2uedata): use user_plmns struct to store plmns lists
This remove the old static lists
2017-01-25 13:29:48 +01:00
Frédéric Leroy
c86b437eb3 refactor(conf2uedata): make plmns_list struct for managing plmns 2017-01-25 13:29:48 +01:00
Frédéric Leroy
fcb857e508 refactor(conf2uedata): add parse_Xplmn() to read *plmns 2017-01-25 13:29:48 +01:00
Frédéric Leroy
5c8410c56f fix(conf2uedata): make hplmn_index a local variable
There was a side effect corrupting data because hplmn_index was not computed.
2017-01-25 13:29:48 +01:00
Frédéric Leroy
7fe8d45d6a refactor(conf2uedata): move usim_data funcions in conf_usim.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
f03e2dbc0e refactor(conf2uedata): move user_data function in conf_user_data[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
eeb44860e9 refactor(conf2uedata): move emm_data funcions in conf_emm.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
ef2dee59d4 refactor(conf2uedata): separate processing and writing of data 2017-01-25 13:29:48 +01:00
Frédéric Leroy
8461a56aa1 refactor(conf2uedata): add fs.[h|c] and display.[c|h] 2017-01-25 13:29:48 +01:00
Frédéric Leroy
8ae72d1cf1 refactor(conf2uedata): put display out of build 2017-01-25 13:29:48 +01:00
Frédéric Leroy
e2dc453b62 fix(conf2uedata): fix missing extern in header 2017-01-25 13:29:48 +01:00
Frédéric Leroy
292535fe06 refactor(conf2uedata.c): rewrite main() and add parse_config_file() 2017-01-25 13:29:48 +01:00
Frédéric Leroy
804595d483 style(conf2uedata.c): rewrite main() for readability 2017-01-25 13:29:48 +01:00
Frédéric Leroy
33b2d11fc2 fix(conf2uedata): clarify error message when config file does not exists 2017-01-25 13:29:48 +01:00
Frédéric Leroy
fe2193ba75 fix .ue* filenames in scripts and documentation
TODO add option to conf2uedata and adapt script
2017-01-25 13:29:48 +01:00
Imad ALAWE
17d155325a feat: add conf2uedata tool for generating .*.nvram
This patch adds the conf2uedata tool for generating .ue.nvram* .ue.emm.nvram*
and .usim.nvram* files from a textual configuration file.

The configuration file define most usefull values like plmns, mnc, mcc, msin, K,
OPc for several users.
The files generated will always ends with a number corresponding to the user
entry in the configuration file.

This breaks oai5g because other script have not be updated for using
conf2uedata.
This breaks also the at_nas_ue command.

Examples of configuration files are in openair3/NAS/TOOLS/
2017-01-25 13:29:48 +01:00
Frédéric Leroy
c4707bd8b7 UE: fix nvram_data load filename 2017-01-25 13:29:10 +01:00
Frédéric Leroy
b43c6cbfdd nas_ue_task: add support for multiple UE 2017-01-25 13:29:10 +01:00
Frédéric Leroy
8bc36c3b96 UE/EMM: move emm_nvram filename to nas_user_t 2017-01-25 13:29:10 +01:00
Frédéric Leroy
260e696c8b UE: move nvram data filename to nas_user_t 2017-01-25 13:29:10 +01:00
Frédéric Leroy
5fc045644c UE/USIM/API: fix interface for storing usim_data 2017-01-25 13:29:10 +01:00
Frédéric Leroy
45fccb0203 UE/API/USIM: move hex functions to common/utils.c 2017-01-25 13:29:10 +01:00
Frédéric Leroy
9af3599153 UE: add nas_user_api_id_initialize() function 2017-01-25 13:29:10 +01:00
Frédéric Leroy
e36aee0b7f UE: factorize calloc() calls and exit on failure 2017-01-25 13:29:10 +01:00
Frédéric Leroy
dcf35b2af1 UE/EMM: fix emm_proc_lowerlayer_* prototype 2017-01-25 13:27:43 +01:00
Frédéric Leroy
5367d5dc3f UE/EMM: move _lowerlayer_data to nas_user_t 2017-01-25 13:27:43 +01:00
Frédéric Leroy
1ca4d551b8 UE: review and annotate code with FIXME 2017-01-25 13:27:43 +01:00
Frédéric Leroy
8d34217ce4 UE: add user instance to itti messages 2017-01-25 13:27:43 +01:00
Frédéric Leroy
556d5a65e9 UE/*: exit on error 2017-01-25 13:24:30 +01:00
Frédéric Leroy
fcf2444ee1 UE/EMM: remove redondant ueid in prototypes 2017-01-25 13:24:30 +01:00
Frédéric Leroy
64e296ed67 UE/API/USER: remove fd from nas_user_t 2017-01-25 13:24:30 +01:00
Frédéric Leroy
38d7adc7e3 UE/*: fix ueid = 0 2017-01-25 13:24:30 +01:00
Frédéric Leroy
c7a36ec6d2 UE/EMM/LowerLayer: move ueid to nas_user_t 2017-01-25 13:24:30 +01:00
Frédéric Leroy
e6daacf7ea UE/API/USER: move _user_api_*_buffer to user_api_id_t 2017-01-25 13:24:30 +01:00
Frédéric Leroy
a99e1a95af API/USER: move _user_api_id to nas_user_t 2017-01-25 13:24:30 +01:00
Frédéric Leroy
53fa94785a UE/EMM: remove extern definitions for timers 2017-01-25 13:24:30 +01:00
Frédéric Leroy
5ab2fccf2f UE/API/USER: rename _user_data to user_at_commands_t and move it to nas_user_t 2017-01-25 13:23:18 +01:00
Frédéric Leroy
26538bb9e2 UE/API/USIM: move OP to usim_keys_t 2017-01-25 13:23:18 +01:00
Frédéric Leroy
5b90bcbd25 UE/EMM/SAP: fix misuse of extern for emm_proc_plmn_selection_end() and emm_proc_status() 2017-01-25 13:21:50 +01:00
Frédéric Leroy
b33b4df006 UE/API: rename _usim_api_data to usim_sqn_data and move it to usim_data 2017-01-25 13:21:50 +01:00
Frédéric Leroy
ec889250a5 UE/API: remove old Makefiles 2017-01-25 13:20:21 +01:00
Frédéric Leroy
c875b44958 UE/API/USIM: move _usim_api_k to usim_keys_t 2017-01-25 13:19:39 +01:00
Frédéric Leroy
60032f57b4 UE/EMM: move _emm_attach_data to emm_data_t 2017-01-25 13:12:43 +01:00
Frédéric Leroy
289f1ea971 UE/EMM: move _emm_detach_data to emm_data_t 2017-01-25 13:12:43 +01:00
Frédéric Leroy
46438c7cd9 UE/ESM: move _default_eps_bearer_context_data to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
404c346182 UE: rename _nas_user_data to at_response and move it to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
607f0ca377 UE: remove _nas_user_context from comments 2017-01-25 13:12:20 +01:00
Frédéric Leroy
83e1dc9ed0 UE: move _nas_user_nvdata to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
9a33bca200 UE: move _nas_user_context to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
ef05c1d900 UE/EMM: move static T34XX timers to emm_data_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
491f299bf2 UE/EMM: move _security_data to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
5899af2efd UE/EMM: move _authentication_data to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
576bbd252c UE/EMM: move _usim_data to nas_user_t 2017-01-25 13:12:20 +01:00
Frédéric Leroy
7340b5e071 UE/EMM: move _plmn_list to nas_user_t 2017-01-25 13:11:30 +01:00
Frédéric Leroy
2d7f557ae9 UE/EMM: fix buggy condition in IdleMode.c 2017-01-25 13:10:39 +01:00
Frédéric Leroy
5665b05c7c UE/EMM: move _emm_data to nas_user_t 2017-01-25 13:08:58 +01:00
Frédéric Leroy
809be889a7 UE/ESM: move _esm_ebr_data to nas_user_t 2017-01-25 13:08:19 +01:00
Frédéric Leroy
f99e5e1ff0 UE/ESM: remove useless #if directive in esm_ebr.c 2017-01-25 13:08:19 +01:00
Frédéric Leroy
84fa851dfa UE/ESM: use static buffer per UE to allow reentrancy in esm_sap.c 2017-01-25 13:08:19 +01:00
Frédéric Leroy
7ff4939da6 UE/EMM/SAP: move _emm_fsm_status to nas_user_t 2017-01-25 13:08:19 +01:00
Frédéric Leroy
73937668f0 UE/ESM: move _esm_pt_data to nas_user_t 2017-01-25 13:08:19 +01:00
Frédéric Leroy
e6b5e1c34d UE: fix at_nas_ue compilation 2017-01-25 13:08:19 +01:00
Frédéric Leroy
844a8af418 UE/ESM: move _esm_data to nas_user_t 2017-01-25 13:08:19 +01:00
Frédéric Leroy
55364a8860 UE/ESM: fix esm_pt_start_timer callback 2017-01-25 13:08:19 +01:00
Frédéric Leroy
223247ceb0 UE/EMM: add nas_user_t parameter to emm_sap_send
Surprisingly, it touches every part of openair3, and most of the prototype.
Moreover, a special attention have been put to callback review.
However, there are still places to fix or review indicated by FIXME
2017-01-25 13:08:19 +01:00
Frédéric Leroy
4742178aee UE/ESM: Make _esm_data a pointer instance
This patch adds esm_data_t parameter to ESM functions.
This fixes a bug where the old _esm_data was redefined in all .o

Signed-off-by: Frédéric Leroy <frederic.leroy@b-com.com>
2017-01-25 13:06:35 +01:00
Frédéric Leroy
d4de8aaf0f UE: use nas_user_t in nas_* function prototype
This patch merely adds a "user" object in all nas_* functions.
This don't move any data structure.
It allows next patches to be nicely split.

Signed-off-by: Frédéric Leroy <frederic.leroy@b-com.com>
2017-01-25 13:06:35 +01:00
Frédéric Leroy
ee82aed182 UE: move _nas_proc_data to nas_user_t struct 2017-01-25 13:06:35 +01:00
Frédéric Leroy
2ee6ae11df UE: create a user and move user_fd into the nas_user_t struct 2017-01-25 13:06:13 +01:00
Frédéric Leroy
7c8dbbdb25 UE: introduce the nas_user_t type in user_defs.h 2017-01-25 13:06:13 +01:00
Frédéric Leroy
2d8cf88884 openair2/RRC/LITE: remove fixed ue_mod_id = 0 2017-01-25 13:06:13 +01:00
Frédéric Leroy
b4cbddb970 UE: move nas_ue_task.h from openair2 to openair3/NAS/UE 2017-01-25 13:06:13 +01:00
Frédéric Leroy
3835f10659 UE/ESM: move esm_indication_callback_t from openair2 to esm_ebr.h 2017-01-25 13:06:13 +01:00
Frédéric Leroy
3df061b540 UE/EMM: move emm_indication_callback_t from openair2 to emm_main.h 2017-01-25 13:06:13 +01:00
gabrielC
7a2984e8ae [OAI-UE] TimingOffset tracking faster loop 2017-01-25 10:57:20 +01:00
Xenofon Foukas
d0476cb02b Fixed various bugs related to scheduling using agent 2017-01-24 17:39:44 +02:00
Cedric Roux
68ff688b71 autotest v2: source oaienv in execution.bash 2017-01-24 10:03:50 +01:00
Cedric Roux
7aa57b4d84 remove compilation of oai_nw_drv
The compilation of this module does not seem to be necessary,
as far as I have checked. Plus it fails when you run
"build_oai --oaisim --noS1", so let's not compile it.
2017-01-23 13:56:10 +01:00
Cedric Roux
2045a49313 Merge branch 'develop_integration_w03' into 'develop'
Develop integration w03

See merge request !89
2017-01-23 10:55:32 +01:00
Cedric Roux
101d28e9da integration fix: fix compilation of ulsim
Hopefully the right argument is passed to this function.
2017-01-23 10:32:39 +01:00
Florian Kaltenberger
e84a00174b choosing the right version of the unresolved merge conflict in beamforming.c
changed the memory allocation of txdataF and beam_weigths
2017-01-21 16:20:10 +01:00
Cedric Roux
37a18b2530 integration fix: bad #if #endif position 2017-01-20 17:22:43 +01:00
Cedric Roux
af67618095 Merge branch 'bugfix-188-multi-UEs-fixes' into develop_integration_w03 2017-01-20 17:05:00 +01:00
Cedric Roux
69c8b8a933 Merge branch 'feature-68-enb-agent' into develop_integration_w03 2017-01-20 16:59:16 +01:00
Cedric Roux
74d07a70f6 Merge branch 'enhancement-192-beamforming' into develop_integration_w03
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/MODULATION/beamforming.c
	openair1/PHY/defs.h
	targets/RT/USER/lte-enb.c
2017-01-20 16:58:29 +01:00
Cedric Roux
e6f3c9b899 Merge branch 'enhancement-10-harmony' into develop_integration_w03
Conflicts:
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
2017-01-20 16:49:39 +01:00
Cedric Roux
da0cbaf86c fix: add /usr/include/lime to include directories
when testing on haswell, using apt-get to install LimeSDR
libraries and includes, it put it in /usr/include, not
/usr/local/include
2017-01-20 16:38:26 +01:00
Cedric Roux
f7fb0280a0 Merge branch 'develop-new-LMSSDR' into develop_integration_w03 2017-01-20 16:37:44 +01:00
Cedric Roux
a0f19a7265 add some printf for debug purpose (to be remove at some point)
this commit is here to help debug the previous ones.

It has to be reverted at some point.
2017-01-20 15:48:49 +01:00
Cedric Roux
a6219153d9 check (to be reworked at some point)
We put an abort() at this point in the code, because
if the previous commit is correct, the program will
never comme here.
2017-01-20 15:47:08 +01:00
Cedric Roux
da75a07870 rewrite sort_UE for UL and DL and adapt the rest to the change
The previous version did not seem to work properly with
several UEs. I too often ended up with a list 'next' where
next[i] = i, leading to an infinite loop, crashing the
processing.

The sorting functions were hard to understand and too slow
anyway (O(n*n)).

We now use qsort_r and comparison functions, that should
define the same order as the previous version.

One important point is that the "next" lists and the "head"
variable are now considered invalid before calling sort_UE.

So all the code (coming before sort_UE) that looped using those
variables has been rewritten to loop over all possible UEs and
the first instruction of the loop is to exit the loop if the UE
is not 'active'. There is room for improvement here. We will
reintroduce a list of some kind at some point. Let's first
have something that works and then optimize. Today NUMBER_OF_UE_MAX
is 16, that's not a big deal.

Consequently, the add_new_ue and rrc_mac_remove_ue have also
been rewritten, hopefully for the better.

This commit is not a basic work and may introduce some
problems.
2017-01-20 15:36:58 +01:00
Cedric Roux
c824eea074 better (maybe) freeing of RA process when an UE is removed from MAC
The RA process may be in the state:
RA_active == FALSE and wait_ack_Msg4 == 1

Testing only the rnti should be enough, if everything else works
properly.

Also, don't break, just in case. (Not sure it makes a
difference.)
2017-01-20 15:21:37 +01:00
Cedric Roux
c3c2b774d6 bugfix: do not get pCC_id if UE_id is invalid 2017-01-20 15:15:58 +01:00
Cedric Roux
0d3fa21187 add a LOG in RA 2017-01-20 15:11:40 +01:00
Cedric Roux
428c2212aa fix: better creation of RNTI
The previous version was calling taus(), which
may return any value in [0..65535].

The new version restricts it to [1024..59999]
(arbitrary values, big enough, and in the valid range).

It also checks that the new RNTI is not already present
in the MAC.

I think we should also check that it's not used by a RA
process.

The "loop" thing may not be the best solution either.

To be refined.
2017-01-20 15:09:05 +01:00
Cedric Roux
c1fee62473 RA: fix allocation of RA process
A RA process is not available if
and RA_template[i].wait_ack_Msg4 != 0

We can have RA_active==FALSE and wait_ack_Msg4==1,
in which case the RA process is in use and cannot
be reassigned.
2017-01-20 15:05:28 +01:00
Cedric Roux
a5d5a21ddb "fix" handling of UE_id in RA.
What if it's -1? Is it possible?
We catch the case and abort.

We may do a proper fix if the case happen.
I don't think it will, but who knows...
2017-01-20 15:01:51 +01:00
Cedric Roux
89445da9eb attempting at fixing RRC
RRC does not work very well when one UE goes away and comes
back in some situations.

This commit is an attempt at making things work better.

It is probably not the end of the story.
2017-01-20 14:59:24 +01:00
Cedric Roux
c33afccb1b bugfix: logging was done after modification of values
It resulted in wrong log message, leading to complicated
debugging.
2017-01-20 14:57:28 +01:00
Cedric Roux
2a1d1134e9 log an error if UE is -1 in rrc_mac_config_req 2017-01-20 14:54:19 +01:00
Raymond.Knopp
56241235cf rcc configuration file band 7 if5. 2017-01-20 08:44:41 +01:00
Cedric Roux
2c578f350a remove XER printing in asn1_msg.c, too verbose 2017-01-19 17:23:15 +01:00
Cedric Roux
390085c377 remove printing of UE capabilities on stdout
Modern UEs have very long UE capabilities.
It disrupts realtime behaviour of the modem.

Let's put a simple log message indicating we got the
UE capabilities.
2017-01-19 12:47:50 +01:00
Navid Nikaein
27a1101a58 add support for RAN/radio resource slicing through flexran 2017-01-19 12:44:20 +01:00
fnabet
b77694e89c main AM RX process PDU changes 2017-01-19 11:40:03 +01:00
Cedric Roux
5933f21882 hack to avoid zombie UEs in the MAC layer
Here is the problem:
    Sometimes the UE has no PHY context but
    is still present in the MAC with 'ul_failure_timer' = 0 and
    'ul_out_of_sync' = 0. It seems wrong and the UE stays there forever. Let's
    start an UL out of sync procedure in this case.
    The root cause of this problem has to be found and corrected.
    In the meantime, this hack...

This has to be redone at some point.
2017-01-19 10:00:19 +01:00
Cedric Roux
38b387794e hack in RLC AM to avoid a race
Here is the problem:
    UE comes. SRB2 is configured via message to RRC.
    At some point the RLC AM is created but not configured yet.
    At this moment (I think) MAC calls mac_rlc_status_ind
    which calls this function. But the init was not finished yet
    and we have a crash below when testing mem_block != NULL.

The "solution" is to test if rlc->input_sdus is NULL.
This is a very dirty hack. I would say the solution
is to use proper locking mechanism because RLC is used
by two threads: PHY/MAC on one hand and RRC on another
hand (I think).
2017-01-19 09:57:43 +01:00
Cedric Roux
05d02c43ec remove annoying logging (dump_CCE_table) 2017-01-19 09:49:39 +01:00
Florian Kaltenberger
e0c7479122 and one more fix 2017-01-19 09:32:29 +01:00
Raymond Knopp
6b45e869e1 separation of RU 2017-01-18 09:10:10 -08:00
Florian Kaltenberger
0695828e4c some fixes 2017-01-18 16:43:02 +01:00
Florian Kaltenberger
b0b5cb21e5 Beamforming is now only done when necessary. This patch is based on one from enhancement-10-harmony. 2017-01-18 15:31:04 +01:00
Raymond.Knopp
1224cf44ae switch RX to HIGH band input by default 2017-01-18 14:14:07 +01:00
Tien-Thinh Nguyen
dce5191542 update to make harmony work with Mobipass[Ercom] 2017-01-18 13:53:05 +01:00
Raymond.Knopp
773afc1490 TX power calibration, RX_W by default 2017-01-18 13:21:07 +01:00
Raymond.Knopp
12cc35932a Merge branch 'develop' into develop-new-LMSSDR
Conflicts:
	targets/RT/USER/lte-softmodem.c
2017-01-18 10:44:37 +01:00
Cedric Roux
adbc609bbf bugfix: reset DCI count before adding one
The management of uplink failure generates a DCI to send
a RA PDCCH order. It calls add_ue_spec_dci which increases
DCI_pdu[CC_id]->Num_ue_spec_dci, but this was reset to 0
*after* the DCI generation. Let's reset *before*.

Bug reported by Liang Yong on openair5g-user mailing list.
2017-01-18 10:33:52 +01:00
Florian Kaltenberger
550759231d change loop limit to NB_ANTENNA_PORTS_ENB 2017-01-18 09:38:14 +01:00
Florian Kaltenberger
a5e6690ded adding multadd_cpx_vector 2017-01-18 09:33:39 +01:00
Xiwen JIANG
ab57b0ddd3 replace the conjugate vector multiplexing with direct vector multiplexing 2017-01-18 09:16:13 +01:00
Florian Kaltenberger
8a9ef14e4f reduced the max number of antenna ports to 6 to save memory (we are not using antenna port >5 anyway)
mult_cpx_conj_vector can now also do multiply add
beam_precoding now uses mult_cpx_conj_vector

Conflicts:
	openair1/PHY/MODULATION/beamforming.c
2017-01-18 09:15:57 +01:00
Navid Nikaein
fdbab0e856 fix the aggregation format for dump_CCE_table 2017-01-16 18:31:45 +01:00
Cedric Roux
67e53e72ab fix the use of get_eNB_UE_stats
The function may return NULL if the UE has been dropped
in the PHY layer but is still present in the MAC layer.

Deal with the NULL case everywhere it's needed.
2017-01-16 17:07:47 +01:00
Xenofon Foukas
84b61f2264 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2017-01-16 17:47:17 +02:00
Xenofon Foukas
9fc584d173 Fixed FlexRAN-related warnings 2017-01-16 17:45:58 +02:00
Xenofon Foukas
dc8190dc6a Fixed issue with #pragma warnings in liblfds 2017-01-16 17:44:43 +02:00
Tien-Thinh Nguyen
73920f3f6e [minor modification] fixed the issue related to TX with FDD 2017-01-16 16:08:40 +01:00
Cedric Roux
dec41a2a99 Merge branch 'develop_integration_w02' into 'develop'
Develop integration w02

See merge request !82
2017-01-16 10:20:01 +01:00
Cedric Roux
0af4c17000 fix phy simulators compilation - for real
This is the real fix, d5a6817887
was not the right solution.
2017-01-16 09:52:14 +01:00
Navid Nikaein
97db12c9f2 better setting of aggregation level as a function of cqi and bw 2017-01-15 20:28:07 +01:00
Raymond Knopp
8be18c360b debugging for RRU if4p5 TDD 2017-01-15 08:58:26 +01:00
Raymond Knopp
2da964bb2d changes for RRU TDD if4p5 2017-01-15 01:07:30 +01:00
Raymond.Knopp
84c61990b7 fix for S-subframe handling (if4p5_asynch_DL) 2017-01-14 16:23:13 +01:00
Raymond Knopp
4c78c177db Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	openair1/SCHED/phy_procedures_lte_eNb.c
	targets/RT/USER/lte-enb.c
2017-01-14 22:54:12 +01:00
Raymond Knopp
6fd41105c9 RRU changes for S-Subframe 2017-01-14 22:40:36 +01:00
Raymond.Knopp
9ee29fb0b2 changes for S-subframe support in fronthaul 2017-01-14 14:35:19 +01:00
Raymond Knopp
0f47f01cae Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2017-01-13 19:52:48 +01:00
Raymond Knopp
848f78465b addition of IF4p5 ULTICK packet for TDD fronthaul 2017-01-13 19:49:22 +01:00
Cedric Roux
ff11cf5f23 Merge branch 'bugfix-183-LOG_X-format' into develop_integration_w02 2017-01-13 17:16:16 +01:00
Cedric Roux
fe2446b7e3 Merge branch 'bugfix-185-simulator-compilation' into develop_integration_w02 2017-01-13 17:14:23 +01:00
Cedric Roux
c6a2cf042a Merge branch 'bugfix-186-rrh-gw-compilation' into develop_integration_w02 2017-01-13 17:12:57 +01:00
Cedric Roux
c88ec0bd81 Merge branch 'bugfix-184' into develop_integration_w02 2017-01-13 17:09:24 +01:00
Cedric Roux
31cbb18f0e Merge branch '180-fix_TDDConfigurationFileParseRrror' into develop_integration_w02 2017-01-13 17:07:13 +01:00
Cedric Roux
490492cbfa Merge branch '182-MistakeLogicalOperatorsAndBitwiseOperators' into develop_integration_w02 2017-01-13 17:04:18 +01:00
Cedric Roux
7edff5fe0b Merge branch 'bugfix-181-oaisim' into develop_integration_w02 2017-01-13 17:02:42 +01:00
Cedric Roux
adfaa6d9f3 Merge branch 'develop-new-LMSSDR' into develop_integration_w02
Conflicts:
	targets/RT/USER/lte-softmodem.c
2017-01-13 17:01:30 +01:00
Raymond.Knopp
90015dfb35 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2017-01-13 14:17:42 +01:00
Raymond.Knopp
5715de89f2 changes for TDD fronthaul 2017-01-13 14:17:26 +01:00
Cedric Roux
ab7a3e8e9c fix compilation of RRH GW
I am not sure this is the correct solution.

The problem seems to be that the RRH GW does not use ITTI
and thus the type 'as_nas_info_t' is not defined, and then
the compilation fails.

The simple fix is to include 'as_message.h' in
'openair2/RRC/LITE/defs.h' if ENABLE_ITTI is not
defined. Maybe it's not good. RRH GW compiles with this fix.
2017-01-12 17:58:28 +01:00
Cedric Roux
d5a6817887 fixing mbmssim and pdcchsim compilation
"frame" is not defined, we pass 0 instead.

Maybe not the right solution.
2017-01-12 17:32:54 +01:00
Florian Kaltenberger
ccdb80efbc initializing N_TA_offset for TDD eNB. Fixes issue 184. 2017-01-12 10:57:35 +01:00
calvin wang
801a2e5de7 fix mistake bitwise operators 2017-01-12 16:47:57 +08:00
Cedric Roux
669aa1fbcf fix duplicated definition of boolean_t
It is defined both in openair2/COMMON/commonDef.h and
openair2/COMMON/platform_types.h.

Removing one or the other definition creates many problems
when compiling this or that part of the system (ue_ip.ko,
at_nas_ue). Let's keep both and protect the definitions
inside #ifdefs.
2017-01-12 09:27:22 +01:00
Cedric Roux
237da58846 fix a warning in openair3/NAS/UE/EMM/IdleMode.c
I'm not sure this is the right fix, so I put a LOG_TRACE
that is displayed when the code comes here.
2017-01-12 09:26:51 +01:00
Laurent
396d59ff22 merge last develop 2017-01-11 23:07:22 +01:00
Raymond.Knopp
c70e705aa4 lmssdr configuration file 2017-01-11 16:10:27 +01:00
Cedric Roux
89cff54730 remove '#define OPENAIR_LTE' from openair1/PHY/defs.h 2017-01-11 16:00:36 +01:00
Cedric Roux
00b7568ed2 warning fix: remove duplicate typedef for 'instance_t'
I chose to remove it from common/utils/itti/itti_types.h,
maybe it's not the correct solution.
2017-01-11 15:57:52 +01:00
Cedric Roux
9df4a4910d fix warnings in openair1/PHY/MODULATION/compute_bf_weights.c
Several various fixes are included. Not sure what component of
the system uses this file.

There is one 'abort' added in case a fscanf fails. It may be a
bit too brutal.
2017-01-11 15:56:20 +01:00
Cedric Roux
d36e4e4c85 fix minor warning 2017-01-11 15:55:55 +01:00
Cedric Roux
a36ccb97a2 remove 'variable may be used uninitialized' warning
This is not absolutely necessary (the processing is ok),
but the warning is annoying.
2017-01-11 15:54:54 +01:00
Cedric Roux
22942608fa fix 'unused variables' warning 2017-01-11 15:53:41 +01:00
Cedric Roux
f45256c66b fix LOG_X macros - addendum
I forgot one file in the previous commit
2017-01-11 15:50:58 +01:00
Cedric Roux
f2f32f5340 fix LOG_X macros
Some of them might not be correctly handled.
I put /* TODO: XXX */ where I didn't know if
the fix was correct.
2017-01-11 15:48:00 +01:00
calvin wang
3ec3d2a6b1 fix mistake logical and bitwise operators 2017-01-11 14:56:56 +08:00
Cedric Roux
f3b84e7495 include init_nas_s1 in the repository
init_nas_s1 may not work properly, but many people complain
about this file, so let's put it in the repository.

We'll fix it at some point if it's not properly usable.
2017-01-10 16:52:52 +01:00
Cedric Roux
cb67d586a4 add format indicator to get LOG_X warnings
The LOG_X macros emit a lot of warnings when compiling with the T
because they call the function logRecord (or logRecord_mt)
which has not been "marked" as calling printf, so gcc won't
emit typical printf warnings.

With the T, they directly translate to sprintf, so those warnings
pop up, much more verbose due to several macro expansions.

Let's make them pop up all the time so it's easier to fix them.
2017-01-10 14:21:02 +01:00
Cedric Roux
8d3368b79d Merge branch 'develop_integration_wk01' into 'develop'
Develop integration wk01

See merge request !74
2017-01-09 22:54:12 +01:00
Cedric Roux
bfecb5e54a T: add PHY throughput view to enb tracer 2017-01-09 17:08:30 +01:00
Rohit Gupta
9162c069d1 test setup v2: fix bad throughput for bandirch dongle
The throughput for the bandrich dongle was limited to 13Mb/s in downlink
UDP with iperf, with lots of packets lost (we sent 15Mb/s). TCP was
working fine.

Replacing /dev/ttyUSB2 by /dev/ttyUSB0 for wvdial solves the issue.

We also had to have separate data/control links. (See bandrich.txt
in cmake_targets/autotests/v2/actions for full details.)
2017-01-09 16:49:16 +01:00
gabrielC
78efb33243 Log clean up 2017-01-09 16:42:01 +01:00
Cedric Roux
f16fe1423e integration bugfix: phich_subframe2_pusch_subframe is wrong
calling the function for FDD case executed code for TDD case.
2017-01-09 10:11:36 +01:00
calvin wang
637e2f0793 fix TDD config file parse error and add TDD band40 config file 2017-01-09 11:20:13 +08:00
Raymond.Knopp
2a6274338d Merge remote-tracking branch 'origin/various-fixes-2016-w50' into develop-new-LMSSDR 2017-01-07 14:55:42 +01:00
Raymond.Knopp
c1360397ed CMakeList.txt changes for LMSSDR, lmssdr config file 50 PRB, rx gain setting in lms_lib.cpp 2017-01-07 14:55:04 +01:00
Raymond.Knopp
6e9a28b1a7 Merge remote-tracking branch 'origin/develop' into develop-new-LMSSDR
Conflicts:
	targets/RT/USER/lte-softmodem.c
2017-01-07 13:06:23 +01:00
Raymond.Knopp
5575fed27b some warning removal. 2017-01-07 12:55:48 +01:00
Raymond.Knopp
14d28e2dbd fixes for precoding (turning off if nb_antennas_tx=1), configuration files, timing advance with 3/4 sampling on 20 MHz, logging in MAC 2017-01-07 12:41:36 +01:00
laurent
d31634c358 fix nettle 2017-01-07 08:23:50 +01:00
Raymond.Knopp
de8ab34d85 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2017-01-06 20:29:44 +01:00
Raymond Knopp
0e919b9913 configuration file band7 rru 2017-01-07 04:28:06 +01:00
Raymond.Knopp
328731af18 band7 rcc configuration 2017-01-06 20:26:42 +01:00
Cedric Roux
40add2d572 Merge remote-tracking branch 'origin/various-fixes-2016-w50' into develop_integration_wk01 2017-01-06 18:03:32 +01:00
Cedric Roux
4f235bb83e test-setup: minor bugfix 2017-01-06 18:00:44 +01:00
Cedric Roux
1f95f48f41 first version of v2 test setup
The old one is still usable by replacing .gitlab-ci.yml with
the previous version.
2017-01-06 17:48:35 +01:00
Cedric Roux
3f4a993e9f fix compilation order of lapack
As reported on the mailing list, there was a problem
for some users. The link phase of building the simulators
was giving the error "undefined reference to ATL_scopy".
2017-01-06 11:54:49 +01:00
Cedric Roux
b29f6bc7e5 Merge branch 'bugfix-178' into develop_integration_wk01
Conflicts, manually resolved.

Conflicts:
	openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_dar.c
2017-01-06 11:16:02 +01:00
Cedric Roux
e05bf365be Merge branch 'bugfix-177' into develop_integration_wk01
Smoe conflicts, manually resolved.

Conflicts:
	openair1/SCHED/phy_procedures_lte_ue.c
2017-01-06 11:12:06 +01:00
Cedric Roux
217eba6b6e Merge branch 'bugfix-176' into develop_integration_wk01
There were some conflicts, manually resolved.

Conflicts:
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/SCHED/phy_procedures_lte_ue.c
2017-01-06 11:04:39 +01:00
Cedric Roux
de665ee4e3 Merge branch 'exmimo2_firmware' into develop_integration_wk01 2017-01-06 10:54:37 +01:00
Cedric Roux
ce9b316da2 Merge branch 'bugfix-164' into develop_integration_wk01 2017-01-06 10:52:35 +01:00
Cedric Roux
02ecf9fd45 Merge branch 'bugfix-156' into develop_integration_wk01 2017-01-06 10:47:18 +01:00
Cedric Roux
6bba411e1b Merge branch '148-bugfix-Expressmimo2-driver' into develop_integration_wk01 2017-01-06 10:45:18 +01:00
Wilson W.K. Thong
4bdd700a38 skip the RLC PDU if its header is found invalid
see issue #178
2017-01-06 14:21:44 +08:00
Wilson W.K. Thong
4fe2d6d724 fix noise power calculation and downlink CQI reporting
see issue #177
2017-01-06 12:08:51 +08:00
Wilson W.K. Thong
2e7c28a591 fix incorrect PUCCH format causing no SR received by eNB in TDD
fix incorrect fss_pusch calculation
fix the incorrrect HARQ-PID checking
remove incorrect checking on downlink DCI HARQ PID value
fix incorrect downlink ACK/NACK feedback procedures in TDD
fix no activating PDSCH decoding when DL-DCI is indicating a downlink retransmission

see issue #176
2017-01-06 12:01:05 +08:00
Raymond.Knopp
23fc8fdb26 patch for ulsch_decoding.c to fix alignment issue on demultiplexing 2017-01-05 08:22:29 +01:00
Raymond.Knopp
a190005316 fixes for SRB2 in MAC/RRC. 2017-01-05 08:19:28 +01:00
Raymond.Knopp
28d16f4a91 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	openair1/SCHED/phy_procedures_lte_eNb.c
2017-01-05 01:48:52 +01:00
Raymond Knopp
e66338669e changes for RRU (merge with develop). single-thread-disable flag is functional for RRU. 2017-01-05 09:47:14 +01:00
Raymond Knopp
e466b2c1bc patch for lte-ue.c on trx_read which allows oaisim to work. rxdata -> UE->common_vars.rxdata 2017-01-04 14:26:58 -05:00
Raymond Knopp
219016e7a4 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	openair1/PHY/INIT/lte_init.c
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
	targets/SIMU/USER/init_lte.c
2017-01-04 07:18:52 +01:00
Florian Kaltenberger
8effdc36a7 adding latest EXMIMO2 firmware (from end 2015) to this repository 2017-01-03 15:18:28 +01:00
LTS
59d0cf1c54 fix T macro calls 2017-01-03 14:26:17 +01:00
Raymond Knopp
1d331c0bf8 Changes for 20 MHz RRU (dual-thread mode) 2017-01-03 07:46:36 +01:00
Raymond.Knopp
93a244cfaf debugging for 20 MHz RRU 2017-01-02 23:39:35 +01:00
laurent
2612df9ef2 after tests 2016-12-29 10:09:13 +01:00
Raymond.Knopp
2507933c82 bugfix in rrc_eNB_s1AP.c. ue_context_p is used before checking if pointer is non-null. 2016-12-28 11:43:33 +01:00
Raymond.Knopp
975342399d bugfix for DCCH2/SRB2 in eNB_scheduler_dlsch.c, demultiplexing SIMD alignment issue in ulsch_decoding.c, IF5 fronthaul modification in lte-enb.c 2016-12-27 21:31:11 +01:00
laurent
3b44919d0b better performance measurements 2016-12-27 15:48:56 +01:00
laurent
cedde4ad1f realtime for UE 2016-12-26 21:19:26 +01:00
Raymond.Knopp
db4b77ebd2 Merge remote-tracking branch 'origin/develop' into enhancement-10-harmony
Conflicts:
	targets/RT/USER/lte-softmodem.c
2016-12-22 23:17:37 +01:00
Raymond.Knopp
12ed6c21f1 minor changes in lte-enb.c and rcc configuration files 2016-12-22 23:16:31 +01:00
hbilel
6f9ba77bd8 Merge branch 'T-tracer-branch' into develop_integration_wk01
Conflicts:
	openair1/SCHED/phy_procedures_lte_ue.c
2016-12-22 11:36:23 +01:00
hbilel
759f5f751f [OAI-UE] 1- ignore bad dci
2- reset dataTx buff correctly
           3- pucch/pusch power control fix
2016-12-22 11:18:29 +01:00
hbilel
a1f25f073c [OAI-UE] T-tracer for UE, more traces 2016-12-22 11:09:57 +01:00
Cedric Roux
f24068c2a4 remove annoying and misleading error message
People are complaining on the mailing list about this.
It's not an error to receive a retransmission.
2016-12-22 10:08:51 +01:00
Wilson W.K. Thong
6b79dc9ac3 fixing crash due to de-qeueueing the same PDCP SDU twice by two different threads
see issue #164
2016-12-21 17:20:14 +08:00
Wilson W.K. Thong
dfc537ff3d add logs and asserts to catch the double dequeue of the same head PDCP SDU from pdcp_sdu_fifo during flushing
see issue #164
2016-12-21 17:20:14 +08:00
Wilson W.K. Thong
a513f8bc39 hotfix logs on multi-threading 2016-12-21 17:20:14 +08:00
Wilson W.K. Thong
dabdf7933b add more logs to debug memory leak problem 2016-12-21 17:20:14 +08:00
Wilson W.K. Thong
afeb256604 add more VCD logs to debug thread timing issue
see issue #166
2016-12-21 16:55:46 +08:00
Wilson W.K. Thong
8673fa8415 hotfix VCD log dump for thread timing debugging
see issue #165
2016-12-21 16:28:50 +08:00
Wilson W.K. Thong
3dabb5447a fixing thread busy crash: disabled timing consuming NAS logs
see issue #165
2016-12-21 16:28:50 +08:00
Wilson W.K. Thong
210cbd60ef fixing thread busy crash: add more error checking to catch timing issues
see issue #165
2016-12-21 16:28:50 +08:00
hbilel
8d2bb6cbc2 [OAI-UE] fix pusch/pucch power control part 1 2016-12-20 11:44:18 +01:00
hbilel
127f1a9438 [OAI-UE] UE T-tracer updates part 3 2016-12-20 11:26:59 +01:00
hbilel
619d34d781 [OAI-UE] UE T-tracer updates part 2 2016-12-19 18:05:59 +01:00
hbilel
d9255b5c72 [OAI-UE] T-tracer UE updates 2016-12-19 17:42:09 +01:00
hbilel
378020ce97 adapt oai-ue to t tracer part 2 2016-12-19 17:34:59 +01:00
hbilel
15a1af31db [OAI-UE] adapt T-tracer to support OAI-UE 2016-12-19 17:34:27 +01:00
Cedric Roux
3bf8768d1b Merge branch 'develop_integration_w50' into 'develop'
Develop integration w50

See merge request !61
2016-12-19 15:03:07 +01:00
Cedric Roux
5ebdbf9f2d integration fix: align32 missing (NOT DEFINITIVE!)
We have a crash:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff7387d700 (LWP 1944)]
ulsch_decoding (eNB=eNB@entry=0x7fffaf73b010, proc=proc@entry=0x7fffaf73b480,
    UE_id=UE_id@entry=0 '\000',
    control_only_flag=control_only_flag@entry=0 '\000',
    Nbundled=<optimised out>, llr8_flag=<optimised out>)
    at /roux/merge/openairinterface5g/openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c:1450
1450          *((__m256i *)&ulsch_harq->e[iprime]) = *((__m256i *)&y[j2]);

This commit reduces the apparition of the crash, but does not
eliminate it completely.

To be fixed after integration.
2016-12-19 12:25:35 +01:00
Cedric Roux
66c292b95b integration fix: update T messages 2016-12-19 11:19:05 +01:00
Cedric Roux
2a62db97e6 Merge remote-tracking branch 'origin/develop' into develop_integration_w50 2016-12-16 22:47:18 +01:00
Florian Kaltenberger
a525be94c3 changing antenna number back to 1 2016-12-15 17:25:15 +01:00
gabrielC
f79dd53edf Merge remote-tracking branch 'origin/feature-21-TM7-tmp' into develop_integration_w50 2016-12-15 11:39:04 +01:00
Wilson W.K. Thong
d11a22aa8d added more logs for debugging false DCI0 2016-12-15 17:26:35 +08:00
Wilson W.K. Thong
fce9f0b5d5 avoid detecting DCI0 at subframes where no DCI0s are sent by eNB. This happens only in TDD mode
issue !156
2016-12-15 16:57:21 +08:00
gabrielC
089eb06a59 Merge branch '147-phy-test-mode-error-msg-dl-received-harqretx-round-1' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop_integration_w50
correct issue 147 : --phy-test mode : error msg " DL Received HarqReTx round=1 m
2016-12-14 15:56:37 +01:00
Benoit ROBERT
abfc21ad28 Merge branch '147-phy-test-mode-error-msg-dl-received-harqretx-round-1' of https://gitlab.eurecom.fr/oai/openairinterface5g into 147-phy-test-mode-error-msg-dl-received-harqretx-round-1 2016-12-14 15:53:48 +01:00
ROBERT Benoit
17d62a6777 correct issue 147 : --phy-test mode : error msg " DL Received HarqReTx round=1 mcs=28 rballoc=8191 rv=0 " 2016-12-14 15:53:26 +01:00
gabrielC
2164f7cd03 Merge branch '146-phy-test-mode-udate-fill_dci' into develop_integration_w50
Problem in DCI NDI : the implementation use 5 HARQ processes, but process 0 N…
2016-12-14 15:50:18 +01:00
Benoit ROBERT
4622ba134f Merge branch '146-phy-test-mode-udate-fill_dci' of https://gitlab.eurecom.fr/oai/openairinterface5g into 146-phy-test-mode-udate-fill_dci 2016-12-14 15:32:23 +01:00
ROBERT Benoit
82437cccb7 - Problem in DCI NDI : the implementation use 5 HARQ processes, but process 0 NDI never toggled because it was reused on subframe 5 that is not carrying format 1 DCI. Fix -> use 8 harq processes instead of 5.
- SI scheduled on every subframe 5 (even and odd frames) instead of only on even frames
 - Add DLSCH scheduling on subframe 5 for odd frames
 - change default rballoc from 0x7FFF to 0x1FFFF to support maximum 10MHz throughput
2016-12-14 15:29:33 +01:00
gabrielC
9044dc3535 Merge remote-tracking branch 'origin/issue-154-PDCP_FIFO_NETLINK' into develop_integration_w50
PDCP fix
2016-12-14 14:46:00 +01:00
Benoit ROBERT
2f3483d1d3 correct issue 154 on PDCP fifo for noS1 mode 2016-12-14 12:26:01 +01:00
gabrielC
1167dd6b33 ue autotest merge part2 2016-12-14 10:16:54 +01:00
gabrielC
9fa556ffbf Merge branch 'Enhancement-142-OAI_UE_autotest_framework' into develop_integration_w50 2016-12-14 10:05:19 +01:00
gabrielC
af68b3974b Merge branch 'Enhancement-142-OAI_UE_autotest_framework', tag '2016.w49' of https://gitlab.eurecom.fr/oai/openairinterface5g into Enhancement-142-OAI_UE_autotest_framework 2016-12-14 10:02:32 +01:00
hbilel
ca078ff549 fix compilation error 2016-12-13 17:38:43 +01:00
hbilel
7a92f587e5 Merge branch 'ue-tdd_fix_issueOai1B_45' into develop_integration_w50 2016-12-13 12:51:05 +01:00
hbilel
595db57af0 Merge branch 'ue-tdd_fix_issueOai1B_44' into develop_integration_w50
Conflicts:
	targets/RT/USER/lte-ue.c
2016-12-13 12:50:47 +01:00
hbilel
1b07582ce4 Merge branch 'ue-tdd_fix_issueOai1B_43' into develop_integration_w50 2016-12-13 12:49:41 +01:00
hbilel
e227a12736 Merge remote-tracking branch 'oai1B/bugfix-42' into ue-tdd_fix_issueOai1B_42 2016-12-13 12:41:10 +01:00
hbilel
495e357a1e Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into enhancement-45
Conflicts:
	openair2/LAYER2/MAC/ue_procedures.c
2016-12-13 12:31:45 +01:00
hbilel
35ae311ac8 Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into bugfix-44 2016-12-13 12:27:41 +01:00
hbilel
be28fd3352 Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into bugfix-43
Conflicts:
	targets/RT/USER/lte-softmodem.c
2016-12-13 12:26:37 +01:00
Chia-Yu Chang
01c50449c3 fix the AVX2 compilation directive 2016-12-12 18:43:37 +01:00
Chia-Yu Chang
7f4c961d82 add T messages for FLEXRAN and fix a complication error in FLEXRAN 2016-12-12 18:41:26 +01:00
Cedric Roux
8f6746beae Merge branch 'develop1B_integration_w49' into 'develop'
Develop1 b integration w49

See merge request !56
2016-12-12 16:02:21 +01:00
hbilel
17aefade3f remove temporary harq process for ue (ul) 2016-12-12 12:48:48 +01:00
hbilel
e0bf855fbf initialize max retans tx Mlimit 2016-12-12 12:12:27 +01:00
hbilel
e04e8a62cc remove mac-struct usage from phy 2016-12-12 11:45:22 +01:00
Cedric Roux
5976ea4a95 hotfix: attempt for a better gitlab CI setup
Not sure it's the right thing to do, but this commit
should reduce fake builds.
2016-12-12 09:22:50 +01:00
Cedric Roux
a574c3d31b integration fix: wrong license 2016-12-12 09:22:01 +01:00
Cedric Roux
0a9d013f59 integration fix: LOG_I/LOG_D do not exist when compiling at_nas_ue
Use LOG_TRACE instead.
2016-12-09 17:47:49 +01:00
Cedric Roux
8db3583b09 integration fix: add usim_test to at_nas 2016-12-09 17:47:29 +01:00
ROBERT Benoit
3750ebc2d6 Update UE autotest testsuite for OAI1B develop1B_integration_w49 branch 2016-12-09 16:13:06 +01:00
ROBERT Benoit
d31b6ef83b Merge remote-tracking branch 'origin/develop' into Enhancement-142-OAI_UE_autotest_framework 2016-12-09 16:06:17 +01:00
Cedric Roux
46b2ee9577 integration fix: attempt to clarify ODD_PARITY
This may need to be refined.

The variable ODD_PARITY is defined at various places,
with different values, causing compilation warnings.

It's wrong to define a variable with different values.

A new variable is created, specific to IMEI case: IMEI_ODD_PARITY.
Maybe ODD_PARITY should also have 0xf as value, and so maybe only
one variable is necessary. To be checked at some point...
2016-12-08 17:51:02 +01:00
Cedric Roux
752ceb1922 integration fix: remove compilation warnings 2016-12-08 17:49:56 +01:00
Cedric Roux
497e89d97e integration fix: bugfix: wrong enum used 2016-12-08 17:48:56 +01:00
Cedric Roux
e4a84606b9 integration fix: send SRS configuration to UE only if SRS active
Manually testing with the Samsung Galaxy Note 4 failed,
probably because the phone didn't like to receive SRS
configuration.

Let's send it only if activated.
2016-12-08 17:09:39 +01:00
Cedric Roux
179ff73658 integration fix: use old CMakeLists.txt
Another way to set those two variables has to be used for the
specific UE case (use a sub CMakeLists.txt, see in build_oai).
2016-12-08 16:47:30 +01:00
gabrielC
bd30471076 [OAI-UE] merge com4Innov branch to integration branch 2016-12-08 11:07:38 +01:00
ROBERT Benoit
18c3a32321 correct issue #148 - protect whatchdog thread mutex unlock 2016-12-07 12:17:55 +01:00
Florian Kaltenberger
e470e2d3bd Merge remote-tracking branch 'origin/develop' into feature-21-TM7-tmp
Conflicts:
	targets/RT/USER/lte-enb.c
2016-12-07 09:40:20 +01:00
Wilson W.K. Thong
e6671827bb clean up changes for submission 2016-12-07 14:42:26 +08:00
Wilson W.K. Thong
05a261ae66 further clean up changes for change submission 2016-12-07 14:35:50 +08:00
Wilson W.K. Thong
55e50b2052 enhanced wireshark logging. also logs BCH, PRACH and RAR. Tested with wireshark 2.2.2 on linux and windows
see issue #45
2016-12-07 10:45:44 +08:00
Wilson W.K. Thong
4041a661fc fixed incorrect wiresahrk SFN/SF for UL/DL data 2016-12-07 10:43:47 +08:00
Wilson W.K. Thong
488b84cb46 fixing thread busy crash: disabled timing consuming NAS logs
see issue #44
2016-12-07 10:39:57 +08:00
Wilson W.K. Thong
53777043c3 fixed PRACH TA default value in TDD mode
see issue #43
2016-12-07 10:30:55 +08:00
Wilson W.K. Thong
6c6d20b622 added logging to debug PRACH 2016-12-06 21:11:14 +08:00
gabrielC
0fb34b2e28 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop1B 2016-12-06 12:05:25 +01:00
Fabrice Nabet
3a3a699bc5 Merge branch 'BSR_fixes_fabrice' into 'develop1B'
Bsr fixes fabrice

Merge feature BSR stabilization to develop1B

See merge request !15
2016-12-06 11:28:59 +01:00
Cedric Roux
bf5bf8ba04 Merge branch 'feature-68-enb-agent' into 'develop'
Feature 68 enb agent



See merge request !47
2016-12-06 09:52:42 +01:00
Raymond.Knopp
7e4e63ae64 Merge remote-tracking branch 'origin/develop' into enhancement-10-harmony
Conflicts:
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
2016-12-06 07:24:03 +01:00
Wilson W.K. Thong
086520f50e clean up changes for change submission
issue #42
2016-12-06 11:15:58 +08:00
Wilson W.K. Thong
675e0b10cb fixing thread busy crash: fixed incorrect processing of special-subframe
TX as a normal TX
2016-12-06 10:34:08 +08:00
Wilson W.K. Thong
8daa6897e9 fixing thread busy crash: add more error checking to catch timing issues 2016-12-06 10:34:08 +08:00
Wilson W.K. Thong
4a0e4b5e14 fixing thread busy crash: add more VCD logs to debug timing issues 2016-12-06 10:34:07 +08:00
Wilson W.K. Thong
81daba1931 Revert "enabled extra logs"
This reverts commit 5466562b16d70f2729f6103e1c0d3ee619470191.
2016-12-06 10:28:11 +08:00
Wilson W.K. Thong
e1b9533200 enabled extra logs 2016-12-06 10:28:10 +08:00
Wilson W.K. Thong
ae253f45b2 added more logs to debug missing SI-RNTI DCIs 2016-12-06 10:28:10 +08:00
Wilson W.K. Thong
726a543abf fixed missing a slot_fep() processing on the 1st OFDM symbol of the first DL subframe after UL, causing no SI-RNTI DCI detected 2016-12-06 10:28:10 +08:00
Xenofon Foukas
8def47c488 Changed old licenses in FlexRAN agent source files 2016-12-05 22:04:12 +02:00
Xenofon Foukas
a2acf0a98f Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2016-12-05 21:40:10 +02:00
Cedric Roux
9a0f32aa1d T: add 'throughputlog' logger
Normally it is used to display throughput.

The computation it does is to sum up the wanted value for the last
second (1000 TTIs) and send this value to the views associated to
this logger, at each TTI.
2016-12-05 17:58:16 +01:00
Xiwen JIANG
41582eb340 fix compliation problems for unitary tests 2016-12-05 17:56:58 +01:00
Cedric Roux
2270dae1e7 T: new view 'scolltti'
This view is used to display throughput (to come in next commits).
2016-12-05 17:49:03 +01:00
Cedric Roux
5b6a83fc7f T: some work on XY plot
- change paint function:
  when the XY plot is resized we scale. Previously
  the last range was put in the middle of the new range
  (say when we increase the size).
  We may get aspect ratio changes if the resize is not identical
  vertically and horizontally, but I think this behaviour is more
  'natural'.
- fix a bug:
  the last horizontal tick label was printed to far on the right,
  out of the bouding box of the XY plot. This is not totally fixed
  in the case the label is larger than the XY plot. Now the part
  out of the bounding box will be printed on the left. No big deal,
  make the plot big enough. (Before, even if big enough you had a
  problem.)
- add a new vertical tick display, to be used for throughput mostly.
  See in enb.c the difference between 'input signal' and throughput
  plots (those throughput plots will come in later commits).
2016-12-05 17:37:22 +01:00
Cedric Roux
bff8e40d00 T: add widget 'textarea'
It's like a label but with fixed dimensions and maximum
characters' capacity at creation time.
2016-12-05 17:30:13 +01:00
fnabet
bc032392c9 add workarounds for OAI issues 2016-12-05 16:51:27 +01:00
ROBERT Benoit
f52a2c9583 correct issue 147 : --phy-test mode : error msg " DL Received HarqReTx round=1 mcs=28 rballoc=8191 rv=0 " 2016-12-05 15:41:47 +01:00
Cedric Roux
031a72de7d T: new function 'bps'
This function is used to print rates (say '1kb/s' or '16Mb/s').
2016-12-05 15:08:27 +01:00
Cedric Roux
d7831c1f57 T: add TBS to ENB_PHY_DLSCH_UE_DCI 2016-12-05 14:52:12 +01:00
Raymond.Knopp
108cf6bff0 renaming of RCC configuration files 2016-12-04 12:20:12 +01:00
Raymond Knopp
b0766d7074 added prach buffer for if4p5 processing in RRU. This fixed a critical bug which was seen for bandwidths greater than 5 MHz. RRU tested with 5/10 MHz on 1.5 GHz Atom. 2016-12-04 20:17:33 +01:00
Raymond Knopp
54057dce28 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-12-04 20:13:31 +01:00
Raymond Knopp
7be5af4c09 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-12-04 17:50:14 +01:00
Raymond Knopp
76ee52a635 small changes for rru debugging 2016-12-04 17:49:25 +01:00
Raymond.Knopp
0717c18ccb modifications for PRACH on IF4p5 2016-12-04 12:11:03 +01:00
Raymond.Knopp
1255cf856f Merge remote-tracking branch 'origin/develop' into enhancement-10-harmony
Conflicts:
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	targets/RT/USER/lte-enb.c
	targets/RT/USER/lte-softmodem.c
2016-12-04 09:46:02 +01:00
Rohit Gupta
a78ef7c932 minor fixes for 0257+ test cases 2016-12-02 14:56:21 +01:00
ROBERT Benoit
62e235ac3e Merge remote-tracking branch 'origin/develop' into 146-phy-test-mode-udate-fill_dci 2016-12-02 11:54:26 +01:00
Raymond.Knopp
0b254522c9 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-12-02 09:57:56 +01:00
Raymond.Knopp
eb82608878 dos2unix on eth_udp.c 2016-12-02 09:57:20 +01:00
Rohit gupta
0640959560 minor fixes for 0257* test cases 2016-12-02 07:54:02 +01:00
Raymond Knopp
688fe7bcf8 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-12-02 07:36:27 +01:00
Raymond Knopp
cfc308dd4c new IF5 configuration file for RRU 2016-12-02 07:35:34 +01:00
Rohit Gupta
05c635311d fix for 0157 test cases 2016-12-02 07:20:43 +01:00
Raymond.Knopp
8aa61a1d29 new IF5 configuration file 2016-12-01 23:32:07 +01:00
Rohit Gupta
7c9a3311e7 minor fixes to OAI UE/OAI EPC test cases 2016-12-01 22:24:04 +01:00
Raymond.Knopp
490b695b3d Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-12-01 21:36:48 +01:00
Raymond Knopp
8678be1692 fixed IF5 timing 2016-12-02 05:36:23 +01:00
Raymond.Knopp
2774702108 IF5 timing for RCC 2016-12-01 21:36:33 +01:00
Rohit Gupta
f4b93cdc12 [Gitlab CI] Add OAI UE to autotests 2016-12-01 19:37:48 +01:00
ROBERT Benoit
f22e56ee6d - Problem in DCI NDI : the implementation use 5 HARQ processes, but process 0 NDI never toggled because it was reused on subframe 5 that is not carrying format 1 DCI. Fix -> use 8 harq processes instead of 5.
- SI scheduled on every subframe 5 (even and odd frames) instead of only on even frames
 - Add DLSCH scheduling on subframe 5 for odd frames
 - change default rballoc from 0x7FFF to 0x1FFFF to support maximum 10MHz throughput
2016-12-01 16:31:05 +01:00
Cedric Roux
ce1e9cb15a T: bugfix: bad order of parameters in function declaration 2016-12-01 13:16:49 +01:00
Cedric Roux
53ccc0e7ad T: minor bugfix - bad argument type in log 2016-12-01 13:15:34 +01:00
Cedric Roux
cae34e0f4d T: minor fix - wrong comments 2016-12-01 11:08:13 +01:00
Cedric Roux
f89c70dfc3 T: change range of DL/UL MCS plots
[-1 29] was not very pleasant for MCS 28 or no DCI (value is -1 in this case).
[-2 30] looks better.
2016-11-30 18:03:49 +01:00
Cedric Roux
cbc2164e50 T: bugfix: vertical tick was off by 1 pixel
The problem was visible when DL MCS was set to 20
(do a ping -c 192.172.0.1 -i0.2 to get it). The dots
were not plotted at the exact line of the tick mark.

Not sure the fix is always correct.

No big deal anyway.
2016-11-30 18:01:17 +01:00
Cedric Roux
1e485b4b5e T: add DL and UL MCS plots in enb.c
Helps visualize MCS usage over time.
2016-11-30 16:39:49 +01:00
Cedric Roux
a016cb7589 T: new logger ticked_ttilog
A new logger is there: the "ticked TTI logger".
Similar to TTI logger (used by the PUCCH1 energy plot)
but takes another input, the "tick" (think subframe)
and a default value for when no event is triggered between
two ticks.

This is used for the UL and DL MCS plots in enb.c (next commit).
2016-11-30 16:32:29 +01:00
Cedric Roux
7adc4703be T: update traces
- add mcs to ENB_PHY_DLSCH_UE_DCI
- add mcs, round, first_rb, nb_rb, TBS to ENB_PHY_ULSCH_UE_DCI
2016-11-30 16:29:14 +01:00
Florian Kaltenberger
e1c4e78b69 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2016-11-29 17:21:18 +01:00
Florian Kaltenberger
31541601ce fixes for tdd (N_TA_offset was not initialized) + some other code cleanup
tested with both EXMIMO and USRP. performance better than in master branch.
2016-11-29 17:19:14 +01:00
hbilel
ea7c0e1b36 reduce BSR logging 2016-11-29 15:26:57 +01:00
GabrirelCouturier
b80ce3510e BSR and MAC UL encoding fixes 2016-11-28 19:27:25 +01:00
Cedric Roux
860394244b T: bugfix: lock required
When the user clicks on "next UE" or "prev UE" we change the
filters of loggers.

At the same time, the main thread of enb.c processes events
received from the soft-modem and uses the filters, some of them
maybe in the process of being changed.

Changing the filters is not atomic and has to be protected.
2016-11-28 18:28:10 +01:00
Florian Kaltenberger
28923dc8e2 fixing bug introduced in 5c5c336300 2016-11-28 13:58:41 +01:00
Florian Kaltenberger
a4f8fff92b Merge remote-tracking branch 'origin/develop' into feature-21-TM7
Conflicts:
	targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c
2016-11-28 12:56:13 +01:00
Elena_Lukashova
3b9869187b Adding some printouts for PIA 2016-11-28 11:36:50 +01:00
hbilel
710a246596 enhance BSR log 2016-11-28 10:55:00 +01:00
hbilel
001cf13632 Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into BSR_fixes_fabrice 2016-11-28 10:38:27 +01:00
hbilel
ca2aeaccb8 BSR and MAC multiplexing fixes 2016-11-28 10:36:46 +01:00
Bilel
9bea08ab65 Merge branch 'bugfix-35-36-37' into 'develop1B'
[OAI-UE] fixes for issue#35 issue#36 issue#37

1-issue#35: miss dci detection
2-issue#36: ack/nack on pusch are badly encoded
 3-issue#37: ack/nack are sent on pucch instead of pusch

See merge request !13
2016-11-28 10:24:45 +01:00
GabrirelCouturier
6e21152fac [OAI-UE] fixes for issue#35 issue#36 issue#37
1-issue#35: miss dci detection
           2-issue#36: ack/nack on pusch are badly encoded
           3-issue#37: ack/nack are sent on pucch instead of pusch
2016-11-28 10:21:01 +01:00
Elena_Lukashova
29d6400210 Optimizing printputs for PIA recever 2016-11-27 18:14:27 +01:00
Elena_Lukashova
ad9a246043 Adding HARQ support for PIA detection. 2016-11-27 17:34:23 +01:00
Cedric Roux
ee934102b6 T: switch UE in enb tracer
Just below the logo you see the current UE, eg. [UE 0],
and near that you have two "buttons" [prev UE] and [next UE].

You click with left button of mouse on those and the various
plots that depend on the UE are now done for the new UE (say UE 1
instead of UE 0 if you click on [next UE]).

The plots are not cleared when you switch.
Let's say it's a feature.
2016-11-25 17:19:33 +01:00
Cedric Roux
484cad2431 T: add function xy_plot_set_title 2016-11-25 17:17:39 +01:00
Cedric Roux
8eeebdaf98 T: add function label_set_text 2016-11-25 17:17:16 +01:00
Elena_Lukashova
afe698db10 Adding retransmission statistics. 2016-11-25 17:17:03 +01:00
Cedric Roux
0bb875d9c2 T: free previous filter in logger_set_filter 2016-11-25 17:15:25 +01:00
Cedric Roux
956135f9a3 T: add mechanisms to free filters 2016-11-25 17:14:40 +01:00
Florian Kaltenberger
426e6cd74b bugfix for TDD: special subframe was not transmitted. 2016-11-25 16:55:35 +01:00
Elena_Lukashova
bea768660b Fixing bug in dlsim.c for LLR updates for SIC receiver. 2016-11-25 16:26:30 +01:00
ROBERT Benoit
0579d47154 Complete autotest patch files set for OAI1B autotest setup 2016-11-25 14:43:28 +01:00
ROBERT Benoit
7d5ec24bb5 Merge remote-tracking branch 'origin/develop' into Enhancement-142-OAI_UE_autotest_framework 2016-11-25 14:39:53 +01:00
Xiwen JIANG
a242028878 Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-11-25 11:42:06 +01:00
Florian Kaltenberger
7f0679593c Merge remote-tracking branch 'origin/develop' into feature-21-TM7 2016-11-25 11:10:02 +01:00
Rohit Gupta
7f1bef9b65 minor fix to Google Protobuf logging in installation 2016-11-25 10:53:26 +01:00
Rohit Gupta
045c947015 Merge branch 'develop' into feature-68-enb-agent 2016-11-25 10:08:53 +01:00
Rohit Gupta
c4405d6c41 Merge branch 'develop' of gitlab.eurecom.fr:oai/openairinterface5g into develop 2016-11-25 10:08:38 +01:00
Rohit Gupta
62ed687ef5 [Gitlab CI] minor fix to logging 2016-11-25 10:05:56 +01:00
hbilel
7637ed26ba Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into BSR_fixes_fabrice 2016-11-24 18:31:41 +01:00
hbilel
a6e6a2d649 Merge branch 'bugfix_33_rlc_am_bo' into develop1B 2016-11-24 18:27:46 +01:00
hbilel
eb711645d0 fix issue#33 : RLC AM BO 2016-11-24 18:26:23 +01:00
hbilel
b0b472e035 BSR fixes on CMW500 2016-11-24 18:17:21 +01:00
Xiwen JIANG
8a08206670 Merge branch 'develop' into feature-21-TM7 2016-11-24 17:59:30 +01:00
Xiwen JIANG
41fd001b31 delete redundant code in beamforming.c 2016-11-24 17:57:52 +01:00
Florian Kaltenberger
c67536062b Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2016-11-24 17:16:47 +01:00
Florian Kaltenberger
933dc966c0 fix for EXMIMO 2016-11-24 17:14:50 +01:00
Florian Kaltenberger
3b7a9400f2 Merge branch 'master' into develop
Conflicts:
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band38.tm1.exmimo2.conf
2016-11-24 17:14:44 +01:00
Florian Kaltenberger
f15426d75c fixing config file 2016-11-24 16:56:30 +01:00
Cedric Roux
03231dd163 hotfix: fix pucch_procedures
Something went wrong somewhere in the commit history, the function
was not correct.

The most obvious symptom was that way too much SR (scheduling requests)
were given to the UE whenever it had some PUCCH to send.

The case for TDD has not been tested.
2016-11-24 16:46:41 +01:00
Florian Kaltenberger
af2ad0682f removing -L option from dlsim testcases 2016-11-24 15:00:40 +01:00
Elena_Lukashova
8cfd5f29f6 Adding spatial low, medium and high correlation matrices for 2x2
EPA channel model. -gV, -gW, -gX.
2016-11-24 15:00:14 +01:00
Rohit Gupta
9d64a0382b Merge branch 'develop' of gitlab.eurecom.fr:oai/openairinterface5g into develop 2016-11-24 14:59:07 +01:00
Rohit Gupta
0c52c76df6 add RRH test cases 2016-11-24 14:58:51 +01:00
S. Sandeep Kumar
03eb2c498d missed to commit changes for if_defs.h file 2016-11-24 19:27:57 +05:30
S. Sandeep Kumar
fe10da2642 fix conflicting prach size in if4p5 2016-11-24 19:14:50 +05:30
Florian Kaltenberger
f8aea6189d Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-11-24 14:44:06 +01:00
Florian Kaltenberger
7715900222 some more bugfixes (old and introcuded by merge) plus ability too use phy-test for tm7 2016-11-24 14:42:59 +01:00
S. Sandeep Kumar
f1bd8ba02a fix conflicting prach size in if4p5 2016-11-24 17:34:48 +05:30
fnabet
880cddb4a0 Merge branch 'develop1B' into BSR_fixes_fabrice 2016-11-24 11:39:56 +01:00
fnabet
6f0b71deac merge Calvin changes and add fixes 2016-11-24 11:37:13 +01:00
Bilel
ec92c55528 Merge branch 'bugfix-32' into 'develop1B'
[OAI-UE] fix for issue#32

1- timing Advance fix
2- harq UL fix

See merge request !12
2016-11-24 10:58:34 +01:00
GabrirelCouturier
33e89e3e9f [OAI-UE] fix for issue#32
1- timing Advance fix
           2- harq UL fix
2016-11-24 10:54:37 +01:00
Xiwen JIANG
953de398a3 adapt the tm7 configuration file 2016-11-24 10:46:20 +01:00
Raymond Knopp
4b64879072 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-24 15:57:34 +08:00
Raymond Knopp
eb854b8e6a setting of frame_tx in lte-enb.c 2016-11-24 15:56:38 +08:00
Raymond Knopp
8bc94223b4 remove debugging traces from lte-enb.c and if4_tools.c. modulo 1024 bug on frame counter in lte-enb.c 2016-11-24 15:55:00 +08:00
Raymond Knopp
46b0c0fea5 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-24 14:54:52 +08:00
Raymond Knopp
77486af848 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-24 14:46:00 +08:00
Raymond Knopp
4429a6a601 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
2016-11-24 14:45:48 +08:00
Xiwen JIANG
f216bacb11 fix the dlsim for TM7 2016-11-23 17:01:22 +01:00
Florian Kaltenberger
abab672e49 Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7
Conflicts:
	openair1/PHY/INIT/lte_init.c
2016-11-23 15:26:02 +01:00
Florian Kaltenberger
7133633997 bugfixes in precoder 2016-11-23 15:17:01 +01:00
Florian Kaltenberger
441b062e3a changing config files 2016-11-23 15:15:56 +01:00
Cedric Roux
2716aaa711 T: activate all info/warning/error legacy traces by default in enb.c 2016-11-23 15:00:36 +01:00
Raymond Knopp
085718ae8b RRU synchronization debugging 2016-11-23 19:12:02 +08:00
Xiwen JIANG
b4a6e03053 error message disply fixed in dl bf ch est 2016-11-23 11:48:18 +01:00
Xiwen JIANG
263254408d use symbol based OFDM modulation in dlsim 2016-11-23 10:41:00 +01:00
Raymond Knopp
e3bf5fe068 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	targets/RT/USER/lte-enb.c
2016-11-23 14:39:09 +08:00
Raymond Knopp
adb0e77d39 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	targets/RT/USER/lte-enb.c
2016-11-23 14:38:24 +08:00
Raymond Knopp
8df3f84fc4 small change in if4p5_asynch_DL 2016-11-23 14:36:22 +08:00
Raymond Knopp
a4bdaddaaf commit from other machine prior to merge 2016-11-23 14:05:36 +08:00
Raymond Knopp
780e213dcc Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-23 13:47:30 +08:00
Raymond Knopp
3e838ca675 temporary commit for testing 2 RRU case as TM2 (distributed antennas) 2016-11-23 13:46:47 +08:00
Raymond Knopp
f02c1f20e4 frame synchronization mechanism and robustification of if4p5 packet handling for out-of-order asynchronous reception (PDLFFT) 2016-11-23 13:42:37 +08:00
Raymond Knopp
63c68100f3 spawn a thread for frequency adjustments in USRP device driver 2016-11-23 10:15:39 +08:00
Elena_Lukashova
5869ec9633 Modifying names of output files for updated CSI. 2016-11-22 23:25:18 +01:00
Xiwen JIANG
7dbc59c830 adapt dlsim to TM7 2016-11-22 18:34:57 +01:00
Florian Kaltenberger
f446a5ea17 Merge branch 'develop' into feature-21-TM7 2016-11-22 18:24:40 +01:00
Florian Kaltenberger
c3c3f27487 fixes for phy-test option at eNB 2016-11-22 18:15:57 +01:00
Raymond Knopp
7c3531d39a temporary commit before merge 2016-11-22 07:15:59 -08:00
Xiwen JIANG
d2398e1afe Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-11-22 15:03:45 +01:00
Xiwen JIANG
eab744f6f9 add in allocate_REs_in_RB the TM7 case 2016-11-22 14:57:11 +01:00
Cedric Roux
5a3b3ed0b5 minor: remove compilation warnings 2016-11-22 14:02:52 +01:00
Cedric Roux
ce8c81af0a hotfix: cqi_crc_status was not properly set/reset 2016-11-22 14:01:41 +01:00
Xiwen JIANG
60a1f34a5a cosmetic changes 2016-11-22 12:29:18 +01:00
Cedric Roux
b526ef7b47 T: update a trace
add ndi to trace ENB_MAC_UE_DL_SDU
2016-11-22 12:04:06 +01:00
Cedric Roux
3ae5f95653 T: fix small typo 2016-11-22 11:21:54 +01:00
Xiwen JIANG
1a8069b924 bug fixed for DEBUG_PHY in lte_init.c 2016-11-22 11:19:23 +01:00
Cedric Roux
b55b63c5ab hotfix: hack to improve PHICH generation
The eNodeB may sometimes wrongly generate PHICH because somewhere
'phich_active' is not reset to 0, due to an unidentified reason. When
adding this hack the problem seems to disappear completely.

This is not the end of the story. The real underlying problem has to be
understood and fixed correctly.
2016-11-22 10:46:04 +01:00
Cedric Roux
6bb69e1964 hotfix: correct Msg3 ressource blocks reservation
The Msg3 ressource blocks used by random access procedure
were not correctly handled. The MAC scheduler could wrongly
allocate a ressource block for both random access Msg3 and
a regular UE.

This hotfix hopefully fixes the problem.

A new function "set_msg3_subframe" has been added in the
interface between PHY and MAC.
2016-11-22 10:38:18 +01:00
Cedric Roux
43df291374 T: add some traces
- Msg3 allocation
- initiation of Random Access procedure
2016-11-22 10:17:22 +01:00
Raymond Knopp
09a2fa65e3 further additions for multiple-RRU synchronizationwq 2016-11-22 16:09:43 +08:00
Elena_Lukashova
7a6ef377b5 Fixing a bug in dlsch_demodulation.c for llr calls. 2016-11-22 00:30:08 +01:00
Elena_Lukashova
8cb78dc4d5 Adding the updated CSI option for retransmission of TB1 in TM4. Pass -U from the command line to enable. 2016-11-21 22:18:21 +01:00
ROBERT Benoit
040afd4800 Add missing template files for HTML report generation 2016-11-21 16:02:00 +01:00
Florian Kaltenberger
e450941f7a Merge branch 'develop' into feature-21-TM7 2016-11-21 12:08:30 +01:00
Florian Kaltenberger
5c5c336300 fixes to make lte-softmodem compile again 2016-11-21 11:55:36 +01:00
Florian Kaltenberger
e86b3e31c7 changing some config files 2016-11-21 11:39:47 +01:00
Bilel
dab71e4cbe Merge branch 'bugfix-26' into 'develop1B'
[OAI-UE] several fixes in OAI-UE

1- implement max harq retrans
           2- bug in harqId > 1 for dci format 1A
           3- wrong G computation
           4- bug in harq UL for scheduling flag
           5- initial sync, limit freq offset to 150Hz

See merge request !11
2016-11-21 11:33:43 +01:00
GabrirelCouturier
9c4cee34f0 [OAI-UE] several fixes in OAI-UE
1- implement max harq retrans
           2- bug in harqId > 1 for dci format 1A
           3- wrong G computation
           4- bug in harq UL for scheduling flag
           5- initial sync, limit freq offset to 150Hz
2016-11-21 11:30:24 +01:00
Bilel
38b1efddf2 Merge branch 'bugfix-26' into 'develop1B'
merge oai/develop to oai1B/debelop1B



See merge request !10
2016-11-21 11:24:32 +01:00
GabrirelCouturier
34b75f393d Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into bugfix-26 2016-11-21 11:19:30 +01:00
Raymond Knopp
8369af0964 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-21 18:02:23 +08:00
Raymond Knopp
1fcc78375c debugging traces in lte-enb 2016-11-21 18:02:10 +08:00
Raymond Knopp
20b0aae98b integration of over-the-air synchronization mechanism for distributed RRU 2016-11-21 18:00:36 +08:00
Raymond Knopp
e0314d8b75 update to timing drift compensation in rfdevice 2016-11-21 12:19:21 +08:00
Raymond Knopp
958c66c6db handling of timing drift in rfdevice 2016-11-21 12:06:22 +08:00
Raymond Knopp
79bd3ea7d4 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-11-21 10:37:56 +08:00
Raymond Knopp
f974ec264e debugging information in lte-enb, addition of external reference option in lte-softmodem and usrp_lib.cpp 2016-11-21 10:37:01 +08:00
Elena_Lukashova
d9b32975c9 Fixing some printouts into .csv file for TM4. 2016-11-19 14:20:54 +01:00
Elena_Lukashova
6fe8c9acec Implementing PUSCH precoding option for the TB1 retransmission in TM4.
The independent retransmission of TB1 will take data from the last PUSCH
report, when both TB were active and keep it for all the retransmission
rounds.
Now the TPMI for the retransmissions of TB1 is passed from the command
line with -K(tpmi): -K0 for Alamouti, -K5 for PUSCH column1 , etc.
2016-11-19 01:10:16 +01:00
Raymond Knopp
afbab21a54 put MAX_NUM_CCs back to 1 2016-11-18 13:40:14 -08:00
Raymond Knopp
85361335e5 frame_length check in compute_beta for LLR8 turbo-decoder 2016-11-18 13:33:13 -08:00
ROBERT Benoit
0b1050c149 Add following functionnalities to OAI UE autotest framework
- add progess bar report
- reduce ssh max_tries to 10
- cleanOldPrograms -> change kill cmd line to be able to run autotest on same machine than lte-softmodem (thanks Rohit & Gabriel)
- Cleanning output prints
- add --skip-machine-preparation on cmd line
- add --skip-sanity-check on cmd line
- add HTML REPORT (no-S1 only)
- add XML detailled report (no-S1 only)
2016-11-18 18:31:57 +01:00
Xiwen JIANG
033513034f Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7
Conflicts:
	cmake_targets/CMakeLists.txt
	openair2/ENB_APP/enb_config.c
2016-11-18 16:58:31 +01:00
Florian Kaltenberger
12f1cb9c7c fixing original dlsim from develop 2016-11-18 16:23:01 +01:00
Florian Kaltenberger
8769024922 Merge remote-tracking branch 'origin/develop' into feature-21-TM7
Conflicts:
	cmake_targets/CMakeLists.txt
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/INIT/lte_param_init.c
	openair1/PHY/LTE_ESTIMATION/lte_dl_channel_estimation.c
	openair1/PHY/LTE_ESTIMATION/lte_ue_measurements.c
	openair1/PHY/LTE_REFSIG/lte_dl_uespec.c
	openair1/PHY/LTE_TRANSPORT/dci.c
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/LTE_TRANSPORT/initial_sync.c
	openair1/PHY/LTE_TRANSPORT/pbch.c
	openair1/PHY/LTE_TRANSPORT/pilots.c
	openair1/PHY/LTE_TRANSPORT/pmch.c
	openair1/PHY/LTE_TRANSPORT/proto.h
	openair1/PHY/defs.h
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SCHED/phy_procedures_lte_ue.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
	openair1/SIMULATION/LTE_PHY/mbmssim.c
	openair1/SIMULATION/LTE_PHY/pdcchsim.c
	openair1/SIMULATION/LTE_PHY/ulsim.c
	openair2/ENB_APP/enb_config.c
	openair2/RRC/LITE/rrc_eNB.c
	targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/lte-ue.c
	targets/RT/USER/sched_rx_pdsch.c
	targets/SIMU/USER/init_lte.c
	targets/SIMU/USER/oaisim_functions.c
2016-11-18 15:35:21 +01:00
GabrirelCouturier
7f74065484 BSR fixes for ping 2016-11-18 15:22:11 +01:00
Cedric Roux
c03f13c07b T: add a trace for PHICH 2016-11-18 10:29:48 +01:00
calvin wang
319ae6fbbf fix bsr report inaccurate value 2016-11-18 16:44:18 +08:00
Cedric Roux
64615dcc8e hotfix: correct PHICH generation
The PHICH generation is wrong.
HARQ process X is uplink scheduled at TTI n.
At TTI n+4 the eNB receives the data.
At TTI n+8 the eNB sends ACK/NACK on the PHICH.

The problem is that PHICH generation is done after scheduling.
And PHICH generation uses "first_rb" and "n_DMRS" to compute
"ngroup_PHICH" and "nseq_PHICH".

So at TTI n+8 if the eNB has reused the HARQ process X for
a new uplink scheduling the values "first_rb" and "n_DMRS"
may have changed.

We need to use the previous values.

One solution would have been to do PHICH generation before
scheduling. The problem is that "generate_phich_top" does more
than PHICH generation. It has to setup parameters to sort of
"emulate" a DCI0 in case of retransmission scheduled without
DCI0. So part of it has to be done after scheduling. We would
have to split the function.

The simple adopted fix is to store old values of "first_rb"
and "n_DMRS" and use those values in "generate_phich_top".

This fix has only been tested with FDD. TDD may miserably fail.
2016-11-18 09:40:14 +01:00
ROBERT Benoit
9648d1f245 Merge remote-tracking branch 'origin/develop' into Enhancement-142-OAI_UE_autotest_framework 2016-11-18 09:37:10 +01:00
Xiwen JIANG
fbfb756ca1 Merge branch 'master' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7
Conflicts:
	cmake_targets/CMakeLists.txt
	openair2/ENB_APP/enb_config.c
2016-11-17 16:36:22 +01:00
Raymond.Knopp
963ccb9bad some changes for tx-gain setting 2016-11-17 11:57:14 +01:00
Elena_Lukashova
22609539b0 Fixing DCI overwritinng during retransmissions.
Modifying some printouts into the file.
2016-11-16 23:15:26 +01:00
Fabrice Nabet
92383b825a Merge branch 'bugfix-12-phy-test_mode_MCS_selection' into 'develop1B'
during 'harmony' developments initialisation of some --phy-test parameters were removed



See merge request !8
2016-11-16 18:59:14 +01:00
Fabrice Nabet
94a1510d2b Merge branch 'bugfix-13-turbo_decoder_sse_8bit-frame-length-error' into 'develop1B'
Update 3gpplte_turbo_decoder_sse_8bit.c

maximum frame length is 6144

See merge request !9
2016-11-16 18:56:19 +01:00
fnabet
69ccc900e8 fix BSR long size and fill 2016-11-16 18:24:04 +01:00
Elena_Lukashova
9c65225869 Full Support for TM4 HARQ, excpept for PUSCH precoder at this moment. 2016-11-16 16:20:00 +01:00
Cedric Roux
f116a10de3 hotfix: turbo decoder should not fail if CRC is 0
The case of a CRC == 0 is legal.

After discussion with Raymond, it is also possible to have all
bits at 0 (and so a CRC==0) if there is no transmission and thus
not much energy.

So this hotfix may introduce new problems (false decoding).

A future work is to handle this case properly by not calling the
turbo decoder if there is not enough energy received.

The problem might manifest itself more in the UE part, especially
when it tries to decode MIB and/or SIB (if I understood correctly).
2016-11-16 15:20:18 +01:00
Xenofon Foukas
c0ad88e537 Fixed bug in the creation of MAC PDUs in the local flexran scheduler 2016-11-16 16:12:30 +02:00
fnabet
2965d79dd4 Merge branch 'L2_Stabilization-22-BSR_fertilization' of https://gitlab.com/TCL_Communications/openairinterface5g into BSR_fixes_fabrice
rebase
2016-11-15 16:48:42 +01:00
hbilel
f0f34c029b BSR fixes with CMW500 2016-11-15 16:13:24 +01:00
calvin wang
3bd591bfec change bsr trigger 2016-11-15 18:41:46 +08:00
Rohit Gupta
be0b164a52 minor type updates to E-UTRAN User Guide 2016-11-14 18:49:07 +01:00
Rohit Gupta
54d8b116f9 updates to E-UTRAN User Guide 2016-11-14 18:40:03 +01:00
calvin wang
6097e0516f fix build error 2016-11-14 11:10:33 +08:00
calvin wang
09f149d86b Stabilization UE BSR feature 2016-11-11 18:01:39 +08:00
Xenofon Foukas
1c86e23edf Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2016-11-11 08:54:56 +02:00
Rohit Gupta
ad8b86d93a Update rcc.band7.tm1.if5.usrpb210.conf 2016-11-10 18:11:19 +01:00
Rohit Gupta
58284f60e7 Update rru.band7.tm1.if5.usrpb210.conf 2016-11-10 18:10:21 +01:00
Rohit Gupta
0362cb8644 Update rru.band7.tm1.if5.usrpb210.conf 2016-11-10 18:09:09 +01:00
Bilel
1568b5a167 Merge branch 'bugfix-19' into 'develop1B'
[OAI-UE] fix for issue#19: DCI0 detction with wrong RIV



See merge request !7
2016-11-09 17:00:15 +01:00
GabrirelCouturier
ea4f2948fd [OAI-UE] fix for issue#19: DCI0 detction with wrong RIV 2016-11-09 16:58:11 +01:00
Xenofon Foukas
985dcdc38c Removed deprecated configuration files for FlexRAN agent 2016-11-09 12:11:26 +02:00
Xenofon Foukas
bb5b90eab0 Added compilation options for enabling/disabling FlexRAN agent 2016-11-09 12:09:44 +02:00
Xenofon Foukas
2078a9e57c Added macros for enabling FlexRAN agent operation 2016-11-09 12:09:02 +02:00
Elena_Lukashova
630e39aea3 Intermediate commit. Adding HARQ support for SIC receiver. Changes in dci_tools.c to map TB to CW in a proper way.
Enable different options for TB1 retransmissions. Needs further improvements.
2016-11-09 00:55:57 +01:00
Xenofon Foukas
cf59e0d891 Added notification messages for control delegation in dl_scheduler VSF 2016-11-08 14:40:34 +02:00
Rohit Gupta
1a99e785a0 remove warnings 2016-11-08 03:14:01 +01:00
fnabet
d56c651081 Reapply BSR changes 2016-11-07 11:57:02 +01:00
fnabet
2b045e8106 Merge branch 'develop1B' of https://gitlab.com/TCL_Communications/openairinterface5g into L2_Stabilization-22-BSR_fertilization 2016-11-07 11:40:19 +01:00
fnabet
141689e793 Merge branch 'L2_Stabilization-22-BSR_fertilization' of https://gitlab.com/TCL_Communications/openairinterface5g into L2_Stabilization-22-BSR_fertilization 2016-11-07 11:38:46 +01:00
fnabet
b9416fb542 Merge tag 'v1B0.4' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into develop1B
fix for segmentation fault in turbo decoder + cell scan issue
2016-11-07 11:26:45 +01:00
fnabet
048b5384dd [OAI-UE] revert commit 8236206c and 9672b410 "BSR-stabilization + rebase from oai1B" 2016-11-07 11:22:11 +01:00
Bilel
de98c17e48 Merge branch 'bugfix-18' into 'develop1B'
[OAI-UE] fix for issue#18: Cell sync issue



See merge request !6
2016-11-07 11:03:54 +01:00
GabrirelCouturier
5e94d108a1 [OAI-UE] fix for issue#18: Cell sync issue 2016-11-07 11:01:25 +01:00
Bilel
68bcfd64e4 Merge branch 'bugfix-14' into 'develop1B'
[OAI-UE] fix for issue#14: segmentation fault in turbo decoder



See merge request !5
2016-11-07 10:55:00 +01:00
GabrirelCouturier
8750acebbc [OAI-UE] fix for issue#14: segmentation fault in turbo decoder 2016-11-07 10:50:05 +01:00
Xenofon Foukas
83929d42f2 Refactored local FlexRAN scheduler to make further use of FlexRAN API 2016-11-05 14:09:48 +02:00
fnabet
8236206cb0 Merge tag 'v1B0.3' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into develop1B
Add fixes for Attach
2016-11-04 18:14:35 +01:00
Fabrice Nabet
9672b41089 Merge branch 'L2_Stabilization-22-BSR_fertilization' into 'develop1B'
L2 stabilization 22 bsr fertilization

merge BSRfertilization branch to develop1B

See merge request !13
2016-11-04 16:58:09 +00:00
Xenofon Foukas
5864cc08cd Integrated scheduler to overall FlexRAN agent functionality 2016-11-04 17:49:39 +02:00
Xenofon Foukas
92ef1739b1 Restructured FlexRAN agent file hierarchy 2016-11-04 17:36:45 +02:00
Xenofon Foukas
8baf3e7e57 Changed naming convention for flexran related calls 2016-11-04 17:28:04 +02:00
Xenofon Foukas
0cee514c73 Fixed problem with comment causing a bug in compilation 2016-11-04 13:19:08 +02:00
Xenofon Foukas
92fda18ab6 Added brief documentation of agent API functions 2016-11-04 12:42:10 +02:00
Rohit Gupta
8031eaa05c [Gitlab-CI]: Merge from Enhancement-142-OAI_UE_autotest_framework 2016-11-04 01:24:29 +01:00
Rohit Gupta
eff2887d92 [Gitlab CI]: Move autotest library to tools 2016-11-03 23:27:08 +01:00
Rohit Gupta
65f047094c [Gitlab CI]: additional packages for pylab support for autotest 2016-11-03 21:40:04 +01:00
Rohit Gupta
5bbdefeee8 add installation of colorama 2016-11-03 21:32:12 +01:00
Rohit Gupta
057de07192 Merge bugfix-137-uplink-fixes and update README 2016-11-03 21:20:29 +01:00
Rohit Gupta
030bcd52d2 Merge branch 'bugfix-137-uplink-fixes' into develop 2016-11-03 21:19:16 +01:00
Florian Kaltenberger
0554132dcf Merge branch 'enhancement-64-phy_test' into 'develop'
Enhancement 64 phy test



See merge request !46
2016-11-03 17:03:44 +01:00
Florian Kaltenberger
535755a528 resetting two files to their state in develop 2016-11-03 17:02:06 +01:00
Florian Kaltenberger
c61d74cd49 Merge remote-tracking branch 'origin/develop' into enhancement-64-phy_test 2016-11-03 16:45:17 +01:00
hbilel
9fbbd0678a [OAI-UE] attach accept fix 2016-11-03 15:53:06 +01:00
Bilel
7fb6b945ef Merge branch 'issue-17-rrcConnectionReconf-fix' into 'develop1B'
[OAI-UE] RRCConnectionReconf fixes

1- SRB2 fix
2- attach accept, support type of list 0 with number of element = 1

See merge request !4
2016-11-03 15:33:09 +01:00
hbilel
81837312cb [OAI-UE] RRCConnectionReconf fixes
1- SRB2 fix
           2- attach accept, support type of list 0 with number of element = 1
2016-11-03 15:29:33 +01:00
Raymond.Knopp
b018a3bbe9 configuration file for 10 MHz LMMSDR, 10 MHz, RF configuration file bugfix, first_rx > 1 for LMSSDR 2016-10-31 20:47:10 +01:00
Raymond Knopp
2d963f5330 prototype of trx_stop_func 2016-10-31 10:17:54 -07:00
Raymond Knopp
45184c769c Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop
Conflicts:
	cmake_targets/CMakeLists.txt
	targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
	targets/ARCH/LMSSDR/USERSPACE/LIB/sodera_lib.cpp
2016-10-31 09:58:23 -07:00
Raymond Knopp
7b39d594d5 new library for LMSSDR. Integrated by Lime. 2016-10-31 09:49:02 -07:00
fnabet
c5a8dbfee2 Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into develop1B 2016-10-28 14:35:13 +02:00
Bilel
04acbd4d6a Merge branch 'issue-15-ueCapabilityInfo-featureGrp' into 'develop1B'
[OAI-UE] add featureGroup to UeCapability (only for usim test mode)

add featureGroup to UeCapability (only for usim test mode)

See merge request !2
2016-10-28 09:59:24 +02:00
hbilel
4eb3774a74 [OAI-UE] add featureGroup to UeCapability (only for usim test mode) 2016-10-28 09:56:31 +02:00
Raymond Knopp
bc7df9f5c4 removed debugging traces 2016-10-27 14:44:08 +02:00
Bilel
3643c3e80a Merge branch 'feature-11-UE-periodic-CQI-RI' into 'develop1B'
Feature 11 ue periodic cqi ri

pucch format2 periodic cqi/ri

See merge request !1
2016-10-27 14:43:11 +02:00
Raymond Knopp
90e3931e4e resynch for timestamp 2016-10-27 14:41:58 +02:00
hbilel
10ab1c3e8b [OAI-UE] - PUCCH Format2 Periodic CQI/RI reporting
Handle SRS TX in case of CQI / SR / AN simultaneous transmission
2016-10-27 14:30:30 +02:00
Raymond Knopp
17e8a047b3 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-10-27 12:38:52 +02:00
Raymond Knopp
e156079e33 timeout for UDP recvfrom 2016-10-27 12:36:38 +02:00
Raymond Knopp
ddb959991d Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-10-27 11:21:02 +02:00
Raymond Knopp
af9c77d09f Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
2016-10-27 01:23:19 -07:00
Raymond Knopp
11db1d89bb Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony
Conflicts:
	targets/RT/USER/lte-enb.c
2016-10-27 09:58:56 +02:00
Raymond Knopp
5e1d462aa9 resynch for initial RF acqusition 2016-10-27 09:56:23 +02:00
luhan wang
727cdb4a87 updates for udp IF4p5 2016-10-27 09:45:56 +02:00
luhan wang
3c7ec4e416 added gtkw files for rcc 2016-10-27 07:47:47 +02:00
calvin wang
6644204765 add BSR trigger code for interoperability test 2016-10-27 11:47:17 +08:00
calvin wang
0dfde2f441 Merge branch 'develop1B' of https://gitlab.com/TCL_Communications/openairinterface5g into L2_Stabilization-22-BSR_fertilization 2016-10-27 09:07:13 +08:00
calvin wang
7e6a74d5be change debug info 2016-10-26 13:21:26 +08:00
Rohit Gupta
9927838e8c Update README.txt with License information 2016-10-25 22:44:45 +02:00
Rohit Gupta
b7a467839d Update NOTICE.txt for License information 2016-10-25 22:42:33 +02:00
ROBERT Benoit
2ace4029f3 Update 3gpplte_turbo_decoder_sse_8bit.c
maximum frame length is 6144
2016-10-25 18:09:59 +02:00
ROBERT Benoit
0277475bef during 'harmony' developments initialisation of some --phy-test parameters were removed 2016-10-25 17:47:58 +02:00
ROBERT Benoit
c37446507a Add testing capabilities for OAI UE in autotest framework
Autotest Framework modifications:
-> paramiko.Transport((hostname, ports)) : issue on my configuration
-> add --test-suite command line parameter to select a different test suite XML file (default is test_case_list.xml)
-> add patch file functionnality when installing remote machine : required to add LOG printing for pass/fail evaluation
-> add lte-softmodem-noS1 test class - fork of lte-softmodem with the following modification
	- no EPC management on lte-softmodem-noS1 class
	- add cell synchronization detection as a precondition for test results analysis
	- add metric extraction for pass/fail criteria (metrics are defined in XML file)
	- generate graphics for performances metrics (used in the HTML report -> not available in this delivery)

Patch files:
-> autotest_ue_cell_synch_event.patch : Add log for cell synchronization detection
-> autotest_ue_dlsch_bitrate_metric.patch : Add log for DLSCH bitrate capture
-> 3gpplte_turbo_decoder_sse_8bit.patch : hotfix for turbo decoder in autotest (issue followed in oai1B project)
-> phy_test__target_dl_mcs.patch : hotfix for --phy-test configuration (MCS)
2016-10-25 16:51:37 +02:00
fnabet
f55c4e46cb Merge tag 'v1B0.1' of https://gitlab.eurecom.fr/oai1B/openairinterface5g into develop1B
OAI1B wk43 preparation: fixes, SRS, merge from develop
2016-10-25 13:36:34 +02:00
Xenofon Foukas
b6c7909d03 Fixed bugs related to MAC padding and RLC requests in AM mode 2016-10-24 19:14:07 +03:00
hbilel
31fbc80520 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop1B
parent a6742020 - Commit 1fa2f76e61

Conflicts:
	targets/RT/USER/lte-softmodem.c
2016-10-24 16:21:05 +02:00
Raymond Knopp
db8c2a0537 update of ETHERNET interfaces (removal of global variables). 2016-10-23 23:29:21 -07:00
Elena_Lukashova
64116b90e1 Adding HARQ support for TM4. No fallback to Alamouti yet.
Counting for the number of 2CWs or 1CW retransmissions.
Adding corresponding changes to the phy_scope.
2016-10-23 21:38:58 +02:00
Rohit Gupta
1fa2f76e61 minor fix for config file for new changes to RRH/TM1 2016-10-21 23:25:53 +02:00
Bilel
5bdfa81204 Merge branch '39-autentication-failure-in-case-of-usim-test' into 'develop1B'
[OAI-UE] Authetification XOR Algo for usim test

Closes #39

See merge request !10
2016-10-21 13:23:14 +00:00
fnabet
15e299bd11 [OAI-UE] Authetification XOR Algo for usim test 2016-10-21 15:09:42 +02:00
calvin wang
948f2df9f1 modify BSR code according comments 2016-10-21 18:26:50 +08:00
luhan wang
5affbe3848 added resynchronization parameters to PHY_VARS_eNB 2016-10-20 17:32:56 +02:00
Xenofon Foukas
b218128862 Moved agent and protocol to flexran naming convention 2016-10-20 16:37:45 +03:00
Raymond Knopp
d8defff0fa periodic cqi procedures 2016-10-20 06:32:33 -07:00
luhan wang
f1abf1a775 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-10-20 14:20:27 +02:00
luhan wang
08499a69e2 modifications for IF4p5 UDP transport 2016-10-20 14:19:18 +02:00
luhan wang
25ab1c35ee modifications for if4p5 UDP 2016-10-20 14:18:32 +02:00
Florian Kaltenberger
b502b5060e Merge remote-tracking branch 'origin/develop' into enhancement-64-phy_test
Conflicts:
	targets/ARCH/EXMIMO/USERSPACE/OCTAVE/txsig.m
	targets/RT/USER/lte-ue.c
2016-10-19 21:04:00 +02:00
Xenofon Foukas
9ed966cfe6 Added conf file for flexran oaisim 2016-10-19 15:16:58 +03:00
Raymond Knopp
8c37787e23 added 25 PRB rru file 2016-10-19 09:30:42 +02:00
luhan wang
9b9a7e50b4 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-10-19 08:23:18 +02:00
Cedric Roux
a6742020d0 T: add some hack programs
- time_meas to measure time spent in scheduling
- timeplot to show nice histograms in realtim of above measurement
2016-10-18 18:17:11 +02:00
Cedric Roux
634ac5fc75 T: update T_message.txt and T_defs.h for VCD traces
The VCD traces have changed. This commit gets in synch
with current status.
2016-10-18 18:02:34 +02:00
hbilel
bd8344b471 Merge branch '36-srs-feature-development' into develop1B 2016-10-18 16:55:34 +02:00
fnabet
9938bd5d05 [OAI-UE] SRS feature
1- Implement SRS procedures
                   2- Implement SRS procedures part2
                   3- Implement SRS: SRS valid on CMW
2016-10-18 16:15:49 +02:00
Xenofon Foukas
93b9b73582 Merge remote-tracking branch 'oai/develop' into oai-integration
Conflicts:
	cmake_targets/tools/build_helper
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/LAYER2/MAC/eNB_scheduler.c
2016-10-18 16:27:56 +03:00
Rohit Gupta
2ac2aaf355 Merge branch 'develop' into bugfix-137-uplink-fixes 2016-10-17 21:29:12 +02:00
Rohit Gupta
915282df45 remove core secuirity simulators 2016-10-17 21:28:59 +02:00
Rohit Gupta
5725374ed4 Merge branch 'develop' into bugfix-137-uplink-fixes 2016-10-17 21:25:56 +02:00
Rohit Gupta
e345a5d451 hotfix for UE synchronization 2016-10-17 10:35:22 +02:00
Raymond Knopp
2e688c69ca small bugfixes to avoid segfault in rx_sdu 2016-10-12 23:31:31 -07:00
Rohit Gupta
d566dfd3b1 add tag v0.5 for support for 16.04 + merge of enhancement-10-harmony-lts 2016-10-12 23:35:50 +02:00
Rohit Gupta
039d017561 Merge branch 'enhancement-10-harmony-lts' into develop 2016-10-12 23:33:23 +02:00
fnabet
9d5621e65c [OAI-UE] SRS feature
1- Implement SRS procedures
               2- Implement SRS procedures part2
2016-10-12 17:47:31 +02:00
hbilel
0705e71ffc [OAI-UE] SRS feature
1- Implement SRS procedures
2016-10-12 14:29:48 +02:00
Dominique Nussbaum
8dcf0f0cfd option -a is now handled correctly at UE 2016-10-12 10:17:07 +02:00
Rohit Gupta
256948d61c make single thread mode=1 by default 2016-10-11 21:49:18 +02:00
Rohit Gupta
e084e58388 merge from develop 2016-10-11 18:52:14 +02:00
Rohit Gupta
433d058ba9 Gitlab CI: delete wildcard programs for kill script 2016-10-11 18:48:24 +02:00
Rohit Gupta
057d7619f6 Merge branch 'feature-131-new-license' into develop 2016-10-11 17:39:26 +02:00
Rohit Gupta
c4a9e94b7f update README with release tags 2016-10-11 17:38:45 +02:00
Rohit Gupta
4c100a291b add license to autotest framework + delete files not used in project 2016-10-11 14:10:40 +02:00
Cedric Roux
ef67b3a0a9 hotfix: reserve RBs in Random Access Response case
The RBs were not marked as used. A later UE downlink scheduling
could use those RBs, messing up everything.

Not sure this is the right place to mark them used. Maybe better
to do it in the "if (!CCE_allocation_infeasible" test.
2016-10-11 12:29:15 +02:00
fnabet
3bd7225f9a Merge branch 'develop1B' into L2_Stabilization-22-BSR_fertilization 2016-10-11 12:22:42 +02:00
Rohit Gupta
b481bfd985 Merge branch 'develop' into feature-131-new-license 2016-10-10 19:25:02 +02:00
Bilel
2509847af6 Merge branch '34-fixes' into 'develop1B'
[OAI-UE] fixes:

1- frame/subframe update
2- ccch discard regression

Closes #34

See merge request !7
2016-10-10 15:18:30 +00:00
fnabet
138ed2fbb4 [OAI-UE] fixes:
1- frame/subframe update
           2- ccch discard regression
2016-10-10 17:16:01 +02:00
Cedric Roux
5894f3e6c2 issue 137 - remove hack: MCS reduction in case of CQI reporting
This hack was probably put in place in an attempt to circumvent
problems solved by previous commits.

As far as I checked (with my knowledge of the day) we can't exhaust
uplink physical bits with ULSCH data bits when there is CQI reporting
at the same time.

To be refined if this idea is proved wrong.
2016-10-10 16:40:42 +02:00
Cedric Roux
190fc96af4 issue 137 - fix RI bits decoding
RI bits are present only in some transmission modes.

For aperiodic reporting (the mode we do as of today),
36.213 7.2.1 (release 10) says:

    "RI is only reported for transmission modes 3 and 4,
    as well as transmission modes 8 and 9 with PMI/RI reporting"

This commit activates decoding of RI bits only for transmission
modes 3 and 4. 8 and 9 are not done today (as far as I know).
2016-10-10 16:36:52 +02:00
Cedric Roux
b0887a1b85 issue 137 - correct computation of G
G was wrongly computed in some places, not taking into account
CQI and RI bits. This commit saves the correct value computed
in ulsch_decoding so we can reuse it in ulsch_decoding_data
(and the like).

Only the file openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c has
been checked. If the computation is done somewhere else the
problem might still exist.
2016-10-10 16:33:12 +02:00
fnabet
b11ed995d2 fix build issue after merge from develop 2016-10-10 16:22:01 +02:00
fnabet
1b8c0d6551 merge from oai1B/develop1B 2016-10-10 14:55:46 +02:00
fnabet
4e7b1790c8 Merge branch 'develop' into develop1B 2016-10-10 14:27:09 +02:00
fnabet
6dcfc1e4f1 Merge branch 'develop1B' of https://gitlab.eurecom.fr/oai1b/openairinterface5g into develop1B 2016-10-10 14:26:44 +02:00
Navid Nikaein
6277038d7f remove the OMG SUMO related files and update te top-level OMG and cmakefiles 2016-10-10 13:32:16 +02:00
Rohit Gupta
c51edecdee Merge branch 'bugfix-136-OAI-UE-Attach-fixes' into 'develop'
[OAI-UE] issue#136 attach fixes:

- pusch/pucch power control
           - pucch encoding call
           - srb/drb add with default value

See merge request !44
2016-10-10 12:03:51 +02:00
fnabet
50565a21f7 Merge branch 'develop1B' of https://gitlab.com/TCL_Communications/openairinterface5g into L2_Stabilization-22-BSR_fertilization 2016-10-10 11:48:15 +02:00
Raymond Knopp
a67f12e7cc correction of scrambling sequence initialization in phich.c (rx_phich) 2016-10-09 00:47:12 -07:00
Raymond Knopp
b64f341962 correction of scrambling sequence initialization in phich.c (generate_phich) 2016-10-09 00:45:03 -07:00
Raymond Knopp
4ad723a176 added rcc gtkw files. 2016-10-08 10:40:36 -07:00
Raymond Knopp
81ae8fb2ff cleaned up formatting of CCE table trace in eNB_scheduler_primitives.c 2016-10-07 23:41:51 -07:00
Raymond Knopp
0dc55ec8c8 small bugfix for compute_beta8 in turbo-decoder. 2016-10-07 23:13:09 -07:00
Raymond Knopp
470000f0a2 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into develop 2016-10-07 10:59:29 -07:00
Raymond Knopp
26f454aa9a bugfix in slot_fep_mbsfn.c 2016-10-07 10:49:58 -07:00
Raymond Knopp
e958d7be87 update for mbmssim for new data structures 2016-10-07 10:31:17 -07:00
Raymond Knopp
263ad2aff8 bugfix in dlsim/ulsim for channel model 2016-10-07 10:20:31 -07:00
fnabet
310a87ea90 [OAI-UE] issue#136 attach fixes:
- pusch/pucch power control
           - pucch encoding call
           - srb/drb add with default value
2016-10-07 18:30:55 +02:00
Rohit Gupta
4787c975ec delete files with GPL License + modify build scripts 2016-10-07 18:19:43 +02:00
Rohit Gupta
73aa265793 Merge branch 'develop' into feature-131-new-license 2016-10-07 13:58:08 +02:00
Florian Kaltenberger
3e81e8c86b Merge remote-tracking branch 'origin/develop' into feature-59-tm4
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_ESTIMATION/lte_ue_measurements.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/LTE_TRANSPORT/proto.h
	openair1/PHY/MODULATION/slot_fep.c
	openair1/PHY/TOOLS/lte_phy_scope.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
2016-10-06 21:56:06 +02:00
Tien-Thinh Nguyen
461e2430d1 fix the issues related to sending ULlULL... to RRU 2016-10-06 14:40:30 +02:00
Fabrice Nabet
813187bf10 Merge branch '15-bugfix-usrp-ta' into 'develop1B'
Resolve "Incorrect TA initialization for TDD with USRP"

Merge and Closes #15 Resolve "Incorrect TA initialization for TDD with USRP"

See merge request !6
2016-10-05 15:03:47 +00:00
Fabrice Nabet
af454ffd85 Merge branch '6-bugfix-wireshark-sfn' into 'develop1B'
Resolve "OAI wireshark log can now display system frame number"

Merge and Closes #6: Resolve "OAI wireshark log can now display system frame number"

See merge request !5
2016-10-05 14:55:22 +00:00
fnabet
2e76cb7e37 Merge branch 'develop1B' into 6-bugfix-wireshark-sfn 2016-10-05 16:24:58 +02:00
Fabrice Nabet
af09f29890 Merge branch '7-bugfix-kenb-refresh' into 'develop1B'
Resolve "Fix the attach failure at RRC::SecurityModeCommand"

Closes #7

See merge request !4
2016-10-05 10:11:04 +00:00
Rohit Gupta
e86ec1179a Gitlab CI: Remove 20 MHZ TM2 test cases for USRP B210 2016-10-04 18:59:54 +02:00
Rohit Gupta
462e1e4336 Gitlab CI: Enable 20 MHz test case 2016-10-04 18:36:34 +02:00
Tien-Thinh Nguyen
b8d2455320 fix issues to work with multiple carriers (conga-ercom) 2016-10-04 17:59:07 +02:00
Tien-Thinh Nguyen
e395164a4c fix issues to work with multiple carriers (conga-ercom) 2016-10-04 17:02:50 +02:00
Rohit Gupta
516a8ba944 Merge branch 'develop' of gitlab.eurecom.fr:oai/openairinterface5g into develop 2016-10-03 20:10:31 +02:00
Rohit Gupta
8f5112b0cb Gitlab CI: minor fix to test case config file 2016-10-03 20:10:17 +02:00
Rohit Gupta
c1490bb88d Merge branch 'develop' into enhancement-10-harmony 2016-10-03 15:44:40 +02:00
Rohit Gupta
1db923d6f9 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-10-03 15:44:14 +02:00
Rohit Gupta
13496a4c6b minor fix to add some log message in oarf compilation fir EXMIMO drivers 2016-10-03 12:59:00 +02:00
Cedric Roux
e196210a51 remove warning: rrc_ue_generate_MeasurementReport had const qualifier
rrc_ue_generate_MeasurementReport calls pdcp_data_req which changes
the content of ctxt_pP.

I'm not sure of the logic at play here, so maybe removing 'const' is not
the right solution and there is a real bug...
2016-10-03 11:20:52 +02:00
Cedric Roux
677fdb60b2 remove warning: function s1ap_eNB_e_rab_setup_resp was not declared in header file 2016-10-03 11:15:22 +02:00
Cedric Roux
68090c8b36 bugfix: get_tx_amp called with wrong parameter 2016-10-03 11:14:40 +02:00
Cedric Roux
494e0dc276 bugfix: forgot to reprocess files in the previous commit 2016-10-03 10:41:29 +02:00
Cedric Roux
27bb59d3af better handling of NETTLE version in CMake 2016-10-03 10:38:46 +02:00
Rohit Gupta
82e54108e9 add hotfix to add usrp ud-host package 2016-10-03 02:45:31 +02:00
Rohit Gupta
7203a5214a add hotfix to add usrp ud-host package 2016-10-03 02:44:47 +02:00
Rohit Gupta
df63361267 Gitlab CI: compile only for first run 2016-10-02 23:53:45 +02:00
Rohit Gupta
2f14ee6523 Merge branch 'enhancement-10-harmony' of gitlab.eurecom.fr:oai/openairinterface5g into enhancement-10-harmony 2016-10-02 23:47:05 +02:00
Rohit Gupta
43996bbdba Gitlab CI: minor fixes to test case config file 2016-10-02 21:17:57 +02:00
Rohit Gupta
7c6e48d9c4 detect nettle version using cmake 2016-10-02 19:56:43 +02:00
Rohit Gupta
ec7d0ff2c3 fix compilation warnings 2016-10-02 00:24:25 +02:00
Rohit Gupta
0263186860 compilation fixes for mbmssim 2016-10-01 22:31:40 +02:00
Rohit Gupta
93559037f6 compilation fix for nettle API change in 16.04 2016-10-01 13:10:17 -07:00
Rohit Gupta
e63475debb minor fix for compilation of core simulators 2016-10-01 22:03:37 +02:00
Rohit Gupta
0c08aa6139 Gitlab CI: remove gdb from some test cases 2016-10-01 21:52:17 +02:00
Rohit Gupta
d9398cdb1e minor fix for compilation of itti assertions 2016-10-01 18:03:07 +02:00
Rohit Gupta
200cc7f661 Merge branch 'enhancement-10-harmony-lts' of gitlab.eurecom.fr:oai/openairinterface5g into enhancement-10-harmony-lts 2016-10-01 18:00:39 +02:00
Rohit Gupta
42b00ead01 cmake list fix for detecting nettle version for at_commands 2016-10-01 08:54:27 -07:00
Rohit Gupta
7e8bfdefce Merge branch 'enhancement-10-harmony' into enhancement-10-harmony-lts 2016-10-01 17:50:17 +02:00
Rohit Gupta
1459432fee Merge branch 'enhancement-10-harmony' of gitlab.eurecom.fr:oai/openairinterface5g into enhancement-10-harmony 2016-10-01 17:49:10 +02:00
Rohit Gupta
4ac71a6e46 fixes for automatic version detection of nettle for 14.04/16.04 2016-10-01 15:03:56 +02:00
Raymond Knopp
5ed184ddf2 removed debugging in pucch. 2016-10-01 02:43:26 -07:00
Raymond Knopp
9f972b7f22 updated high-level slideset. 2016-10-01 01:42:20 -07:00
Raymond Knopp
4b77dda67b some changes in pucchsim to remove warnings. sanity check in turbo_decoder. 2016-09-30 23:01:31 -07:00
Rohit Gupta
bd25e2d949 Merge branch 'enhancement-10-harmony' into enhancement-10-harmony-lts 2016-09-30 21:41:41 +02:00
Rohit Gupta
07db8e39b6 Merge branch 'enhancement-10-harmony' of gitlab.eurecom.fr:oai/openairinterface5g into enhancement-10-harmony 2016-09-30 21:41:14 +02:00
Rohit Gupta
7a1e8347c7 add help for debug option for build_oai 2016-09-30 21:41:00 +02:00
Florian Kaltenberger
f62063276a timing measurement fixes 2016-09-30 16:23:49 +02:00
fnabet
2332290a0d Merge branch 'develop1B' of https://gitlab.com/TCL_Communications/openairinterface5g into L2_Stabilization-22-BSR_fertilization 2016-09-30 15:55:40 +02:00
laurent
402bd21bd7 merge harmony 2016-09-30 14:40:39 +02:00
Fabrice Nabet
d02ee6cfe7 Merge branch '14-3gpp-alignement-l2' into 'develop1B'
UE L2 changes for 3GPP alignement

Closes #14

See merge request !3
2016-09-30 12:38:05 +00:00
laurent
55b3b262cf Merge branch 'enhancement-10-harmony-lts' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony-lts 2016-09-30 12:35:01 +02:00
laurent
5822c850cb small2 2016-09-30 12:34:57 +02:00
Laurent
5ea7253ff7 small update 2016-09-30 12:32:33 +02:00
Rohit Gupta
9f485ac5a9 minor fix to config files 2016-09-30 11:14:09 +02:00
hutch
c6cb8ed260 hotfix for eRRC 2016-09-30 11:10:13 +02:00
Rohit Gupta
51bf2ba535 recalibrate USRP config files 2016-09-29 12:55:09 +02:00
Rohit Gupta
5ca2d6f0a0 Merge branch 'develop' of gitlab.eurecom.fr:oai/openairinterface5g into develop 2016-09-29 12:08:23 +02:00
Rohit Gupta
2fc4e6eeeb Merge branch 'enhancement-10-harmony' into develop 2016-09-29 11:41:22 +02:00
Raymond Knopp
cd22e926b3 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-09-28 13:33:04 -07:00
Rohit Gupta
6599d1c9c4 bug fixes for UE 2016-09-28 20:51:44 +02:00
Fabrice Nabet
4e0e0191be Merge branch '8-bugfix-drb-lcid-map' into 'develop1B'
Resolve "OAI UE  does not configure logical-channel ID and data radio bearer ID according to RRCConnectionReconfiguration message"

Closes #8

See merge request !2
2016-09-28 16:53:13 +00:00
fnabet
a5210e4f4f UE L2 changes for 3GPP alignement 2016-09-28 17:36:07 +02:00
Rohit Gupta
8220c9e5ce Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-09-28 17:30:22 +02:00
hutch
2f00423218 update RCC config file for 5 MHz 2016-09-28 17:27:10 +02:00
Rohit Gupta
222519fbaa Merge branch 'develop' of gitlab.eurecom.fr:oai/openairinterface5g into develop 2016-09-28 17:22:25 +02:00
Cedric Roux
1410b3f343 hotfix: fields DLSCH_DCI and ULSCH_DCI of UE_TEMPLATE had wrong size
The old value was 6, it should be 8 because those fields are
casted to 'struct DCI0_5MHz_FDD' and the like and those have
a size multiple of 32 bits, that is 4 or 8 bytes as of today.

(MAX_DCI_SIZE_BITS is 45, all the shifts, muls and adds lead
to a value of 8 after this commit and 6 before.)

The problem manifested itself with a 20MHz eNB. Push the traffic,
after a while the DL harq process 0 is not used anymore.
This is because DLSCH_DCI is directly followed by nb_rb in
the structure UE_TEMPLATE and setting a value for harq process 7
did overwrite nb_rb[0], putting much too big values in there,
leading to the scheduler to always refuse to reschedule because
the required RBs are impossibly huge (I saw values of 32744, 16384,
and others).
2016-09-28 16:51:28 +02:00
Rohit Gupta
dc2ec6fdef changed logging level of GTPU errors 2016-09-28 15:21:13 +02:00
Rohit Gupta
1fdb28d16f Merge branch 'enhancement-10-harmony' into develop 2016-09-28 15:14:19 +02:00
Rohit Gupta
9afa174548 minor fix to enable EXM 2016-09-28 15:13:00 +02:00
Cedric Roux
b0662e4bbe update licensing information in remaining files
The text has been updated in all those files.

	modified:   README.txt
	modified:   cmake_targets/CMakeLists.txt
	modified:   cmake_targets/at_commands/CMakeLists.txt
	modified:   cmake_targets/autotests/core.py
	modified:   cmake_targets/autotests/log.py
	modified:   cmake_targets/autotests/openair.py
	modified:   cmake_targets/autotests/run_exec_autotests.bash
	modified:   cmake_targets/autotests/run_exec_lte-softmodem_tests.py
	modified:   cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
	modified:   cmake_targets/autotests/tools/configure_cots_huaweiE398_ue.py
	modified:   cmake_targets/autotests/tools/configure_usrpb210.py
	modified:   cmake_targets/autotests/tools/find_usb_path.bash
	modified:   cmake_targets/autotests/tools/free_mem.bash
	modified:   cmake_targets/autotests/tools/iperf3_script
	modified:   cmake_targets/autotests/tools/iperf3_script_phone
	modified:   cmake_targets/autotests/tools/iperf_script
	modified:   cmake_targets/autotests/tools/iperf_script_phone
	modified:   cmake_targets/autotests/tools/lib_autotest.py
	modified:   cmake_targets/autotests/tools/search_repl.py
	modified:   cmake_targets/build_oai
	modified:   cmake_targets/tools/asn1tostruct.py
	modified:   cmake_targets/tools/build_helper
	modified:   cmake_targets/tools/build_test_epc_tools
	modified:   cmake_targets/tools/example_enb_exmimo_mme_hss.txt
	modified:   cmake_targets/tools/example_oaisim_enb_ue_mme_virtual.txt
	modified:   cmake_targets/tools/indent_source_code
	modified:   cmake_targets/tools/init_exmimo2
	modified:   cmake_targets/tools/init_nas_nos1
	modified:   cmake_targets/tools/perf_oai.bash
	modified:   cmake_targets/tools/run_enb_s1_exmimo
	modified:   cmake_targets/tools/run_enb_s1_usrp
	modified:   cmake_targets/tools/run_enb_ue_virt_noS1
	modified:   cmake_targets/tools/run_enb_ue_virt_s1
	modified:   openair2/DOCS/TEMPLATES/README/Readme.doxy
	modified:   openair2/DOCS/TEMPLATES/README/readme.txt
	modified:   openair2/Makefile
	modified:   openair2/UTIL/OCG/Readme.doxy
	modified:   openair2/UTIL/OCG/readme.txt
	modified:   openair2/UTIL/OSD/recep.php
	modified:   openair2/X2AP/MESSAGES/ASN1/asn1tostruct.py
	modified:   openair3/DOCS/DOXYGEN/Makefile.am
	modified:   openair3/DOCS/Latex/EPC/Makefile
	modified:   openair3/DOCS/Makefile.am
	modified:   openair3/GTPV1-U/Makefile.am
	modified:   openair3/GTPV1-U/Makefile.eNB
	modified:   openair3/NAS/TEST/AS_SIMULATOR/Makefile
	modified:   openair3/NAS/TEST/NETWORK/Makefile
	modified:   openair3/NAS/TEST/USER/Makefile
	modified:   openair3/NAS/TOOLS/Makefile
	modified:   openair3/NAS/UE/API/USER/Makefile
	modified:   openair3/NAS/UE/API/USER/tst/Makefile
	modified:   openair3/NAS/UE/API/USIM/Makefile
	modified:   openair3/S1AP/MESSAGES/ASN1/asn1tostruct.py
	modified:   openair3/TEST/Makefile.am
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/gpib_send.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_config_exmimo.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_frame.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_get_num_detected_cards.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_send_frame.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_stop.cc
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf_stop_without_reset.cc
	modified:   targets/PROJECTS/E-MBMS/build_all.bash
	modified:   targets/PROJECTS/E-MBMS/start_enb.bash
	modified:   targets/PROJECTS/E-MBMS/start_ue.bash
	modified:   targets/PROJECTS/E-MBMS/utils.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/interfaces.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/networks.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/start_enb_and_ue_virt.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/start_ue.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/utils.bash
	modified:   targets/PROJECTS/GENERIC-LTE-EPC/virtual_box.bash
	modified:   targets/SCRIPTS/install_asn1c_0.9.24.modified.bash
	modified:   targets/TEST/OAI/case01.py
	modified:   targets/TEST/OAI/case02.py
	modified:   targets/TEST/OAI/case03.py
	modified:   targets/TEST/OAI/case04.py
	modified:   targets/TEST/OAI/case05.py
	modified:   targets/TEST/OAI/case11.py
	modified:   targets/TEST/OAI/case12.py
	modified:   targets/TEST/OAI/case13.py
	modified:   targets/TEST/OAI/core.py
	modified:   targets/TEST/OAI/log.py
	modified:   targets/TEST/OAI/openair.py
	modified:   targets/TEST/OAI/test01.py
	modified:   targets/TEST/OAI/test02.py
	modified:   targets/TEST/PDCP/readme.txt
	modified:   targets/build_helper.bash
	modified:   targets/build_oai.bash
	modified:   targets/perf_oai.bash
2016-09-28 11:17:33 +02:00
Cedric Roux
972d0e612e add README in the T tracer to clarify its licensing information
The T is released with the same license as the rest of OpenAirInterface,
of which it is an integral part.
2016-09-28 10:46:16 +02:00
Cedric Roux
74316f6b69 remove COPYING files
Most of them were the GPL.

It is useless to have a copy of the license in every
sub-directory.

From now on, there is only the LICENSE in the top
directory of the distribution.

	deleted:    common/utils/COPYING
	deleted:    common/utils/hashtable/COPYING
	deleted:    common/utils/itti/COPYING
	deleted:    common/utils/itti_analyzer/COPYING
	deleted:    common/utils/itti_analyzer/common/COPYING
	deleted:    common/utils/itti_analyzer/libbuffers/COPYING
	deleted:    common/utils/itti_analyzer/libparser/COPYING
	deleted:    common/utils/itti_analyzer/libresolver/COPYING
	deleted:    common/utils/itti_analyzer/libui/COPYING
	deleted:    openair1/COPYING
	deleted:    openair1/PHY/CODING/COPYING
	deleted:    openair1/PHY/CODING/TESTBENCH/COPYING
	deleted:    openair1/PHY/COPYING
	deleted:    openair1/PHY/INIT/COPYING
	deleted:    openair1/PHY/LTE_ESTIMATION/COPYING
	deleted:    openair1/PHY/LTE_REFSIG/COPYING
	deleted:    openair1/PHY/LTE_TRANSPORT/COPYING
	deleted:    openair1/PHY/MODULATION/COPYING
	deleted:    openair1/PHY/TOOLS/COPYING
	deleted:    openair1/SCHED/COPYING
	deleted:    openair1/SIMULATION/COPYING
	deleted:    openair1/SIMULATION/ETH_TRANSPORT/COPYING
	deleted:    openair1/SIMULATION/LTE_PHY/COPYING
	deleted:    openair1/SIMULATION/RF/COPYING
	deleted:    openair1/SIMULATION/TOOLS/COPYING
	deleted:    openair2/COMMON/COPYING
	deleted:    openair2/DOCS/TEMPLATES/CODE/COPYING
	deleted:    openair2/LAYER2/COPYING
	deleted:    openair2/LAYER2/MAC/COPYING
	deleted:    openair2/LAYER2/PDCP_v10.1.0/COPYING
	deleted:    openair2/LAYER2/RLC/AM_v9.3.0/COPYING
	deleted:    openair2/LAYER2/RLC/COPYING
	deleted:    openair2/LAYER2/RLC/TM_v9.3.0/COPYING
	deleted:    openair2/LAYER2/RLC/UM_v9.3.0/COPYING
	deleted:    openair2/NETWORK_DRIVER/LITE/COPYING
	deleted:    openair2/NETWORK_DRIVER/MESH/COPYING
	deleted:    openair2/NETWORK_DRIVER/UE_IP/COPYING
	deleted:    openair2/PHY_INTERFACE/COPYING
	deleted:    openair2/RRC/L2_INTERFACE/COPYING
	deleted:    openair2/RRC/LITE/COPYING
	deleted:    openair2/RRC/LITE/MESSAGES/COPYING
	deleted:    openair2/RRC/NAS/COPYING
	deleted:    openair2/RRM_4_RRC_LITE/COPYING
	deleted:    openair2/RRM_4_RRC_LITE/src/COPYING
	deleted:    openair2/RRM_4_RRC_LITE/src/radio_resources/COPYING
	deleted:    openair2/UTIL/BIGPHYS/COPYING
	deleted:    openair2/UTIL/CLI/COPYING
	deleted:    openair2/UTIL/FIFO/COPYING
	deleted:    openair2/UTIL/LISTS/COPYING
	deleted:    openair2/UTIL/LOG/COPYING
	deleted:    openair2/UTIL/MATH/COPYING
	deleted:    openair2/UTIL/MEM/COPYING
	deleted:    openair2/UTIL/OCG/COPYING
	deleted:    openair2/UTIL/OMG/COPYING
	deleted:    openair2/UTIL/OMV/COPYING
	deleted:    openair2/UTIL/OPT/COPYING
	deleted:    openair2/UTIL/OSA/COPYING
	deleted:    openair2/UTIL/OSD/COPYING
	deleted:    openair2/UTIL/OTG/COPYING
	deleted:    openair2/UTIL/SCTP/COPYING
	deleted:    openair2/UTIL/TIMER/COPYING
	deleted:    openair2/UTIL/TRACE/COPYING
	deleted:    openair2/X2AP/COPYING
	deleted:    openair3/COPYING
	deleted:    openair3/DOCS/COPYING
	deleted:    openair3/DOCS/DOXYGEN/COPYING
	deleted:    openair3/DOCS/Latex/COPYING
	deleted:    openair3/DOCS/Latex/DefaultBearer/COPYING
	deleted:    openair3/DOCS/Latex/EPC/COPYING
	deleted:    openair3/NAS/COMMON/API/NETWORK/COPYING
	deleted:    openair3/NAS/COMMON/COPYING
	deleted:    openair3/NAS/COMMON/EMM/MSG/COPYING
	deleted:    openair3/NAS/COMMON/ESM/MSG/COPYING
	deleted:    openair3/NAS/COMMON/IES/COPYING
	deleted:    openair3/NAS/COMMON/UTIL/COPYING
	deleted:    openair3/NAS/COPYING
	deleted:    openair3/NAS/TEST/AS_SIMULATOR/COPYING
	deleted:    openair3/NAS/TEST/COPYING
	deleted:    openair3/NAS/TEST/MSC/COPYING
	deleted:    openair3/NAS/TEST/NETWORK/COPYING
	deleted:    openair3/NAS/TEST/USER/COPYING
	deleted:    openair3/NAS/TOOLS/COPYING
	deleted:    openair3/NAS/UE/API/USER/COPYING
	deleted:    openair3/NAS/UE/API/USIM/COPYING
	deleted:    openair3/NAS/UE/EMM/SAP/COPYING
	deleted:    openair3/NAS/UE/ESM/SAP/COPYING
	deleted:    openair3/S1AP/COPYING
	deleted:    openair3/S1AP/MESSAGES/ASN1/COPYING
	deleted:    openair3/S1AP/MESSAGES/ASN1/R10.5/COPYING
	deleted:    openair3/S1AP/MESSAGES/ASN1/R8.10/COPYING
	deleted:    openair3/S1AP/MESSAGES/ASN1/R9.8/COPYING
	deleted:    openair3/S1AP/MESSAGES/COPYING
	deleted:    openair3/SCTP/COPYING
	deleted:    openair3/SECU/COPYING
	deleted:    openair3/TEST/COPYING
	deleted:    openair3/UTILS/COPYING
	deleted:    targets/ARCH/COMMON/COPYING
	deleted:    targets/ARCH/ETHERNET/USERSPACE/LIB/COPYING
	deleted:    targets/ARCH/EXMIMO/DEFS/COPYING
	deleted:    targets/ARCH/EXMIMO/DRIVER/eurecom/COPYING
	deleted:    targets/ARCH/EXMIMO/DRIVER/exmimo3/COPYING
	deleted:    targets/ARCH/EXMIMO/DRIVER/telecomparistech/COPYING
	deleted:    targets/ARCH/EXMIMO/USERSPACE/LIB/COPYING
	deleted:    targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/COPYING
	deleted:    targets/ARCH/EXMIMO/USERSPACE/OCTAVE/COPYING
	deleted:    targets/ARCH/USRP/USERSPACE/LIB/COPYING
	deleted:    targets/COMMON/COPYING
	deleted:    targets/COPYING
	deleted:    targets/PROJECTS/CENTOS-LTE-EPC-INTEGRATION/COPYING
	deleted:    targets/PROJECTS/COPYING
	deleted:    targets/PROJECTS/GENERIC-LTE-EPC/COPYING
	deleted:    targets/RT/USER/COPYING
	deleted:    targets/SIMU/PROC/COPYING
	deleted:    targets/SIMU/USER/COPYING
2016-09-28 10:45:02 +02:00
Rohit Gupta
8a2faa1cb3 change the build script to oai/ssh package 2016-09-28 06:31:29 +02:00
Raymond Knopp
1f77142158 addition of dfts of size 18432 for PRACH TX/RX with 23.04 Ms/s sampling (15/20 MHz BW). 2016-09-27 10:47:56 -07:00
Cedric Roux
5ab5c3ebbd delete bsearch.c and bsearch.h from source tree
they are not referenced in CMakeLists.txt (so says grep)
2016-09-27 17:01:54 +02:00
Cedric Roux
db3c2b4d71 add licensing info at top of source files
only .c, .h and .cpp processed.

 Changes to be committed:
	modified:   common/utils/asn1_conversions.h
	modified:   common/utils/assertions.h
	modified:   common/utils/itti/assertions.h
	modified:   common/utils/itti/backtrace.c
	modified:   common/utils/itti/backtrace.h
	modified:   common/utils/itti/intertask_interface.c
	modified:   common/utils/itti/intertask_interface.h
	modified:   common/utils/itti/intertask_interface_dump.c
	modified:   common/utils/itti/intertask_interface_dump.h
	modified:   common/utils/itti/intertask_interface_init.h
	modified:   common/utils/itti/intertask_interface_types.h
	modified:   common/utils/itti/intertask_messages_def.h
	modified:   common/utils/itti/intertask_messages_types.h
	modified:   common/utils/itti/itti_types.h
	modified:   common/utils/itti/memory_pools.c
	modified:   common/utils/itti/memory_pools.h
	modified:   common/utils/itti/messages_def.h
	modified:   common/utils/itti/messages_types.h
	modified:   common/utils/itti/signals.c
	modified:   common/utils/itti/signals.h
	modified:   common/utils/itti/tasks_def.h
	modified:   common/utils/itti/timer.c
	modified:   common/utils/itti/timer.h
	modified:   common/utils/itti/timer_messages_def.h
	modified:   common/utils/itti/timer_messages_types.h
	modified:   common/utils/itti_analyzer/common/itti_types.h
	modified:   common/utils/itti_analyzer/common/logs.h
	modified:   common/utils/itti_analyzer/common/rc.h
	modified:   common/utils/itti_analyzer/itti_analyzer.c
	modified:   common/utils/itti_analyzer/libbuffers/buffers.c
	modified:   common/utils/itti_analyzer/libbuffers/buffers.h
	modified:   common/utils/itti_analyzer/libbuffers/file.c
	modified:   common/utils/itti_analyzer/libbuffers/file.h
	modified:   common/utils/itti_analyzer/libbuffers/socket.c
	modified:   common/utils/itti_analyzer/libbuffers/socket.h
	modified:   common/utils/itti_analyzer/libparser/array_type.c
	modified:   common/utils/itti_analyzer/libparser/array_type.h
	modified:   common/utils/itti_analyzer/libparser/enum_type.c
	modified:   common/utils/itti_analyzer/libparser/enum_type.h
	modified:   common/utils/itti_analyzer/libparser/enum_value_type.c
	modified:   common/utils/itti_analyzer/libparser/enum_value_type.h
	modified:   common/utils/itti_analyzer/libparser/field_type.c
	modified:   common/utils/itti_analyzer/libparser/field_type.h
	modified:   common/utils/itti_analyzer/libparser/file_type.c
	modified:   common/utils/itti_analyzer/libparser/file_type.h
	modified:   common/utils/itti_analyzer/libparser/fundamental_type.c
	modified:   common/utils/itti_analyzer/libparser/fundamental_type.h
	modified:   common/utils/itti_analyzer/libparser/intertask_contexts.h
	modified:   common/utils/itti_analyzer/libparser/pointer_type.c
	modified:   common/utils/itti_analyzer/libparser/pointer_type.h
	modified:   common/utils/itti_analyzer/libparser/reference_type.c
	modified:   common/utils/itti_analyzer/libparser/reference_type.h
	modified:   common/utils/itti_analyzer/libparser/struct_type.c
	modified:   common/utils/itti_analyzer/libparser/struct_type.h
	modified:   common/utils/itti_analyzer/libparser/typedef_type.c
	modified:   common/utils/itti_analyzer/libparser/typedef_type.h
	modified:   common/utils/itti_analyzer/libparser/types.c
	modified:   common/utils/itti_analyzer/libparser/types.h
	modified:   common/utils/itti_analyzer/libparser/union_type.c
	modified:   common/utils/itti_analyzer/libparser/union_type.h
	modified:   common/utils/itti_analyzer/libparser/xml_parse.c
	modified:   common/utils/itti_analyzer/libparser/xml_parse.h
	modified:   common/utils/itti_analyzer/libresolver/locate_root.c
	modified:   common/utils/itti_analyzer/libresolver/locate_root.h
	modified:   common/utils/itti_analyzer/libresolver/resolvers.c
	modified:   common/utils/itti_analyzer/libresolver/resolvers.h
	modified:   common/utils/itti_analyzer/libui/ui_callbacks.c
	modified:   common/utils/itti_analyzer/libui/ui_callbacks.h
	modified:   common/utils/itti_analyzer/libui/ui_filters.c
	modified:   common/utils/itti_analyzer/libui/ui_filters.h
	modified:   common/utils/itti_analyzer/libui/ui_interface.c
	modified:   common/utils/itti_analyzer/libui/ui_interface.h
	modified:   common/utils/itti_analyzer/libui/ui_main_screen.c
	modified:   common/utils/itti_analyzer/libui/ui_main_screen.h
	modified:   common/utils/itti_analyzer/libui/ui_menu_bar.c
	modified:   common/utils/itti_analyzer/libui/ui_menu_bar.h
	modified:   common/utils/itti_analyzer/libui/ui_notebook.c
	modified:   common/utils/itti_analyzer/libui/ui_notebook.h
	modified:   common/utils/itti_analyzer/libui/ui_notif_dlg.c
	modified:   common/utils/itti_analyzer/libui/ui_notif_dlg.h
	modified:   common/utils/itti_analyzer/libui/ui_notifications.c
	modified:   common/utils/itti_analyzer/libui/ui_notifications.h
	modified:   common/utils/itti_analyzer/libui/ui_signal_dissect_view.c
	modified:   common/utils/itti_analyzer/libui/ui_signal_dissect_view.h
	modified:   common/utils/itti_analyzer/libui/ui_tree_view.c
	modified:   common/utils/itti_analyzer/libui/ui_tree_view.h
	modified:   common/utils/msc/msc.c
	modified:   common/utils/msc/msc.h
	modified:   openair1/PHY/CODING/3gpplte.c
	modified:   openair1/PHY/CODING/3gpplte_sse.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_avx2_16bit.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse_16bit.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse_8bit.c
	modified:   openair1/PHY/CODING/TESTBENCH/ltetest.c
	modified:   openair1/PHY/CODING/TESTBENCH/pdcch_test.c
	modified:   openair1/PHY/CODING/TESTBENCH/viterbi_test.c
	modified:   openair1/PHY/CODING/ccoding_byte.c
	modified:   openair1/PHY/CODING/ccoding_byte_lte.c
	modified:   openair1/PHY/CODING/crc_byte.c
	modified:   openair1/PHY/CODING/defs.h
	modified:   openair1/PHY/CODING/extern.h
	modified:   openair1/PHY/CODING/extern_3GPPinterleaver.h
	modified:   openair1/PHY/CODING/lte_interleaver.h
	modified:   openair1/PHY/CODING/lte_interleaver2.h
	modified:   openair1/PHY/CODING/lte_interleaver_inline.h
	modified:   openair1/PHY/CODING/lte_rate_matching.c
	modified:   openair1/PHY/CODING/lte_segmentation.c
	modified:   openair1/PHY/CODING/rate_matching.c
	modified:   openair1/PHY/CODING/scrambler.h
	modified:   openair1/PHY/CODING/vars.h
	modified:   openair1/PHY/CODING/viterbi.c
	modified:   openair1/PHY/CODING/viterbi_lte.c
	modified:   openair1/PHY/INIT/defs.h
	modified:   openair1/PHY/INIT/extern.h
	modified:   openair1/PHY/INIT/init_top.c
	modified:   openair1/PHY/INIT/lte_init.c
	modified:   openair1/PHY/INIT/lte_param_init.c
	modified:   openair1/PHY/INIT/lte_parms.c
	modified:   openair1/PHY/INIT/vars.h
	modified:   openair1/PHY/LTE_ESTIMATION/adjust_gain.c
	modified:   openair1/PHY/LTE_ESTIMATION/defs.h
	modified:   openair1/PHY/LTE_ESTIMATION/extern.h
	modified:   openair1/PHY/LTE_ESTIMATION/filt96_32.h
	modified:   openair1/PHY/LTE_ESTIMATION/freq_equalization.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_channel_estimation_emos.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_mbsfn_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_eNB_measurements.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_est_freq_offset.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_sync_timefreq.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_ue_measurements.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/pss6144.h
	modified:   openair1/PHY/LTE_ESTIMATION/vars.h
	modified:   openair1/PHY/LTE_REFSIG/defs.h
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_cell_spec.c
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_mbsfn.c
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_uespec.c
	modified:   openair1/PHY/LTE_REFSIG/lte_gold.c
	modified:   openair1/PHY/LTE_REFSIG/lte_gold_mbsfn.c
	modified:   openair1/PHY/LTE_REFSIG/lte_ul_ref.c
	modified:   openair1/PHY/LTE_REFSIG/mod_table.h
	modified:   openair1/PHY/LTE_REFSIG/primary_synch.h
	modified:   openair1/PHY/LTE_TRANSPORT/dci.c
	modified:   openair1/PHY/LTE_TRANSPORT/dci.h
	modified:   openair1/PHY/LTE_TRANSPORT/dci_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/defs.h
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_coding.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_decoding.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_scrambling.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_tbs.h
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_tbs_full.h
	modified:   openair1/PHY/LTE_TRANSPORT/drs_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/extern.h
	modified:   openair1/PHY/LTE_TRANSPORT/group_hopping.c
	modified:   openair1/PHY/LTE_TRANSPORT/if4_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/if4_tools.h
	modified:   openair1/PHY/LTE_TRANSPORT/if5_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/if5_tools.h
	modified:   openair1/PHY/LTE_TRANSPORT/initial_sync.c
	modified:   openair1/PHY/LTE_TRANSPORT/lte_mcs.c
	modified:   openair1/PHY/LTE_TRANSPORT/mcs_tbs_tools.h
	modified:   openair1/PHY/LTE_TRANSPORT/pbch.c
	modified:   openair1/PHY/LTE_TRANSPORT/pcfich.c
	modified:   openair1/PHY/LTE_TRANSPORT/pch.c
	modified:   openair1/PHY/LTE_TRANSPORT/phich.c
	modified:   openair1/PHY/LTE_TRANSPORT/pilots.c
	modified:   openair1/PHY/LTE_TRANSPORT/pilots_mbsfn.c
	modified:   openair1/PHY/LTE_TRANSPORT/pmch.c
	modified:   openair1/PHY/LTE_TRANSPORT/power_control.c
	modified:   openair1/PHY/LTE_TRANSPORT/prach.c
	modified:   openair1/PHY/LTE_TRANSPORT/prach.h
	modified:   openair1/PHY/LTE_TRANSPORT/print_stats.c
	modified:   openair1/PHY/LTE_TRANSPORT/proto.h
	modified:   openair1/PHY/LTE_TRANSPORT/pss.c
	modified:   openair1/PHY/LTE_TRANSPORT/pucch.c
	modified:   openair1/PHY/LTE_TRANSPORT/rar_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/srs_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/sss.c
	modified:   openair1/PHY/LTE_TRANSPORT/sss.h
	modified:   openair1/PHY/LTE_TRANSPORT/uci.h
	modified:   openair1/PHY/LTE_TRANSPORT/uci_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_coding.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/vars.h
	modified:   openair1/PHY/MODULATION/defs.h
	modified:   openair1/PHY/MODULATION/extern.h
	modified:   openair1/PHY/MODULATION/kHz_7_5.h
	modified:   openair1/PHY/MODULATION/ofdm_mod.c
	modified:   openair1/PHY/MODULATION/prach625Hz.h
	modified:   openair1/PHY/MODULATION/slot_fep.c
	modified:   openair1/PHY/MODULATION/slot_fep_mbsfn.c
	modified:   openair1/PHY/MODULATION/slot_fep_ul.c
	modified:   openair1/PHY/MODULATION/ul_7_5_kHz.c
	modified:   openair1/PHY/MODULATION/vars.h
	modified:   openair1/PHY/TOOLS/8bit_rxdemux.c
	modified:   openair1/PHY/TOOLS/8bit_txmux.c
	modified:   openair1/PHY/TOOLS/alaw_lut.h
	modified:   openair1/PHY/TOOLS/angle.c
	modified:   openair1/PHY/TOOLS/cadd_sv.c
	modified:   openair1/PHY/TOOLS/cadd_vv.c
	modified:   openair1/PHY/TOOLS/cdot_prod.c
	modified:   openair1/PHY/TOOLS/cmult_sv.c
	modified:   openair1/PHY/TOOLS/cmult_vv.c
	modified:   openair1/PHY/TOOLS/costable.h
	modified:   openair1/PHY/TOOLS/dB_routines.c
	modified:   openair1/PHY/TOOLS/dB_routines.h
	modified:   openair1/PHY/TOOLS/defs.h
	modified:   openair1/PHY/TOOLS/extern.h
	modified:   openair1/PHY/TOOLS/file_output.c
	modified:   openair1/PHY/TOOLS/invSqrt.c
	modified:   openair1/PHY/TOOLS/log2_approx.c
	modified:   openair1/PHY/TOOLS/lte_dfts.c
	modified:   openair1/PHY/TOOLS/lte_phy_scope.c
	modified:   openair1/PHY/TOOLS/lte_phy_scope.h
	modified:   openair1/PHY/TOOLS/lut.c
	modified:   openair1/PHY/TOOLS/memory_routines.c
	modified:   openair1/PHY/TOOLS/signal_energy.c
	modified:   openair1/PHY/TOOLS/smbv.c
	modified:   openair1/PHY/TOOLS/smbv.h
	modified:   openair1/PHY/TOOLS/sqrt.c
	modified:   openair1/PHY/TOOLS/time_meas.c
	modified:   openair1/PHY/TOOLS/time_meas.h
	modified:   openair1/PHY/TOOLS/twiddle12288.h
	modified:   openair1/PHY/TOOLS/twiddle1536.h
	modified:   openair1/PHY/TOOLS/twiddle24576.h
	modified:   openair1/PHY/TOOLS/twiddle6144.h
	modified:   openair1/PHY/TOOLS/twiddles4096.h
	modified:   openair1/PHY/TOOLS/twiddles8192.h
	modified:   openair1/PHY/TOOLS/vars.h
	modified:   openair1/PHY/defs.h
	modified:   openair1/PHY/extern.h
	modified:   openair1/PHY/impl_defs_lte.h
	modified:   openair1/PHY/impl_defs_top.h
	modified:   openair1/PHY/sse_intrin.h
	modified:   openair1/PHY/types.h
	modified:   openair1/PHY/vars.h
	modified:   openair1/SCHED/defs.h
	modified:   openair1/SCHED/extern.h
	modified:   openair1/SCHED/phy_mac_stub.c
	modified:   openair1/SCHED/phy_procedures_emos.h
	modified:   openair1/SCHED/phy_procedures_lte_common.c
	modified:   openair1/SCHED/phy_procedures_lte_eNb.c
	modified:   openair1/SCHED/phy_procedures_lte_ue.c
	modified:   openair1/SCHED/pucch_pc.c
	modified:   openair1/SCHED/pusch_pc.c
	modified:   openair1/SCHED/rt_compat.h
	modified:   openair1/SCHED/vars.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/defs.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/extern.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/multicast_link.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/multicast_link.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/netlink_init.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/pgm_link.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/pgm_link.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/proto.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/socket.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/socket.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/vars.h
	modified:   openair1/SIMULATION/LTE_PHY/LTE_Configuration.c
	modified:   openair1/SIMULATION/LTE_PHY/LTE_Configuration.h
	modified:   openair1/SIMULATION/LTE_PHY/dlsim.c
	modified:   openair1/SIMULATION/LTE_PHY/framegen.c
	modified:   openair1/SIMULATION/LTE_PHY/gpib_send.c
	modified:   openair1/SIMULATION/LTE_PHY/gpib_send.h
	modified:   openair1/SIMULATION/LTE_PHY/mbmssim.c
	modified:   openair1/SIMULATION/LTE_PHY/pbchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/pdcchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/prachsim.c
	modified:   openair1/SIMULATION/LTE_PHY/pucchsignalgegerator.h
	modified:   openair1/SIMULATION/LTE_PHY/pucchsignalgenerator.c
	modified:   openair1/SIMULATION/LTE_PHY/pucchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/scansim.c
	modified:   openair1/SIMULATION/LTE_PHY/signalanalyzer.c
	modified:   openair1/SIMULATION/LTE_PHY/signalanalyzer.h
	modified:   openair1/SIMULATION/LTE_PHY/syncsim.c
	modified:   openair1/SIMULATION/LTE_PHY/test.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsignalgenerator.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsignalgenerator.h
	modified:   openair1/SIMULATION/LTE_PHY/ulsim.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsim2.c
	modified:   openair1/SIMULATION/LTE_PHY/unitary_defs.h
	modified:   openair1/SIMULATION/RF/adc.c
	modified:   openair1/SIMULATION/RF/dac.c
	modified:   openair1/SIMULATION/RF/defs.h
	modified:   openair1/SIMULATION/RF/rf.c
	modified:   openair1/SIMULATION/TOOLS/abstraction.c
	modified:   openair1/SIMULATION/TOOLS/ch_desc_proto.c
	modified:   openair1/SIMULATION/TOOLS/defs.h
	modified:   openair1/SIMULATION/TOOLS/gauss.c
	modified:   openair1/SIMULATION/TOOLS/llr_quantization.c
	modified:   openair1/SIMULATION/TOOLS/multipath_channel.c
	modified:   openair1/SIMULATION/TOOLS/multipath_tv_channel.c
	modified:   openair1/SIMULATION/TOOLS/random_channel.c
	modified:   openair1/SIMULATION/TOOLS/rangen_double.c
	modified:   openair1/SIMULATION/TOOLS/scm_corrmat.h
	modified:   openair1/SIMULATION/TOOLS/taus.c
	modified:   openair2/COMMON/as_message.h
	modified:   openair2/COMMON/commonDef.h
	modified:   openair2/COMMON/gtpv1_u_messages_def.h
	modified:   openair2/COMMON/gtpv1_u_messages_types.h
	modified:   openair2/COMMON/intertask_interface_conf.h
	modified:   openair2/COMMON/mac_messages_def.h
	modified:   openair2/COMMON/mac_messages_types.h
	modified:   openair2/COMMON/mac_primitives.h
	modified:   openair2/COMMON/mac_rlc_primitives.h
	modified:   openair2/COMMON/mac_rrc_primitives.h
	modified:   openair2/COMMON/messages_def.h
	modified:   openair2/COMMON/messages_types.h
	modified:   openair2/COMMON/nas_messages_def.h
	modified:   openair2/COMMON/nas_messages_types.h
	modified:   openair2/COMMON/networkDef.h
	modified:   openair2/COMMON/openair_defs.h
	modified:   openair2/COMMON/openair_types.h
	modified:   openair2/COMMON/pdcp_messages_def.h
	modified:   openair2/COMMON/pdcp_messages_types.h
	modified:   openair2/COMMON/phy_messages_def.h
	modified:   openair2/COMMON/phy_messages_types.h
	modified:   openair2/COMMON/platform_constants.h
	modified:   openair2/COMMON/platform_types.h
	modified:   openair2/COMMON/ral_messages_def.h
	modified:   openair2/COMMON/ral_messages_types.h
	modified:   openair2/COMMON/rlc_messages_def.h
	modified:   openair2/COMMON/rlc_messages_types.h
	modified:   openair2/COMMON/rrc_messages_def.h
	modified:   openair2/COMMON/rrc_messages_types.h
	modified:   openair2/COMMON/rrm_config_structs.h
	modified:   openair2/COMMON/rrm_constants.h
	modified:   openair2/COMMON/rtos_header.h
	modified:   openair2/COMMON/s1ap_messages_def.h
	modified:   openair2/COMMON/s1ap_messages_types.h
	modified:   openair2/COMMON/sctp_messages_def.h
	modified:   openair2/COMMON/sctp_messages_types.h
	modified:   openair2/COMMON/tasks_def.h
	modified:   openair2/COMMON/udp_messages_def.h
	modified:   openair2/COMMON/udp_messages_types.h
	modified:   openair2/COMMON/x2ap_messages_def.h
	modified:   openair2/COMMON/x2ap_messages_types.h
	modified:   openair2/DOCS/TEMPLATES/CODE/example_doxy.h
	modified:   openair2/ENB_APP/enb_app.c
	modified:   openair2/ENB_APP/enb_app.h
	modified:   openair2/ENB_APP/enb_config.c
	modified:   openair2/ENB_APP/enb_config.h
	modified:   openair2/LAYER2/MAC/config.c
	modified:   openair2/LAYER2/MAC/defs.h
	modified:   openair2/LAYER2/MAC/eNB_scheduler.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_RA.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_bch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_mch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	modified:   openair2/LAYER2/MAC/extern.h
	modified:   openair2/LAYER2/MAC/l1_helpers.c
	modified:   openair2/LAYER2/MAC/lte_transport_init.c
	modified:   openair2/LAYER2/MAC/main.c
	modified:   openair2/LAYER2/MAC/openair2_proc.c
	modified:   openair2/LAYER2/MAC/pre_processor.c
	modified:   openair2/LAYER2/MAC/proto.h
	modified:   openair2/LAYER2/MAC/ra_procedures.c
	modified:   openair2/LAYER2/MAC/rar_tools.c
	modified:   openair2/LAYER2/MAC/ue_procedures.c
	modified:   openair2/LAYER2/MAC/vars.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_control_primitive.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_control_primitives_proto_extern.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_netlink.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_primitives.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_primitives.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_proto_extern.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_security.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_sequence_manager.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_sequence_manager.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_thread.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_util.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_util.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_constants.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_entity.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_in_sdu.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_in_sdu.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_proto_extern.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_reassembly.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_reassembly.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_receiver.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_receiver.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_retransmit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_retransmit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_rx_list.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_rx_list.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segment.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segment.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segments_holes.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segments_holes.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_status_report.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_status_report.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_structs.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_test.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_test.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_poll_retransmit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_poll_retransmit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_reordering.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_reordering.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_status_prohibit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_status_prohibit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_windows.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_windows.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm.c
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_entity.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_structs.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_dar.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_dar.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_entity.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_fsm.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_fsm.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_reassembly.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_reassembly.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_receiver.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_receiver.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_segment.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_segment.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_structs.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_test.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_test.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_very_simple_test.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_very_simple_test.h
	modified:   openair2/LAYER2/RLC/mac_primitives.h
	modified:   openair2/LAYER2/RLC/rlc.c
	modified:   openair2/LAYER2/RLC/rlc.h
	modified:   openair2/LAYER2/RLC/rlc_def.h
	modified:   openair2/LAYER2/RLC/rlc_def_lte.h
	modified:   openair2/LAYER2/RLC/rlc_mac.c
	modified:   openair2/LAYER2/RLC/rlc_mpls.c
	modified:   openair2/LAYER2/RLC/rlc_primitives.h
	modified:   openair2/LAYER2/RLC/rlc_rrc.c
	modified:   openair2/LAYER2/layer2_top.c
	modified:   openair2/LAYER2/openair2_proc.c
	modified:   openair2/LAYER2/register.c
	modified:   openair2/LAYER2/register.h
	modified:   openair2/NAS/DRIVER/CELLULAR/CTL_TOOL/nascell_ioctl.c
	modified:   openair2/NAS/DRIVER/CELLULAR/CTL_TOOL/nascell_ioctl.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_ascontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_classifier.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_common.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_constant.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_device.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_iocontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_iocontrol.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_netlink.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_proto.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_sap.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_tool.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_variables.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_ascontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_classifier.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_common.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_constant.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_device.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_iocontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_iocontrol.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_netlink.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_proto.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_sap.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_tool.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_variables.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NETLTEST/netltest.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NETLTEST/nettestPDCP.c
	modified:   openair2/NAS/SIMU_CELLULAR/nas_simu_proto.h
	modified:   openair2/NAS/SIMU_CELLULAR/nasrg_simu_meas.c
	modified:   openair2/NAS/SIMU_CELLULAR/rrm_fifo_standalone.c
	modified:   openair2/NAS/nas_ue_task.h
	modified:   openair2/NETWORK_DRIVER/LITE/RB_TOOL/rb_tool.c
	modified:   openair2/NETWORK_DRIVER/LITE/classifier.c
	modified:   openair2/NETWORK_DRIVER/LITE/common.c
	modified:   openair2/NETWORK_DRIVER/LITE/constant.h
	modified:   openair2/NETWORK_DRIVER/LITE/device.c
	modified:   openair2/NETWORK_DRIVER/LITE/ioctl.c
	modified:   openair2/NETWORK_DRIVER/LITE/ioctl.h
	modified:   openair2/NETWORK_DRIVER/LITE/local.h
	modified:   openair2/NETWORK_DRIVER/LITE/netlink.c
	modified:   openair2/NETWORK_DRIVER/LITE/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/LITE/sap.h
	modified:   openair2/NETWORK_DRIVER/LITE/tool.c
	modified:   openair2/NETWORK_DRIVER/MESH/RB_TOOL/rb_tool.c
	modified:   openair2/NETWORK_DRIVER/MESH/TESTBENCH/testbench.c
	modified:   openair2/NETWORK_DRIVER/MESH/classifier.c
	modified:   openair2/NETWORK_DRIVER/MESH/common.c
	modified:   openair2/NETWORK_DRIVER/MESH/constant.h
	modified:   openair2/NETWORK_DRIVER/MESH/device.c
	modified:   openair2/NETWORK_DRIVER/MESH/ioctl.c
	modified:   openair2/NETWORK_DRIVER/MESH/ioctl.h
	modified:   openair2/NETWORK_DRIVER/MESH/local.h
	modified:   openair2/NETWORK_DRIVER/MESH/mesh.c
	modified:   openair2/NETWORK_DRIVER/MESH/netlink.c
	modified:   openair2/NETWORK_DRIVER/MESH/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/MESH/rrc_nas_primitives.h
	modified:   openair2/NETWORK_DRIVER/MESH/sap.h
	modified:   openair2/NETWORK_DRIVER/MESH/tool.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/common.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/constant.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/device.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/local.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/netlink.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/sap.h
	modified:   openair2/PHY_INTERFACE/defs.h
	modified:   openair2/PHY_INTERFACE/extern.h
	modified:   openair2/PHY_INTERFACE/mac_phy_primitives.c
	modified:   openair2/PHY_INTERFACE/mac_phy_primitives.h
	modified:   openair2/PHY_INTERFACE/vars.h
	modified:   openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c
	modified:   openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h
	modified:   openair2/RRC/LITE/L2_interface.c
	modified:   openair2/RRC/LITE/MESSAGES/asn1_msg.c
	modified:   openair2/RRC/LITE/MESSAGES/asn1_msg.h
	modified:   openair2/RRC/LITE/MESSAGES/rtai_mem.c
	modified:   openair2/RRC/LITE/MESSAGES/rtai_mem.h
	modified:   openair2/RRC/LITE/defs.h
	modified:   openair2/RRC/LITE/extern.h
	modified:   openair2/RRC/LITE/mesh_top.c
	modified:   openair2/RRC/LITE/plmn_data.h
	modified:   openair2/RRC/LITE/proto.h
	modified:   openair2/RRC/LITE/rrc_2_rrm_msg.c
	modified:   openair2/RRC/LITE/rrc_UE.c
	modified:   openair2/RRC/LITE/rrc_UE_ral.c
	modified:   openair2/RRC/LITE/rrc_UE_ral.h
	modified:   openair2/RRC/LITE/rrc_common.c
	modified:   openair2/RRC/LITE/rrc_config.c
	modified:   openair2/RRC/LITE/rrc_eNB.c
	modified:   openair2/RRC/LITE/rrc_eNB_GTPV1U.c
	modified:   openair2/RRC/LITE/rrc_eNB_GTPV1U.h
	modified:   openair2/RRC/LITE/rrc_eNB_S1AP.c
	modified:   openair2/RRC/LITE/rrc_eNB_S1AP.h
	modified:   openair2/RRC/LITE/rrc_eNB_UE_context.c
	modified:   openair2/RRC/LITE/rrc_eNB_UE_context.h
	modified:   openair2/RRC/LITE/rrc_eNB_ral.c
	modified:   openair2/RRC/LITE/rrc_eNB_ral.h
	modified:   openair2/RRC/LITE/rrc_rrm_interface.c
	modified:   openair2/RRC/LITE/rrc_rrm_interface.h
	modified:   openair2/RRC/LITE/rrc_types.h
	modified:   openair2/RRC/LITE/rrm_2_rrc_msg.c
	modified:   openair2/RRC/LITE/utils.c
	modified:   openair2/RRC/LITE/vars.h
	modified:   openair2/RRC/NAS/nas_config.c
	modified:   openair2/RRC/NAS/nas_config.h
	modified:   openair2/RRC/NAS/rb_config.c
	modified:   openair2/RRC/NAS/rb_config.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/Message.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/Message.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddRadioAccessBearerConfirm.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddRadioAccessBearerConfirm.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddRadioAccessBearerRequest.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddRadioAccessBearerRequest.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddUserConfirm.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddUserConfirm.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddUserRequest.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageAddUserRequest.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageConnectionRequest.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageConnectionRequest.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageRemoveRadioAccessBearerRequest.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageRemoveRadioAccessBearerRequest.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageRemoveUserRequest.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageRemoveUserRequest.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageUserReconfigurationComplete.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRC2RRMMessageUserReconfigurationComplete.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRCMessageHandler.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRCMessageHandler.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRCUdpSocket.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRCUdpSocket.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageAddRadioAccessBearerResponse.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageAddRadioAccessBearerResponse.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageAddUserResponse.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageAddUserResponse.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageConnectionResponse.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageConnectionResponse.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageRemoveRadioAccessBearerResponse.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageRemoveRadioAccessBearerResponse.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageRemoveUserResponse.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageRemoveUserResponse.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageUserReconfiguration.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrc/RRM2RRCMessageUserReconfiguration.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrm/RRMMessageHandler.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrm/RRMMessageHandler.h
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrm/RRMUdpSocket.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/com/rrm/RRMUdpSocket.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform_constants.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform_defines.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform_dim.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Asn1Utils.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Asn1Utils.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Command.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Command.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/DataRadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/DataRadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/ENodeB.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/ENodeB.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Exceptions.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/LogicalChannel.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/LogicalChannel.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Mobile.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Mobile.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioResources.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioResources.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/SignallingRadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/SignallingRadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transaction.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transaction.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transactions.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transactions.h
	modified:   openair2/RRM_4_RRC_LITE/src/rrm.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/test/TestScenario.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/test/TestScenario.h
	modified:   openair2/RRM_4_RRC_LITE/src/test/test.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/version.h
	modified:   openair2/UTIL/BIGPHYS/bigphys.c
	modified:   openair2/UTIL/BIGPHYS/defs.h
	modified:   openair2/UTIL/CLI/cli.c
	modified:   openair2/UTIL/CLI/cli.h
	modified:   openair2/UTIL/CLI/cli_cmd.c
	modified:   openair2/UTIL/CLI/cli_if.h
	modified:   openair2/UTIL/CLI/cli_server.c
	modified:   openair2/UTIL/FIFO/pad_list.c
	modified:   openair2/UTIL/FIFO/pad_list.h
	modified:   openair2/UTIL/FIFO/types.h
	modified:   openair2/UTIL/LISTS/list.c
	modified:   openair2/UTIL/LISTS/list.h
	modified:   openair2/UTIL/LISTS/list2.c
	modified:   openair2/UTIL/LOG/log.c
	modified:   openair2/UTIL/LOG/log.h
	modified:   openair2/UTIL/LOG/log_extern.h
	modified:   openair2/UTIL/LOG/log_if.h
	modified:   openair2/UTIL/LOG/vcd_signal_dumper.c
	modified:   openair2/UTIL/LOG/vcd_signal_dumper.h
	modified:   openair2/UTIL/MATH/crc_byte.c
	modified:   openair2/UTIL/MATH/oml.c
	modified:   openair2/UTIL/MATH/oml.h
	modified:   openair2/UTIL/MATH/random.c
	modified:   openair2/UTIL/MATH/random_proto_extern.h
	modified:   openair2/UTIL/MATH/taus.c
	modified:   openair2/UTIL/MEM/mem_block.c
	modified:   openair2/UTIL/MEM/mem_block.h
	modified:   openair2/UTIL/MEM/mem_mngt.c
	modified:   openair2/UTIL/MEM/mem_mngt_proto_extern.h
	modified:   openair2/UTIL/MEM/mem_pool.h
	modified:   openair2/UTIL/OCG/OCG.c
	modified:   openair2/UTIL/OCG/OCG.h
	modified:   openair2/UTIL/OCG/OCG_call_emu.c
	modified:   openair2/UTIL/OCG/OCG_call_emu.h
	modified:   openair2/UTIL/OCG/OCG_config_mobi.c
	modified:   openair2/UTIL/OCG/OCG_config_mobi.h
	modified:   openair2/UTIL/OCG/OCG_create_dir.c
	modified:   openair2/UTIL/OCG/OCG_create_dir.h
	modified:   openair2/UTIL/OCG/OCG_detect_file.c
	modified:   openair2/UTIL/OCG/OCG_detect_file.h
	modified:   openair2/UTIL/OCG/OCG_extern.h
	modified:   openair2/UTIL/OCG/OCG_generate_report.c
	modified:   openair2/UTIL/OCG/OCG_generate_report.h
	modified:   openair2/UTIL/OCG/OCG_get_opt.c
	modified:   openair2/UTIL/OCG/OCG_get_opt.h
	modified:   openair2/UTIL/OCG/OCG_if.h
	modified:   openair2/UTIL/OCG/OCG_parse_XML.c
	modified:   openair2/UTIL/OCG/OCG_parse_XML.h
	modified:   openair2/UTIL/OCG/OCG_parse_filename.c
	modified:   openair2/UTIL/OCG/OCG_parse_filename.h
	modified:   openair2/UTIL/OCG/OCG_save_XML.c
	modified:   openair2/UTIL/OCG/OCG_save_XML.h
	modified:   openair2/UTIL/OCG/OCG_vars.h
	modified:   openair2/UTIL/OMG/client_traci_OMG.c
	modified:   openair2/UTIL/OMG/client_traci_OMG.h
	modified:   openair2/UTIL/OMG/common.c
	modified:   openair2/UTIL/OMG/defs.h
	modified:   openair2/UTIL/OMG/grid.c
	modified:   openair2/UTIL/OMG/grid.h
	modified:   openair2/UTIL/OMG/id_manager.c
	modified:   openair2/UTIL/OMG/id_manager.h
	modified:   openair2/UTIL/OMG/job.c
	modified:   openair2/UTIL/OMG/mobility_parser.c
	modified:   openair2/UTIL/OMG/mobility_parser.h
	modified:   openair2/UTIL/OMG/omg.c
	modified:   openair2/UTIL/OMG/omg.h
	modified:   openair2/UTIL/OMG/omg_constants.h
	modified:   openair2/UTIL/OMG/omg_hashtable.c
	modified:   openair2/UTIL/OMG/omg_hashtable.h
	modified:   openair2/UTIL/OMG/omg_vars.h
	modified:   openair2/UTIL/OMG/rwalk.c
	modified:   openair2/UTIL/OMG/rwalk.h
	modified:   openair2/UTIL/OMG/rwp.c
	modified:   openair2/UTIL/OMG/rwp.h
	modified:   openair2/UTIL/OMG/socket_traci_OMG.c
	modified:   openair2/UTIL/OMG/socket_traci_OMG.h
	modified:   openair2/UTIL/OMG/static.c
	modified:   openair2/UTIL/OMG/static.h
	modified:   openair2/UTIL/OMG/steadystaterwp.c
	modified:   openair2/UTIL/OMG/steadystaterwp.h
	modified:   openair2/UTIL/OMG/storage_traci_OMG.c
	modified:   openair2/UTIL/OMG/storage_traci_OMG.h
	modified:   openair2/UTIL/OMG/sumo.c
	modified:   openair2/UTIL/OMG/sumo.h
	modified:   openair2/UTIL/OMG/trace.c
	modified:   openair2/UTIL/OMG/trace.h
	modified:   openair2/UTIL/OMG/trace_hashtable.c
	modified:   openair2/UTIL/OMG/trace_hashtable.h
	modified:   openair2/UTIL/OMV/communicationthread.cpp
	modified:   openair2/UTIL/OMV/communicationthread.h
	modified:   openair2/UTIL/OMV/mywindow.cpp
	modified:   openair2/UTIL/OMV/mywindow.h
	modified:   openair2/UTIL/OMV/omv.cpp
	modified:   openair2/UTIL/OMV/openglwidget.cpp
	modified:   openair2/UTIL/OMV/openglwidget.h
	modified:   openair2/UTIL/OMV/structures.h
	modified:   openair2/UTIL/OPT/opt.h
	modified:   openair2/UTIL/OPT/socket_sender.c
	modified:   openair2/UTIL/OPT/vars.h
	modified:   openair2/UTIL/OSA/osa_defs.h
	modified:   openair2/UTIL/OSA/osa_internal.h
	modified:   openair2/UTIL/OSA/osa_key_deriver.c
	modified:   openair2/UTIL/OSA/osa_rijndael.c
	modified:   openair2/UTIL/OSA/osa_rijndael.h
	modified:   openair2/UTIL/OSA/osa_snow3g.c
	modified:   openair2/UTIL/OSA/osa_snow3g.h
	modified:   openair2/UTIL/OSA/osa_stream_eea.c
	modified:   openair2/UTIL/OSA/osa_stream_eia.c
	modified:   openair2/UTIL/OTG/main.c
	modified:   openair2/UTIL/OTG/otg.c
	modified:   openair2/UTIL/OTG/otg.h
	modified:   openair2/UTIL/OTG/otg_config.h
	modified:   openair2/UTIL/OTG/otg_defs.h
	modified:   openair2/UTIL/OTG/otg_externs.h
	modified:   openair2/UTIL/OTG/otg_form.c
	modified:   openair2/UTIL/OTG/otg_form.h
	modified:   openair2/UTIL/OTG/otg_kpi.c
	modified:   openair2/UTIL/OTG/otg_kpi.h
	modified:   openair2/UTIL/OTG/otg_models.c
	modified:   openair2/UTIL/OTG/otg_models.h
	modified:   openair2/UTIL/OTG/otg_rx.c
	modified:   openair2/UTIL/OTG/otg_rx.h
	modified:   openair2/UTIL/OTG/otg_rx_socket.c
	modified:   openair2/UTIL/OTG/otg_rx_socket.h
	modified:   openair2/UTIL/OTG/otg_tx.c
	modified:   openair2/UTIL/OTG/otg_tx.h
	modified:   openair2/UTIL/OTG/otg_tx_socket.c
	modified:   openair2/UTIL/OTG/otg_tx_socket.h
	modified:   openair2/UTIL/OTG/otg_vars.h
	modified:   openair2/UTIL/OTG/traffic_config.h
	modified:   openair2/UTIL/TIMER/umts_timer.c
	modified:   openair2/UTIL/TIMER/umts_timer.h
	modified:   openair2/UTIL/TIMER/umts_timer_proto_extern.h
	modified:   openair2/UTIL/TIMER/umts_timer_struct.h
	modified:   openair2/UTIL/TRACE/fifo_printf.c
	modified:   openair2/UTIL/TRACE/fifo_printf.h
	modified:   openair2/UTIL/TRACE/fifo_printf_proto_extern.h
	modified:   openair2/UTIL/TRACE/print.h
	modified:   openair2/X2AP/x2ap.c
	modified:   openair2/X2AP/x2ap.h
	modified:   openair2/X2AP/x2ap_common.c
	modified:   openair2/X2AP/x2ap_common.h
	modified:   openair3/COMMON/common_types.h
	modified:   openair3/COMMON/gtpv1_u_messages_def.h
	modified:   openair3/COMMON/gtpv1_u_messages_types.h
	modified:   openair3/COMMON/intertask_interface_conf.h
	modified:   openair3/COMMON/messages_def.h
	modified:   openair3/COMMON/messages_types.h
	modified:   openair3/COMMON/nas_messages_def.h
	modified:   openair3/COMMON/nas_messages_types.h
	modified:   openair3/COMMON/s1ap_messages_def.h
	modified:   openair3/COMMON/s1ap_messages_types.h
	modified:   openair3/COMMON/sctp_messages_def.h
	modified:   openair3/COMMON/sctp_messages_types.h
	modified:   openair3/COMMON/security_types.h
	modified:   openair3/COMMON/tasks_def.h
	modified:   openair3/COMMON/udp_messages_def.h
	modified:   openair3/COMMON/udp_messages_types.h
	modified:   openair3/GTPV1-U/gtpv1u.h
	modified:   openair3/GTPV1-U/gtpv1u_eNB.c
	modified:   openair3/GTPV1-U/gtpv1u_eNB_defs.h
	modified:   openair3/GTPV1-U/gtpv1u_eNB_task.h
	modified:   openair3/GTPV1-U/gtpv1u_sgw_defs.h
	modified:   openair3/GTPV1-U/gtpv1u_task.c
	modified:   openair3/GTPV1-U/gtpv1u_teid_pool.c
	modified:   openair3/NAS/COMMON/API/NETWORK/as_message.c
	modified:   openair3/NAS/COMMON/API/NETWORK/l2_message.h
	modified:   openair3/NAS/COMMON/API/NETWORK/nas_message.c
	modified:   openair3/NAS/COMMON/API/NETWORK/nas_message.h
	modified:   openair3/NAS/COMMON/API/NETWORK/network_api.c
	modified:   openair3/NAS/COMMON/API/NETWORK/network_api.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationFailure.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationFailure.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationResponse.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationResponse.h
	modified:   openair3/NAS/COMMON/EMM/MSG/CsServiceNotification.c
	modified:   openair3/NAS/COMMON/EMM/MSG/CsServiceNotification.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DownlinkNasTransport.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DownlinkNasTransport.h
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmInformation.c
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmInformation.h
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmStatus.c
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmStatus.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ExtendedServiceRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ExtendedServiceRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationCommand.c
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationCommand.h
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityResponse.c
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityResponse.h
	modified:   openair3/NAS/COMMON/EMM/MSG/NASSecurityModeCommand.h
	modified:   openair3/NAS/COMMON/EMM/MSG/NASSecurityModeComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeCommand.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/UplinkNasTransport.c
	modified:   openair3/NAS/COMMON/EMM/MSG/UplinkNasTransport.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_cause.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msg.c
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msg.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msgDef.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationResponse.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationResponse.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmStatus.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmStatus.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_cause.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msg.c
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msg.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msgDef.h
	modified:   openair3/NAS/COMMON/IES/AccessPointName.c
	modified:   openair3/NAS/COMMON/IES/AccessPointName.h
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateResult.c
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateResult.h
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateType.c
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateType.h
	modified:   openair3/NAS/COMMON/IES/ApnAggregateMaximumBitRate.c
	modified:   openair3/NAS/COMMON/IES/ApnAggregateMaximumBitRate.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationFailureParameter.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationFailureParameter.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterAutn.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterAutn.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterRand.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterRand.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationResponseParameter.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationResponseParameter.h
	modified:   openair3/NAS/COMMON/IES/CipheringKeySequenceNumber.c
	modified:   openair3/NAS/COMMON/IES/CipheringKeySequenceNumber.h
	modified:   openair3/NAS/COMMON/IES/Cli.c
	modified:   openair3/NAS/COMMON/IES/Cli.h
	modified:   openair3/NAS/COMMON/IES/CsfbResponse.c
	modified:   openair3/NAS/COMMON/IES/CsfbResponse.h
	modified:   openair3/NAS/COMMON/IES/DaylightSavingTime.c
	modified:   openair3/NAS/COMMON/IES/DaylightSavingTime.h
	modified:   openair3/NAS/COMMON/IES/DetachType.c
	modified:   openair3/NAS/COMMON/IES/DetachType.h
	modified:   openair3/NAS/COMMON/IES/DrxParameter.c
	modified:   openair3/NAS/COMMON/IES/DrxParameter.h
	modified:   openair3/NAS/COMMON/IES/EmergencyNumberList.c
	modified:   openair3/NAS/COMMON/IES/EmergencyNumberList.h
	modified:   openair3/NAS/COMMON/IES/EmmCause.c
	modified:   openair3/NAS/COMMON/IES/EmmCause.h
	modified:   openair3/NAS/COMMON/IES/EpsAttachResult.c
	modified:   openair3/NAS/COMMON/IES/EpsAttachResult.h
	modified:   openair3/NAS/COMMON/IES/EpsAttachType.c
	modified:   openair3/NAS/COMMON/IES/EpsAttachType.h
	modified:   openair3/NAS/COMMON/IES/EpsBearerContextStatus.c
	modified:   openair3/NAS/COMMON/IES/EpsBearerContextStatus.h
	modified:   openair3/NAS/COMMON/IES/EpsBearerIdentity.c
	modified:   openair3/NAS/COMMON/IES/EpsBearerIdentity.h
	modified:   openair3/NAS/COMMON/IES/EpsMobileIdentity.c
	modified:   openair3/NAS/COMMON/IES/EpsMobileIdentity.h
	modified:   openair3/NAS/COMMON/IES/EpsNetworkFeatureSupport.c
	modified:   openair3/NAS/COMMON/IES/EpsNetworkFeatureSupport.h
	modified:   openair3/NAS/COMMON/IES/EpsQualityOfService.c
	modified:   openair3/NAS/COMMON/IES/EpsQualityOfService.h
	modified:   openair3/NAS/COMMON/IES/EpsUpdateResult.c
	modified:   openair3/NAS/COMMON/IES/EpsUpdateResult.h
	modified:   openair3/NAS/COMMON/IES/EpsUpdateType.c
	modified:   openair3/NAS/COMMON/IES/EpsUpdateType.h
	modified:   openair3/NAS/COMMON/IES/EsmCause.c
	modified:   openair3/NAS/COMMON/IES/EsmCause.h
	modified:   openair3/NAS/COMMON/IES/EsmInformationTransferFlag.c
	modified:   openair3/NAS/COMMON/IES/EsmInformationTransferFlag.h
	modified:   openair3/NAS/COMMON/IES/EsmMessageContainer.c
	modified:   openair3/NAS/COMMON/IES/EsmMessageContainer.h
	modified:   openair3/NAS/COMMON/IES/GprsTimer.c
	modified:   openair3/NAS/COMMON/IES/GprsTimer.h
	modified:   openair3/NAS/COMMON/IES/GutiType.c
	modified:   openair3/NAS/COMMON/IES/GutiType.h
	modified:   openair3/NAS/COMMON/IES/IdentityType2.c
	modified:   openair3/NAS/COMMON/IES/IdentityType2.h
	modified:   openair3/NAS/COMMON/IES/ImeisvRequest.c
	modified:   openair3/NAS/COMMON/IES/ImeisvRequest.h
	modified:   openair3/NAS/COMMON/IES/KsiAndSequenceNumber.c
	modified:   openair3/NAS/COMMON/IES/KsiAndSequenceNumber.h
	modified:   openair3/NAS/COMMON/IES/LcsClientIdentity.c
	modified:   openair3/NAS/COMMON/IES/LcsClientIdentity.h
	modified:   openair3/NAS/COMMON/IES/LcsIndicator.c
	modified:   openair3/NAS/COMMON/IES/LcsIndicator.h
	modified:   openair3/NAS/COMMON/IES/LinkedEpsBearerIdentity.c
	modified:   openair3/NAS/COMMON/IES/LinkedEpsBearerIdentity.h
	modified:   openair3/NAS/COMMON/IES/LlcServiceAccessPointIdentifier.c
	modified:   openair3/NAS/COMMON/IES/LlcServiceAccessPointIdentifier.h
	modified:   openair3/NAS/COMMON/IES/LocationAreaIdentification.c
	modified:   openair3/NAS/COMMON/IES/LocationAreaIdentification.h
	modified:   openair3/NAS/COMMON/IES/MessageType.c
	modified:   openair3/NAS/COMMON/IES/MessageType.h
	modified:   openair3/NAS/COMMON/IES/MobileIdentity.c
	modified:   openair3/NAS/COMMON/IES/MobileIdentity.h
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark2.c
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark2.h
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark3.c
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark3.h
	modified:   openair3/NAS/COMMON/IES/MsNetworkCapability.c
	modified:   openair3/NAS/COMMON/IES/MsNetworkCapability.h
	modified:   openair3/NAS/COMMON/IES/MsNetworkFeatureSupport.c
	modified:   openair3/NAS/COMMON/IES/MsNetworkFeatureSupport.h
	modified:   openair3/NAS/COMMON/IES/NasKeySetIdentifier.c
	modified:   openair3/NAS/COMMON/IES/NasKeySetIdentifier.h
	modified:   openair3/NAS/COMMON/IES/NasMessageContainer.c
	modified:   openair3/NAS/COMMON/IES/NasMessageContainer.h
	modified:   openair3/NAS/COMMON/IES/NasRequestType.c
	modified:   openair3/NAS/COMMON/IES/NasRequestType.h
	modified:   openair3/NAS/COMMON/IES/NasSecurityAlgorithms.c
	modified:   openair3/NAS/COMMON/IES/NasSecurityAlgorithms.h
	modified:   openair3/NAS/COMMON/IES/NetworkName.c
	modified:   openair3/NAS/COMMON/IES/NetworkName.h
	modified:   openair3/NAS/COMMON/IES/Nonce.c
	modified:   openair3/NAS/COMMON/IES/Nonce.h
	modified:   openair3/NAS/COMMON/IES/PTmsiSignature.c
	modified:   openair3/NAS/COMMON/IES/PTmsiSignature.h
	modified:   openair3/NAS/COMMON/IES/PacketFlowIdentifier.c
	modified:   openair3/NAS/COMMON/IES/PacketFlowIdentifier.h
	modified:   openair3/NAS/COMMON/IES/PagingIdentity.c
	modified:   openair3/NAS/COMMON/IES/PagingIdentity.h
	modified:   openair3/NAS/COMMON/IES/PdnAddress.c
	modified:   openair3/NAS/COMMON/IES/PdnAddress.h
	modified:   openair3/NAS/COMMON/IES/PdnType.c
	modified:   openair3/NAS/COMMON/IES/PdnType.h
	modified:   openair3/NAS/COMMON/IES/PlmnList.c
	modified:   openair3/NAS/COMMON/IES/PlmnList.h
	modified:   openair3/NAS/COMMON/IES/ProcedureTransactionIdentity.c
	modified:   openair3/NAS/COMMON/IES/ProcedureTransactionIdentity.h
	modified:   openair3/NAS/COMMON/IES/ProtocolConfigurationOptions.c
	modified:   openair3/NAS/COMMON/IES/ProtocolConfigurationOptions.h
	modified:   openair3/NAS/COMMON/IES/ProtocolDiscriminator.c
	modified:   openair3/NAS/COMMON/IES/ProtocolDiscriminator.h
	modified:   openair3/NAS/COMMON/IES/QualityOfService.c
	modified:   openair3/NAS/COMMON/IES/QualityOfService.h
	modified:   openair3/NAS/COMMON/IES/RadioPriority.c
	modified:   openair3/NAS/COMMON/IES/RadioPriority.h
	modified:   openair3/NAS/COMMON/IES/SecurityHeaderType.c
	modified:   openair3/NAS/COMMON/IES/SecurityHeaderType.h
	modified:   openair3/NAS/COMMON/IES/ServiceType.c
	modified:   openair3/NAS/COMMON/IES/ServiceType.h
	modified:   openair3/NAS/COMMON/IES/ShortMac.c
	modified:   openair3/NAS/COMMON/IES/ShortMac.h
	modified:   openair3/NAS/COMMON/IES/SsCode.c
	modified:   openair3/NAS/COMMON/IES/SsCode.h
	modified:   openair3/NAS/COMMON/IES/SupportedCodecList.c
	modified:   openair3/NAS/COMMON/IES/SupportedCodecList.h
	modified:   openair3/NAS/COMMON/IES/TimeZone.c
	modified:   openair3/NAS/COMMON/IES/TimeZone.h
	modified:   openair3/NAS/COMMON/IES/TimeZoneAndTime.c
	modified:   openair3/NAS/COMMON/IES/TimeZoneAndTime.h
	modified:   openair3/NAS/COMMON/IES/TmsiStatus.c
	modified:   openair3/NAS/COMMON/IES/TmsiStatus.h
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentity.c
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentity.h
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentityList.c
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentityList.h
	modified:   openair3/NAS/COMMON/IES/TrafficFlowAggregateDescription.c
	modified:   openair3/NAS/COMMON/IES/TrafficFlowAggregateDescription.h
	modified:   openair3/NAS/COMMON/IES/TrafficFlowTemplate.c
	modified:   openair3/NAS/COMMON/IES/TrafficFlowTemplate.h
	modified:   openair3/NAS/COMMON/IES/TransactionIdentifier.c
	modified:   openair3/NAS/COMMON/IES/TransactionIdentifier.h
	modified:   openair3/NAS/COMMON/IES/UeNetworkCapability.c
	modified:   openair3/NAS/COMMON/IES/UeNetworkCapability.h
	modified:   openair3/NAS/COMMON/IES/UeRadioCapabilityInformationUpdateNeeded.c
	modified:   openair3/NAS/COMMON/IES/UeRadioCapabilityInformationUpdateNeeded.h
	modified:   openair3/NAS/COMMON/IES/UeSecurityCapability.c
	modified:   openair3/NAS/COMMON/IES/UeSecurityCapability.h
	modified:   openair3/NAS/COMMON/IES/VoiceDomainPreferenceAndUeUsageSetting.c
	modified:   openair3/NAS/COMMON/IES/VoiceDomainPreferenceAndUeUsageSetting.h
	modified:   openair3/NAS/COMMON/UTIL/OctetString.c
	modified:   openair3/NAS/COMMON/UTIL/OctetString.h
	modified:   openair3/NAS/COMMON/UTIL/TLVDecoder.c
	modified:   openair3/NAS/COMMON/UTIL/TLVDecoder.h
	modified:   openair3/NAS/COMMON/UTIL/TLVEncoder.c
	modified:   openair3/NAS/COMMON/UTIL/TLVEncoder.h
	modified:   openair3/NAS/COMMON/UTIL/device.c
	modified:   openair3/NAS/COMMON/UTIL/device.h
	modified:   openair3/NAS/COMMON/UTIL/memory.c
	modified:   openair3/NAS/COMMON/UTIL/memory.h
	modified:   openair3/NAS/COMMON/UTIL/nas_log.c
	modified:   openair3/NAS/COMMON/UTIL/nas_log.h
	modified:   openair3/NAS/COMMON/UTIL/nas_timer.c
	modified:   openair3/NAS/COMMON/UTIL/nas_timer.h
	modified:   openair3/NAS/COMMON/UTIL/parser.c
	modified:   openair3/NAS/COMMON/UTIL/parser.h
	modified:   openair3/NAS/COMMON/UTIL/socket.c
	modified:   openair3/NAS/COMMON/UTIL/socket.h
	modified:   openair3/NAS/COMMON/UTIL/stty.c
	modified:   openair3/NAS/COMMON/UTIL/tst/timer.c
	modified:   openair3/NAS/COMMON/securityDef.h
	modified:   openair3/NAS/COMMON/userDef.h
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_data.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_data.h
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_process.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_process.h
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_simulator.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_simulator_parser.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/as_simulator_parser.h
	modified:   openair3/NAS/TEST/AS_SIMULATOR/nas_data.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/nas_data.h
	modified:   openair3/NAS/TEST/AS_SIMULATOR/nas_process.c
	modified:   openair3/NAS/TEST/AS_SIMULATOR/nas_process.h
	modified:   openair3/NAS/TEST/NETWORK/network_parser.c
	modified:   openair3/NAS/TEST/NETWORK/network_parser.h
	modified:   openair3/NAS/TEST/NETWORK/network_simulator.c
	modified:   openair3/NAS/TEST/USER/user_parser.c
	modified:   openair3/NAS/TEST/USER/user_parser.h
	modified:   openair3/NAS/TEST/USER/user_simulator.c
	modified:   openair3/NAS/TOOLS/network.h
	modified:   openair3/NAS/TOOLS/ue_data.c
	modified:   openair3/NAS/TOOLS/usim_data.c
	modified:   openair3/NAS/UE/API/USER/at_command.c
	modified:   openair3/NAS/UE/API/USER/at_command.h
	modified:   openair3/NAS/UE/API/USER/at_error.c
	modified:   openair3/NAS/UE/API/USER/at_error.h
	modified:   openair3/NAS/UE/API/USER/at_response.c
	modified:   openair3/NAS/UE/API/USER/at_response.h
	modified:   openair3/NAS/UE/API/USER/tst/at_parser.c
	modified:   openair3/NAS/UE/API/USER/user_api.c
	modified:   openair3/NAS/UE/API/USER/user_api.h
	modified:   openair3/NAS/UE/API/USER/user_indication.c
	modified:   openair3/NAS/UE/API/USER/user_indication.h
	modified:   openair3/NAS/UE/API/USIM/aka_functions.c
	modified:   openair3/NAS/UE/API/USIM/aka_functions.h
	modified:   openair3/NAS/UE/API/USIM/usim_api.c
	modified:   openair3/NAS/UE/API/USIM/usim_api.h
	modified:   openair3/NAS/UE/EMM/Attach.c
	modified:   openair3/NAS/UE/EMM/Authentication.c
	modified:   openair3/NAS/UE/EMM/Detach.c
	modified:   openair3/NAS/UE/EMM/EmmStatusHdl.c
	modified:   openair3/NAS/UE/EMM/Identification.c
	modified:   openair3/NAS/UE/EMM/IdleMode.c
	modified:   openair3/NAS/UE/EMM/IdleMode.h
	modified:   openair3/NAS/UE/EMM/LowerLayer.c
	modified:   openair3/NAS/UE/EMM/LowerLayer.h
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregistered.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredAttachNeeded.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredAttemptingToAttach.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredLimitedService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNoCellAvailable.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNoImsi.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNormalService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredPlmnSearch.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmNull.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegistered.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredAttemptingToUpdate.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredImsiDetachInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredLimitedService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredNoCellAvailable.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredNormalService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredPlmnSearch.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredUpdateNeeded.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmServiceRequestInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmTrackingAreaUpdatingInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_as.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_as.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_asDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_esm.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_esm.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_esmDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_fsm.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_fsm.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_recv.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_recv.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_reg.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_reg.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_regDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_sap.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_sap.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_send.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_send.h
	modified:   openair3/NAS/UE/EMM/SecurityModeControl.c
	modified:   openair3/NAS/UE/EMM/ServiceRequestHdl.c
	modified:   openair3/NAS/UE/EMM/TrackingAreaUpdate.c
	modified:   openair3/NAS/UE/EMM/emmData.h
	modified:   openair3/NAS/UE/EMM/emm_main.c
	modified:   openair3/NAS/UE/EMM/emm_main.h
	modified:   openair3/NAS/UE/EMM/emm_proc.h
	modified:   openair3/NAS/UE/ESM/DedicatedEpsBearerContextActivation.c
	modified:   openair3/NAS/UE/ESM/DefaultEpsBearerContextActivation.c
	modified:   openair3/NAS/UE/ESM/EpsBearerContextDeactivation.c
	modified:   openair3/NAS/UE/ESM/EsmStatusHdl.c
	modified:   openair3/NAS/UE/ESM/PdnConnectivity.c
	modified:   openair3/NAS/UE/ESM/PdnDisconnect.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_recv.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_recv.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_sap.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_sap.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_sapDef.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_send.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_send.h
	modified:   openair3/NAS/UE/ESM/esmData.h
	modified:   openair3/NAS/UE/ESM/esm_ebr.c
	modified:   openair3/NAS/UE/ESM/esm_ebr.h
	modified:   openair3/NAS/UE/ESM/esm_ebr_context.c
	modified:   openair3/NAS/UE/ESM/esm_ebr_context.h
	modified:   openair3/NAS/UE/ESM/esm_ip.c
	modified:   openair3/NAS/UE/ESM/esm_main.c
	modified:   openair3/NAS/UE/ESM/esm_main.h
	modified:   openair3/NAS/UE/ESM/esm_proc.h
	modified:   openair3/NAS/UE/ESM/esm_pt.c
	modified:   openair3/NAS/UE/ESM/esm_pt.h
	modified:   openair3/NAS/UE/UEprocess.c
	modified:   openair3/NAS/UE/nas_itti_messaging.c
	modified:   openair3/NAS/UE/nas_itti_messaging.h
	modified:   openair3/NAS/UE/nas_network.c
	modified:   openair3/NAS/UE/nas_network.h
	modified:   openair3/NAS/UE/nas_parser.c
	modified:   openair3/NAS/UE/nas_parser.h
	modified:   openair3/NAS/UE/nas_proc.c
	modified:   openair3/NAS/UE/nas_proc.h
	modified:   openair3/NAS/UE/nas_ue_task.c
	modified:   openair3/NAS/UE/nas_user.c
	modified:   openair3/NAS/UE/nas_user.h
	modified:   openair3/S1AP/s1ap_common.c
	modified:   openair3/S1AP/s1ap_common.h
	modified:   openair3/S1AP/s1ap_eNB.c
	modified:   openair3/S1AP/s1ap_eNB.h
	modified:   openair3/S1AP/s1ap_eNB_context_management_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_context_management_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_decoder.c
	modified:   openair3/S1AP/s1ap_eNB_decoder.h
	modified:   openair3/S1AP/s1ap_eNB_default_values.h
	modified:   openair3/S1AP/s1ap_eNB_defs.h
	modified:   openair3/S1AP/s1ap_eNB_encoder.c
	modified:   openair3/S1AP/s1ap_eNB_encoder.h
	modified:   openair3/S1AP/s1ap_eNB_handlers.c
	modified:   openair3/S1AP/s1ap_eNB_handlers.h
	modified:   openair3/S1AP/s1ap_eNB_itti_messaging.c
	modified:   openair3/S1AP/s1ap_eNB_itti_messaging.h
	modified:   openair3/S1AP/s1ap_eNB_management_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_management_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_nas_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_nas_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_nnsf.c
	modified:   openair3/S1AP/s1ap_eNB_nnsf.h
	modified:   openair3/S1AP/s1ap_eNB_overload.c
	modified:   openair3/S1AP/s1ap_eNB_overload.h
	modified:   openair3/S1AP/s1ap_eNB_trace.c
	modified:   openair3/S1AP/s1ap_eNB_trace.h
	modified:   openair3/S1AP/s1ap_eNB_ue_context.c
	modified:   openair3/S1AP/s1ap_eNB_ue_context.h
	modified:   openair3/SCTP/sctp_common.c
	modified:   openair3/SCTP/sctp_common.h
	modified:   openair3/SCTP/sctp_default_values.h
	modified:   openair3/SCTP/sctp_eNB_defs.h
	modified:   openair3/SCTP/sctp_eNB_itti_messaging.c
	modified:   openair3/SCTP/sctp_eNB_itti_messaging.h
	modified:   openair3/SCTP/sctp_eNB_task.c
	modified:   openair3/SCTP/sctp_eNB_task.h
	modified:   openair3/SCTP/sctp_primitives_client.c
	modified:   openair3/SCTP/sctp_primitives_client.h
	modified:   openair3/SECU/kdf.c
	modified:   openair3/SECU/key_nas_deriver.c
	modified:   openair3/SECU/key_nas_encryption.c
	modified:   openair3/SECU/nas_stream_eea1.c
	modified:   openair3/SECU/nas_stream_eea2.c
	modified:   openair3/SECU/nas_stream_eia1.c
	modified:   openair3/SECU/nas_stream_eia2.c
	modified:   openair3/SECU/rijndael.c
	modified:   openair3/SECU/rijndael.h
	modified:   openair3/SECU/secu_defs.h
	modified:   openair3/SECU/snow3g.c
	modified:   openair3/SECU/snow3g.h
	modified:   openair3/TEST/EPC_TEST/generate_scenario.c
	modified:   openair3/TEST/EPC_TEST/generate_scenario.h
	modified:   openair3/TEST/EPC_TEST/play_scenario.c
	modified:   openair3/TEST/EPC_TEST/play_scenario.h
	modified:   openair3/TEST/EPC_TEST/play_scenario_decode.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_display.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_fsm.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_parse.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap_compare_ie.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap_eNB_defs.h
	modified:   openair3/TEST/EPC_TEST/play_scenario_sctp.c
	modified:   openair3/TEST/oaisim_mme_client_test.c
	modified:   openair3/TEST/oaisim_mme_itti_test.c
	modified:   openair3/TEST/oaisim_mme_list_benchmark.c
	modified:   openair3/TEST/oaisim_mme_s1ap_test.c
	modified:   openair3/TEST/oaisim_mme_sctp_test.c
	modified:   openair3/TEST/oaisim_mme_test_s1c.c
	modified:   openair3/TEST/oaisim_mme_test_s1c.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_s1ap.c
	modified:   openair3/TEST/oaisim_mme_test_s1c_s1ap.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario.c
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario1.c
	modified:   openair3/TEST/test_aes128_cmac_encrypt.c
	modified:   openair3/TEST/test_aes128_ctr_decrypt.c
	modified:   openair3/TEST/test_aes128_ctr_encrypt.c
	modified:   openair3/TEST/test_kdf.c
	modified:   openair3/TEST/test_s1ap.c
	modified:   openair3/TEST/test_secu.c
	modified:   openair3/TEST/test_secu_kenb.c
	modified:   openair3/TEST/test_secu_knas.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eea1.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eea2.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eia1.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eia2.c
	modified:   openair3/TEST/test_secu_knas_stream_int.c
	modified:   openair3/UDP/udp_eNB_task.c
	modified:   openair3/UDP/udp_eNB_task.h
	modified:   openair3/UTILS/conversions.c
	modified:   openair3/UTILS/conversions.h
	modified:   openair3/UTILS/enum_string.c
	modified:   openair3/UTILS/enum_string.h
	modified:   openair3/UTILS/log.c
	modified:   openair3/UTILS/log.h
	modified:   openair3/UTILS/mcc_mnc_itu.c
	modified:   openair3/UTILS/mcc_mnc_itu.h
	modified:   openair3/UTILS/mme_config.c
	modified:   openair3/UTILS/mme_config.h
	modified:   openair3/UTILS/mme_default_values.h
	modified:   targets/ARCH/BLADERF/USERSPACE/LIB/bladerf_lib.c
	modified:   targets/ARCH/BLADERF/USERSPACE/LIB/bladerf_lib.h
	modified:   targets/ARCH/COMMON/common_lib.c
	modified:   targets/ARCH/COMMON/common_lib.h
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.h
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/if_defs.h
	modified:   targets/ARCH/EXMIMO/DEFS/openair_device.h
	modified:   targets/ARCH/EXMIMO/DEFS/pcie_interface.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/defs.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/exmimo_fw.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/extern.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/irq.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/vars.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/defs.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/exmimo_fw.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/extern.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/fileops.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/irq.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/module_main.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/vars.h
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_dev.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_drv.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_drv.h
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_fifos.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_ioctl.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_mmap.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_rw.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/example.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/OCTAVE/oarf.h
	modified:   targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
	modified:   targets/ARCH/LMSSDR/USERSPACE/LIB/sodera_lib.cpp
	modified:   targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
	modified:   targets/COMMON/create_tasks.c
	modified:   targets/COMMON/create_tasks.h
	modified:   targets/RT/USER/TOOLS/thread_ipc.c
	modified:   targets/RT/USER/TOOLS/thread_ipc.h
	modified:   targets/RT/USER/UE_transport_IQ.c
	modified:   targets/RT/USER/condtest.c
	modified:   targets/RT/USER/eNB_transport_IQ.c
	modified:   targets/RT/USER/emos-raw.c
	modified:   targets/RT/USER/lte-enb.c
	modified:   targets/RT/USER/lte-softmodem.c
	modified:   targets/RT/USER/lte-ue.c
	modified:   targets/RT/USER/msg_helper.c
	modified:   targets/RT/USER/msg_many.c
	modified:   targets/RT/USER/msg_many.h
	modified:   targets/RT/USER/rrh.c
	modified:   targets/RT/USER/rrh_gw.c
	modified:   targets/RT/USER/rrh_gw.h
	modified:   targets/RT/USER/rrh_gw_externs.h
	modified:   targets/RT/USER/rt_wrapper.c
	modified:   targets/RT/USER/rt_wrapper.h
	modified:   targets/RT/USER/sleeptest.c
	modified:   targets/RT/USER/stats.c
	modified:   targets/RT/USER/stats.h
	modified:   targets/RT/USER/synctest.c
	modified:   targets/SIMU/PROC/Process.c
	modified:   targets/SIMU/PROC/Process.h
	modified:   targets/SIMU/PROC/Tsync.h
	modified:   targets/SIMU/PROC/channel_sim_proc.c
	modified:   targets/SIMU/PROC/channel_sim_proc.h
	modified:   targets/SIMU/PROC/interface.h
	modified:   targets/SIMU/USER/channel_sim.c
	modified:   targets/SIMU/USER/cor_SF_sim.c
	modified:   targets/SIMU/USER/cor_SF_sim.h
	modified:   targets/SIMU/USER/event_handler.c
	modified:   targets/SIMU/USER/event_handler.h
	modified:   targets/SIMU/USER/init_lte.c
	modified:   targets/SIMU/USER/init_lte.h
	modified:   targets/SIMU/USER/oaisim.c
	modified:   targets/SIMU/USER/oaisim.h
	modified:   targets/SIMU/USER/oaisim_config.c
	modified:   targets/SIMU/USER/oaisim_config.h
	modified:   targets/SIMU/USER/oaisim_functions.c
	modified:   targets/SIMU/USER/oaisim_functions.h
	modified:   targets/SIMU/USER/oaisim_pad.c
	modified:   targets/SIMU/USER/phy_procedures_sim_form.c
	modified:   targets/SIMU/USER/phy_procedures_sim_form.h
	modified:   targets/SIMU/USER/sinr_sim.c
	modified:   targets/TEST/AT_COMMANDS/oaisim.c
	modified:   targets/TEST/PACKET_TRACER/pt.c
	modified:   targets/TEST/PDCP/test_pdcp.c
	modified:   targets/TEST/PDCP/test_pdcp.h
	modified:   targets/TEST/PDCP/test_util.h
	modified:   targets/TEST/PDCP/with_rlc/test_pdcp_rlc.c
	modified:   targets/TEST/RLC_AM_V9.3.0/oaisim.c
	modified:   targets/TEST/RLC_UM_V9.3.0/oaisim.c
	modified:   targets/TEST/ROHDE_SCHWARZ/EthernetRawCommand.cpp
	modified:   targets/TEST/ROHDE_SCHWARZ/TcpClient.cpp
	modified:   targets/TEST/ROHDE_SCHWARZ/TcpClient.h
2016-09-27 16:54:39 +02:00
Rohit Gupta
c034cc75df Merge branch 'enhancement-10-harmony' into develop 2016-09-27 16:35:21 +02:00
S. Sandeep Kumar
52880e0c17 fix node_function in oaisim conf files 2016-09-27 18:53:05 +05:30
Cedric Roux
0d7039d36a rename COPYING to LICENSE 2016-09-27 15:06:56 +02:00
Cedric Roux
7a724e7d2e Merge remote-tracking branch 'origin/develop' into feature-131-new-license
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair1/SCHED/phy_procedures_lte_ue.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
	openair1/SIMULATION/RF/adc.c
	openair2/LAYER2/MAC/lte_transport_init.c
	targets/RT/USER/lte-softmodem.c
	targets/RT/USER/sched_dlsch.c
	targets/RT/USER/sched_rx_pdsch.c
	targets/RT/USER/sched_ulsch.c
	targets/SIMU/USER/oaisim.c
2016-09-27 15:05:00 +02:00
Cedric Roux
f06dd02fe8 change COPYING to the new license 2016-09-27 14:36:06 +02:00
fnabet
679e7f6d40 Merge branch 'develop' into develop1B 2016-09-27 14:29:47 +02:00
S. Sandeep Kumar
2c45e04951 add static to the declaration of inline in PHY/defs.h 2016-09-27 15:46:34 +05:30
calvin wang
8ce73e5a7e L2 stabilization BSR fertilization 2016-09-27 17:08:17 +08:00
Cedric Roux
e08e2577f5 hotfix: bad copy from userspace by ExpressMIMO2 kernel driver
The ExpressMIMO2 kernel driver did not use proper mechanisms
to copy from user space.

It is very surprising that it ever worked at all...

This commit is a quick fix. It is not the end of the story
and some more work may be needed if things don't work.

The remaining issue is that we pass pointer addresses to the
kernel as 32 bits values, but pointers are 64 bits values
(on x86_64, our supported platform). Some checks have been
put in place to detect if upper 32 bits of a pointer are
not 0 and print a strong error message in case of problem,
but no clean solution has been implemented.
2016-09-27 10:57:03 +02:00
Rohit Gupta
f80617601d Merge branch 'develop' 2016-09-27 10:39:46 +02:00
Raymond Knopp
ff90a54ad9 bugfix for 4096 and 8192-point dfts. 2016-09-26 12:08:33 -07:00
Florian Kaltenberger
e94eb6673c moving hastable into other directory and adding OAI license 2016-09-25 16:29:12 +02:00
Florian Kaltenberger
cc6926c559 removing duplicate files 2016-09-25 16:13:58 +02:00
lukashov
e202953ccb 1.Fixing llr scaling for TM1 and TM2 in dlsch_demodulation.c
2.Fixing modulation for TM2 in dlsch_modulation.c
The branch now passes dlsim tests.
2016-09-21 11:51:16 +02:00
luhan wang
7e6b0c34d2 Merge branch 'enhancement-10-harmony' of https://gitlab.eurecom.fr/oai/openairinterface5g into enhancement-10-harmony 2016-09-21 09:18:45 +02:00
luhan wang
094f439626 comment in phy_procedures_lte_eNb.c 2016-09-21 09:18:31 +02:00
Wilson W.K. Thong
754cab7ec4 added SFN to wireshark logging output
Conflicts:
	openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	openair2/LAYER2/MAC/ue_procedures.c
2016-09-19 15:08:50 +08:00
Wilson W.K. Thong
95077bae4f removed words 'wilson' from src 2016-09-19 12:01:16 +08:00
Wilson W.K. Thong
1de77c7a4e changed so USRP also uses the piece of codes EXMIMO is uing in setting TA=624 when it is TDD
(cherry picked from commit a75dbc4156ed4e216145f1deb81c6e04c1cddf02)
2016-09-19 12:00:39 +08:00
Wilson W.K. Thong
6feb848ebe removed all 'wilson' and 'ASTRI' words from comments
Conflicts:
	openair2/LAYER2/PDCP_v10.1.0/pdcp.c
	openair2/LAYER2/RLC/rlc_rrc.c
2016-09-19 11:53:55 +08:00
Wilson W.K. Thong
19c81e741e fixed hard-code DRB-ID<->LC-ID mapping (DRB-ID = LC-ID - 2) so they are not fully configurable
fixed hard-code default DRB-ID (1) so it is now fully configurable

(cherry picked from commit 4499124853b8985c3f157721997125370f1ca475)

Conflicts:
	openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c

Conflicts:
	openair2/LAYER2/PDCP_v10.1.0/pdcp.c
2016-09-19 11:53:55 +08:00
Wilson W.K. Thong
7e2c8e39f8 fixed oaisim build failed with the new KeNB refresh request message from NAS -> AS 2016-09-19 11:32:46 +08:00
Wilson W.K. Thong
fe2b7d80d3 removed 'wilson' from the codes 2016-09-19 11:32:46 +08:00
Wilson W.K. Thong
6b48fd6380 ** new procedure - refresh kENB from NAS -> AS **
added flow to refresh KeNB key in RRC on receiving S1AP-InitialContextSetup
added flow to configure PDCP security mode
enabled filling in the PDCP MAC code during and after RRC-SMC procedure

(cherry picked from commit 898cd5c45aedb27625d73352568211b4467c8dd9)
2016-09-19 11:32:46 +08:00
lukashov
54bce4155c Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
2016-09-15 14:33:49 +02:00
lukashov
856bb3abe9 Fixing previous commit. 2016-09-15 13:51:19 +02:00
Cedric Roux
3d88f4ed2f remove copyright notice
All the *.c *.h and *.cpp files that have a eurecom copyright at
the head have been processed.

All other files (ie. those with other extensions) have not been touched.

 Changes to be committed:
	modified:   common/utils/asn1_conversions.h
	modified:   common/utils/assertions.h
	modified:   common/utils/collection/hashtable/hashtable.c
	modified:   common/utils/collection/hashtable/hashtable.h
	modified:   common/utils/collection/hashtable/obj_hashtable.c
	modified:   common/utils/collection/hashtable/obj_hashtable.h
	modified:   common/utils/itti/assertions.h
	modified:   common/utils/itti/backtrace.c
	modified:   common/utils/itti/backtrace.h
	modified:   common/utils/itti/intertask_interface.c
	modified:   common/utils/itti/intertask_interface.h
	modified:   common/utils/itti/intertask_interface_dump.c
	modified:   common/utils/itti/intertask_interface_dump.h
	modified:   common/utils/itti/intertask_interface_init.h
	modified:   common/utils/itti/intertask_interface_types.h
	modified:   common/utils/itti/intertask_messages_def.h
	modified:   common/utils/itti/intertask_messages_types.h
	modified:   common/utils/itti/itti_types.h
	modified:   common/utils/itti/memory_pools.c
	modified:   common/utils/itti/memory_pools.h
	modified:   common/utils/itti/messages_def.h
	modified:   common/utils/itti/messages_types.h
	modified:   common/utils/itti/signals.c
	modified:   common/utils/itti/signals.h
	modified:   common/utils/itti/tasks_def.h
	modified:   common/utils/itti/timer.c
	modified:   common/utils/itti/timer.h
	modified:   common/utils/itti/timer_messages_def.h
	modified:   common/utils/itti/timer_messages_types.h
	modified:   common/utils/itti_analyzer/common/itti_types.h
	modified:   common/utils/itti_analyzer/common/logs.h
	modified:   common/utils/itti_analyzer/common/rc.h
	modified:   common/utils/itti_analyzer/itti_analyzer.c
	modified:   common/utils/itti_analyzer/libbuffers/buffers.c
	modified:   common/utils/itti_analyzer/libbuffers/buffers.h
	modified:   common/utils/itti_analyzer/libbuffers/file.c
	modified:   common/utils/itti_analyzer/libbuffers/file.h
	modified:   common/utils/itti_analyzer/libbuffers/socket.c
	modified:   common/utils/itti_analyzer/libbuffers/socket.h
	modified:   common/utils/itti_analyzer/libparser/array_type.c
	modified:   common/utils/itti_analyzer/libparser/array_type.h
	modified:   common/utils/itti_analyzer/libparser/enum_type.c
	modified:   common/utils/itti_analyzer/libparser/enum_type.h
	modified:   common/utils/itti_analyzer/libparser/enum_value_type.c
	modified:   common/utils/itti_analyzer/libparser/enum_value_type.h
	modified:   common/utils/itti_analyzer/libparser/field_type.c
	modified:   common/utils/itti_analyzer/libparser/field_type.h
	modified:   common/utils/itti_analyzer/libparser/file_type.c
	modified:   common/utils/itti_analyzer/libparser/file_type.h
	modified:   common/utils/itti_analyzer/libparser/fundamental_type.c
	modified:   common/utils/itti_analyzer/libparser/fundamental_type.h
	modified:   common/utils/itti_analyzer/libparser/intertask_contexts.h
	modified:   common/utils/itti_analyzer/libparser/pointer_type.c
	modified:   common/utils/itti_analyzer/libparser/pointer_type.h
	modified:   common/utils/itti_analyzer/libparser/reference_type.c
	modified:   common/utils/itti_analyzer/libparser/reference_type.h
	modified:   common/utils/itti_analyzer/libparser/struct_type.c
	modified:   common/utils/itti_analyzer/libparser/struct_type.h
	modified:   common/utils/itti_analyzer/libparser/typedef_type.c
	modified:   common/utils/itti_analyzer/libparser/typedef_type.h
	modified:   common/utils/itti_analyzer/libparser/types.c
	modified:   common/utils/itti_analyzer/libparser/types.h
	modified:   common/utils/itti_analyzer/libparser/union_type.c
	modified:   common/utils/itti_analyzer/libparser/union_type.h
	modified:   common/utils/itti_analyzer/libparser/xml_parse.c
	modified:   common/utils/itti_analyzer/libparser/xml_parse.h
	modified:   common/utils/itti_analyzer/libresolver/locate_root.c
	modified:   common/utils/itti_analyzer/libresolver/locate_root.h
	modified:   common/utils/itti_analyzer/libresolver/resolvers.c
	modified:   common/utils/itti_analyzer/libresolver/resolvers.h
	modified:   common/utils/itti_analyzer/libui/ui_callbacks.c
	modified:   common/utils/itti_analyzer/libui/ui_callbacks.h
	modified:   common/utils/itti_analyzer/libui/ui_filters.c
	modified:   common/utils/itti_analyzer/libui/ui_filters.h
	modified:   common/utils/itti_analyzer/libui/ui_interface.c
	modified:   common/utils/itti_analyzer/libui/ui_interface.h
	modified:   common/utils/itti_analyzer/libui/ui_main_screen.c
	modified:   common/utils/itti_analyzer/libui/ui_main_screen.h
	modified:   common/utils/itti_analyzer/libui/ui_menu_bar.c
	modified:   common/utils/itti_analyzer/libui/ui_menu_bar.h
	modified:   common/utils/itti_analyzer/libui/ui_notebook.c
	modified:   common/utils/itti_analyzer/libui/ui_notebook.h
	modified:   common/utils/itti_analyzer/libui/ui_notif_dlg.c
	modified:   common/utils/itti_analyzer/libui/ui_notif_dlg.h
	modified:   common/utils/itti_analyzer/libui/ui_notifications.c
	modified:   common/utils/itti_analyzer/libui/ui_notifications.h
	modified:   common/utils/itti_analyzer/libui/ui_signal_dissect_view.c
	modified:   common/utils/itti_analyzer/libui/ui_signal_dissect_view.h
	modified:   common/utils/itti_analyzer/libui/ui_tree_view.c
	modified:   common/utils/itti_analyzer/libui/ui_tree_view.h
	modified:   common/utils/msc/msc.c
	modified:   common/utils/msc/msc.h
	modified:   openair1/PHY/CODING/3gpplte.c
	modified:   openair1/PHY/CODING/3gpplte_sse.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_avx2_16bit.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse_16bit.c
	modified:   openair1/PHY/CODING/3gpplte_turbo_decoder_sse_8bit.c
	modified:   openair1/PHY/CODING/TESTBENCH/ltetest.c
	modified:   openair1/PHY/CODING/TESTBENCH/pdcch_test.c
	modified:   openair1/PHY/CODING/TESTBENCH/viterbi_test.c
	modified:   openair1/PHY/CODING/ccoding_byte.c
	modified:   openair1/PHY/CODING/ccoding_byte_lte.c
	modified:   openair1/PHY/CODING/crc_byte.c
	modified:   openair1/PHY/CODING/defs.h
	modified:   openair1/PHY/CODING/extern.h
	modified:   openair1/PHY/CODING/extern_3GPPinterleaver.h
	modified:   openair1/PHY/CODING/lte_interleaver.h
	modified:   openair1/PHY/CODING/lte_interleaver2.h
	modified:   openair1/PHY/CODING/lte_interleaver_inline.h
	modified:   openair1/PHY/CODING/lte_rate_matching.c
	modified:   openair1/PHY/CODING/lte_segmentation.c
	modified:   openair1/PHY/CODING/rate_matching.c
	modified:   openair1/PHY/CODING/scrambler.h
	modified:   openair1/PHY/CODING/vars.h
	modified:   openair1/PHY/CODING/viterbi.c
	modified:   openair1/PHY/CODING/viterbi_lte.c
	modified:   openair1/PHY/INIT/defs.h
	modified:   openair1/PHY/INIT/extern.h
	modified:   openair1/PHY/INIT/init_top.c
	modified:   openair1/PHY/INIT/lte_init.c
	modified:   openair1/PHY/INIT/lte_parms.c
	modified:   openair1/PHY/INIT/vars.h
	modified:   openair1/PHY/LTE_ESTIMATION/adjust_gain.c
	modified:   openair1/PHY/LTE_ESTIMATION/defs.h
	modified:   openair1/PHY/LTE_ESTIMATION/extern.h
	modified:   openair1/PHY/LTE_ESTIMATION/filt96_32.h
	modified:   openair1/PHY/LTE_ESTIMATION/freq_equalization.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_channel_estimation_emos.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_dl_mbsfn_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_eNB_measurements.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_est_freq_offset.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_sync_timefreq.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_ue_measurements.c
	modified:   openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
	modified:   openair1/PHY/LTE_ESTIMATION/pss6144.h
	modified:   openair1/PHY/LTE_ESTIMATION/vars.h
	modified:   openair1/PHY/LTE_REFSIG/defs.h
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_cell_spec.c
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_mbsfn.c
	modified:   openair1/PHY/LTE_REFSIG/lte_dl_uespec.c
	modified:   openair1/PHY/LTE_REFSIG/lte_gold.c
	modified:   openair1/PHY/LTE_REFSIG/lte_gold_mbsfn.c
	modified:   openair1/PHY/LTE_REFSIG/lte_ul_ref.c
	modified:   openair1/PHY/LTE_REFSIG/mod_table.h
	modified:   openair1/PHY/LTE_TRANSPORT/dci.c
	modified:   openair1/PHY/LTE_TRANSPORT/dci.h
	modified:   openair1/PHY/LTE_TRANSPORT/dci_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/defs.h
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_coding.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_decoding.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_scrambling.c
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_tbs.h
	modified:   openair1/PHY/LTE_TRANSPORT/dlsch_tbs_full.h
	modified:   openair1/PHY/LTE_TRANSPORT/drs_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/extern.h
	modified:   openair1/PHY/LTE_TRANSPORT/group_hopping.c
	modified:   openair1/PHY/LTE_TRANSPORT/initial_sync.c
	modified:   openair1/PHY/LTE_TRANSPORT/lte_mcs.c
	modified:   openair1/PHY/LTE_TRANSPORT/mcs_tbs_tools.h
	modified:   openair1/PHY/LTE_TRANSPORT/pbch.c
	modified:   openair1/PHY/LTE_TRANSPORT/pcfich.c
	modified:   openair1/PHY/LTE_TRANSPORT/phich.c
	modified:   openair1/PHY/LTE_TRANSPORT/pilots.c
	modified:   openair1/PHY/LTE_TRANSPORT/pilots_mbsfn.c
	modified:   openair1/PHY/LTE_TRANSPORT/pmch.c
	modified:   openair1/PHY/LTE_TRANSPORT/power_control.c
	modified:   openair1/PHY/LTE_TRANSPORT/prach.c
	modified:   openair1/PHY/LTE_TRANSPORT/prach.h
	modified:   openair1/PHY/LTE_TRANSPORT/print_stats.c
	modified:   openair1/PHY/LTE_TRANSPORT/proto.h
	modified:   openair1/PHY/LTE_TRANSPORT/pss.c
	modified:   openair1/PHY/LTE_TRANSPORT/pucch.c
	modified:   openair1/PHY/LTE_TRANSPORT/rar_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/srs_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/sss.c
	modified:   openair1/PHY/LTE_TRANSPORT/sss.h
	modified:   openair1/PHY/LTE_TRANSPORT/uci.h
	modified:   openair1/PHY/LTE_TRANSPORT/uci_tools.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_coding.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_decoding.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/ulsch_modulation.c
	modified:   openair1/PHY/LTE_TRANSPORT/vars.h
	modified:   openair1/PHY/MODULATION/defs.h
	modified:   openair1/PHY/MODULATION/extern.h
	modified:   openair1/PHY/MODULATION/kHz_7_5.h
	modified:   openair1/PHY/MODULATION/ofdm_mod.c
	modified:   openair1/PHY/MODULATION/prach625Hz.h
	modified:   openair1/PHY/MODULATION/slot_fep.c
	modified:   openair1/PHY/MODULATION/slot_fep_mbsfn.c
	modified:   openair1/PHY/MODULATION/slot_fep_ul.c
	modified:   openair1/PHY/MODULATION/ul_7_5_kHz.c
	modified:   openair1/PHY/MODULATION/vars.h
	modified:   openair1/PHY/TOOLS/8bit_rxdemux.c
	modified:   openair1/PHY/TOOLS/8bit_txmux.c
	modified:   openair1/PHY/TOOLS/angle.c
	modified:   openair1/PHY/TOOLS/cadd_sv.c
	modified:   openair1/PHY/TOOLS/cadd_vv.c
	modified:   openair1/PHY/TOOLS/cdot_prod.c
	modified:   openair1/PHY/TOOLS/cmult_sv.c
	modified:   openair1/PHY/TOOLS/cmult_vv.c
	modified:   openair1/PHY/TOOLS/costable.h
	modified:   openair1/PHY/TOOLS/dB_routines.c
	modified:   openair1/PHY/TOOLS/dB_routines.h
	modified:   openair1/PHY/TOOLS/defs.h
	modified:   openair1/PHY/TOOLS/extern.h
	modified:   openair1/PHY/TOOLS/file_output.c
	modified:   openair1/PHY/TOOLS/invSqrt.c
	modified:   openair1/PHY/TOOLS/log2_approx.c
	modified:   openair1/PHY/TOOLS/lte_dfts.c
	modified:   openair1/PHY/TOOLS/lte_phy_scope.c
	modified:   openair1/PHY/TOOLS/lte_phy_scope.h
	modified:   openair1/PHY/TOOLS/lut.c
	modified:   openair1/PHY/TOOLS/memory_routines.c
	modified:   openair1/PHY/TOOLS/signal_energy.c
	modified:   openair1/PHY/TOOLS/smbv.c
	modified:   openair1/PHY/TOOLS/smbv.h
	modified:   openair1/PHY/TOOLS/sqrt.c
	modified:   openair1/PHY/TOOLS/time_meas.c
	modified:   openair1/PHY/TOOLS/time_meas.h
	modified:   openair1/PHY/TOOLS/twiddle12288.h
	modified:   openair1/PHY/TOOLS/twiddle1536.h
	modified:   openair1/PHY/TOOLS/twiddle24576.h
	modified:   openair1/PHY/TOOLS/twiddle6144.h
	modified:   openair1/PHY/TOOLS/vars.h
	modified:   openair1/PHY/defs.h
	modified:   openair1/PHY/extern.h
	modified:   openair1/PHY/impl_defs_lte.h
	modified:   openair1/PHY/impl_defs_top.h
	modified:   openair1/PHY/sse_intrin.h
	modified:   openair1/PHY/types.h
	modified:   openair1/PHY/vars.h
	modified:   openair1/SCHED/defs.h
	modified:   openair1/SCHED/extern.h
	modified:   openair1/SCHED/phy_mac_stub.c
	modified:   openair1/SCHED/phy_procedures_emos.h
	modified:   openair1/SCHED/phy_procedures_lte_common.c
	modified:   openair1/SCHED/phy_procedures_lte_eNb.c
	modified:   openair1/SCHED/phy_procedures_lte_ue.c
	modified:   openair1/SCHED/pucch_pc.c
	modified:   openair1/SCHED/pusch_pc.c
	modified:   openair1/SCHED/rt_compat.h
	modified:   openair1/SCHED/vars.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/bypass_session_layer.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/defs.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/emu_transport.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/extern.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/multicast_link.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/multicast_link.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/netlink_init.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/pgm_link.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/pgm_link.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/proto.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/socket.c
	modified:   openair1/SIMULATION/ETH_TRANSPORT/socket.h
	modified:   openair1/SIMULATION/ETH_TRANSPORT/vars.h
	modified:   openair1/SIMULATION/LTE_PHY/LTE_Configuration.c
	modified:   openair1/SIMULATION/LTE_PHY/LTE_Configuration.h
	modified:   openair1/SIMULATION/LTE_PHY/dlsim.c
	modified:   openair1/SIMULATION/LTE_PHY/framegen.c
	modified:   openair1/SIMULATION/LTE_PHY/gpib_send.c
	modified:   openair1/SIMULATION/LTE_PHY/gpib_send.h
	modified:   openair1/SIMULATION/LTE_PHY/mbmssim.c
	modified:   openair1/SIMULATION/LTE_PHY/pbchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/pdcchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/prachsim.c
	modified:   openair1/SIMULATION/LTE_PHY/pucchsignalgegerator.h
	modified:   openair1/SIMULATION/LTE_PHY/pucchsignalgenerator.c
	modified:   openair1/SIMULATION/LTE_PHY/pucchsim.c
	modified:   openair1/SIMULATION/LTE_PHY/scansim.c
	modified:   openair1/SIMULATION/LTE_PHY/signalanalyzer.c
	modified:   openair1/SIMULATION/LTE_PHY/signalanalyzer.h
	modified:   openair1/SIMULATION/LTE_PHY/syncsim.c
	modified:   openair1/SIMULATION/LTE_PHY/test.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsignalgenerator.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsignalgenerator.h
	modified:   openair1/SIMULATION/LTE_PHY/ulsim.c
	modified:   openair1/SIMULATION/LTE_PHY/ulsim2.c
	modified:   openair1/SIMULATION/RF/adc.c
	modified:   openair1/SIMULATION/RF/dac.c
	modified:   openair1/SIMULATION/RF/defs.h
	modified:   openair1/SIMULATION/RF/rf.c
	modified:   openair1/SIMULATION/TOOLS/abstraction.c
	modified:   openair1/SIMULATION/TOOLS/ch_desc_proto.c
	modified:   openair1/SIMULATION/TOOLS/defs.h
	modified:   openair1/SIMULATION/TOOLS/gauss.c
	modified:   openair1/SIMULATION/TOOLS/llr_quantization.c
	modified:   openair1/SIMULATION/TOOLS/multipath_channel.c
	modified:   openair1/SIMULATION/TOOLS/multipath_tv_channel.c
	modified:   openair1/SIMULATION/TOOLS/random_channel.c
	modified:   openair1/SIMULATION/TOOLS/rangen_double.c
	modified:   openair1/SIMULATION/TOOLS/scm_corrmat.h
	modified:   openair1/SIMULATION/TOOLS/taus.c
	modified:   openair2/COMMON/as_message.h
	modified:   openair2/COMMON/commonDef.h
	modified:   openair2/COMMON/gtpv1_u_messages_def.h
	modified:   openair2/COMMON/gtpv1_u_messages_types.h
	modified:   openair2/COMMON/intertask_interface_conf.h
	modified:   openair2/COMMON/mac_messages_def.h
	modified:   openair2/COMMON/mac_messages_types.h
	modified:   openair2/COMMON/mac_primitives.h
	modified:   openair2/COMMON/mac_rlc_primitives.h
	modified:   openair2/COMMON/mac_rrc_primitives.h
	modified:   openair2/COMMON/messages_def.h
	modified:   openair2/COMMON/messages_types.h
	modified:   openair2/COMMON/nas_messages_def.h
	modified:   openair2/COMMON/nas_messages_types.h
	modified:   openair2/COMMON/networkDef.h
	modified:   openair2/COMMON/openair_defs.h
	modified:   openair2/COMMON/openair_types.h
	modified:   openair2/COMMON/pdcp_messages_def.h
	modified:   openair2/COMMON/pdcp_messages_types.h
	modified:   openair2/COMMON/phy_messages_def.h
	modified:   openair2/COMMON/phy_messages_types.h
	modified:   openair2/COMMON/platform_constants.h
	modified:   openair2/COMMON/platform_types.h
	modified:   openair2/COMMON/ral_messages_def.h
	modified:   openair2/COMMON/ral_messages_types.h
	modified:   openair2/COMMON/rlc_messages_def.h
	modified:   openair2/COMMON/rlc_messages_types.h
	modified:   openair2/COMMON/rrc_messages_def.h
	modified:   openair2/COMMON/rrc_messages_types.h
	modified:   openair2/COMMON/rrm_config_structs.h
	modified:   openair2/COMMON/rrm_constants.h
	modified:   openair2/COMMON/rtos_header.h
	modified:   openair2/COMMON/s1ap_messages_def.h
	modified:   openair2/COMMON/s1ap_messages_types.h
	modified:   openair2/COMMON/sctp_messages_def.h
	modified:   openair2/COMMON/sctp_messages_types.h
	modified:   openair2/COMMON/tasks_def.h
	modified:   openair2/COMMON/udp_messages_def.h
	modified:   openair2/COMMON/udp_messages_types.h
	modified:   openair2/COMMON/x2ap_messages_def.h
	modified:   openair2/COMMON/x2ap_messages_types.h
	modified:   openair2/DOCS/TEMPLATES/CODE/example_doxy.h
	modified:   openair2/ENB_APP/enb_app.c
	modified:   openair2/ENB_APP/enb_app.h
	modified:   openair2/ENB_APP/enb_config.c
	modified:   openair2/ENB_APP/enb_config.h
	modified:   openair2/LAYER2/MAC/config.c
	modified:   openair2/LAYER2/MAC/defs.h
	modified:   openair2/LAYER2/MAC/eNB_scheduler.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_RA.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_bch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_mch.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_primitives.c
	modified:   openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
	modified:   openair2/LAYER2/MAC/extern.h
	modified:   openair2/LAYER2/MAC/l1_helpers.c
	modified:   openair2/LAYER2/MAC/lte_transport_init.c
	modified:   openair2/LAYER2/MAC/main.c
	modified:   openair2/LAYER2/MAC/openair2_proc.c
	modified:   openair2/LAYER2/MAC/pre_processor.c
	modified:   openair2/LAYER2/MAC/proto.h
	modified:   openair2/LAYER2/MAC/ra_procedures.c
	modified:   openair2/LAYER2/MAC/rar_tools.c
	modified:   openair2/LAYER2/MAC/ue_procedures.c
	modified:   openair2/LAYER2/MAC/vars.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_control_primitive.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_control_primitives_proto_extern.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_fifo.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_netlink.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_primitives.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_primitives.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_proto_extern.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_security.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_sequence_manager.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_sequence_manager.h
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_thread.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_util.c
	modified:   openair2/LAYER2/PDCP_v10.1.0/pdcp_util.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_constants.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_entity.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_in_sdu.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_in_sdu.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_init.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_proto_extern.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_reassembly.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_reassembly.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_receiver.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_receiver.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_retransmit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_retransmit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_rx_list.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_rx_list.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segment.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segment.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segments_holes.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_segments_holes.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_status_report.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_status_report.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_structs.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_test.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_test.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_poll_retransmit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_poll_retransmit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_reordering.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_reordering.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_status_prohibit.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_timer_status_prohibit.h
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_windows.c
	modified:   openair2/LAYER2/RLC/AM_v9.3.0/rlc_am_windows.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm.c
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_entity.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.c
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_init.h
	modified:   openair2/LAYER2/RLC/TM_v9.3.0/rlc_tm_structs.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_constants.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_control_primitives.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_dar.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_dar.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_entity.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_fsm.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_fsm.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_reassembly.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_reassembly.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_receiver.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_receiver.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_segment.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_segment.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_structs.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_test.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_test.h
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_very_simple_test.c
	modified:   openair2/LAYER2/RLC/UM_v9.3.0/rlc_um_very_simple_test.h
	modified:   openair2/LAYER2/RLC/rlc.c
	modified:   openair2/LAYER2/RLC/rlc.h
	modified:   openair2/LAYER2/RLC/rlc_def.h
	modified:   openair2/LAYER2/RLC/rlc_def_lte.h
	modified:   openair2/LAYER2/RLC/rlc_mac.c
	modified:   openair2/LAYER2/RLC/rlc_mpls.c
	modified:   openair2/LAYER2/RLC/rlc_primitives.h
	modified:   openair2/LAYER2/RLC/rlc_rrc.c
	modified:   openair2/LAYER2/layer2_top.c
	modified:   openair2/LAYER2/openair2_proc.c
	modified:   openair2/LAYER2/register.c
	modified:   openair2/LAYER2/register.h
	modified:   openair2/NAS/DRIVER/CELLULAR/CTL_TOOL/nascell_ioctl.c
	modified:   openair2/NAS/DRIVER/CELLULAR/CTL_TOOL/nascell_ioctl.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_ascontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_classifier.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_common.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_constant.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_device.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_iocontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_iocontrol.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_netlink.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_proto.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_sap.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_tool.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASMT/nasmt_variables.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_ascontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_classifier.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_common.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_constant.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_device.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_iocontrol.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_iocontrol.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_netlink.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_proto.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_sap.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_tool.c
	modified:   openair2/NAS/DRIVER/CELLULAR/NASRG/nasrg_variables.h
	modified:   openair2/NAS/DRIVER/CELLULAR/NETLTEST/netltest.c
	modified:   openair2/NAS/SIMU_CELLULAR/nas_simu_proto.h
	modified:   openair2/NAS/SIMU_CELLULAR/nasrg_simu_meas.c
	modified:   openair2/NAS/SIMU_CELLULAR/rrm_fifo_standalone.c
	modified:   openair2/NAS/nas_ue_task.h
	modified:   openair2/NETWORK_DRIVER/LITE/RB_TOOL/rb_tool.c
	modified:   openair2/NETWORK_DRIVER/LITE/classifier.c
	modified:   openair2/NETWORK_DRIVER/LITE/common.c
	modified:   openair2/NETWORK_DRIVER/LITE/constant.h
	modified:   openair2/NETWORK_DRIVER/LITE/device.c
	modified:   openair2/NETWORK_DRIVER/LITE/ioctl.c
	modified:   openair2/NETWORK_DRIVER/LITE/ioctl.h
	modified:   openair2/NETWORK_DRIVER/LITE/local.h
	modified:   openair2/NETWORK_DRIVER/LITE/netlink.c
	modified:   openair2/NETWORK_DRIVER/LITE/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/LITE/sap.h
	modified:   openair2/NETWORK_DRIVER/LITE/tool.c
	modified:   openair2/NETWORK_DRIVER/MESH/RB_TOOL/rb_tool.c
	modified:   openair2/NETWORK_DRIVER/MESH/classifier.c
	modified:   openair2/NETWORK_DRIVER/MESH/common.c
	modified:   openair2/NETWORK_DRIVER/MESH/constant.h
	modified:   openair2/NETWORK_DRIVER/MESH/device.c
	modified:   openair2/NETWORK_DRIVER/MESH/ioctl.c
	modified:   openair2/NETWORK_DRIVER/MESH/ioctl.h
	modified:   openair2/NETWORK_DRIVER/MESH/local.h
	modified:   openair2/NETWORK_DRIVER/MESH/mesh.c
	modified:   openair2/NETWORK_DRIVER/MESH/netlink.c
	modified:   openair2/NETWORK_DRIVER/MESH/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/MESH/rrc_nas_primitives.h
	modified:   openair2/NETWORK_DRIVER/MESH/sap.h
	modified:   openair2/NETWORK_DRIVER/MESH/tool.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/common.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/constant.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/device.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/local.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/netlink.c
	modified:   openair2/NETWORK_DRIVER/UE_IP/proto_extern.h
	modified:   openair2/NETWORK_DRIVER/UE_IP/sap.h
	modified:   openair2/PHY_INTERFACE/defs.h
	modified:   openair2/PHY_INTERFACE/extern.h
	modified:   openair2/PHY_INTERFACE/mac_phy_primitives.c
	modified:   openair2/PHY_INTERFACE/mac_phy_primitives.h
	modified:   openair2/PHY_INTERFACE/vars.h
	modified:   openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.c
	modified:   openair2/RRC/L2_INTERFACE/openair_rrc_L2_interface.h
	modified:   openair2/RRC/LITE/L2_interface.c
	modified:   openair2/RRC/LITE/MESSAGES/asn1_msg.c
	modified:   openair2/RRC/LITE/MESSAGES/asn1_msg.h
	modified:   openair2/RRC/LITE/defs.h
	modified:   openair2/RRC/LITE/extern.h
	modified:   openair2/RRC/LITE/proto.h
	modified:   openair2/RRC/LITE/rrc_2_rrm_msg.c
	modified:   openair2/RRC/LITE/rrc_UE.c
	modified:   openair2/RRC/LITE/rrc_UE_ral.c
	modified:   openair2/RRC/LITE/rrc_UE_ral.h
	modified:   openair2/RRC/LITE/rrc_common.c
	modified:   openair2/RRC/LITE/rrc_config.c
	modified:   openair2/RRC/LITE/rrc_eNB.c
	modified:   openair2/RRC/LITE/rrc_eNB_GTPV1U.c
	modified:   openair2/RRC/LITE/rrc_eNB_GTPV1U.h
	modified:   openair2/RRC/LITE/rrc_eNB_S1AP.c
	modified:   openair2/RRC/LITE/rrc_eNB_S1AP.h
	modified:   openair2/RRC/LITE/rrc_eNB_UE_context.c
	modified:   openair2/RRC/LITE/rrc_eNB_UE_context.h
	modified:   openair2/RRC/LITE/rrc_eNB_ral.c
	modified:   openair2/RRC/LITE/rrc_eNB_ral.h
	modified:   openair2/RRC/LITE/rrc_rrm_interface.c
	modified:   openair2/RRC/LITE/rrc_rrm_interface.h
	modified:   openair2/RRC/LITE/rrc_types.h
	modified:   openair2/RRC/LITE/rrm_2_rrc_msg.c
	modified:   openair2/RRC/LITE/utils.c
	modified:   openair2/RRC/LITE/vars.h
	modified:   openair2/RRC/NAS/nas_config.c
	modified:   openair2/RRC/NAS/nas_config.h
	modified:   openair2/RRC/NAS/rb_config.c
	modified:   openair2/RRC/NAS/rb_config.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform_constants.h
	modified:   openair2/RRM_4_RRC_LITE/src/platform_defines.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Asn1Utils.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Asn1Utils.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Command.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Command.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/DataRadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/DataRadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/ENodeB.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/ENodeB.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Exceptions.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/LogicalChannel.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/LogicalChannel.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Mobile.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Mobile.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioResources.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/RadioResources.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/SignallingRadioBearer.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/SignallingRadioBearer.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transaction.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transaction.h
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transactions.cpp
	modified:   openair2/RRM_4_RRC_LITE/src/radio_resources/Transactions.h
	modified:   openair2/RRM_4_RRC_LITE/src/rrm.cpp
	modified:   openair2/UTIL/AT_COMMANDS/parser.c
	modified:   openair2/UTIL/AT_COMMANDS/parser.h
	modified:   openair2/UTIL/BIGPHYS/bigphys.c
	modified:   openair2/UTIL/BIGPHYS/defs.h
	modified:   openair2/UTIL/CLI/cli.c
	modified:   openair2/UTIL/CLI/cli.h
	modified:   openair2/UTIL/CLI/cli_cmd.c
	modified:   openair2/UTIL/CLI/cli_if.h
	modified:   openair2/UTIL/CLI/cli_server.c
	modified:   openair2/UTIL/FIFO/pad_list.c
	modified:   openair2/UTIL/FIFO/pad_list.h
	modified:   openair2/UTIL/FIFO/types.h
	modified:   openair2/UTIL/LISTS/list.c
	modified:   openair2/UTIL/LOG/log.c
	modified:   openair2/UTIL/LOG/log.h
	modified:   openair2/UTIL/LOG/log_extern.h
	modified:   openair2/UTIL/LOG/log_if.h
	modified:   openair2/UTIL/LOG/vcd_signal_dumper.c
	modified:   openair2/UTIL/LOG/vcd_signal_dumper.h
	modified:   openair2/UTIL/MATH/crc_byte.c
	modified:   openair2/UTIL/MATH/oml.c
	modified:   openair2/UTIL/MATH/oml.h
	modified:   openair2/UTIL/MATH/random.c
	modified:   openair2/UTIL/MATH/random_proto_extern.h
	modified:   openair2/UTIL/MATH/taus.c
	modified:   openair2/UTIL/MEM/mem_block.c
	modified:   openair2/UTIL/MEM/mem_block.h
	modified:   openair2/UTIL/MEM/mem_mngt.c
	modified:   openair2/UTIL/MEM/mem_mngt_proto_extern.h
	modified:   openair2/UTIL/MEM/mem_pool.h
	modified:   openair2/UTIL/OCG/OCG.c
	modified:   openair2/UTIL/OCG/OCG.h
	modified:   openair2/UTIL/OCG/OCG_call_emu.h
	modified:   openair2/UTIL/OCG/OCG_config_mobi.c
	modified:   openair2/UTIL/OCG/OCG_config_mobi.h
	modified:   openair2/UTIL/OCG/OCG_create_dir.c
	modified:   openair2/UTIL/OCG/OCG_create_dir.h
	modified:   openair2/UTIL/OCG/OCG_detect_file.c
	modified:   openair2/UTIL/OCG/OCG_detect_file.h
	modified:   openair2/UTIL/OCG/OCG_extern.h
	modified:   openair2/UTIL/OCG/OCG_generate_report.c
	modified:   openair2/UTIL/OCG/OCG_generate_report.h
	modified:   openair2/UTIL/OCG/OCG_get_opt.c
	modified:   openair2/UTIL/OCG/OCG_get_opt.h
	modified:   openair2/UTIL/OCG/OCG_if.h
	modified:   openair2/UTIL/OCG/OCG_parse_XML.c
	modified:   openair2/UTIL/OCG/OCG_parse_XML.h
	modified:   openair2/UTIL/OCG/OCG_parse_filename.c
	modified:   openair2/UTIL/OCG/OCG_parse_filename.h
	modified:   openair2/UTIL/OCG/OCG_save_XML.c
	modified:   openair2/UTIL/OCG/OCG_save_XML.h
	modified:   openair2/UTIL/OCG/OCG_vars.h
	modified:   openair2/UTIL/OMG/TraCIConstants.h
	modified:   openair2/UTIL/OMG/client_traci_OMG.c
	modified:   openair2/UTIL/OMG/client_traci_OMG.h
	modified:   openair2/UTIL/OMG/common.c
	modified:   openair2/UTIL/OMG/defs.h
	modified:   openair2/UTIL/OMG/grid.c
	modified:   openair2/UTIL/OMG/grid.h
	modified:   openair2/UTIL/OMG/id_manager.c
	modified:   openair2/UTIL/OMG/id_manager.h
	modified:   openair2/UTIL/OMG/job.c
	modified:   openair2/UTIL/OMG/mobility_parser.c
	modified:   openair2/UTIL/OMG/mobility_parser.h
	modified:   openair2/UTIL/OMG/omg.c
	modified:   openair2/UTIL/OMG/omg.h
	modified:   openair2/UTIL/OMG/omg_constants.h
	modified:   openair2/UTIL/OMG/omg_hashtable.c
	modified:   openair2/UTIL/OMG/omg_hashtable.h
	modified:   openair2/UTIL/OMG/omg_vars.h
	modified:   openair2/UTIL/OMG/rwalk.c
	modified:   openair2/UTIL/OMG/rwalk.h
	modified:   openair2/UTIL/OMG/rwp.c
	modified:   openair2/UTIL/OMG/rwp.h
	modified:   openair2/UTIL/OMG/socket_traci_OMG.c
	modified:   openair2/UTIL/OMG/socket_traci_OMG.h
	modified:   openair2/UTIL/OMG/static.c
	modified:   openair2/UTIL/OMG/static.h
	modified:   openair2/UTIL/OMG/steadystaterwp.c
	modified:   openair2/UTIL/OMG/steadystaterwp.h
	modified:   openair2/UTIL/OMG/storage_traci_OMG.c
	modified:   openair2/UTIL/OMG/storage_traci_OMG.h
	modified:   openair2/UTIL/OMG/sumo.c
	modified:   openair2/UTIL/OMG/sumo.h
	modified:   openair2/UTIL/OMG/trace.c
	modified:   openair2/UTIL/OMG/trace.h
	modified:   openair2/UTIL/OMG/trace_hashtable.c
	modified:   openair2/UTIL/OMG/trace_hashtable.h
	modified:   openair2/UTIL/OMV/communicationthread.cpp
	modified:   openair2/UTIL/OMV/communicationthread.h
	modified:   openair2/UTIL/OMV/mywindow.cpp
	modified:   openair2/UTIL/OMV/mywindow.h
	modified:   openair2/UTIL/OMV/omv.cpp
	modified:   openair2/UTIL/OMV/openglwidget.cpp
	modified:   openair2/UTIL/OMV/openglwidget.h
	modified:   openair2/UTIL/OMV/structures.h
	modified:   openair2/UTIL/OPT/mac_pcap.h
	modified:   openair2/UTIL/OPT/opt.h
	modified:   openair2/UTIL/OPT/socket_sender.c
	modified:   openair2/UTIL/OPT/vars.h
	modified:   openair2/UTIL/OSA/osa_defs.h
	modified:   openair2/UTIL/OSA/osa_internal.h
	modified:   openair2/UTIL/OSA/osa_key_deriver.c
	modified:   openair2/UTIL/OSA/osa_snow3g.h
	modified:   openair2/UTIL/OSA/osa_stream_eea.c
	modified:   openair2/UTIL/OSA/osa_stream_eia.c
	modified:   openair2/UTIL/OTG/main.c
	modified:   openair2/UTIL/OTG/otg.c
	modified:   openair2/UTIL/OTG/otg.h
	modified:   openair2/UTIL/OTG/otg_config.h
	modified:   openair2/UTIL/OTG/otg_defs.h
	modified:   openair2/UTIL/OTG/otg_externs.h
	modified:   openair2/UTIL/OTG/otg_form.c
	modified:   openair2/UTIL/OTG/otg_form.h
	modified:   openair2/UTIL/OTG/otg_kpi.c
	modified:   openair2/UTIL/OTG/otg_kpi.h
	modified:   openair2/UTIL/OTG/otg_models.c
	modified:   openair2/UTIL/OTG/otg_models.h
	modified:   openair2/UTIL/OTG/otg_rx.c
	modified:   openair2/UTIL/OTG/otg_rx.h
	modified:   openair2/UTIL/OTG/otg_rx_socket.c
	modified:   openair2/UTIL/OTG/otg_rx_socket.h
	modified:   openair2/UTIL/OTG/otg_tx.c
	modified:   openair2/UTIL/OTG/otg_tx.h
	modified:   openair2/UTIL/OTG/otg_tx_socket.c
	modified:   openair2/UTIL/OTG/otg_tx_socket.h
	modified:   openair2/UTIL/OTG/otg_vars.h
	modified:   openair2/UTIL/OTG/traffic_config.h
	modified:   openair2/UTIL/TIMER/umts_timer.c
	modified:   openair2/UTIL/TIMER/umts_timer.h
	modified:   openair2/UTIL/TIMER/umts_timer_proto_extern.h
	modified:   openair2/UTIL/TIMER/umts_timer_struct.h
	modified:   openair2/UTIL/TRACE/fifo_printf.c
	modified:   openair2/UTIL/TRACE/fifo_printf.h
	modified:   openair2/UTIL/TRACE/fifo_printf_proto_extern.h
	modified:   openair2/UTIL/TRACE/print.h
	modified:   openair2/X2AP/x2ap.c
	modified:   openair2/X2AP/x2ap.h
	modified:   openair2/X2AP/x2ap_common.c
	modified:   openair2/X2AP/x2ap_common.h
	modified:   openair3/COMMON/common_types.h
	modified:   openair3/COMMON/gtpv1_u_messages_def.h
	modified:   openair3/COMMON/gtpv1_u_messages_types.h
	modified:   openair3/COMMON/intertask_interface_conf.h
	modified:   openair3/COMMON/messages_def.h
	modified:   openair3/COMMON/messages_types.h
	modified:   openair3/COMMON/nas_messages_def.h
	modified:   openair3/COMMON/nas_messages_types.h
	modified:   openair3/COMMON/s1ap_messages_def.h
	modified:   openair3/COMMON/s1ap_messages_types.h
	modified:   openair3/COMMON/sctp_messages_def.h
	modified:   openair3/COMMON/sctp_messages_types.h
	modified:   openair3/COMMON/security_types.h
	modified:   openair3/COMMON/tasks_def.h
	modified:   openair3/COMMON/udp_messages_def.h
	modified:   openair3/COMMON/udp_messages_types.h
	modified:   openair3/GTPV1-U/gtpv1u.h
	modified:   openair3/GTPV1-U/gtpv1u_eNB.c
	modified:   openair3/GTPV1-U/gtpv1u_eNB_defs.h
	modified:   openair3/GTPV1-U/gtpv1u_eNB_task.h
	modified:   openair3/GTPV1-U/gtpv1u_sgw_defs.h
	modified:   openair3/GTPV1-U/gtpv1u_task.c
	modified:   openair3/GTPV1-U/gtpv1u_teid_pool.c
	modified:   openair3/NAS/COMMON/API/NETWORK/as_message.c
	modified:   openair3/NAS/COMMON/API/NETWORK/l2_message.h
	modified:   openair3/NAS/COMMON/API/NETWORK/nas_message.c
	modified:   openair3/NAS/COMMON/API/NETWORK/nas_message.h
	modified:   openair3/NAS/COMMON/API/NETWORK/network_api.c
	modified:   openair3/NAS/COMMON/API/NETWORK/network_api.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AttachRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationFailure.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationFailure.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationResponse.c
	modified:   openair3/NAS/COMMON/EMM/MSG/AuthenticationResponse.h
	modified:   openair3/NAS/COMMON/EMM/MSG/CsServiceNotification.c
	modified:   openair3/NAS/COMMON/EMM/MSG/CsServiceNotification.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DetachRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/DownlinkNasTransport.c
	modified:   openair3/NAS/COMMON/EMM/MSG/DownlinkNasTransport.h
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmInformation.c
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmInformation.h
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmStatus.c
	modified:   openair3/NAS/COMMON/EMM/MSG/EmmStatus.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ExtendedServiceRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ExtendedServiceRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationCommand.c
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationCommand.h
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/GutiReallocationComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityResponse.c
	modified:   openair3/NAS/COMMON/EMM/MSG/IdentityResponse.h
	modified:   openair3/NAS/COMMON/EMM/MSG/NASSecurityModeCommand.h
	modified:   openair3/NAS/COMMON/EMM/MSG/NASSecurityModeComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeCommand.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/SecurityModeReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/ServiceRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateAccept.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateAccept.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateComplete.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateComplete.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateReject.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateReject.h
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateRequest.c
	modified:   openair3/NAS/COMMON/EMM/MSG/TrackingAreaUpdateRequest.h
	modified:   openair3/NAS/COMMON/EMM/MSG/UplinkNasTransport.c
	modified:   openair3/NAS/COMMON/EMM/MSG/UplinkNasTransport.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_cause.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msg.c
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msg.h
	modified:   openair3/NAS/COMMON/EMM/MSG/emm_msgDef.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ActivateDefaultEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceAllocationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/BearerResourceModificationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/DeactivateEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationResponse.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmInformationResponse.h
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmStatus.c
	modified:   openair3/NAS/COMMON/ESM/MSG/EsmStatus.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextAccept.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextAccept.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/ModifyEpsBearerContextRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnConnectivityRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectReject.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectReject.h
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectRequest.c
	modified:   openair3/NAS/COMMON/ESM/MSG/PdnDisconnectRequest.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_cause.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msg.c
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msg.h
	modified:   openair3/NAS/COMMON/ESM/MSG/esm_msgDef.h
	modified:   openair3/NAS/COMMON/IES/AccessPointName.c
	modified:   openair3/NAS/COMMON/IES/AccessPointName.h
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateResult.c
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateResult.h
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateType.c
	modified:   openair3/NAS/COMMON/IES/AdditionalUpdateType.h
	modified:   openair3/NAS/COMMON/IES/ApnAggregateMaximumBitRate.c
	modified:   openair3/NAS/COMMON/IES/ApnAggregateMaximumBitRate.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationFailureParameter.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationFailureParameter.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterAutn.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterAutn.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterRand.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationParameterRand.h
	modified:   openair3/NAS/COMMON/IES/AuthenticationResponseParameter.c
	modified:   openair3/NAS/COMMON/IES/AuthenticationResponseParameter.h
	modified:   openair3/NAS/COMMON/IES/CipheringKeySequenceNumber.c
	modified:   openair3/NAS/COMMON/IES/CipheringKeySequenceNumber.h
	modified:   openair3/NAS/COMMON/IES/Cli.c
	modified:   openair3/NAS/COMMON/IES/Cli.h
	modified:   openair3/NAS/COMMON/IES/CsfbResponse.c
	modified:   openair3/NAS/COMMON/IES/CsfbResponse.h
	modified:   openair3/NAS/COMMON/IES/DaylightSavingTime.c
	modified:   openair3/NAS/COMMON/IES/DaylightSavingTime.h
	modified:   openair3/NAS/COMMON/IES/DetachType.c
	modified:   openair3/NAS/COMMON/IES/DetachType.h
	modified:   openair3/NAS/COMMON/IES/DrxParameter.c
	modified:   openair3/NAS/COMMON/IES/DrxParameter.h
	modified:   openair3/NAS/COMMON/IES/EmergencyNumberList.c
	modified:   openair3/NAS/COMMON/IES/EmergencyNumberList.h
	modified:   openair3/NAS/COMMON/IES/EmmCause.c
	modified:   openair3/NAS/COMMON/IES/EmmCause.h
	modified:   openair3/NAS/COMMON/IES/EpsAttachResult.c
	modified:   openair3/NAS/COMMON/IES/EpsAttachResult.h
	modified:   openair3/NAS/COMMON/IES/EpsAttachType.c
	modified:   openair3/NAS/COMMON/IES/EpsAttachType.h
	modified:   openair3/NAS/COMMON/IES/EpsBearerContextStatus.c
	modified:   openair3/NAS/COMMON/IES/EpsBearerContextStatus.h
	modified:   openair3/NAS/COMMON/IES/EpsBearerIdentity.c
	modified:   openair3/NAS/COMMON/IES/EpsBearerIdentity.h
	modified:   openair3/NAS/COMMON/IES/EpsMobileIdentity.c
	modified:   openair3/NAS/COMMON/IES/EpsMobileIdentity.h
	modified:   openair3/NAS/COMMON/IES/EpsNetworkFeatureSupport.c
	modified:   openair3/NAS/COMMON/IES/EpsNetworkFeatureSupport.h
	modified:   openair3/NAS/COMMON/IES/EpsQualityOfService.c
	modified:   openair3/NAS/COMMON/IES/EpsQualityOfService.h
	modified:   openair3/NAS/COMMON/IES/EpsUpdateResult.c
	modified:   openair3/NAS/COMMON/IES/EpsUpdateResult.h
	modified:   openair3/NAS/COMMON/IES/EpsUpdateType.c
	modified:   openair3/NAS/COMMON/IES/EpsUpdateType.h
	modified:   openair3/NAS/COMMON/IES/EsmCause.c
	modified:   openair3/NAS/COMMON/IES/EsmCause.h
	modified:   openair3/NAS/COMMON/IES/EsmInformationTransferFlag.c
	modified:   openair3/NAS/COMMON/IES/EsmInformationTransferFlag.h
	modified:   openair3/NAS/COMMON/IES/EsmMessageContainer.c
	modified:   openair3/NAS/COMMON/IES/EsmMessageContainer.h
	modified:   openair3/NAS/COMMON/IES/GprsTimer.c
	modified:   openair3/NAS/COMMON/IES/GprsTimer.h
	modified:   openair3/NAS/COMMON/IES/GutiType.c
	modified:   openair3/NAS/COMMON/IES/GutiType.h
	modified:   openair3/NAS/COMMON/IES/IdentityType2.c
	modified:   openair3/NAS/COMMON/IES/IdentityType2.h
	modified:   openair3/NAS/COMMON/IES/ImeisvRequest.c
	modified:   openair3/NAS/COMMON/IES/ImeisvRequest.h
	modified:   openair3/NAS/COMMON/IES/KsiAndSequenceNumber.c
	modified:   openair3/NAS/COMMON/IES/KsiAndSequenceNumber.h
	modified:   openair3/NAS/COMMON/IES/LcsClientIdentity.c
	modified:   openair3/NAS/COMMON/IES/LcsClientIdentity.h
	modified:   openair3/NAS/COMMON/IES/LcsIndicator.c
	modified:   openair3/NAS/COMMON/IES/LcsIndicator.h
	modified:   openair3/NAS/COMMON/IES/LinkedEpsBearerIdentity.c
	modified:   openair3/NAS/COMMON/IES/LinkedEpsBearerIdentity.h
	modified:   openair3/NAS/COMMON/IES/LlcServiceAccessPointIdentifier.c
	modified:   openair3/NAS/COMMON/IES/LlcServiceAccessPointIdentifier.h
	modified:   openair3/NAS/COMMON/IES/LocationAreaIdentification.c
	modified:   openair3/NAS/COMMON/IES/LocationAreaIdentification.h
	modified:   openair3/NAS/COMMON/IES/MessageType.c
	modified:   openair3/NAS/COMMON/IES/MessageType.h
	modified:   openair3/NAS/COMMON/IES/MobileIdentity.c
	modified:   openair3/NAS/COMMON/IES/MobileIdentity.h
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark2.c
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark2.h
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark3.c
	modified:   openair3/NAS/COMMON/IES/MobileStationClassmark3.h
	modified:   openair3/NAS/COMMON/IES/MsNetworkCapability.c
	modified:   openair3/NAS/COMMON/IES/MsNetworkCapability.h
	modified:   openair3/NAS/COMMON/IES/MsNetworkFeatureSupport.c
	modified:   openair3/NAS/COMMON/IES/MsNetworkFeatureSupport.h
	modified:   openair3/NAS/COMMON/IES/NasKeySetIdentifier.c
	modified:   openair3/NAS/COMMON/IES/NasKeySetIdentifier.h
	modified:   openair3/NAS/COMMON/IES/NasMessageContainer.c
	modified:   openair3/NAS/COMMON/IES/NasMessageContainer.h
	modified:   openair3/NAS/COMMON/IES/NasRequestType.c
	modified:   openair3/NAS/COMMON/IES/NasRequestType.h
	modified:   openair3/NAS/COMMON/IES/NasSecurityAlgorithms.c
	modified:   openair3/NAS/COMMON/IES/NasSecurityAlgorithms.h
	modified:   openair3/NAS/COMMON/IES/NetworkName.c
	modified:   openair3/NAS/COMMON/IES/NetworkName.h
	modified:   openair3/NAS/COMMON/IES/Nonce.c
	modified:   openair3/NAS/COMMON/IES/Nonce.h
	modified:   openair3/NAS/COMMON/IES/PTmsiSignature.c
	modified:   openair3/NAS/COMMON/IES/PTmsiSignature.h
	modified:   openair3/NAS/COMMON/IES/PacketFlowIdentifier.c
	modified:   openair3/NAS/COMMON/IES/PacketFlowIdentifier.h
	modified:   openair3/NAS/COMMON/IES/PagingIdentity.c
	modified:   openair3/NAS/COMMON/IES/PagingIdentity.h
	modified:   openair3/NAS/COMMON/IES/PdnAddress.c
	modified:   openair3/NAS/COMMON/IES/PdnAddress.h
	modified:   openair3/NAS/COMMON/IES/PdnType.c
	modified:   openair3/NAS/COMMON/IES/PdnType.h
	modified:   openair3/NAS/COMMON/IES/PlmnList.c
	modified:   openair3/NAS/COMMON/IES/PlmnList.h
	modified:   openair3/NAS/COMMON/IES/ProcedureTransactionIdentity.c
	modified:   openair3/NAS/COMMON/IES/ProcedureTransactionIdentity.h
	modified:   openair3/NAS/COMMON/IES/ProtocolConfigurationOptions.c
	modified:   openair3/NAS/COMMON/IES/ProtocolConfigurationOptions.h
	modified:   openair3/NAS/COMMON/IES/ProtocolDiscriminator.c
	modified:   openair3/NAS/COMMON/IES/ProtocolDiscriminator.h
	modified:   openair3/NAS/COMMON/IES/QualityOfService.c
	modified:   openair3/NAS/COMMON/IES/QualityOfService.h
	modified:   openair3/NAS/COMMON/IES/RadioPriority.c
	modified:   openair3/NAS/COMMON/IES/RadioPriority.h
	modified:   openair3/NAS/COMMON/IES/SecurityHeaderType.c
	modified:   openair3/NAS/COMMON/IES/SecurityHeaderType.h
	modified:   openair3/NAS/COMMON/IES/ServiceType.c
	modified:   openair3/NAS/COMMON/IES/ServiceType.h
	modified:   openair3/NAS/COMMON/IES/ShortMac.c
	modified:   openair3/NAS/COMMON/IES/ShortMac.h
	modified:   openair3/NAS/COMMON/IES/SsCode.c
	modified:   openair3/NAS/COMMON/IES/SsCode.h
	modified:   openair3/NAS/COMMON/IES/SupportedCodecList.c
	modified:   openair3/NAS/COMMON/IES/SupportedCodecList.h
	modified:   openair3/NAS/COMMON/IES/TimeZone.c
	modified:   openair3/NAS/COMMON/IES/TimeZone.h
	modified:   openair3/NAS/COMMON/IES/TimeZoneAndTime.c
	modified:   openair3/NAS/COMMON/IES/TimeZoneAndTime.h
	modified:   openair3/NAS/COMMON/IES/TmsiStatus.c
	modified:   openair3/NAS/COMMON/IES/TmsiStatus.h
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentity.c
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentity.h
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentityList.c
	modified:   openair3/NAS/COMMON/IES/TrackingAreaIdentityList.h
	modified:   openair3/NAS/COMMON/IES/TrafficFlowAggregateDescription.c
	modified:   openair3/NAS/COMMON/IES/TrafficFlowAggregateDescription.h
	modified:   openair3/NAS/COMMON/IES/TrafficFlowTemplate.c
	modified:   openair3/NAS/COMMON/IES/TrafficFlowTemplate.h
	modified:   openair3/NAS/COMMON/IES/TransactionIdentifier.c
	modified:   openair3/NAS/COMMON/IES/TransactionIdentifier.h
	modified:   openair3/NAS/COMMON/IES/UeNetworkCapability.c
	modified:   openair3/NAS/COMMON/IES/UeNetworkCapability.h
	modified:   openair3/NAS/COMMON/IES/UeRadioCapabilityInformationUpdateNeeded.c
	modified:   openair3/NAS/COMMON/IES/UeRadioCapabilityInformationUpdateNeeded.h
	modified:   openair3/NAS/COMMON/IES/UeSecurityCapability.c
	modified:   openair3/NAS/COMMON/IES/UeSecurityCapability.h
	modified:   openair3/NAS/COMMON/IES/VoiceDomainPreferenceAndUeUsageSetting.c
	modified:   openair3/NAS/COMMON/IES/VoiceDomainPreferenceAndUeUsageSetting.h
	modified:   openair3/NAS/COMMON/UTIL/OctetString.c
	modified:   openair3/NAS/COMMON/UTIL/OctetString.h
	modified:   openair3/NAS/COMMON/UTIL/TLVDecoder.c
	modified:   openair3/NAS/COMMON/UTIL/TLVDecoder.h
	modified:   openair3/NAS/COMMON/UTIL/TLVEncoder.c
	modified:   openair3/NAS/COMMON/UTIL/TLVEncoder.h
	modified:   openair3/NAS/COMMON/UTIL/device.c
	modified:   openair3/NAS/COMMON/UTIL/device.h
	modified:   openair3/NAS/COMMON/UTIL/memory.c
	modified:   openair3/NAS/COMMON/UTIL/memory.h
	modified:   openair3/NAS/COMMON/UTIL/nas_log.c
	modified:   openair3/NAS/COMMON/UTIL/nas_log.h
	modified:   openair3/NAS/COMMON/UTIL/nas_timer.c
	modified:   openair3/NAS/COMMON/UTIL/nas_timer.h
	modified:   openair3/NAS/COMMON/UTIL/parser.c
	modified:   openair3/NAS/COMMON/UTIL/parser.h
	modified:   openair3/NAS/COMMON/UTIL/socket.c
	modified:   openair3/NAS/COMMON/UTIL/socket.h
	modified:   openair3/NAS/COMMON/UTIL/stty.c
	modified:   openair3/NAS/COMMON/UTIL/tst/timer.c
	modified:   openair3/NAS/COMMON/securityDef.h
	modified:   openair3/NAS/COMMON/userDef.h
	modified:   openair3/NAS/TOOLS/network.h
	modified:   openair3/NAS/TOOLS/ue_data.c
	modified:   openair3/NAS/TOOLS/usim_data.c
	modified:   openair3/NAS/UE/API/USER/at_command.c
	modified:   openair3/NAS/UE/API/USER/at_command.h
	modified:   openair3/NAS/UE/API/USER/at_error.c
	modified:   openair3/NAS/UE/API/USER/at_error.h
	modified:   openair3/NAS/UE/API/USER/at_response.c
	modified:   openair3/NAS/UE/API/USER/at_response.h
	modified:   openair3/NAS/UE/API/USER/tst/at_parser.c
	modified:   openair3/NAS/UE/API/USER/user_api.c
	modified:   openair3/NAS/UE/API/USER/user_api.h
	modified:   openair3/NAS/UE/API/USER/user_indication.c
	modified:   openair3/NAS/UE/API/USER/user_indication.h
	modified:   openair3/NAS/UE/API/USIM/aka_functions.h
	modified:   openair3/NAS/UE/API/USIM/usim_api.c
	modified:   openair3/NAS/UE/API/USIM/usim_api.h
	modified:   openair3/NAS/UE/EMM/Attach.c
	modified:   openair3/NAS/UE/EMM/Authentication.c
	modified:   openair3/NAS/UE/EMM/Detach.c
	modified:   openair3/NAS/UE/EMM/EmmStatusHdl.c
	modified:   openair3/NAS/UE/EMM/Identification.c
	modified:   openair3/NAS/UE/EMM/IdleMode.c
	modified:   openair3/NAS/UE/EMM/IdleMode.h
	modified:   openair3/NAS/UE/EMM/LowerLayer.c
	modified:   openair3/NAS/UE/EMM/LowerLayer.h
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregistered.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredAttachNeeded.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredAttemptingToAttach.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredLimitedService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNoCellAvailable.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNoImsi.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredNormalService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmDeregisteredPlmnSearch.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmNull.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegistered.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredAttemptingToUpdate.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredImsiDetachInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredLimitedService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredNoCellAvailable.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredNormalService.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredPlmnSearch.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmRegisteredUpdateNeeded.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmServiceRequestInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/EmmTrackingAreaUpdatingInitiated.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_as.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_as.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_asDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_esm.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_esm.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_esmDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_fsm.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_fsm.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_recv.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_recv.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_reg.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_reg.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_regDef.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_sap.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_sap.h
	modified:   openair3/NAS/UE/EMM/SAP/emm_send.c
	modified:   openair3/NAS/UE/EMM/SAP/emm_send.h
	modified:   openair3/NAS/UE/EMM/SecurityModeControl.c
	modified:   openair3/NAS/UE/EMM/ServiceRequestHdl.c
	modified:   openair3/NAS/UE/EMM/TrackingAreaUpdate.c
	modified:   openair3/NAS/UE/EMM/emmData.h
	modified:   openair3/NAS/UE/EMM/emm_main.c
	modified:   openair3/NAS/UE/EMM/emm_main.h
	modified:   openair3/NAS/UE/EMM/emm_proc.h
	modified:   openair3/NAS/UE/ESM/DedicatedEpsBearerContextActivation.c
	modified:   openair3/NAS/UE/ESM/DefaultEpsBearerContextActivation.c
	modified:   openair3/NAS/UE/ESM/EpsBearerContextDeactivation.c
	modified:   openair3/NAS/UE/ESM/EsmStatusHdl.c
	modified:   openair3/NAS/UE/ESM/PdnConnectivity.c
	modified:   openair3/NAS/UE/ESM/PdnDisconnect.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_recv.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_recv.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_sap.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_sap.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_sapDef.h
	modified:   openair3/NAS/UE/ESM/SAP/esm_send.c
	modified:   openair3/NAS/UE/ESM/SAP/esm_send.h
	modified:   openair3/NAS/UE/ESM/esmData.h
	modified:   openair3/NAS/UE/ESM/esm_ebr.c
	modified:   openair3/NAS/UE/ESM/esm_ebr.h
	modified:   openair3/NAS/UE/ESM/esm_ebr_context.c
	modified:   openair3/NAS/UE/ESM/esm_ebr_context.h
	modified:   openair3/NAS/UE/ESM/esm_ip.c
	modified:   openair3/NAS/UE/ESM/esm_main.c
	modified:   openair3/NAS/UE/ESM/esm_main.h
	modified:   openair3/NAS/UE/ESM/esm_proc.h
	modified:   openair3/NAS/UE/ESM/esm_pt.c
	modified:   openair3/NAS/UE/ESM/esm_pt.h
	modified:   openair3/NAS/UE/UEprocess.c
	modified:   openair3/NAS/UE/nas_itti_messaging.c
	modified:   openair3/NAS/UE/nas_itti_messaging.h
	modified:   openair3/NAS/UE/nas_network.c
	modified:   openair3/NAS/UE/nas_network.h
	modified:   openair3/NAS/UE/nas_parser.c
	modified:   openair3/NAS/UE/nas_parser.h
	modified:   openair3/NAS/UE/nas_proc.c
	modified:   openair3/NAS/UE/nas_proc.h
	modified:   openair3/NAS/UE/nas_ue_task.c
	modified:   openair3/NAS/UE/nas_user.c
	modified:   openair3/NAS/UE/nas_user.h
	modified:   openair3/S1AP/s1ap_common.c
	modified:   openair3/S1AP/s1ap_common.h
	modified:   openair3/S1AP/s1ap_eNB.c
	modified:   openair3/S1AP/s1ap_eNB.h
	modified:   openair3/S1AP/s1ap_eNB_context_management_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_context_management_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_decoder.c
	modified:   openair3/S1AP/s1ap_eNB_decoder.h
	modified:   openair3/S1AP/s1ap_eNB_default_values.h
	modified:   openair3/S1AP/s1ap_eNB_defs.h
	modified:   openair3/S1AP/s1ap_eNB_encoder.c
	modified:   openair3/S1AP/s1ap_eNB_encoder.h
	modified:   openair3/S1AP/s1ap_eNB_handlers.c
	modified:   openair3/S1AP/s1ap_eNB_handlers.h
	modified:   openair3/S1AP/s1ap_eNB_itti_messaging.c
	modified:   openair3/S1AP/s1ap_eNB_itti_messaging.h
	modified:   openair3/S1AP/s1ap_eNB_management_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_management_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_nas_procedures.c
	modified:   openair3/S1AP/s1ap_eNB_nas_procedures.h
	modified:   openair3/S1AP/s1ap_eNB_nnsf.c
	modified:   openair3/S1AP/s1ap_eNB_nnsf.h
	modified:   openair3/S1AP/s1ap_eNB_overload.c
	modified:   openair3/S1AP/s1ap_eNB_overload.h
	modified:   openair3/S1AP/s1ap_eNB_trace.c
	modified:   openair3/S1AP/s1ap_eNB_trace.h
	modified:   openair3/S1AP/s1ap_eNB_ue_context.c
	modified:   openair3/S1AP/s1ap_eNB_ue_context.h
	modified:   openair3/SCTP/sctp_common.c
	modified:   openair3/SCTP/sctp_common.h
	modified:   openair3/SCTP/sctp_default_values.h
	modified:   openair3/SCTP/sctp_eNB_defs.h
	modified:   openair3/SCTP/sctp_eNB_itti_messaging.c
	modified:   openair3/SCTP/sctp_eNB_itti_messaging.h
	modified:   openair3/SCTP/sctp_eNB_task.c
	modified:   openair3/SCTP/sctp_eNB_task.h
	modified:   openair3/SCTP/sctp_primitives_client.c
	modified:   openair3/SCTP/sctp_primitives_client.h
	modified:   openair3/SECU/kdf.c
	modified:   openair3/SECU/key_nas_deriver.c
	modified:   openair3/SECU/key_nas_encryption.c
	modified:   openair3/SECU/nas_stream_eea1.c
	modified:   openair3/SECU/nas_stream_eea2.c
	modified:   openair3/SECU/nas_stream_eia1.c
	modified:   openair3/SECU/nas_stream_eia2.c
	modified:   openair3/SECU/rijndael.h
	modified:   openair3/SECU/secu_defs.h
	modified:   openair3/SECU/snow3g.c
	modified:   openair3/SECU/snow3g.h
	modified:   openair3/TEST/EPC_TEST/generate_scenario.c
	modified:   openair3/TEST/EPC_TEST/generate_scenario.h
	modified:   openair3/TEST/EPC_TEST/play_scenario.c
	modified:   openair3/TEST/EPC_TEST/play_scenario.h
	modified:   openair3/TEST/EPC_TEST/play_scenario_decode.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_display.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_fsm.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_parse.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap_compare_ie.c
	modified:   openair3/TEST/EPC_TEST/play_scenario_s1ap_eNB_defs.h
	modified:   openair3/TEST/EPC_TEST/play_scenario_sctp.c
	modified:   openair3/TEST/oaisim_mme_client_test.c
	modified:   openair3/TEST/oaisim_mme_itti_test.c
	modified:   openair3/TEST/oaisim_mme_list_benchmark.c
	modified:   openair3/TEST/oaisim_mme_s1ap_test.c
	modified:   openair3/TEST/oaisim_mme_sctp_test.c
	modified:   openair3/TEST/oaisim_mme_test_s1c.c
	modified:   openair3/TEST/oaisim_mme_test_s1c.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_s1ap.c
	modified:   openair3/TEST/oaisim_mme_test_s1c_s1ap.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario.c
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario.h
	modified:   openair3/TEST/oaisim_mme_test_s1c_scenario1.c
	modified:   openair3/TEST/test_aes128_cmac_encrypt.c
	modified:   openair3/TEST/test_aes128_ctr_decrypt.c
	modified:   openair3/TEST/test_aes128_ctr_encrypt.c
	modified:   openair3/TEST/test_kdf.c
	modified:   openair3/TEST/test_s1ap.c
	modified:   openair3/TEST/test_secu.c
	modified:   openair3/TEST/test_secu_kenb.c
	modified:   openair3/TEST/test_secu_knas.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eea1.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eea2.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eia1.c
	modified:   openair3/TEST/test_secu_knas_encrypt_eia2.c
	modified:   openair3/TEST/test_secu_knas_stream_int.c
	modified:   openair3/UDP/udp_eNB_task.c
	modified:   openair3/UDP/udp_eNB_task.h
	modified:   openair3/UTILS/HASHTABLE/hashtable.c
	modified:   openair3/UTILS/HASHTABLE/hashtable.h
	modified:   openair3/UTILS/HASHTABLE/obj_hashtable.c
	modified:   openair3/UTILS/HASHTABLE/obj_hashtable.h
	modified:   openair3/UTILS/conversions.c
	modified:   openair3/UTILS/conversions.h
	modified:   openair3/UTILS/enum_string.c
	modified:   openair3/UTILS/enum_string.h
	modified:   openair3/UTILS/log.c
	modified:   openair3/UTILS/log.h
	modified:   openair3/UTILS/mcc_mnc_itu.c
	modified:   openair3/UTILS/mcc_mnc_itu.h
	modified:   openair3/UTILS/mme_config.c
	modified:   openair3/UTILS/mme_config.h
	modified:   openair3/UTILS/mme_default_values.h
	modified:   targets/ARCH/BLADERF/USERSPACE/LIB/bladerf_lib.c
	modified:   targets/ARCH/BLADERF/USERSPACE/LIB/bladerf_lib.h
	modified:   targets/ARCH/COMMON/common_lib.c
	modified:   targets/ARCH/COMMON/common_lib.h
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/eth_raw.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/eth_udp.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	modified:   targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.h
	modified:   targets/ARCH/EXMIMO/DEFS/openair_device.h
	modified:   targets/ARCH/EXMIMO/DEFS/pcie_interface.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/defs.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/exmimo_fw.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/extern.h
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/fileops.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/irq.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/module_main.c
	modified:   targets/ARCH/EXMIMO/DRIVER/eurecom/vars.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/defs.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/exmimo_fw.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/extern.h
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/fileops.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/irq.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/module_main.c
	modified:   targets/ARCH/EXMIMO/DRIVER/exmimo3/vars.h
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_dev.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_drv.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_drv.h
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_fifos.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_ioctl.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_mmap.c
	modified:   targets/ARCH/EXMIMO/DRIVER/telecomparistech/em1_rw.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/example.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/gain_control.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/LIB/openair0_lib.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/elf.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/elftypes.h
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw.c
	modified:   targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw.h
	modified:   targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
	modified:   targets/ARCH/LMSSDR/USERSPACE/LIB/sodera_lib.cpp
	modified:   targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
	modified:   targets/COMMON/create_tasks.c
	modified:   targets/COMMON/create_tasks.h
	modified:   targets/RT/USER/TOOLS/thread_ipc.c
	modified:   targets/RT/USER/TOOLS/thread_ipc.h
	modified:   targets/RT/USER/UE_transport_IQ.c
	modified:   targets/RT/USER/condtest.c
	modified:   targets/RT/USER/eNB_transport_IQ.c
	modified:   targets/RT/USER/emos-raw.c
	modified:   targets/RT/USER/lte-softmodem.c
	modified:   targets/RT/USER/lte-ue.c
	modified:   targets/RT/USER/msg_many.h
	modified:   targets/RT/USER/rrh.c
	modified:   targets/RT/USER/rrh_gw.c
	modified:   targets/RT/USER/rrh_gw.h
	modified:   targets/RT/USER/rrh_gw_externs.h
	modified:   targets/RT/USER/rt_wrapper.c
	modified:   targets/RT/USER/rt_wrapper.h
	modified:   targets/RT/USER/sched_dlsch.c
	modified:   targets/RT/USER/sched_rx_pdsch.c
	modified:   targets/RT/USER/sched_ulsch.c
	modified:   targets/RT/USER/sleeptest.c
	modified:   targets/RT/USER/synctest.c
	modified:   targets/SIMU/PROC/Process.c
	modified:   targets/SIMU/PROC/Process.h
	modified:   targets/SIMU/PROC/Tsync.h
	modified:   targets/SIMU/PROC/channel_sim_proc.c
	modified:   targets/SIMU/PROC/channel_sim_proc.h
	modified:   targets/SIMU/PROC/interface.h
	modified:   targets/SIMU/USER/channel_sim.c
	modified:   targets/SIMU/USER/cor_SF_sim.c
	modified:   targets/SIMU/USER/cor_SF_sim.h
	modified:   targets/SIMU/USER/event_handler.c
	modified:   targets/SIMU/USER/event_handler.h
	modified:   targets/SIMU/USER/init_lte.c
	modified:   targets/SIMU/USER/init_lte.h
	modified:   targets/SIMU/USER/oaisim.c
	modified:   targets/SIMU/USER/oaisim.h
	modified:   targets/SIMU/USER/oaisim_config.c
	modified:   targets/SIMU/USER/oaisim_config.h
	modified:   targets/SIMU/USER/oaisim_functions.c
	modified:   targets/SIMU/USER/oaisim_functions.h
	modified:   targets/SIMU/USER/oaisim_pad.c
	modified:   targets/SIMU/USER/sinr_sim.c
2016-09-14 15:04:55 +02:00
laurent
51c20a59f7 merge with harmony 2016-09-11 18:21:59 +02:00
lukashov
577d62c63a Changing round trial conditions in dlsim. 2016-09-10 11:55:14 +02:00
lukashov
5fda011043 1. Rician channel now operates with AoA 45 degrees.
2. Fixed a bug for HARQ rounds for TM1 frequency selective with PCE.
2016-09-05 12:36:09 +02:00
Xenofon Foukas
e29524a5fe Fixed bug when using DCCH2 2016-09-05 11:15:26 +03:00
Xenofon Foukas
343f338d3f Merge remote-tracking branch 'oai/develop' into oai-integration
Conflicts:
	cmake_targets/CMakeLists.txt
	maketags
	openair2/RRC/LITE/rrc_eNB.c
2016-09-03 00:17:59 +03:00
Xiwen JIANG
cf672ca016 temporary fix for exmimo2 build (no longer requires libboost) to be tested with USRP 2016-08-30 17:11:39 +02:00
Xiwen JIANG
6072a8b0ef Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7
Conflicts:
	targets/SIMU/USER/init_lte.c
	targets/SIMU/USER/oaisim_functions.c
2016-08-30 16:22:18 +02:00
Florian Kaltenberger
eac26b014f enabling deadline scheduler by default for EXMIMO2 2016-08-30 15:59:24 +02:00
Florian Kaltenberger
7707bacc37 Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-21-TM7
Conflicts:
	openair1/PHY/INIT/lte_param_init.c
2016-08-29 11:26:55 +02:00
Florian Kaltenberger
ecdf87f1ea Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-59-tm4 2016-08-29 11:25:01 +02:00
Xiwen JIANG
1f8c702fbb support more >1 EXMIMO2 cards 2016-08-25 17:44:16 +02:00
Xiwen JIANG
fc1e26d074 add VCD by function name for beam precoding and do_ofdm_l 2016-08-23 18:21:45 +02:00
Florian Kaltenberger
17a828e80f Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-59-tm4 2016-08-23 15:31:46 +02:00
Florian Kaltenberger
b8494221bd Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-21-TM7
Conflicts:
	openair1/PHY/INIT/lte_init.c
	openair1/PHY/INIT/lte_param_init.c
	openair1/PHY/INIT/lte_parms.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair2/RRC/LITE/MESSAGES/asn1_msg.c
	openair2/RRC/LITE/defs.h
	openair2/RRC/LITE/rrc_eNB.c
	targets/RT/USER/lte-softmodem.c
	targets/SIMU/USER/init_lte.c
2016-08-23 15:13:55 +02:00
Florian Kaltenberger
b635612305 Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-59-tm4 2016-08-23 11:08:44 +02:00
Florian Kaltenberger
f7989c5ce9 adding scheduling for TM4 (fallback to Alamouti for the moment) 2016-08-23 10:41:28 +02:00
Xiwen JIANG
394c4cab6a antenna number bug fixed 2016-08-22 20:06:13 +02:00
Xiwen JIANG
fd068005df cosmetic changes 2016-08-22 10:36:16 +02:00
Xiwen JIANG
f277acfef5 remove num_pdcch_symb from paramters of dp_OFDM_mod_l 2016-08-22 10:35:11 +02:00
Xiwen JIANG
bc9c4cfebc do_OFDM_mod_rt to perform on each symbol 2016-08-22 10:33:43 +02:00
Florian Kaltenberger
c2e106fe86 Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-59-tm4 2016-08-22 10:12:56 +02:00
Florian Kaltenberger
7098429e3a Merge branch 'enhancement-16-tm_rrc_reconfig' into feature-59-tm4
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair2/RRC/LITE/rrc_eNB.c
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.usrpb210.conf
2016-08-19 16:12:36 +02:00
Florian Kaltenberger
4d49b5d22b Merge branch 'develop' into feature-59-tm4 2016-08-19 11:33:30 +02:00
Xiwen JIANG
1cbb2c5caa memory allocation for calibration coefficients and dlsch ue spec bf weight 2016-08-18 19:08:51 +02:00
Xiwen JIANG
c590335798 Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-08-18 17:40:11 +02:00
Xiwen JIANG
0985080287 add tm7 tdd config file 2016-08-18 17:34:25 +02:00
Xiwen JIANG
e10ed0bec8 EXMIMO duplex mode always set to FDD 2016-08-18 17:30:12 +02:00
Xiwen JIANG
cc6ca6fc12 bug fixed for PSS and SSS generation 2016-08-18 17:29:03 +02:00
Florian Kaltenberger
7b114b08db adding functions to compute bf weights to dlsim 2016-08-18 14:22:14 +02:00
Florian Kaltenberger
341dde6729 Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-08-18 12:48:04 +02:00
Florian Kaltenberger
9f4a849115 added prototypes to compute beamforming weights 2016-08-18 12:46:02 +02:00
ignasj
d19b10ae06 LimeSDR 2016-08-17 11:43:05 +03:00
Florian Kaltenberger
876cee3a2c Merge branch 'develop' into enhancement-64-phy_test
Conflicts:
	openair1/SCHED/phy_mac_stub.c
2016-08-16 16:21:11 +02:00
laurent
e1d57b5312 Merge branch 'enhancement-10-harmony' into enhancement-10-harmony-lts 2016-08-16 08:59:03 +02:00
Laurent Thomas
e1aed5af9a fix nettle, gnutls to use latest API version, fix eth_raw interface with errno==EAGAIN 2016-08-16 08:42:35 +02:00
Xiwen JIANG
fdde582e92 bug fixed in pbch for nb_antennas_tx>1 2016-08-11 16:29:43 +02:00
Laurent THOMAS
d14ed1d58c merge with harmony main branch 2016-08-07 15:13:31 +02:00
Laurent THOMAS
6da3f494f4 update nettle to new interface, update deadline scheduler option (doesnt compile without this), update build/install script to use regular nettle and gnutls in ubuntu 16.04 (should also be fine with 14.04 up-to-date), update init_exmimo2 for ubuntu 16.04) 2016-08-05 15:26:36 +02:00
Xiwen JIANG
e3dbfa3dde some cleanup 2016-07-26 11:43:10 +02:00
Xiwen JIANG
987ffdd8a0 add ue spec channel estimation in UE RX procedure (TM7 works for DLSCH) 2016-07-25 14:25:22 +02:00
Xenofon Foukas
849639f3a2 Merge remote-tracking branch 'oai/develop' into oai-integration
Conflicts:
	cmake_targets/tools/build_helper
	openair1/SCHED/phy_procedures_lte_eNb.c
2016-07-25 12:46:12 +03:00
Xiwen JIANG
1b4adae54f change the MAX_CARDS to 16 2016-07-22 19:51:24 +02:00
Xiwen JIANG
79e8653f03 add read_F.c to openairinterface1/PHY/TOOLS 2016-07-15 16:52:08 +02:00
Xiwen JIANG
4763438131 bug fixed for ue_spec_bf_weights initialisation 2016-07-15 16:48:41 +02:00
Florian Kaltenberger
142c02a5b8 small fix in CMakeLists.txt to avoid inclusion of unwanted files 2016-07-12 11:18:05 +02:00
lukashov
ce15e0e97b Fixing warning and changing target precission to 10^(-2). 2016-07-08 10:49:53 +02:00
lukashov
8cc39130e0 Now dlsim computes throughput for both streams. 2016-07-08 01:46:54 +02:00
Xiwen JIANG
208e4d7e84 Merge branch 'feature-21-TM7' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-07-07 17:54:23 +02:00
lukashov
4e8e707951 Some more clean up + adding second option for a precoder. 2016-07-07 16:44:36 +02:00
lukashov
aa69c550e3 A bit of clean-up. 2016-07-07 14:26:00 +02:00
lukashov
b8e9e188c1 Merge branch 'develop' into feature-59-tm4 2016-07-06 15:47:45 +02:00
lukashov
51e8e0ade7 Fixing SIC receiver for all the combinations.
Introduced >>1 shift in SIC modulation for 64QAM to avoid overflow.
Shift is then compensated in llr computation.
2016-07-06 15:44:39 +02:00
Xiwen JIANG
a5b57ddce4 dci decoding procedure 2016-07-06 15:01:58 +02:00
Florian Kaltenberger
35bdc94092 fixing a few bugs after merge 2016-07-06 10:28:27 +02:00
Xiwen JIANG
08f73c72d8 resolve conflict when merge develop 2016-07-05 15:11:12 +02:00
Xiwen JIANG
802922dcf1 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-21-TM7 2016-07-05 11:22:46 +02:00
Florian Kaltenberger
7463f71b48 mostly bugfixes 2016-07-01 13:20:15 +02:00
Florian Kaltenberger
cd8cc1a35c added ue_transmission_mode and nb_antenna_ports to eNB config file
transmisison mode gets set with RRCReconfiguration
2016-07-01 13:19:18 +02:00
Xenofon Foukas
71c047d1ae Revert to single eNodeB for simulation 2016-06-29 12:32:19 +03:00
Xenofon Foukas
615da86332 Merge remote-tracking branch 'oai/develop' into oai-integration
Conflicts:
	cmake_targets/CMakeLists.txt
	cmake_targets/tools/build_helper
	targets/SIMU/USER/oaisim.c
2016-06-29 12:31:56 +03:00
Xiwen JIANG
224498cf3b add ue_TransmissionMode in RrcConfigurationReq 2016-06-24 18:13:02 +02:00
Xiwen JIANG
95808aec10 add ue_TransmissionMode in RrcConfigurationReq 2016-06-24 18:11:21 +02:00
Xiwen JIANG
7d7cbc57f8 set transmission mode in phy_config_dedicated_[UE|eNB] after RRCConnectionReconfiguration(eNB) and RRCConnectionReconfigurationComplete(UE) 2016-06-24 18:09:06 +02:00
Xiwen JIANG
6a8a551ef3 add beamforming_mode into generate eNB and UE dlsch parameters from DCI 2016-06-24 12:32:57 +02:00
Xiwen JIANG
4fa0810cdd add tm7 case into asn1 message 2016-06-24 12:20:38 +02:00
Florian Kaltenberger
b3fc3850d8 changing the way data is generated at eNB in --phy-test option 2016-06-23 15:14:01 +02:00
Florian Kaltenberger
cfc5ff209e Merge branch 'develop' into enhancement-64-phy_test 2016-06-23 15:13:14 +02:00
Xiwen JIANG
61a6b06129 distinguish beamforming mode in rx_pdsch for SI, RA and data 2016-06-22 11:09:24 +02:00
Florian Kaltenberger
2e2f6f9c20 transmission mode is now taken into account in RRC signalling
small bugfix in dlsch_demodulation
shunted out TM3-7 specific DCI generation in scheduler to enable basic operation. more work needed.
2016-06-21 15:33:57 +02:00
Xiwen JIANG
a04682d47a oaisim takes tx and rx antenna number from config file and transmission mode from the command line 2016-06-17 16:44:30 +02:00
Xiwen JIANG
5a40c9a8c7 bug fixed for dlsch_modulation input 2016-06-17 16:42:40 +02:00
Xiwen JIANG
81047e94af cosmetic changes 2016-06-17 16:41:21 +02:00
Xiwen JIANG
d7db5cdd57 merge ue_spec beamforming and cell_spec beamforming to beam_precoding 2016-06-15 17:54:13 +02:00
lukashov
c63abc0842 Fixing merge with develop 2016-06-15 16:01:15 +02:00
lukashov
199434b92c Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/PHY/LTE_TRANSPORT/proto.h
	openair1/SIMULATION/LTE_PHY/dlsim.c
2016-06-15 13:21:44 +02:00
Florian Kaltenberger
0d11b26337 Merge remote-tracking branch 'origin/develop' into enhancement-64-phy_test 2016-06-09 13:31:35 +02:00
Rohit Gupta
f5b368461b fixed a bug in initialization of DCI 2016-06-09 12:16:57 +02:00
Xiwen JIANG
b1f64b22a6 bug fixed for oarf_get_frame 2016-05-31 19:13:45 +02:00
Xiwen JIANG
719a94d2c4 add exmimo octave api env to TDD rec proj 2016-05-31 17:38:01 +02:00
Xiwen JIANG
7ca6a84e20 bug fixed for oarf_get_frame 2016-05-31 17:37:19 +02:00
Xiwen JIANG
d621de7fb3 enable TM7 in oaisim 2016-05-30 18:38:52 +02:00
Xiwen JIANG
b6e7f7ec51 tx_eNB -> ant_ports in oaisim 2016-05-30 17:58:31 +02:00
Xiwen JIANG
5370685740 Merge branch 'master' into feature-21-TM7 2016-05-30 17:13:09 +02:00
Dominique Nussbaum
7e03fe232e fixes for 20MHz 2016-05-26 15:47:57 +02:00
Xenofon Foukas
0f5b01457b Merge remote-tracking branch 'oai/develop' into oai-integration
Conflicts:
	openair1/SCHED/phy_procedures_lte_eNb.c
	openair2/LAYER2/MAC/eNB_scheduler.c
2016-05-17 13:18:09 +01:00
Xenofon Foukas
b9c9293144 Added support for multiple eNBs 2016-04-25 17:12:11 +01:00
Xenofon Foukas
07d30b2288 Fixed bug in the number of eNBs for the simulations 2016-04-25 17:11:27 +01:00
Xenofon Foukas
104ed9ade1 Added fixes for multiple eNBs and simulation mode 2016-04-25 17:09:53 +01:00
Xenofon Foukas
59ba6f9e7b Made config changes for remote scheduler and eNB 2016-04-20 13:41:49 +01:00
Florian Kaltenberger
66f494cbd7 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2016-04-20 09:55:42 +02:00
Florian Kaltenberger
c4f8163246 DEBUG flag will not work for realtime mode 2016-04-20 09:54:31 +02:00
lukashov
cc9a5ede96 Introdducing dlsch_64qam_llr_SIC. 2016-04-19 18:21:42 +02:00
Florian Kaltenberger
5615a75413 fixing previous merge 2016-04-19 17:04:09 +02:00
Florian Kaltenberger
2b213a0ccc Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/SIMULATION/LTE_PHY/dlsim.c
2016-04-19 15:50:05 +02:00
Florian Kaltenberger
41d973df1b Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2016-04-19 15:46:04 +02:00
lukashov
459913de55 changes are mostly related to:
1. Introducing dlsch_16qam_llr_SIC.
2. New writing files format in file_output.c
3. Some comments addded.
2016-04-18 20:08:54 +02:00
Xenofon Foukas
bcea7d5917 Fixed local scheduler bug when scheduling multiple UEs 2016-04-18 13:05:36 +01:00
Xenofon Foukas
bad4b7940a Fixed bug when delegating control when delegated lib was previously NULL 2016-04-15 12:17:36 +01:00
Xenofon Foukas
673ef5fa7a Modified active harq reporting mechanism to support long schedule ahead of time values 2016-04-14 15:13:15 +01:00
Xenofon Foukas
d4fd08785d Modified eNB conf file for USRP to use 50 rbs 2016-04-14 14:51:00 +01:00
Xenofon Foukas
345a9382f2 Fixed bug of local agent scheduler that did not allow the retransmission in HARQ processes 2016-04-14 14:50:22 +01:00
Xenofon Foukas
a47f3654f8 Added basic support for policy reconfiguration using yaml parser 2016-04-12 13:00:20 +01:00
Xenofon Foukas
dd2e208361 Added protocol support for agent policy reconfiguration 2016-04-12 12:56:55 +01:00
Xenofon Foukas
9c9d3f4580 Added build support for packages required for the agent-enabled eNB 2016-04-12 12:56:13 +01:00
Florian Kaltenberger
663a5f44f5 Merge remote-tracking branch 'origin/develop' into feature-59-tm4 2016-04-12 12:38:17 +02:00
Xenofon Foukas
5dbae26032 Merge branch 'feature-68-enb-agent' into agent-performance 2016-04-11 11:39:44 +01:00
Xenofon Foukas
6b15195ac5 Added statistics for total and missed scheduling deadlines of remote scheduler 2016-04-07 09:28:35 +01:00
Xenofon Foukas
60b7e425df Merge remote-tracking branch 'origin/feature-68-enb-agent' into agent-performance 2016-04-06 13:35:06 +01:00
Xenofon Foukas
7236e3ca17 Bugfixes to improve stability 2016-04-06 13:34:37 +01:00
Xenofon Foukas
46b1280a5e Merge remote-tracking branch 'oai/develop' into feature-68-enb-agent 2016-04-06 08:50:09 +01:00
Xenofon Foukas
224ec7c4a1 Merge remote-tracking branch 'origin/develop' into agent-performance 2016-04-04 10:49:35 +01:00
Xenofon Foukas
abcdd194ff Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2016-04-04 10:49:02 +01:00
Xenofon Foukas
f545a225a4 Merge remote-tracking branch 'oai/develop' into develop 2016-04-04 10:48:14 +01:00
Xenofon Foukas
985a2ec261 Merge remote-tracking branch 'oai/develop' into feature-68-enb-agent 2016-03-31 11:08:02 +01:00
Florian Kaltenberger
f5c798e48c transmission mode is now taken into account in RRC signalling
small bugfix in dlsch_demodulation
shunted out TM3-7 specific DCI generation in scheduler to enable basic operation. more work needed.
2016-03-31 11:34:32 +02:00
Xiwen JIANG
3c7f2ff3ce fill dci for TM7 2016-03-25 09:19:34 +01:00
lukashov
5416a6f8d7 Merge branch 'develop' into feature-59-tm4 2016-03-24 09:55:50 +01:00
lukashov
25796d27a1 Fixing the way bler is computed for SIC receiver 2016-03-24 09:52:34 +01:00
Xenofon Foukas
a226423258 Merge remote-tracking branch 'oai/develop' into agent-performance 2016-03-22 17:18:33 +02:00
Xenofon Foukas
891cd96638 Merge remote-tracking branch 'oai/develop' into feature-68-enb-agent 2016-03-22 17:15:54 +02:00
Xenofon Foukas
f97edfd04d Merge remote-tracking branch 'oai/develop' into develop 2016-03-22 17:04:26 +02:00
Xiwen JIANG
42ffffd902 Merge branch 'develop' into feature-21-TM7 2016-03-21 17:26:07 +01:00
Xiwen JIANG
9fcca73f53 lte softmodem adaption for massive antennas (not complete) 2016-03-21 16:55:26 +01:00
Xiwen JIANG
9fca33136d move symbol level ifft including beamforming into ofdm_mod.c 2016-03-21 16:53:35 +01:00
Xiwen JIANG
e196f5fcfb bug fixed in beamforming.c 2016-03-21 16:52:03 +01:00
lukashov
978a7a627e Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/PHY/TOOLS/lte_phy_scope.c
2016-03-21 15:31:19 +01:00
lukashov
6eea200c35 in dlsim ret, aver_iter, iter_trials are now arrays to be used for 2 cw independently;
+ small bug fix in dlsim related to sic cw.
2016-03-21 15:21:09 +01:00
Xenofon Foukas
aa50fcf02a Fixed HARQ reporting to agent and changed sf trigger to report the upcoming subframe 2016-03-18 19:42:38 +00:00
Xenofon Foukas
7481959647 Added agent config file for band7 usrbb210 2016-03-18 19:38:55 +00:00
lukashov
291a7f1752 1. Changing precoder to minimize interference: testing simple channels.
2. Fixing confusion between dl_ch_rho2_ext and dl_ch_rho_ext[harq_pid][round].
2016-03-18 12:00:49 +01:00
Xiwen JIANG
06c4b91b61 move beamforming function to PHY/MODULATION folder 2016-03-17 10:28:06 +01:00
lukashov
127fa9ae37 Fixing bug in modulation_SIC: initially setting re_allocated to 0. 2016-03-16 18:10:07 +01:00
lukashov
4573c0b962 Changes for SIC-receiver:
1. in dlsim.c: now we check for the receiver type and, if SIC,  proceed through encoding, modulation, LLR compuattion and decoding
of the decoded TB0.
2. Implementing routines for vector-vector multiplication and vector-vector subtraction
3. Adding some printouts for debuging purposes.
4. New functions: modulation_SIC, dlsch_qpsk_llr_SIC
5. In phy_scope.c: changing llr plotting: now for the length of coded_bits_per_cw.
2016-03-16 16:05:09 +01:00
Xenofon Foukas
7ab320d923 Prevent timing advance update to be sent without payload 2016-03-16 13:40:46 +00:00
Xenofon Foukas
c77fb6479e Changed timing of continuous MAC statistics to be reported at the end of the subframe 2016-03-16 11:49:07 +00:00
Xenofon Foukas
ef22a539aa Added more checks when applying dci decisions in the dataplane, to reduce RLC request misses 2016-03-16 11:48:18 +00:00
Xenofon Foukas
c2971d5176 Added tcp_nodelay option in agent async interface 2016-03-15 17:25:44 +00:00
Xenofon Foukas
43b63be53a Added nb_rb and oldNDI in template to be used for retransmissions 2016-03-14 11:42:04 +00:00
Xenofon Foukas
1b972a5537 Merge remote-tracking branch 'remotes/oai/develop' into feature-68-enb-agent 2016-03-10 14:41:50 +00:00
Xenofon Foukas
c844f0aa25 Merge remote-tracking branch 'remotes/oai/develop' into develop 2016-03-10 14:39:32 +00:00
Xenofon Foukas
3251cf792c Added shared libs for control delegation 2016-03-10 14:12:47 +00:00
Xenofon Foukas
e88c4d97cf Code cleanups for control delegation and API 2016-03-10 10:57:44 +00:00
Florian Kaltenberger
c7828888ab small fix 2016-03-09 20:36:06 +01:00
Florian Kaltenberger
160f5e0786 Merge remote-tracking branch 'origin/develop' into feature-59-tm4
Conflicts:
	openair1/SIMULATION/LTE_PHY/dlsim.c
2016-03-09 20:35:57 +01:00
Xenofon Foukas
3a1f3df882 Added OAI priority to send and receive thread of agent 2016-03-09 13:13:03 +00:00
Xenofon Foukas
34db5f2003 Moved agent async interface to lock-free implementation using lock-free ringbuffer 2016-03-09 12:19:16 +00:00
Mohamed Kassem
8b28344448 Temporary fix for bug in reporting number of initial pdcch symbols of cell and band5 configuration file for agent 2016-03-08 18:15:52 +00:00
Xenofon Foukas
ff5b585446 Added check for ignoring empty mac dl config messages 2016-03-08 12:58:44 +00:00
Xenofon Foukas
2a5a389f7d Improved stability and eNB goodput of remote scheduling 2016-03-07 16:27:32 +00:00
Xenofon Foukas
0dc76931c6 Fixed bug in HARQ status reporting 2016-03-07 12:37:46 +00:00
Xenofon Foukas
fc569650ce Fixed problem with sfn_sf recoding in remote scheduler 2016-03-07 10:02:40 +00:00
lukashov
cd17018ec7 Merge branch 'develop' into feature-59-tm4 2016-03-05 19:47:49 +01:00
Xenofon Foukas
26bdf50109 Added bugfixes for remote scheduling 2016-03-04 15:46:31 +00:00
Xenofon Foukas
93b7cf05e8 Fixed linking error with creation of empty dl_mac_config 2016-03-04 10:54:11 +00:00
Xenofon Foukas
06b55e3fba Fixed bug in creation of ul_cqi_report 2016-03-04 10:19:34 +00:00
Xenofon Foukas
47d3d77322 Added updates in the dataplane based on dl_mac_config message 2016-03-04 10:04:29 +00:00
lukashov
cdbc4baa58 Fixing rho for qpsk_qpsk in demodulation.c
Still need to caliibrate shifts -J.
2016-03-03 23:00:12 +01:00
Xenofon Foukas
d24f532396 Fixed bug in de-allocation of p0_pucch report 2016-03-03 19:49:51 +00:00
Xenofon Foukas
d153208fc0 Added p0_PUCCH support in the agent 2016-03-03 17:39:10 +00:00
lukashov
20cc8bc9f6 Fixing FDD for TM4 2016-03-03 16:35:50 +01:00
Xenofon Foukas
a576127c49 Added temporary values in protocol for PUCCH power control 2016-03-03 15:17:19 +00:00
Xenofon Foukas
ad74bb0247 Fixed enums issue and update time advance API function 2016-03-03 15:05:54 +00:00
lukashov
1843ef7928 Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/PHY/TOOLS/lte_phy_scope.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
2016-03-02 16:19:19 +01:00
lukashov
c1f4953008 Fixing new modulation tables for TM4 and TM6. Now all modulation orders and combinations work and the maginutes are at appropriate level. 2016-03-02 11:02:05 +01:00
Xiwen JIANG
71b7693429 change back 'p' and 'q' options for dlsim 2016-03-01 15:41:07 +01:00
Xiwen JIANG
bbd125a778 bug fixed for ULSIM 2016-03-01 15:40:43 +01:00
Xenofon Foukas
4a04aeb2aa Fixed bug in decoding frame and subframe number from sfn_sf field 2016-03-01 13:08:29 +00:00
Florian Kaltenberger
b46c6b700b previous bugfix for dl_power_off in TM3 was incomplete 2016-03-01 12:08:59 +01:00
Florian Kaltenberger
7f645f9f34 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2016-03-01 11:41:04 +01:00
Florian Kaltenberger
d988214e01 debug info for power control 2016-03-01 11:40:34 +01:00
lukashov
04b07f8bd3 Fixing bug with dl_offset in TM3. Always must be 1. 2016-03-01 11:08:45 +01:00
Xiwen JIANG
e3e30fbf07 add tm7 eNB config file 2016-02-29 18:16:12 +01:00
Xiwen JIANG
ea13be85b9 enable n_tx=8 in dlsim.c 2016-02-29 17:49:33 +01:00
Xiwen JIANG
f02e6ca526 add beamforming function 2016-02-29 17:15:26 +01:00
Xiwen JIANG
c7c9da4296 cosmetic changes to enable multiple antenna transmission 2016-02-29 14:53:15 +01:00
lukashov
0022ccf790 Revert "Adding different shifts for CWs coming from dif constellations"
Streams must have the same shift, otherwise error floor. O
This reverts commit dbf587a515.
2016-02-29 12:32:51 +01:00
Xenofon Foukas
08783ca6d2 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2016-02-27 16:53:09 +00:00
Xenofon Foukas
ac8b74ef4a Merge branch 'agent' into feature-68-enb-agent 2016-02-27 16:31:22 +00:00
Xenofon Foukas
a022eaf6b2 Merge remote-tracking branch 'oai/develop' into develop 2016-02-27 16:28:41 +00:00
Xenofon Foukas
a8d646b108 Added agent support for remote scheduler 2016-02-26 17:30:54 +00:00
Xenofon Foukas
f47f596a1f Added support for liblfds7 2016-02-26 13:31:13 +00:00
Xenofon Foukas
197726ce61 Fixed memory leaks in sf and mac config messages 2016-02-25 13:55:19 +00:00
Xenofon Foukas
24785b3a61 Fixed bugs in API function calls for UE config 2016-02-25 01:06:04 +00:00
Xenofon Foukas
9bbc22f496 Added UE state change message support 2016-02-24 18:28:32 +00:00
Xenofon Foukas
a5fd618770 Fixed bug of wrong rnti value when finding it using the UE id 2016-02-24 17:33:49 +00:00
Xenofon Foukas
4c7d1e0381 Added support for indication of a UE state in both RRC_CONNECTED and RRC_RECONFIGURED STATES 2016-02-24 17:31:13 +00:00
Xenofon Foukas
f84568e171 Bug fix when checking for the LCG of an LC 2016-02-24 14:40:03 +00:00
Xenofon Foukas
fffb682f7a Added continuous update support 2016-02-24 14:38:44 +00:00
Xenofon Foukas
906e90727e Fixed LC config reporting based on existing LCs 2016-02-24 12:47:24 +00:00
Xenofon Foukas
a637957c7c Moved UE activation notification to RRC 2016-02-24 12:46:22 +00:00
Xenofon Foukas
00b158829f Fixed bug in UE configuration message 2016-02-23 17:57:22 +00:00
Xenofon Foukas
e1d1b0baff Added event notification for connection of a new UE 2016-02-23 17:53:43 +00:00
Xenofon Foukas
0ec3cfdf04 Added UE and LC config API function calls 2016-02-23 14:18:49 +00:00
Xenofon Foukas
4672497206 Added support for DL UE scheduler control delegation 2016-02-23 12:56:09 +00:00
Xenofon Foukas
25e5e3b837 Added script to automatically create cache for agent 2016-02-23 11:08:14 +00:00
Xenofon Foukas
d8cc6d95e6 Added support for control delegation and dynamic loading of libraries 2016-02-23 10:47:08 +00:00
Xenofon Foukas
7dd05df4ea Added configuration support for local cache 2016-02-23 10:29:53 +00:00
lukashov
dbf587a515 Adding different shifts for CWs coming from dif constellations 2016-02-22 23:39:36 +01:00
lukashov
193ab717fa Fix channel level 2016-02-22 22:49:34 +01:00
lukashov
f922b493a6 Bug in modulation.c with new qam tables. Error floor for 16QAM and 64QAM. Going back to old ones till fix the bug. 2016-02-22 22:43:47 +01:00
Xiwen JIANG
71f6467581 adaption for lte-softmodem compilation 2016-02-22 17:28:50 +01:00
Xenofon Foukas
02686ce804 Added temporary notification for the deactivation of a UE in the MAC 2016-02-22 15:29:10 +00:00
Xenofon Foukas
95d51446f8 Added ue_state_change stub implementation 2016-02-22 15:25:27 +00:00
Xenofon Foukas
465168d2af Integrated sf triggering to MAC layer and fixed bugs in creation of sf trigger message 2016-02-22 14:45:39 +00:00
Xenofon Foukas
991e995027 Changed get_harq function to provide both id and status at once 2016-02-22 14:08:11 +00:00
Xenofon Foukas
e6e117a567 Implemented LC config reply message 2016-02-22 13:08:26 +00:00
MKassem
591cb51a2d Added sf trigger API functions
Signed-off-by: Xenofon Foukas <x.foukas@sms.ed.ac.uk>
2016-02-22 12:12:23 +00:00
Xenofon Foukas
1caa45ad4b Integrated UE state messages to agent 2016-02-22 12:05:17 +00:00
Xenofon Foukas
b523682af0 Added support for UE state change message 2016-02-22 11:55:46 +00:00
Xenofon Foukas
7b1ee53a4e Implemented UE config message (dummy) 2016-02-22 11:26:52 +00:00
Xenofon Foukas
b6c9a4a713 Merge branch 'develop' into feature-68-enb-agent
Conflicts:
	cmake_targets/CMakeLists.txt
	openair2/ENB_APP/enb_config.c
	openair2/ENB_APP/enb_config.h
2016-02-21 22:02:06 +00:00
Xenofon Foukas
93cf1b1df7 Fixed bug in assignment of enb_config_request_message 2016-02-21 21:39:22 +00:00
MKassem
08e25bf397 Added eNB configuration message
Signed-off-by: Xenofon Foukas <x.foukas@sms.ed.ac.uk>
2016-02-21 21:35:44 +00:00
Xiwen JIANG
6fc604d182 conflict resolve for pdcchsim.c 2016-02-19 18:17:43 +01:00
Xiwen JIANG
3d2a1abb35 Merge branch 'develop' into feature-21-TM7 and conflict resolve 2016-02-19 17:43:03 +01:00
Xenofon Foukas
258a71ffbd Fixed direction of hello message, as a reaction to controller stimulation 2016-02-19 13:55:29 +00:00
Xenofon Foukas
cb8b6db577 Fixed bug in periodic reporting, where ue flags were reset 2016-02-19 13:37:52 +00:00
Xenofon Foukas
b64cb5b250 Added rank indication and timing advance indication support 2016-02-10 18:07:35 +00:00
Xenofon Foukas
a663654418 Patch to get tx_queue size from RLC for the LCs of a UE 2016-02-10 13:41:56 +00:00
Xenofon Foukas
8aff18aed5 Fixed bug with toggling the NDI for DL HARQ retransmissions 2016-02-09 17:53:49 +00:00
Xenofon Foukas
2de0b9b5e1 Merge branch 'develop' into feature-68-enb-agent 2016-02-09 13:48:02 +00:00
Xenofon Foukas
ff72fbc6bc Integrated progRAN config messages to OAI agent and created stubs for handler and destructor functions 2016-02-09 13:33:48 +00:00
Xenofon Foukas
a0289d74fa Added support for eNB, cell, UE and logical channel configuration messages to the progRAN protocol 2016-02-09 13:03:31 +00:00
Navid Nikaein
bb87425898 add eNB agent libs to lte-softmodem 2016-02-06 09:31:33 +01:00
Xenofon Foukas
a404bfd96c Refactored eNB agent scheduler code to improve readability 2016-02-04 17:32:37 +00:00
Xenofon Foukas
b784e6bd64 Refactored code to improve readability in fill_oai_dci function 2016-02-04 13:29:05 +00:00
Xenofon Foukas
e3aa8400d4 Added support for progran dl_mac_config message destruction 2016-02-04 11:28:54 +00:00
Xenofon Foukas
db255c130d Added definitions for the mac agent scheduler 2016-02-04 11:28:22 +00:00
Xenofon Foukas
e8f4e4e01f Separated control from data plane in MAC agent scheduler 2016-02-03 17:44:20 +00:00
Xenofon Foukas
3d3c0c7c03 Bug fixes for UE retransmission 2016-02-03 15:39:51 +00:00
Xenofon Foukas
fd09bd61bf Fixed bug with NDI toggling 2016-02-03 14:27:17 +00:00
Xenofon Foukas
a8cd23944f Progran scheduler fixes 2016-02-02 19:18:42 +00:00
Xenofon Foukas
07edce1712 Changes to the progran default scheduler 2016-02-02 16:39:39 +00:00
Xenofon Foukas
afdc20a91b Merge branch 'develop' into feature-68-enb-agent 2016-02-02 09:51:39 +00:00
Xenofon Foukas
ab0e4aadae Reintroduced support for agent scheduler after merge with develop 2016-02-01 17:20:35 +00:00
Xenofon Foukas
a91a25c972 Changed signature of DL scheduling function of agent 2016-02-01 11:38:07 +00:00
Xenofon Foukas
64a02f3b67 Merge remote-tracking branch 'origin/develop' into feature-68-enb-agent 2016-01-31 18:15:36 +00:00
Xenofon Foukas
cdb3e36b99 Fixes to merge with develop 2016-01-31 18:13:05 +00:00
Xenofon Foukas
cb8007bb31 Added support for enb agent MAC scheduler hot-plugging. Deactivated schedule_ue_spec and added agent UE specific DL scheduler 2016-01-28 14:45:47 +00:00
Xenofon Foukas
92f547655c Integrated MAC DL config progran message to agent 2016-01-27 12:54:33 +00:00
Xenofon Foukas
c1c9b0bcbe Added support for DL scheduling command messages 2016-01-27 12:01:37 +00:00
lukashov
bca0b40679 Small changes in precoder to max MI 1stream 2016-01-24 16:44:33 +01:00
Xenofon Foukas
3df4cbae6b Merge branch 'feature-68-enb-agent' of gitlab.eurecom.fr:oai/openairinterface5g into feature-68-enb-agent 2016-01-22 16:29:57 +00:00
Xenofon Foukas
16bbb96d5b Added continuous update functionality in the MAC layer 2016-01-22 16:29:21 +00:00
Xenofon Foukas
e3e01a64c9 Added continuous update functionality in the MAC layer 2016-01-22 16:28:44 +00:00
Xenofon Foukas
3ad4d26fd1 Changed the structures for storing agent context info 2016-01-22 16:26:06 +00:00
Xenofon Foukas
dec1c93c3d Changed channel struct for async_channel implementation 2016-01-22 16:18:54 +00:00
lukashov
9410e89310 Small change in measurements: while calculating pmi take into account ch_12[1] as well. 2016-01-22 11:52:51 +01:00
Xenofon Foukas
a054eb8139 Added helper functions for the continuous update of MAC stats 2016-01-21 15:27:52 +00:00
lukashov
c453384e97 Small improvement in correlation 2016-01-20 16:29:07 +01:00
lukashov
c7d2bbe513 avg_0[0] = avg_0[0] + avg_0[1];
avg_1[0] = avg_1[0] + avg_1[1];
Diff per-layer shift
2016-01-20 16:08:54 +01:00
Xenofon Foukas
78bc736c19 Fixed frame-subframe numbering bug 2016-01-19 14:51:20 +00:00
Xenofon Foukas
1f52063065 Merged UL/DL trigger messages to a single SF trigger message 2016-01-19 11:11:05 +00:00
Xenofon Foukas
876d9eac52 Fixed bug when creating cell report stats reply 2016-01-19 10:12:48 +00:00
lukashov
56c660dbe9 Undoing previos commit. Previous commit is kept to generate TM4 PCE AWGN plots with the right precoder. 2016-01-18 22:55:47 +01:00
lukashov
e60c6e3f84 This commit is to generate TM4 awgn with perfect channel estimation with the right precoder.
To be reverted after.
2016-01-18 21:09:59 +01:00
lukashov
dcf4473284 Coming back to
avg_0[0] = avg_0[0] + avg_0[1];
  avg_1[0] = avg_1[0] + avg_1[1];
  avg_0[0] = max (avg_0[0], avg_1[0]);
  avg_1[0] = avg_0[0];
2016-01-18 18:04:54 +01:00
lukashov
b6ac32b0db Chosing the max channel among the four and passing same shift everywhere. 2016-01-17 16:50:53 +01:00
lukashov
071db178eb avg_0[0] = max(avg_0[0],avg_0[1]);
avg_1[0] = max(avg_1[0],avg_1[1]);
2016-01-17 02:29:14 +01:00
lukashov
f703b8e1c5 Playing with average channel level: avg_0[0] = max(avg_0[0],avg_1[0]);
avg_1[0] = max(avg_0[1],avg_1[1]); taking this into account in correlation.
2016-01-17 00:39:39 +01:00
lukashov
f415d7118d Applying output shift on per-antenna basis in demodulation 2016-01-16 12:49:58 +01:00
Xenofon Foukas
5cec297209 Implemented handlers for the UL/DL trigger messages 2016-01-15 18:07:42 +02:00
Xenofon Foukas
2fbe01e15f Added support for timing messages in DL/UL 2016-01-15 16:38:37 +02:00
Xenofon Foukas
ed7e13c6eb Integrated abstract network communication in main agent 2016-01-15 14:31:21 +02:00
Xenofon Foukas
8fde111b93 Channel implementation for async interface 2016-01-15 14:30:02 +02:00
lukashov
98b91e1d4c Improving previous commit 2016-01-14 22:14:24 +01:00
lukashov
7b5165c70a Small change in log2_approx in demodulation 2016-01-14 21:05:56 +01:00
Xenofon Foukas
e6762ffe1f Added support for multiple eNBs in an emulation environment 2016-01-14 19:10:27 +02:00
Xenofon Foukas
dbcf482f07 Added eNB agent abstract network interface support 2016-01-14 17:46:06 +02:00
lukashov
b00f64ed56 1)Removing dlsch_dual_stream_correlation
2) Fixing bug in mrc_TM4 - removing loop over tx antennas.
2016-01-14 10:55:49 +01:00
lukashov
10e8d30699 NULL pointer 2016-01-13 23:54:25 +01:00
lukashov
fa315a3115 Fixing bug in passing arguments to dlsch_dual_stream_correlation, introducing dlsch_dual_stream_correlation_opposite 2016-01-13 18:54:03 +01:00
lukashov
e2d13c9762 Revert "Experimanetal change in dlsch_channel_commensation_TM34. Will not work for more than 2 antennas."
This reverts commit cbd30e62fa.
2016-01-13 14:43:47 +01:00
lukashov
aaccaf9796 Revert ":q#"
This reverts commit 83324945ad, reversing
changes made to cbd30e62fa.
2016-01-13 14:43:16 +01:00
lukashov
83324945ad :q# 2016-01-13 12:46:40 +01:00
lukashov
cbd30e62fa Experimanetal change in dlsch_channel_commensation_TM34. Will not work for more than 2 antennas.
Testing.
2016-01-13 12:17:29 +01:00
Xenofon Foukas
22d0f60e12 Added support for creation of SR protocol messages and defined initial MAC-Agent interface 2016-01-12 18:08:57 +02:00
Xenofon Foukas
694a5bb1b5 Changed the function signature for handling the packing of protocol messages 2016-01-12 18:03:38 +02:00
Xenofon Foukas
a8dabcefea Added support for UL SR info type in the header of progRAN messages 2016-01-12 17:58:09 +02:00
Xenofon Foukas
3ce2ba4e5d Added support for scheduling requests messages 2016-01-12 14:24:31 +02:00
lukashov
432a889cc0 Stupid check if do not divide by 2 the aver level 2016-01-11 16:27:58 +01:00
lukashov
5e1e8a58a7 Fixing previous commit 2016-01-11 16:12:21 +01:00
lukashov
e5a94ee6dd Exchanging rho for thr first stream and for the second in qpsk_qpsk_llr 2016-01-11 16:04:10 +01:00
lukashov
42eeb9d65e New attempt to scale IA receiver 2016-01-11 15:53:13 +01:00
lukashov
e4dec0771c Another change for aver level: now log2aaprox(ch11/2) + log2approx(ch21/2) -13 +shift 2016-01-11 15:04:03 +01:00
Xenofon Foukas
a9a67824dd Added API functions for eNB agent - technology interaction 2016-01-11 14:58:31 +02:00
lukashov
388452f1bc For in demodulation TM4 trying average as a sum of energy in both antennas.
Changing names of output files in dlsim respectiively.
2016-01-11 11:10:04 +01:00
lukashov
73382b8284 Validating abstraction.c with a hotfix. 2016-01-08 16:54:06 +01:00
lukashov
a5f9c92507 Merge remote-tracking branch 'origin/hotfix-71-freq_channel' into feature-59-tm4
Conflicts:
	openair1/PHY/TOOLS/cdot_prod.c
	targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.usrpb210.conf
2016-01-08 16:33:14 +01:00
lukashov
d0fac35f68 Preparing to merge with hotfix-71-freq_channel, running with old version of abstrcation.c 2016-01-08 16:13:09 +01:00
lukashov
bbb369a937 Small bugfix for TM5 and TM6 2016-01-08 15:53:41 +01:00
lukashov
42eb48faa7 Fixing previous commit: messed up with parenthesis in dlsch_demodulation.c 2016-01-08 15:32:53 +01:00
Xenofon Foukas
2ef32ad9bc Added support for turning off periodical timer tasks 2016-01-08 15:59:24 +02:00
Xenofon Foukas
3e2adfbcbc Fixed bug to allocate memory in the stack instead of dynamically for the timer search key 2016-01-08 12:53:34 +02:00
Xenofon Foukas
11b2f82936 Integrated timer to work with periodic report messages and agent tasks 2016-01-07 17:41:51 +02:00
lukashov
b80a6660bf Some more clean up in dlsch_demodulation.c 2016-01-07 13:50:45 +01:00
lukashov
3521765b62 Changes:
1. Fixing a bug in dlsch_channel_level_TM56.
avg128D = _mm_setzero_si128() must be done inside the rx_antennas loop and not before

2. Cleaning up code in dlsch_demodulation.c

3. Offsets for TM5 and TM6 still must be validated.

4. Right now IA and I-UA receivers for TM4 have the same offset -
validate if any additional penalty/gain is needed.

5. Shortened file names in dlsim.c since matlab can read only 63-characters file names.

6. Tested: TM4 U2 -gS perfect CE works fine for EESM and MIESM abstraction (MCS 4 MSE= 0.007 dB on both streams).
2016-01-07 11:47:14 +01:00
Xenofon Foukas
e88779c4ef Added support for lightweight finegrained task timer 2016-01-06 18:06:48 +02:00
Xenofon Foukas
e78075e831 Integrated task manager with system frame and subframe clock and added support for one task queue per eNB 2016-01-06 16:22:59 +02:00
lukashov
80cb191214 Now channel-level dependent part of log2_approx works properly.
Validating mcs-dependent shift.
2016-01-06 13:07:10 +01:00
Xenofon Foukas
e0c459be75 Changed handlers not to require the xid in their signature. Containted in the received message, or generated in them 2016-01-06 11:57:03 +02:00
lukashov
3262bfa66e Fixing dlsch_channel_level_TM34.
Passing 2 avrage channel lvel and not max how it was done before.
Continuing with calibration.
2016-01-06 10:38:47 +01:00
Xenofon Foukas
3bc88cfd11 Fixed agent to support proper frame and subframe reporting in progRAN messages 2016-01-05 21:52:05 +02:00
Xenofon Foukas
99cf3b654a Added functions to get the current frame and subframe 2016-01-05 21:30:55 +02:00
lukashov
4031335617 Changing names of the files in dlsim.c 2016-01-05 20:24:12 +01:00
Navid Nikaein
f2f0e68f9d Fix the bug in the RB tree, and sanity test for the timer API 2016-01-05 19:26:45 +01:00
lukashov
7a8e3a421c Commit to compare -u0 and -u2 performance in interference free environment for
TM4 and verify if any additional gain/penatly is needed.
2016-01-05 15:27:15 +01:00
Xenofon Foukas
f7d591f150 Created task manager support for agent messages in the for of a priority queue 2016-01-05 13:57:52 +02:00
Navid Nikaein
1f213b0b8e * add options to enb configuration file for the enb agent
* add timer api for the periodic and oneshot operations
* create enb agent task
2016-01-05 11:33:40 +01:00
lukashov
73c76d1456 Small changes in dataout file names. 2016-01-05 11:11:35 +01:00
lukashov
fa64a12850 Applying channel scaling for TM4, playing with log2approx in demodulation 2016-01-05 00:25:23 +01:00
lukashov
ef3991d461 Minor change in dlsch_demod. 2016-01-04 16:58:32 +01:00
lukashov
6e839bf82c Minor change in dlsim.c 2016-01-04 15:31:49 +01:00
lukashov
404814f706 In demod removing -13 to play with absolute value of shift 2016-01-04 15:30:02 +01:00
lukashov
eeaf2c1596 Cleaning up some comments 2016-01-04 14:54:13 +01:00
lukashov
fe702e469d Minor change in dlsch_demod 2016-01-04 14:37:26 +01:00
lukashov
170291413d Going back to fixed shift in log2_approx for TM4. Playing with computing the channel average in order to find optimal shift. 2016-01-04 14:33:01 +01:00
Navid Nikaein
48ddbc6805 Merge branch 'feature-68-enb-agent' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-68-enb-agent 2016-01-01 20:06:55 +01:00
Navid Nikaein
e42dd36967 update the itti timer 2016-01-01 20:05:15 +01:00
Xenofon Foukas
e5e58ec2f4 Fixed mac stats handler for periodic and continuous stats updates 2015-12-29 15:43:42 +02:00
Xenofon Foukas
b9cf840a10 Created callback mechanism for destruction of protocol messages sent by the agent 2015-12-28 15:25:27 +02:00
Xenofon Foukas
0bea0aafc4 Restructured statistics handler to consider the request message parameters 2015-12-23 15:29:28 +02:00
Xenofon Foukas
7241aa6a38 Added support for parameters in handlers 2015-12-23 12:17:52 +02:00
Xenofon Foukas
4f618d6170 Fixed some bugs that would lead to segfaults and modified to support changes in protocol 2015-12-22 17:08:16 +02:00
Xenofon Foukas
d5830ced24 Allow only a single instance of the eNB agent 2015-12-22 17:06:37 +02:00
Xenofon Foukas
915af964f4 Fixed top-level message field msg_dir to be optional 2015-12-22 17:04:18 +02:00
lukashov
9c41f88a56 Improving previuos commit: awgn TM4 for perfect CE. 2015-12-21 12:05:40 +01:00
Navid Nikaein
17251ddaac Very basic version of the enb agent 2015-12-21 03:36:37 +01:00
lukashov
b21b87df28 Fixing perfect channel estimation for TM4 2015-12-18 17:08:21 +01:00
lukashov
e44851306d 1.Fixing a bug with qam tables in dlsch_demodulation.c for tm4.
2.Fixing shift LUT for TM1. Mcs 21, 26 and 28 show erroneous performance. (see attachement in commit)
2015-12-17 15:33:27 +01:00
Xenofon Foukas
0dee574c57 Changed prp_stats_reply message to support multiple UE and cell reports 2015-12-17 11:37:18 +02:00
Navid Nikaein
988b483ab0 * automatic generation of protobuf messages in CMakeList.txt 2015-12-16 16:53:37 +01:00
lukashov
513ed46e56 Calibrating offset for TM1 and introducing LUT interf_unaw_shift_tm1_mcs. LUT valid for mcs<=13,
to be completed in the next commit.
2015-12-16 15:46:56 +01:00
Navid Nikaein
bd1de293c6 Merge branch 'feature-68-enb-agent' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-68-enb-agent 2015-12-16 15:43:10 +01:00
lukashov
877d7b3bf9 Fixing global shifts 2015-12-16 13:43:50 +01:00
lukashov
1673ba3dfb Fix global var for shift 2015-12-16 12:51:43 +01:00
Navid Nikaein
183e105f87 update CMakeLists--generate .c files for protobufs 2015-12-16 11:58:48 +01:00
lukashov
d6503bdd47 typo 2015-12-15 23:21:13 +01:00
lukashov
c2460ee36a Verifying if offset LUT for TM4 works for TM1. -J is responsible for shift. 2015-12-15 23:14:08 +01:00
Xenofon Foukas
5f1f1abe3f Added header in messages and removed length field 2015-12-15 22:47:08 +02:00
Navid Nikaein
694718963a * script for automatic generation of protobug messages 2015-12-15 19:46:52 +01:00
Navid Nikaein
7ccf7a917f * add protobuf messages and compliation directives 2015-12-15 19:44:12 +01:00
lukashov
51af1a19f0 Now BLER goes to 10^(-2) in case of abstraction and 10^-3 in regular mode. 2015-12-15 16:09:53 +01:00
lukashov
2b41586884 Introducing different shifts for channel compensation log2_maxh0 and log2_maxh1 as well as mcs-dependent offset coefficients interf_unaw_shift_mcs
for I-UA receiver and interference-free case TM4. Coeeficients for 64 QAM must be revised.
2015-12-15 15:57:45 +01:00
Navid Nikaein
5c0098e2f0 * add async interface support for eNB agent and create a lib 2015-12-15 11:53:47 +01:00
lukashov
7ad4dcd3a1 Changing the level of target BLER on dlsim.c 2015-12-14 19:07:23 +01:00
lukashov
05fd086418 Introducing an offset for I-UA receiver intefr_unaw_shift and calibrating this value for each mcs (u=0 only). 2015-12-14 19:01:29 +01:00
lukashov
0d9f417f7b Small changes in dlsch_demodulation.c and in dlsim.c condition to stop simulation depending on rx_type.
dr_offset must be calibrated for tm4 again.
2015-12-14 12:32:52 +01:00
lukashov
20a6f9785b Small changes for writing precoder in data_out file.
Please note that to test precoder it is necessary to run Perfect_CE
2015-12-10 13:12:00 +01:00
lukashov
d765d1f2ab Fixing previous commit 2015-12-09 15:27:50 +01:00
lukashov
9695420fce Merge branch 'develop' into feature-59-tm4
Conflicts:
	openair1/SIMULATION/LTE_PHY/dlsim.c
	openair1/SIMULATION/TOOLS/random_channel.c
2015-12-09 13:55:20 +01:00
lukashov
7f34328b24 Changes:
1. Fixing precoder selection criteria for TM4 for tpmi2.
TPMI 2 works now.
2. Temporarily replacing abstraction.c with an old version till fix the bug in init_freq_channel.
3. Commenting some extra printouts.
2015-12-08 16:18:44 +01:00
lukashov
790ba35688 one more bug in measurements 2015-12-04 19:04:59 +01:00
lukashov
6df0e46245 Fixed bug in lte_ue_measurements.c for subband pmi calculation 2015-12-04 18:28:12 +01:00
lukashov
55c1f58192 Fixing prec2A_TM4_128 in dlsch_demodulation.c 2015-12-04 11:54:42 +01:00
Florian Kaltenberger
d56adbf3c1 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4 2015-12-02 15:59:15 +01:00
Florian Kaltenberger
7d27d45d02 few more fixes 2015-12-02 15:57:25 +01:00
lukashov
8d85ca9c78 fixed cor matrix for tpmi=1, -gR works now 2015-12-02 14:28:30 +01:00
Florian Kaltenberger
cce0b45f97 a few small bugfixes, but not yet finished 2015-12-02 13:02:45 +01:00
Florian Kaltenberger
e24847b130 fixing last commit 2015-12-02 11:25:16 +01:00
Florian Kaltenberger
992b32a969 Merge branch 'feature-59-tm4' of https://gitlab.eurecom.fr/oai/openairinterface5g into feature-59-tm4
Conflicts:
	openair1/PHY/LTE_TRANSPORT/proto.h
2015-12-02 11:15:26 +01:00
Florian Kaltenberger
6143779c63 documentation 2015-12-02 11:13:47 +01:00
lukashov
0c5a731f23 Merge branch 'feature-59-tm4' of gitlab.eurecom.fr:oai/openairinterface5g into feature-59-tm4
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dci_tools.c
2015-12-02 11:11:23 +01:00
lukashov
11dc7d2b81 extension to tmpi 2 for TM4 2015-12-02 11:04:00 +01:00
Florian Kaltenberger
000e60c193 extrac_cqi translates pmi_dual into pmi_single 2015-11-30 16:58:08 +01:00
Xiwen JIANG
1096744662 cell specific beamforming weights adaption nb of tx antennas 2015-11-30 15:31:33 +01:00
Xiwen JIANG
bed11c711e dlsch data extraction bug fixed for special subframes in TM7 2015-11-30 15:29:10 +01:00
Florian Kaltenberger
13752a6768 fixing pmi_extend 2015-11-27 17:13:48 +01:00
Xiwen JIANG
62e38a05c0 comment debug mode in dlsch_demodulation 2015-11-26 18:03:39 +01:00
Xiwen JIANG
b86efd9cbe add printf for debug mode in TM7 data extraction 2015-11-26 17:59:29 +01:00
Xiwen JIANG
8b56ae1755 bug fixed in do_OFDM_l() for the 7th symbol in a subframe 2015-11-26 17:21:14 +01:00
Florian Kaltenberger
a9c3b9b483 config files for 2 antennas for usrp and exmimo 2015-11-26 17:02:30 +01:00
lukashov
cf2b532a79 changes in dci_tools.c for TM4 to support tpmi2 2015-11-26 12:22:59 +01:00
Xiwen JIANG
4a4a878507 dlsim adaption for new_eNB_dlsch() 2015-11-26 11:49:48 +01:00
Xiwen JIANG
ad5e6a9eea ulsim and mbmssim adaption 2015-11-26 11:48:53 +01:00
Xiwen JIANG
1d511eca7f Merge branch 'master' into feature-21-TM7 2015-11-26 10:52:04 +01:00
Xiwen JIANG
ed83cbd1eb TM7 dlsim works 2015-11-26 10:32:43 +01:00
lukashov
f6e750fb66 feature-59-tm4: fixing dci_tools.c tmpi0 all channels all mod orders works 2015-11-25 22:52:42 +01:00
lukashov
9576283381 feature-59-tm4: fixing merge bugs in lte_phy_scope 2015-11-25 20:38:52 +01:00
lukashov
c26f9fea3d Enabling XFORMS 2015-11-25 20:32:30 +01:00
lukashov
9bd28ec137 merge with master 2015-11-24 20:40:35 +01:00
lukashov
4e9670b5aa merge with master 2015-11-23 17:48:59 +01:00
Florian Kaltenberger
857fd74e1b commiting changes from svn branch SIC-receiver from revision 6836 to 7896 (current svn head). See svn log for details. 2015-11-18 13:44:46 +01:00
Xiwen JIANG
0d681a0e72 use nb_antennas_tx as physical antenna number and nb_antennas_tx_eNB as antenna port 2015-10-09 10:04:25 +02:00
Xiwen JIANG
67262694de bug fixed in free beamforming weights 2015-10-05 16:19:52 +02:00
Xiwen JIANG
fac6a63f67 adding new file 2015-10-05 15:41:18 +02:00
Xiwen JIANG
24645f26c6 Merge branch 'master' into feature-21-TM7
Conflicts:
	openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
	openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
	openair1/SCHED/phy_procedures_lte_ue.c
	openair1/SIMULATION/LTE_PHY/dlsim.c
	openair1/SIMULATION/LTE_PHY/mbmssim.c
	targets/RT/USER/Makefile
2015-10-05 11:27:50 +02:00
Xiwen JIANG
b40ed6af9b TM7 works for dlsim. 2015-10-02 11:44:30 +02:00
Xiwen JIANG
7882472b73 revert dlsch_llr_computation 2015-10-01 17:43:46 +02:00
Xiwen JIANG
dc636f2b44 calculate channel level for TM7 2015-10-01 17:42:20 +02:00
Xiwen JIANG
b6b7bd1c19 comment writing to file line 2015-10-01 17:38:02 +02:00
Xiwen JIANG
d09d042806 bug fixed for symbols to activate beamforming channel estimation 2015-09-29 17:00:17 +02:00
Xiwen JIANG
a6f2310e4b add beamforming mode as an input parameter of llr computation 2015-09-29 14:02:57 +02:00
Xiwen JIANG
d89807b6eb skip half creterion for PSS RBs 2015-09-29 10:35:47 +02:00
Xiwen JIANG
e5013e5327 move DL beamforming channel estimation to dlsim top level file 2015-09-29 10:34:55 +02:00
Xiwen JIANG
1a1d843f16 compilation for XFORMS 2015-09-25 18:34:23 +02:00
Xiwen JIANG
fdea4022d1 bug fixed for more than 1 physical antenna 2015-09-25 18:14:22 +02:00
Xiwen JIANG
3353735f3c beamforming weights modification 2015-09-25 11:32:07 +02:00
Xiwen JIANG
aca66630ff pass physical antenna number as an dlsim option 2015-09-23 16:33:18 +02:00
Xiwen JIANG
70e1e0cecf more cleanness 2015-09-09 11:57:44 +02:00
Xiwen JIANG
3a5eda8cae cleanness and comments 2015-09-09 11:37:24 +02:00
Xiwen JIANG
f905243047 update beamforming channel estimation frequency interpolation filter head file 2015-09-09 09:58:23 +02:00
Xiwen JIANG
cf4a005e32 Beamforming channel estimation based on UE specific reference signal 2015-09-09 09:53:59 +02:00
Xiwen JIANG
5adc20ca06 patch difference of TM7 dev with svn r7530 to git branch 2015-08-18 17:17:46 +02:00
2610 changed files with 448237 additions and 569452 deletions

View File

@@ -1,37 +1,17 @@
job1:
script:
- echo $PWD
- echo $USER
- echo $OAI_USER
- echo $OAI_EXTRA_ARGS
- echo $NFS_SHARE_DIR
- echo $EXTERNAL_SHARE_DIR
- echo $SHELL
- echo $OAI_TEST_CASE_GROUP
- echo $MACHINELIST
- echo $MACHINELISTGENERIC
- git rev-parse --abbrev-ref HEAD
- git_repo=`git config --get remote.origin.url`
- git_head=`git rev-parse HEAD`
- echo $git_head
- tmp=`git show-ref --head | grep $git_head`
- tmp=(${tmp///// })
- git_branch=${tmp[@]:(-1)}
- echo $git_branch
- source oaienv
- echo $OPENAIR_DIR
- NFS_TEST_RESULTS_DIR=$NFS_SHARE_DIR/$git_branch/$git_head
- EXTERNAL_SHARE_RESULTS_DIR=$EXTERNAL_SHARE_DIR/$git_branch/$git_head
- echo $NFS_TEST_RESULTS_DIR
- echo $EXTERNAL_SHARE_RESULTS_DIR
- echo $NRUNS_LTE_SOFTMODEM
- echo $TIMEOUT_CMD
- mkdir -p $OPENAIR_DIR/cmake_targets/autotests/log
- python $OPENAIR_DIR/cmake_targets/autotests/run_exec_lte-softmodem_tests.py -c -5GRepo $git_repo -MachineList "$MACHINELIST" -MachineListGeneric "$MACHINELISTGENERIC" -5GRepoHeadVersion $git_head -n $NFS_SHARE_DIR -u $OAI_USER -p $OAI_PASS $OAI_EXTRA_ARGS -g "$OAI_TEST_CASE_GROUP">& $OPENAIR_DIR/cmake_targets/autotests/python_autotest_cleanup.log
- python $OPENAIR_DIR/cmake_targets/autotests/run_exec_lte-softmodem_tests.py -r -5GRepo $git_repo -MachineList "$MACHINELIST" -MachineListGeneric "$MACHINELISTGENERIC" -5GRepoHeadVersion $git_head -n $NFS_SHARE_DIR -u $OAI_USER -p $OAI_PASS `echo $OAI_EXTRA_ARGS` -g "$OAI_TEST_CASE_GROUP" --nrun_lte_softmodem $NRUNS_LTE_SOFTMODEM --timeout_cmd $TIMEOUT_CMD >& $OPENAIR_DIR/cmake_targets/autotests/python_autotest.log
- mv $OPENAIR_DIR/cmake_targets/autotests/python_autotest.log $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest.log
- mv $OPENAIR_DIR/cmake_targets/autotests/python_autotest_cleanup.log $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest_cleanup.log
- sshpass -p "$OAI_PASS" rsync -az -e "ssh -o StrictHostKeyChecking=no " --rsync-path="mkdir -p $NFS_TEST_RESULTS_DIR && rsync" $OPENAIR_DIR/cmake_targets/autotests/log $OAI_USER@localhost:$NFS_TEST_RESULTS_DIR
- sshpass -p "$OAI_PASS" rsync -az -e "ssh -o StrictHostKeyChecking=no " --rsync-path="mkdir -p $EXTERNAL_SHARE_DIR && rsync" $OPENAIR_DIR/cmake_targets/autotests/log $OAI_USER@localhost:$EXTERNAL_SHARE_DIR
- cat $OPENAIR_DIR/cmake_targets/autotests/log/results_autotests.xml
when: manual
- date
- pwd
- echo $OAI_TEST_CASE_GROUP
- echo $MACHINELIST
- echo $MACHINELISTGENERIC
- echo $RESULT_DIR
- echo $NRUNS_LTE_SOFTMODEM
- source oaienv
- rm -rf cmake_targets/autotests/log
- mkdir cmake_targets/autotests/log
- cd cmake_targets/autotests/v2
- python main.py
- date
only:
- triggers

674
COPYING
View File

@@ -1,674 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.

200
LICENSE Normal file
View File

@@ -0,0 +1,200 @@
The OpenAirInterface Software Alliance (OSA)
OAI Public License (Version 1.1)
LICENSE TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION OF OPENAIR 5G SOFTWARE.
1. Definitions.
“License” shall mean the terms and conditions for use, reproduction, and distribution set forth
in this document.
“Licensor” shall mean the OpenAirInterface Software Alliance.
“Legal Entity” shall mean the union, at the time an acting entity joins the Alliance, of the
acting entity and all other entities that control, are controlled by, or are under common control
with that entity. For the purposes of this definition, “control” means (i) the power, direct or
indirect, to cause the direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii)
beneficial ownership of such entity.
“You” (or “Your”) shall mean an individual or Legal Entity exercising permissions granted by
this License.
“Source” form shall mean the preferred form for making modifications, including but not
limited to software source code, documentation source, and configuration files.
“Object” form shall mean any form resulting from mechanical transformation or translation of
a Source form, including but not limited to compiled object code, generated documentation,
and conversions to other media types.
“OpenAirInterface Software Alliance” shall mean the endowment fund established at the
initiative of Eurecom, an educational and research establishment located at Campus Sophia
Tech, 450 Route des Chappes, 06410 Biot, France, which statutes were signed on 18
November 2014.
“Work” shall mean the work of authorship, whether in Source or Object form, made available
under the License, as indicated by a copyright notice that is included in or attached to the
work (an example is provided in the Appendix below).
“Derivative Works” shall mean any work, whether in Source or Object form, that is based on
(or derived from) the Work and for which the editorial revisions, annotations, elaborations, or
other modifications represent, as a whole, an original work of authorship. For the purposes of
this License, Derivative Works shall not include works that remain separable from, or merely
link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
“Contribution” shall mean any work of authorship that is intentionally submitted to Licensor
for inclusion in the Work by the copyright owner or by an individual or Legal Entity
authorized to submit on behalf of the copyright owner. For the purposes of this definition,
“submitted” means any form of electronic, , or written communication sent to the Licensor or
its representatives, including but not limited to communication on electronic mailing lists,
source code control systems, and issue tracking systems that are managed by, or on behalf of,
the Licensor for the purpose of discussing and improving the Work
“Contributor License Agreement” shall mean the agreement signed by any Contributor setting
forth the terms and conditions applicable to its Contribution.
“Contributor” shall mean any individual or Legal Entity on behalf of whom a Contribution
has been received by Licensor and subsequently incorporated within the Work.
2. Grant of Copyright License.
Subject to the terms and conditions of this License, Licensor and each Contributor hereby
grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of, publicly display, publicly
perform, and distribute the Work and such Derivative Works in Source or Object form
3. Grant of Patent License.
3.1 Grant of Patent License for study, testing and research purposes:
Subject to the terms and conditions of this License, Licensor and each Contributor hereby
grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made, use, and otherwise
transfer (excluding selling) the Work, solely for study, testing and research purposes, where
such license applies only to those patent claims licensable by Licensor or such Contributor
that are necessarily infringed respectively by the Work and/or the said Contributor
Contribution(s) alone or by combination of their Contribution(s) with the Work to which
such Contribution(s) was submitted (“Essential Patents”).
3.2 Grant of Patent License for purposes other than study and research:
For purposes other than study, testing and research, and subject to the terms and conditions of
this License, You commit to be prepared to negotiate a non-exclusive, non-transferable, non-
assignable license of Essential Patents with each Contributor and/or the Licensor on Fair,
Reasonable and Non-Discriminatory (“FRAND”) terms and conditions for the use of the
Work or Contribution(s) incorporated within the Work.
Licensor and/or each Contributor, by submitting a Contribution, will identify any of its known
Essential Patent it owns related to the Work and/or its Contribution.
3.3 Patent Litigation
If You institute patent litigation against any entity making use of the Work solely for study,
testing and research purposes (including a cross-claim or counterclaim in a lawsuit) alleging
that the Work or a Contribution incorporated within the Work constitutes direct or
contributory patent infringement, then the patent licenses granted to You under section 3.1 of
this License for that Work shall terminate as of the date such litigation is filed.
4. Sublicensing
You may grant sublicenses under the licenses granted under sections 2 and 3.1 provided that
the sublicense is subject to and inclusive of all the terms of and rights under this License to
which the Work is or was distributed by the OpenAirInterface Software Alliance.
5. Redistribution
Subject to terms and conditions set forth in sections 2 and 3, You may reproduce and
distribute copies of the Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You meet the following
conditions:
1. You must give any other recipients of the Work or Derivative Works a copy of this
License; and
2. You must cause any modified files by You to carry prominent notices stating that You
changed the files; and
3. You must retain, in the Source form of any Derivative Works that You distribute, all
copyright, patent, trademark, and attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of the Derivative Works; and
4. If the Work includes a “NOTICE” text file as part of its distribution, then any Derivative
Works that You distribute must include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not pertain to any part of the
Derivative Works, in at least one of the following places: within a NOTICE text file
distributed as part of the Derivative Works; within the Source form or documentation, if
provided along with the Derivative Works; or, within a display generated by the Derivative
Works, if and wherever such third-party notices normally appear. The contents of the
NOTICE file are for informational purposes only and do not modify the License. You may
add Your own attribution notices within Derivative Works that You distribute, alongside or as
an addendum to the NOTICE text from the Work, provided that such additional attribution
notices cannot be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide
additional or different license terms and conditions for use, reproduction, or distribution of
Your modifications, or for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with the conditions stated in
this License.
6. Submission of Contributions.
Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be
under the terms and conditions of this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify the terms of any
separate license agreement such as the Contributor License Agreement You may have
executed with Licensor regarding such Contributions.
7. Trademarks.
This License does not grant permission to use the trade names, trademarks, service marks, or
product names of the Licensor, except as required for reasonable and customary use in
describing the origin of the Work and reproducing the content of the NOTICE file.
8. Disclaimer of Warranty.
Unless required by applicable law or agreed to in writing, Licensor provides the Work (and
each Contributor provides its Contributions) on an “AS IS” BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including,
without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT,
MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely
responsible for determining the appropriateness of using or redistributing the Work and
assume any risks associated with your exercise of permissions under this License.
9. Limitation of Liability.
In no event and under no legal theory, whether in tort (including negligence), contract, or
otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or
agreed to in writing, shall Licensor and any Contributor, as such, be liable to You for
damages, including any direct, indirect, special, incidental, or consequential damages of any
character arising as a result of this License or out of Your use or inability to use the Work
(including but not limited to damages for loss of goodwill, work stoppage, computer failure or
malfunction, or any and all other commercial damages or losses), even if such Contributor has
been advised of the possibility of such damages.
10. Accepting Warranty or Additional Liability.
While redistributing the Work or Derivative Works thereof, You may choose to offer, and
charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations
and/or rights consistent with this License. However, in accepting such obligations, You may
act only on Your own behalf and on Your sole responsibility, not on behalf of any other
Contributor and/or the Licensor, and only if You agree to indemnify, defend, and hold each
Contributor and/or the Licensor harmless for any liability incurred by, or claims asserted
against, such Contributor and/or Licensor by reason of Your accepting any such warranty or
additional liability.
11. Applicable law.
The present license shall be governed by the laws of France.
END OF TERMS AND CONDITIONS
1. APPENDIX: How to apply the PRESENT OPENAIR 5G License to your work
To apply the present License to your work, attach the following boilerplate notice, with the
fields enclosed by brackets “[]” replaced with your own identifying information. (Dont
include the brackets!) The text should be enclosed in the appropriate comment syntax for the
file format. We also recommend that a file or class name and description of purpose be
included on the same “printed page” as the copyright notice for easier identification within
third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the License terms and conditions for use, reproduction, and distribution of
OPENAIR 5G software (the “License”);
you may not use this file except in compliance with the License. You may obtain a copy of
the License at
Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an “AS IS” BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the
License.

21
NOTICE.txt Normal file
View File

@@ -0,0 +1,21 @@
The source code of openairinterface5g is distributed under OAI Public License V1.0.
For more details of the license, refer to LICENSE file in the same directory.
However, the source code also contains third party software that is acknowledged here for reference.
Credits for LFDS user space source code located in folder openair2/UTILS/LFDS/liblfds6.1.1/
http://liblfds.org/.
Extract from http://liblfds.org/pages/downloads_and_license.html:
"There is no license. You are free to use this software in any way, for any purpose. Go forth and create wealth!
If however for legal reasons a licence is required, the license of your choice will be granted."
Credits for source code common/utils/collection/queue.h:
The Regents of the University of California: BSD 3-Clause Licence.
Credits for source code common/utils/collection/tree.h:
Niels Provos <provos@citi.umich.edu>: BSD 2-Clause Licence.

View File

@@ -1,27 +1,46 @@
OpenAirInterface is under OpenAirInterface Software Alliance license.
├── http://www.openairinterface.org/?page_id=101
├── http://www.openairinterface.org/?page_id=698
The OpenAirInterface (OAI) software is composed of the following parts:
openairinterface5g
├── cmake_targets: build utilities to compile (simulation, emulation and real-time platforms), and generated build files
├── common : some common OAI utilities, other tools can be found at openair2/UTILS
├── COPYING
├── maketags : script to generate emacs tags
├── openair1 : 3GPP LTE Rel-10 PHY layer + PHY RF simulation and a subset of Rel 12 Features.
├── openair2 :3GPP LTE Rel-10 RLC/MAC/PDCP/RRC/X2AP implementation.
├── LAYER2/RLC/ with the following subdirectories: UM_v9.3.0, TM_v9.3.0, and AM_v9.3.0.
├── LAYER2/PDCP/PDCP_v10.1.0.
├── RRC/LITE
├── PHY_INTERFACE
├── X2AP
├── ENB_APP
├── openair3: 3GPP LTE Rel10 for S1AP, NAS GTPV1-U for both ENB and UE.
├── GTPV1-U
├── NAS
├── S1AP
├── SCTP
├── SECU
├── UDP
└── targets: top level wrapper for unitary simulation for PHY channels, system-level emulation (eNB-UE with and without S1), and realtime eNB and UE and RRH GW.
OpenAirInterface is under OpenAirInterface Software Alliance license.
├── http://www.openairinterface.org/?page_id=101
├── http://www.openairinterface.org/?page_id=698
It is distributed under OAI Public License V1.0.
The license information is distributed under LICENSE file in the same directory.
Please see NOTICE.txt for third party software that is included in the sources.
The OpenAirInterface (OAI) software is composed of the following parts:
openairinterface5g
├── cmake_targets: build utilities to compile (simulation, emulation and real-time platforms), and generated build files
├── common : some common OAI utilities, other tools can be found at openair2/UTILS
├── LICENSE
├── maketags : script to generate emacs tags
├── openair1 : 3GPP LTE Rel-10 PHY layer + PHY RF simulation and a subset of Rel 12 Features.
├── openair2 :3GPP LTE Rel-10 RLC/MAC/PDCP/RRC/X2AP implementation.
├── LAYER2/RLC/ with the following subdirectories: UM_v9.3.0, TM_v9.3.0, and AM_v9.3.0.
├── LAYER2/PDCP/PDCP_v10.1.0.
├── RRC/LITE
├── PHY_INTERFACE
├── X2AP
├── ENB_APP
├── openair3: 3GPP LTE Rel10 for S1AP, NAS GTPV1-U for both ENB and UE.
├── GTPV1-U
├── NAS
├── S1AP
├── SCTP
├── SECU
├── UDP
└── targets: top level wrapper for unitary simulation for PHY channels, system-level emulation (eNB-UE with and without S1), and realtime eNB and UE and RRH GW.
RELEASE NOTES:
v0.1 -> Last stable commit on develop branch before enhancement-10-harmony
v0.2 -> Merge of enhancement-10-harmony to include NGFI RRH + New Interface for RF/BBU
v0.3 -> Last stable commit on develop branch before the merge of feature-131-new-license. This is the last commit with GPL License
v0.4 -> Merge of feature-131-new-license. It closes issue#131 and changes the license to OAI Public License V1.0
v0.5 -> Merge of enhancement-10-harmony-lts. It includes fixes for Ubuntu 16.04 support
v0.5.1 -> Merge of bugfix-137-uplink-fixes. It includes stablity fixes for eNB
v0.5.2 -> Last version with old code for oaisim (abstraction mode works)
v0.6 -> RRH functionality, UE greatly improved, better TDD support,
a lot of bugs fixed. WARNING: oaisim in PHY abstraction mode does not
work, you need to use v0.5.2 for that.
v0.6.1 -> Mostly bugfixes. This is the last version without NFAPI.

File diff suppressed because it is too large Load Diff

View File

@@ -1,30 +1,26 @@
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http:/www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# Author: Lionel GAUTHIER
###############################################################################
cmake_minimum_required(VERSION 2.8)
set(CMAKE_VERBOSE_MAKEFILE ON)
@@ -92,13 +88,47 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse4.2 -std=gnu99 -Wall -Wstrict-prototype
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -ggdb -DMALLOC_CHECK_=3")
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -ggdb -DMALLOC_CHECK_=3 -O2")
##This is to detect nettle version changes between Ubuntu 14.04/16.04
#set ( nettle_cmd "nettle-hash" )
#set ( nettle_arg "-V" )
#execute_process(COMMAND ${nettle_cmd} ${nettle_arg} RESULT_VARIABLE rv OUTPUT_VARIABLE ov ERROR_VARIABLE ev)
#
#string(REGEX MATCH "[+-]?[0-9]+([.][0-9]+)?" nv ${ov})
#
#message("NETTLE_VERSION = ${nv}")
#
## we need to remove decimal as floating point arithematic does not work properly with C preprocessor
#STRING(REGEX REPLACE "[.]" "" nv ${nv})
#
#if ("${nv}" STREQUAL "")
# message( FATAL_ERROR "The nettle version not detected properly. Try to run build_oai -I again" )
#endif()
#
#set (NETTLE_VERSION "${nv}")
#add_definitions("-DNETTLE_VERSION=${NETTLE_VERSION}")
include(FindPkgConfig)
INCLUDE(FindNettle)
IF( NOT NETTLE_FOUND )
MESSAGE( SEND_ERROR "Nettle is required" )
ENDIF( NOT NETTLE_FOUND )
pkg_search_module(NETTLE nettle)
if(NOT ${NETTLE_FOUND})
message( FATAL_ERROR "PACKAGE nettle not found: some targets will fail. Run build_oai -I again!")
else()
include_directories(${NETTLE_INCLUDE_DIRS})
endif()
message ("NETTLE VERSION_INSTALLED = ${NETTLE_VERSION}")
string(REGEX REPLACE "([0-9]+).*" "\\1" NETTLE_VERSION_MAJOR ${NETTLE_VERSION})
string(REGEX REPLACE "[0-9]+\\.([0-9]+).*" "\\1" NETTLE_VERSION_MINOR ${NETTLE_VERSION})
message ("NETTLE_VERSION_MAJOR = ${NETTLE_VERSION_MAJOR}")
message ("NETTLE_VERSION_MINOR = ${NETTLE_VERSION_MINOR}")
if ("${NETTLE_VERSION_MAJOR}" STREQUAL "" OR "${NETTLE_VERSION_MINOR}" STREQUAL "")
message( FATAL_ERROR "The nettle version not detected properly. Try to run build_oai -I again" )
endif()
add_definitions("-DNETTLE_VERSION_MAJOR=${NETTLE_VERSION_MAJOR}")
add_definitions("-DNETTLE_VERSION_MINOR=${NETTLE_VERSION_MINOR}")
pkg_search_module(OPENSSL openssl REQUIRED)
@@ -201,8 +231,8 @@ set(api_user_HDR
add_library(api_user ${api_user_SRC} ${api_user_HDR})
target_include_directories(api_user PRIVATE ${OPENAIR_NAS_DIR}/UE/API/USER
${OPENAIR_NAS_DIR}/UE
${OPENAIR_NAS_DIR}/COMMON
${OPENAIR_NAS_DIR}/UE
)
################################################################################
@@ -383,6 +413,7 @@ target_include_directories(emm PRIVATE
${OPENAIR_DIR}/common/utils/msc
${OPENAIR_DIR}/common/utils
${OPENAIR_DIR}/openair2/COMMON
${OPENAIR_NAS_DIR}/UE
${OPENAIR_NAS_DIR}/UE/API/USIM
${OPENAIR_NAS_DIR}/UE/EMM
${OPENAIR_NAS_DIR}/COMMON/EMM/MSG
@@ -395,7 +426,6 @@ target_include_directories(emm PRIVATE
# esm LIB
################################################################################
set(esm_SRC
${OPENAIR_NAS_DIR}/UE/ESM/esm_main.c
${OPENAIR_NAS_DIR}/UE/ESM/DedicatedEpsBearerContextActivation.c
${OPENAIR_NAS_DIR}/UE/ESM/DefaultEpsBearerContextActivation.c
${OPENAIR_NAS_DIR}/UE/ESM/EpsBearerContextDeactivation.c
@@ -438,6 +468,7 @@ set(esm_SRC
)
set(esm_HDR
${OPENAIR_TARGETS}/COMMON/openairinterface5g_limits.h
${OPENAIR_NAS_DIR}/UE/ESM/esm_main.h
${OPENAIR_NAS_DIR}/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextAccept.h
${OPENAIR_NAS_DIR}/COMMON/ESM/MSG/ActivateDedicatedEpsBearerContextReject.h
@@ -467,13 +498,17 @@ set(esm_HDR
${OPENAIR_NAS_DIR}/UE/ESM/SAP/esm_recv.h
${OPENAIR_NAS_DIR}/UE/ESM/SAP/esm_sap.h
${OPENAIR_NAS_DIR}/UE/ESM/SAP/esm_send.h
${OPENAIR_DIR}/common/utils/utils.h
)
add_library(esm ${esm_SRC} ${esm_HDR})
target_include_directories(esm PRIVATE
${OPENAIR_DIR}/common/utils
${OPENAIR_NAS_DIR}/UE
${OPENAIR_NAS_DIR}/UE/API/USER
${OPENAIR_NAS_DIR}/UE/ESM
${OPENAIR_TARGETS}/COMMON
${OPENAIR_NAS_DIR}/COMMON/ESM/MSG
${OPENAIR_NAS_DIR}/UE/ESM/SAP
${OPENAIR_NAS_DIR}/COMMON/IES
@@ -656,6 +691,9 @@ target_include_directories(ies PRIVATE
# EXECUTABLE at_nas_ue
################################################################################
include_directories(
${OPENAIR_TARGETS}/COMMON
${OPENAIR_NAS_DIR}/UE
${OPENAIR_DIR}/common/utils
${OPENAIR_DIR}/common/utils/msc
${OPENAIR3_DIR}/COMMON
${OPENAIR3_DIR}/SECU
@@ -677,6 +715,8 @@ ADD_EXECUTABLE(at_nas_ue ${OPENAIR_NAS_DIR}/UE/UEprocess.c
${OPENAIR_NAS_DIR}/UE/nas_parser.c
${OPENAIR_NAS_DIR}/UE/nas_proc.c
${OPENAIR_NAS_DIR}/UE/nas_user.c
${OPENAIR_DIR}/common/utils/utils.c
${OPENAIR_DIR}/common/utils/system.c
)
target_link_libraries (at_nas_ue

View File

@@ -1,5 +1,4 @@
OAI Test PLAN
#UNDER CONSTRUCTION. Not correct at the moment
Obj.# Case# Test# Description
@@ -102,6 +101,19 @@ Obj.# Case# Test# Description
01 51 04 pdcchsim (TBD)
01 51 05 pbchsim (TBD)
01 51 06 mbmssim (TBD)
01 51 10 dlsim_tm4 test cases (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB),
(Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)),
(Test 6: 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)),
(Test 6b: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)),
(Test 7: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)),
(Test 7b: 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)),
(Test 10: 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)),
(Test 10b: 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)),
(Test 11: 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%))
(TM2 Test 1 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)),
(TM2 Test 1b 20 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)),
01 55 lte-softmodem tests with USRP B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for 1TX/1RX (TM1), 2TX/2RX (TM2)
@@ -201,7 +213,7 @@ Obj.# Case# Test# Description
01 63 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 63 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 65 00 lte-softmodem tests with BladeRF RF as eNB and ALU EPC w/ Bandrich COTS UE for 1TX/1RX
01 65 lte-softmodem tests with BladeRF RF as eNB and ALU EPC w/ Bandrich COTS UE for 1TX/1RX
01 65 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 65 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 65 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
@@ -210,7 +222,7 @@ Obj.# Case# Test# Description
01 65 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 70 00 lte-softmodem tests with SoDeRa RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 70 lte-softmodem tests with SoDeRa RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 70 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 70 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 70 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
@@ -219,7 +231,7 @@ Obj.# Case# Test# Description
01 70 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 75 00 lte-softmodem + RRH tests with B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 75 lte-softmodem + RRU (NGFI IF4P5, RAW) tests with B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 75 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 75 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 75 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
@@ -227,7 +239,21 @@ Obj.# Case# Test# Description
01 75 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 75 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 80 00 lte-softmodem + RRH tests with BladeRF RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 76 lte-softmodem + RRU (NGFI IF4P5, UDP) tests with B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 76 00 Band 7 FDD 5MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 01 Band 7 FDD 10MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 02 Band 7 FDD 20MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 03 Band 7 FDD 5MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 04 Band 7 FDD 10MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 05 Band 7 FDD 20MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 76 06 Band 7 FDD 5MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 76 07 Band 7 FDD 10MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 76 08 Band 7 FDD 20MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 76 09 Band 7 FDD 5MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 76 10 Band 7 FDD 10MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 76 11 Band 7 FDD 20MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 80 lte-softmodem + RRU (NGFI) tests with BladeRF RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 80 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 80 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 80 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
@@ -235,7 +261,7 @@ Obj.# Case# Test# Description
01 80 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 80 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 85 00 lte-softmodem + RRH tests with USRP X310 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 85 lte-softmodem + RRU (NGFI) tests with USRP X310 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 85 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 85 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 85 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
@@ -243,6 +269,32 @@ Obj.# Case# Test# Description
01 85 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 85 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 86 lte-softmodem tests with USRP B210 RF as eNB and ALU EPC w/ Huawei e3276 COTS UE for 1TX/1RX (TM1), 2TX/2RX (TM2)
01 86 00 Band 38 TDD 5MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 01 Band 38 TDD 10MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 02 Band 38 TDD 20MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 03 Band 38 TDD 5MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 04 Band 38 TDD 10MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 05 Band 38 TDD 20MHz DL Throughput (UDP) for 300 sec for 1TX/1RX
01 86 06 Band 38 TDD 5MHz UL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 07 Band 38 TDD 10MHz UL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 08 Band 38 TDD 20MHz UL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 09 Band 38 TDD 5MHz DL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 10 Band 38 TDD 10MHz DL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 11 Band 38 TDD 20MHz DL Throughput (UDP) for 300 sec for 2TX/2RX (TM2)
01 86 12 Band 38 TDD 5MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 13 Band 38 TDD 10MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 14 Band 38 TDD 20MHz UL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 15 Band 38 TDD 5MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 16 Band 38 TDD 10MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 17 Band 38 TDD 20MHz DL Throughput (TCP) for 300 sec for 1TX/1RX
01 86 18 Band 38 TDD 5MHz UL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
01 86 19 Band 38 TDD 10MHz UL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
01 86 20 Band 38 TDD 20MHz UL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
01 86 21 Band 38 TDD 5MHz DL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
01 86 22 Band 38 TDD 10MHz DL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
01 86 23 Band 38 TDD 20MHz DL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
02 55 lte-softmodem tests with USRP B210 RF as eNB and ALU EPC w/ Sony Experia M4 COTS UE for 1TX/1RX and 2TX/2RX (TM2)
02 55 00 Band 7 FDD 5MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
02 55 01 Band 7 FDD 10MHz UL Throughput (UDP) for 300 sec for 1TX/1RX
@@ -269,6 +321,15 @@ Obj.# Case# Test# Description
02 55 22 Band 7 FDD 10MHz DL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
02 55 23 Band 7 FDD 20MHz DL Throughput (TCP) for 300 sec for 2TX/2RX (TM2)
02 57 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ OAI UE
02 57 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
02 57 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
02 57 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
02 57 03 Band 7 FDD 5MHz DL Throughput for 300 sec for 1TX/1RX
02 57 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
02 57 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 64 lte-softmodem-noS1 tests
02 Functional test case

View File

@@ -1,31 +1,23 @@
#******************************************************************************
# Eurecom OpenAirInterface
# Copyright(c) 1999 - 2013 Eurecom
# This program is free software; you can redistribute it and/or modify it
# under the terms and conditions of the GNU General Public License,
# version 2, as published by the Free Software Foundation.
# This program is distributed in the hope it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
# The full GNU General Public License is included in this distribution in
# the file called "COPYING".
# Contact Information
# Openair Admin: openair_admin@eurecom.fr
# Openair Tech : openair_tech@eurecom.fr
# Forums : http://forums.eurecom.fsr/openairinterface
# Address : Eurecom, Compus SophiaTech 450, route des chappes, 06451 Biot, France
#*****************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \file core.py
# \brief OAI core testing class that provides various primitives to send/recv cmd to openair class searching for patterns and process the responses and tag the test case as passed/failed/skipped

View File

@@ -1,31 +1,23 @@
#******************************************************************************
# Eurecom OpenAirInterface
# Copyright(c) 1999 - 2013 Eurecom
# This program is free software; you can redistribute it and/or modify it
# under the terms and conditions of the GNU General Public License,
# version 2, as published by the Free Software Foundation.
# This program is distributed in the hope it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
# The full GNU General Public License is included in this distribution in
# the file called "COPYING".
# Contact Information
# Openair Admin: openair_admin@eurecom.fr
# Openair Tech : openair_tech@eurecom.fr
# Forums : http://forums.eurecom.fsr/openairinterface
# Address : Eurecom, Compus SophiaTech 450, route des chappes, 06451 Biot, France
#*****************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \file log.py
# \brief provides primitives and defines how the logs and statistics are generated

View File

@@ -1,31 +1,23 @@
#******************************************************************************
# Eurecom OpenAirInterface
# Copyright(c) 1999 - 2013 Eurecom
# This program is free software; you can redistribute it and/or modify it
# under the terms and conditions of the GNU General Public License,
# version 2, as published by the Free Software Foundation.
# This program is distributed in the hope it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
# more details.
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
# The full GNU General Public License is included in this distribution in
# the file called "COPYING".
# Contact Information
# Openair Admin: openair_admin@eurecom.fr
# Openair Tech : openair_tech@eurecom.fr
# Forums : http://forums.eurecom.fsr/openairinterface
# Address : Eurecom, Compus SophiaTech 450, route des chappes, 06451 Biot, France
#*****************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \file openair.py
# \brief class that define the oaisim class and its attributes
@@ -83,7 +75,7 @@ class openair(core):
return (stdout, stderr)
def connect(self, username, password, prompt='PEXPECT_OAI'):
max_retries=100
max_retries=10
i=0
while i <= max_retries:
self.prompt1 = prompt
@@ -105,9 +97,9 @@ class openair(core):
# need to look for twice the string of the prompt
self.oai.prompt()
self.oai.prompt()
self.oai.sendline('uptime')
self.oai.prompt()
print self.oai.before
# self.oai.sendline('uptime')
# self.oai.prompt()
# print self.oai.before
break
except Exception, e:
error=''
@@ -179,7 +171,7 @@ class openair(core):
sys.exit(1)
def disconnect(self):
print 'disconnecting the ssh connection to ' + self.address + '\n'
# print 'disconnecting the ssh connection to ' + self.address + '\n'
self.oai.send('exit')
# self.cancel()

View File

@@ -1,4 +1,26 @@
#!/bin/bash
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \author Navid Nikaein, Rohit Gupta
if [ -s $OPENAIR_DIR/cmake_targets/tools/build_helper ] ; then
source $OPENAIR_DIR/cmake_targets/tools/build_helper

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
if [ -s $OPENAIR_DIR/cmake_targets/tools/build_helper ] ; then

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,87 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>OAI5G UE Autotest Report</title>
<script type="text/javascript">
function showhide(id) {
var e = document.getElementById(id);
e.style.display = (e.style.display == 'block') ? 'none' : 'block';
}
</script>
</head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
padding: 5px;
}
</style>
<body>
<center>
<h2>OAI5G UE Autotest Report</h2>
</center>
<p>
<table border>
<caption>Test session configuration</caption>
<tr><td>Start time</td><td>{{test_session_start_time}}</td></tr>
<tr><td>Stop time</td><td>{{test_session_stop_time}}</td></tr>
<tr><td>Duration</td><td>{{test_session_duration}}</td></tr>
<tr><td>MTC host</td><td>{{mtc_host}}</td></tr>
<tr><td>User</td><td>{{user}}</td></tr>
<tr><td>Password</td><td>{{password}}</td></tr>
</table>
</p>
<h3>Test Setup</h3>
To be complete
<br></br>
<h3>UE phy-test performances tests results</h3>
<h4>Objectives</h4>
<p>Checks that OAI UE can achieve at least 75 percent of the theoretical throughput.</p>
<p>Tests are done for all MCS (0 to 28) for 5MHz and 10MHz bandwidth.</p>
<h4>Results</h4>
<table>
<TR><TH>ID</TH><TH>TAG</TH><TH>VERDICT</TH><TH>NB RUNS</TH><TH>PASS</TH><TH>FAILED</TH><TH>INCON</TH><TH>SKIPPED</TH><TH>SEG FAULT</TH><TH>TC Timeout</TH><TH>Start</TH><TH>Stop</TH><TH>Duration</TH><TH>Details</TH></TR>
{% for result in test_results|sort(attribute='testcase_name') %}
<TR>
<TD >{{result.testcase_name}}</TD>
<TD align="right">{{result.tags}}</TD>
{% if result.testcase_verdict == "PASS" %}
<TD align="center" style="background-color:green">{{result.testcase_verdict}}</TD>
{% elif result.testcase_verdict == "FAIL" %}
<TD align="center" style="background-color:red">{{result.testcase_verdict}}</TD>
{% else %}
<TD align="center" style="background-color:orange">{{result.testcase_verdict}}</TD>
{% endif %}
<TD align='center'>{{result.nruns}}</TD>
<TD align='center'>{{result.nb_run_pass}}</TD>
<TD align='center'>{{result.nb_run_failed}}</TD>
<TD align='center'>{{result.nb_run_inc}}</TD>
<TD align='center'>{{result.nb_run_skip}}</TD>
<TD align='center'>{{result.nb_seg_fault}}</TD>
<TD >{{result.testcase_timeout}}</TD>
<TD >{{result.testcase_time_start.strftime('%Y-%m-%d %H:%M:%S')}}</TD>
<TD >{{result.testcase_time_stop.strftime('%Y-%m-%d %H:%M:%S')}}</TD>
<TD >{{result.testcase_duration}}</TD>
<TD ><a href="{{ result.testcase_name }}/{{ result.testcase_name }}_report.html">{{ result.testcase_name }}_report.html</a></TD>
</TR>
{% endfor %}
</table>
<br></br>
<h3>UE phy-test stability tests results</h3>
<h4>Objectives</h4>
<p>To be complete</p>
<h4>Results</h4>
To be complete
</table>
</body>
</html>

View File

@@ -0,0 +1,142 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>OAI5G UE test case report</title>
<script type="text/javascript">
function showhide(id) {
var e = document.getElementById(id);
e.style.display = (e.style.display == 'block') ? 'none' : 'block';
}
</script>
</head>
<style>
table, th, td {
border: 1px solid black;
border-collapse: collapse;
padding: 5px;
}
</style>
<body>
<center>
<h2>OAI5G UE test case report details</h2>
</center>
<h3>Test Case description</h3>
<p>
<table border>
<tr><td>ID</td><td>{{testcase_name}}</td></tr>
<tr><td>TAG</td><td>{{tags}}</td></tr>
<tr><td>class</td><td>{{testcaseclass}}</td></tr>
<tr><td>description</td><td></td></tr>
<tr><td>timeout</td><td>{{testcase_timeout}}</td></tr>
<tr><td>number of runs</td><td>{{nruns}}</td></tr>
<tr><td>eNB machine</td><td>{{testcase_eNBMachine}}</td></tr>
<tr><td>UE machine</td><td>{{testcase_UEMachine}}</td></tr>
</table>
</p>
<h3>Test Case execution</h3>
<p>
<table border>
<tr><td>testcase_time_start</td><td>{{testcase_time_start}}</td></tr>
<tr><td>testcase_time_stop</td><td>{{testcase_time_stop}}</td></tr>
<tr><td>testcase_duration</td><td>{{testcase_duration}}</td></tr>
<tr><td>Nb runs</td><td>{{nruns}}</td></tr>
<tr><td>Nb PASS</td><td>{{nb_run_pass}}</td></tr>
<tr><td>Nb FAILED</td><td>{{nb_run_failed}}</td></tr>
<tr><td>Nb INCONCLUSIVE</td><td>{{nb_run_inc}}</td></tr>
<tr>
<td>testcase_verdict</td>
{% if testcase_verdict == "PASS" %}
<TD align="center" style="background-color:green">{{testcase_verdict}}</TD>
{% elif testcase_verdict == "FAIL" %}
<TD align="center" style="background-color:red">{{testcase_verdict}}</TD>
{% else %}
<TD align="center" style="background-color:orange">{{testcase_verdict}}</TD>
{% endif %}
</tr>
<tr><td>Nb Seg Fault</td><td>{{nb_seg_fault}}</td></tr>
</table>
</p>
<h3>Test Case runs results</h3>
{% for run_results in runs_results|sort(attribute='run_id') %}
<h4>RUN {{run_results.run_id}} </h4>
<table border>
<tr><td>run_start_time </td><td>{{run_results.run_start_time}}</td></tr>
<tr><td>run_stop_time</td><td>{{run_results.run_stop_time}}</td></tr>
<tr><td>run_duration</td><td>{{run_results.run_duration}}</td></tr>
<tr>
<td>run_verdict</td>
{% if run_results.run_verdict == "PASS" %}
<TD align="center" style="background-color:green">{{run_results.run_verdict}}</TD>
{% elif run_results.run_verdict == "FAIL" %}
<TD align="center" style="background-color:red">{{run_results.run_verdict}}</TD>
{% else %}
<TD align="center" style="background-color:orange">{{run_results.run_verdict}}</TD>
{% endif %}
</tr>
<tr><td>Seg Fault Satus</td>
{% if run_results.ue_seg_fault_status == "NO_SEG_FAULT" %}
<TD align="center" style="background-color:green">{{run_results.ue_seg_fault_status}}</TD>
{% elif run_results.ue_seg_fault_status == "SEG_FAULT" %}
<TD align="center" style="background-color:red">{{run_results.ue_seg_fault_status}}</TD>
{% else %}
<TD align="center" style="background-color:orange">unknown</TD>
{% endif %}
</tr>
</table>
{% for run_metrics in run_results.runs_metrics %}
<br></br>
<table border>
<tr><td>metric_id</td><td>{{run_metrics.metric_id}}</td></tr>
<tr><td>Description</td><td>{{run_metrics.metric_desc}}</td></tr>
<tr><td>Unit of measure</td><td>{{run_metrics.metric_uom}}</td></tr>
<tr><td>metric_min</td><td>{{run_metrics.metric_min}}</td></tr>
<tr><td>metric_max</td><td>{{run_metrics.metric_max}}</td></tr>
<tr><td>metric_mean</td><td>{{run_metrics.metric_mean}}</td></tr>
<tr><td>metric_median</td><td>{{run_metrics.metric_median}}</td></tr>
<tr><td colspan="2"></td></tr>
{% if run_metrics.pass_fail_stat is defined %}
<tr><td>Pass/fail stat</td><td>{{run_metrics.pass_fail_stat}}</td></tr>
{% endif %}
{% if run_metrics.pass_fail_min_limit is defined %}
<tr><td>Pass/fail min limit</td><td>{{run_metrics.pass_fail_min_limit}}</td></tr>
{% endif %}
{% if run_metrics.pass_fail_max_limit is defined %}
<tr><td>Pass/fail max limit</td><td>{{run_metrics.pass_fail_max_limit}}</td></tr>
{% endif %}
<tr><td colspan="2"></td></tr>
<tr><td>metric_fig</td><td><IMG src={{run_metrics.metric_fig}}></td></tr>
</table>
{% endfor %}
{% if run_results.run_traffic.traffic_count != 0 %}
<br></br>
<table border>
<TR><TH>Iperf metric</TH><TH>min</TH><TH>max</TH><TH>mean</TH><TH>median</TH><TR>
<TR><td>Bandwidth </td><td>{{run_results.run_traffic.bw_min}}</td><td>{{run_results.run_traffic.bw_max}}</td><td>{{run_results.run_traffic.bw_mean}}</td><td>{{run_results.run_traffic.bw_median}}</td><TR>
<TR><td>Jitter</td><td>{{run_results.run_traffic.jitter_min}}</td><td>{{run_results.run_traffic.jitter_max}}</td><td>{{run_results.run_traffic.jitter_mean}}</td><td>{{run_results.run_traffic.jitter_median}}</td><TR>
<TR><td>Loss rate</td><td>{{run_results.run_traffic.rl_min}}</td><td>{{run_results.run_traffic.rl_max}}</td><td>{{run_results.run_traffic.rl_mean}}</td><td>{{run_results.run_traffic.rl_median}}</td><TR>
<TR><td colspan="5"></td></TR>
<TR><td>Iperf duration</td><td>{{run_results.run_traffic.iperf_duration}}</td><td></td><td>Pass/Fail criteria (min duration)</td><td>{{run_results.run_traffic.dur_pass_fail_crit}}</td><TR>
<TR><td colspan="5"></td></TR>
<tr><td>traffic_fig</td><td colspan="4"><IMG src={{run_results.run_traffic.traffic_fig}}></td></tr>
</table>
{% endif %}
{% endfor %}
</body>
</html>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,174 @@
#! /usr/bin/python
#******************************************************************************
#
# \file autotest_analyser.py
#
# \par Informations
# - \b Project : UED Autotest Framework
# - \b Software :
#
# \date 16 september 2016
#
# \version 0.1
#
# \brief helper to test lib_autotest_analyser.py
#
# \author Benoit ROBERT (benoit.robert@syrtem.com)
#
# \par Statement of Ownership
# COPYRIGHT (c) 2016 BY SYRTEM S.A.R.L
# This software is furnished under license and may be used and copied
# only in accordance with the terms of such license and with the inclusion
# of the above COPYRIGHT notice. This SOFTWARE or any other copies thereof
# may not be provided or otherwise made available to any other person.
# No title to and ownership of the SOFTWARE is hereby transferred.
#
# The information in this SOFTWARE is subject to change without notice
# and should not be constructed as a commitment by SYRTEM.
# SYRTEM assumes no responsibility for the use or reliability of its
# SOFTWARE on equipment or platform not explicitly validated by SYRTEM.
#
# *******************************************************************************
import os
import getopt
import sys
from subprocess import call
import encoder
sys.path.append(os.path.expandvars('$OPENAIR_DIR/cmake_targets/autotests/tools/'))
#test_cases = ('030001', '030901', '031001', '031601', '031701', '031801', '031901', '032001', '032101', '032201', '032301', '032501', '032601', '032801')
test_cases = ('032800' , '032730' )
nb_run = 2
def error_opt(msg):
print("Option error: " + msg)
def main(args):
try:
analyser = __import__("lib_autotest_analyser")
except ImportError as err:
print('Import error: ' + str(err))
exit(0)
log_path = 'log_save_2016-08-14/log/'
# metric = {}
# metric['id'] = 'UE_DLSCH_BITRATE'
# metric['description'] = 'UE downlink physical throughput'
# metric['regex'] = '(UE_DLSCH_BITRATE) =\s+(\d+\.\d+) kbps.+frame = (\d+)\)'
# metric['unit_of_meas'] = 'kbps'
# metric['min_limit'] = 14668.8
#AUTOTEST Metric : RRC Measurments RSRP[0]=-97.60 dBm/RE, RSSI=-72.83 dBm, RSRQ[0] 9.03 dB, N0 -125 dBm/RE, NF 7.2 dB (frame = 4490)
metric = {}
metric['id'] = 'UE_DL_RRC_MEAS'
metric['description'] = 'UE downlink RRC Measurments'
metric['nb_metric'] = 5
# metric['regex'] = 'AUTOTEST Metric : RRC Measurments (RSRP\[0\])=(-?\d+\.?\d*)\s+(.+),\s+(RSRQ\[0\])=(-?\d+\.?\d*)\s+(.+),,\s+(N0)=(-?\d+\.?\d*)\s+(.+),,\s+(NF)=(-?\d+\.?\d*)\s+(.+)\s+\(frame = (\d+)\) '
metric['regex'] = 'AUTOTEST Metric : RRC Measurments (RSRP\[0\])=(-?\d+\.?\d*)\s+(.+)\,\s+(RSSI)=(-?\d+\.?\d*)\s+(.+)\,\s+(RSRQ\[0\])=(-?\d+\.?\d*)\s+(.+)\,\s+(N0)=(-?\d+\.?\d*)\s+(.+)\,\s+(NF)=(-?\d+\.?\d*)\s+(.+)\s+\(frame = (\d+)\)'
metric['unit_of_meas'] = 'kbps'
metric['min_limit'] = 14668.8
#report_path = log_path+'/report/'
#os.system(' mkdir -p ' + report_path)
#analyser.create_report_html(report_path)
#return(0)
test_results = []
for test_case in test_cases:
for i in range(0, nb_run):
fname = '..//log//'+test_case+'/run_'+str(i)+'/UE_exec_'+str(i)+'_.log'
args = {'metric' : metric,
'file' : fname }
# cell_synch_status = analyser.check_cell_synchro(fname)
# if cell_synch_status == 'CELL_SYNCH':
# print '!!!!!!!!!!!!!! Cell synchronized !!!!!!!!!!!'
# metric_checks_flag = 0
# else :
# print '!!!!!!!!!!!!!! Cell NOT NOT synchronized !!!!!!!!!!!'
# metrics_extracted = analyser.do_extract_metrics_new(args)
# de-xmlfy test report
xml_file = '..//log//'+test_case+'/test.'+test_case+'_ng.xml'
print xml_file
# test_result =
# test_results.append(test_result)
# xmlFile = logdir_local_testcase + '/test.' + testcasename + '.xml'
# xml="\n<testcase classname=\'"+ testcaseclass + "\' name=\'" + testcasename + "."+tags + "\' Run_result=\'" + test_result_string + "\' time=\'" + str(duration) + " s \' RESULT=\'" + testcase_verdict + "\'></testcase> \n"
# write_file(xmlFile, xml, mode="w")
# xmlFile_ng = logdir_local_testcase + '/test.' + testcasename + '_ng.xml'
# xml_ng = xmlify(test_result, wrap=testcasename, indent=" ")
# write_file(xmlFile_ng, xml_ng, mode="w")
# print "min = "+ str( metric_extracted['metric_min'] )
# print "min_index = "+ str( metric_extracted['metric_min_index'] )
# print "max = "+ str( metric_extracted['metric_max'] )
# print "max_index = "+ str( metric_extracted['metric_max_index'] )
# print "mean = "+ str( metric_extracted['metric_mean'] )
# print "median = "+ str( metric_extracted['metric_median'] )
# verdict = analyser.do_check_verdict(metric, metric_extracted)
# print verdict
# fname= 'report/2016-9-8_toto/'+test_case+'/UE_metric_UE_DLSCH_BITRATE_'+str(i)+'_.png'
# fname= 'report/UE_metric_UE_DLSCH_BITRATE_'+test_case+'_'+str(i)+'.png'
# print fname
# analyser.do_img_metrics(metric, metric_extracted, fname)
# fname = 'log//'+test_case+'/run_'+str(i)+'/UE_traffic_'+str(i)+'_.log'
# args = {'file' : fname }
# traffic_metrics = analyser.do_extract_traffic_metrics(args)
# fname= 'report/iperf_'+test_case+'_'+str(i)+'.png'
# print fname
# analyser.do_img_traffic(traffic_metrics, fname)
for test_result in test_results:
cmd = 'mkdir -p ' + report_dir + '/'+ test_result['testcase_name']
result = os.system(cmd)
report_file = report_dir + '/'+ test_result['testcase_name'] + '/'+ test_result['testcase_name']+ '_report.html'
analyser.create_test_report_detailed_html(test_result, report_file )
print test_result
if __name__ == "__main__":
main(sys.argv)

View File

@@ -1,33 +1,25 @@
#!/usr/bin/python
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
import time

View File

@@ -1,33 +1,25 @@
#!/usr/bin/python
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
import time

View File

@@ -1,4 +1,26 @@
#!/usr/bin/python
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \author Navid Nikaein, Rohit Gupta
import time
import serial

View File

@@ -1,33 +1,25 @@
#!/usr/bin/python
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
import time

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
# To free unused memory else test setup runs out of memory

View File

@@ -1,4 +1,26 @@
#!/bin/bash
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \author Navid Nikaein, Rohit Gupta
#Simple script to retry git clone in case of failure

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
#arg1 timeout to wait before running the script

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
#arg1 timeout to wait before running the script

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
#arg1 timeout to wait before running the script

View File

@@ -1,33 +1,25 @@
#!/bin/bash
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
#arg1 timeout to wait before running the script

View File

@@ -1,33 +1,25 @@
#!/usr/bin/python
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
import os

View File

@@ -0,0 +1,544 @@
#******************************************************************************
#
# \file lib_autotest_analyser.py
#
# \par Informations
# - \b Project : UED Autotest Framework
# - \b Software :
#
# \date 16 september 2016
#
# \version 0.1
#
# \brief library to extract metrics from autotest logs and assign a verdict
#
# \author Benoit ROBERT (benoit.robert@syrtem.com)
#
# \par Statement of Ownership
# COPYRIGHT (c) 2016 BY SYRTEM S.A.R.L
# This software is furnished under license and may be used and copied
# only in accordance with the terms of such license and with the inclusion
# of the above COPYRIGHT notice. This SOFTWARE or any other copies thereof
# may not be provided or otherwise made available to any other person.
# No title to and ownership of the SOFTWARE is hereby transferred.
#
# The information in this SOFTWARE is subject to change without notice
# and should not be constructed as a commitment by SYRTEM.
# SYRTEM assumes no responsibility for the use or reliability of its
# SOFTWARE on equipment or platform not explicitly validated by SYRTEM.
#
# *******************************************************************************
import re
from pylab import *
from matplotlib.font_manager import FontProperties
import os
from jinja2 import Environment, FileSystemLoader
PATH = os.path.dirname(os.path.abspath(__file__))
TEMPLATE_ENVIRONMENT = Environment(
autoescape=False,
loader=FileSystemLoader(os.path.join(PATH, '../templates')),
trim_blocks=False)
def render_template(template_filename, context):
return TEMPLATE_ENVIRONMENT.get_template(template_filename).render(context)
def init(args = None):
return
#
#
#
def do_extract_metrics(args):
# print ""
# print "do_extract_metrics ... "
fname = args['file']
metric = args['metric']
# print(fname)
# print 'metric id = ' + metric['id']
# print 'metric regex = ' + metric['regex']
count = 0
mmin = 0
mmin_index = 0
mmax = 0
mmax_index = 0
mean = 0
median = 0
output = np.fromregex(fname,metric['regex'], [('id', 'S20'), ('metric', np.float), ('frame', np.int)] )
# print 'T0T0 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
# print output
count = output['metric'].size
# print count
if count > 0:
mmin = np.amin(output['metric']);
mmin_index = np.argmin(output['metric']);
mmax = np.amax(output['metric']);
mmax_index = np.argmax(output['metric']);
mean = np.mean(output['metric']);
median = np.median(output['metric']);
# print ( ( (metric['min_limit'] > output['metric']).sum() / float(output['metric'].size) ) * 100 )
ret = { 'metric_count' : count,
'metric_buf' : output,
'metric_min' : mmin,
'metric_min_index' : mmin_index,
'metric_max' : mmax,
'metric_max_index' : mmax_index,
'metric_mean' : mean,
'metric_median' : median,
}
return(ret)
def do_extract_metrics_new(args):
# print ""
# print "do_extract_metrics ... "
fname = args['file']
metric = args['metric']
print(fname)
print 'metric id = ' + metric['id']
print 'metric regex = ' + metric['regex']
count = 0
mmin = 0
mmin_index = 0
mmax = 0
mmax_index = 0
mean = 0
median = 0
toto = [('id', 'S20'), ('metric', np.float), ('frame', np.int)]
print toto
np_format = []
for x in range(0, metric['nb_metric']):
np_format.append( ('id'+str(x), 'S20') )
np_format.append( ('metric'+str(x), np.float) )
np_format.append( ('uom'+str(x), 'S20') )
np_format.append( ('frame', np.int))
print np_format
output = np.fromregex(fname,metric['regex'], np_format)
print output
count = output['frame'].size
print count
if count > 0:
fontP = FontProperties()
fontP.set_size('small')
fig = plt.figure(1)
plt.figure(figsize=(10,10))
plot_xmax = np.amax(output['frame'])+np.amin(output['frame'])
for x in range(0, metric['nb_metric']):
metric_name = output['id'+str(x)][0]
metric_uom = output['uom'+str(x)][0]
mmin = np.amin(output['metric'+str(x)])
mmax = np.amax(output['metric'+str(x)])
mmean = np.mean(output['metric'+str(x)])
mmedian = np.median(output['metric'+str(x)])
plot_loc = 100*metric['nb_metric']+10+x+1
sbplt = plt.subplot(plot_loc)
sbplt.plot(output['frame'], output['metric'+str(x)], color='b' )
sbplt.set_title( metric_name+' ('+metric_uom+')')
if mmin < 0:
sbplot_ymin=mmin+mmin/10
else:
sbplot_ymin=0
sbplt.set_ylim(ymin=sbplot_ymin)
if mmax > 0:
sbplot_ymax=mmax+mmax/10
else:
sbplot_ymax=0
sbplt.set_ylim(ymax=sbplot_ymax)
sbplt.set_xlim(xmax=plot_xmax)
sbplt.set_xlim(xmin=0)
text='min: '+str(mmin)+'\nmax: '+str(mmax)+'\nmean: '+str(mmean)+'\nmedian: '+str(mmedian)
sbplt.text( plot_xmax+10,sbplot_ymin,text)
sbplt.set_xlabel('frame')
sbplt.set_ylabel(metric_name)
plt.tight_layout()
fname = "toto.png"
# lgd = plt.legend(prop=fontP, bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)
mng = plt.get_current_fig_manager()
plt.savefig(fname, bbox_inches='tight')
plt.close()
mmin = np.amin(output['metric']);
mmin_index = np.argmin(output['metric']);
mmax = np.amax(output['metric']);
mmax_index = np.argmax(output['metric']);
mean = np.mean(output['metric']);
median = np.median(output['metric']);
# print ( ( (metric['min_limit'] > output['metric']).sum() / float(output['metric'].size) ) * 100 )
ret = { 'metric_count' : count,
'metric_buf' : output,
'metric_min' : mmin,
'metric_min_index' : mmin_index,
'metric_max' : mmax,
'metric_max_index' : mmax_index,
'metric_mean' : mean,
'metric_median' : median,
}
return(ret)
#
#
#
def do_check_verdict(metric_def, metric_data):
verdict = 'INCON'
pass_fail_stat = metric_def['pass_fail_stat']
if pass_fail_stat == 'max_value':
metric_stat = metric_data['metric_max']
elif pass_fail_stat == 'min_value':
metric_stat = metric_data['metric_min']
elif pass_fail_stat == 'mean_value':
metric_stat = metric_data['metric_mean']
elif pass_fail_stat == 'median_value':
metric_stat = metric_data['metric_median']
else :
print "do_check_verdict -> undef metric stat (pass_fail_stat in xml file)"
return verdict
if 'max_limit' in metric_def:
if metric_stat > metric_def['max_limit']:
verdict = 'FAIL'
else:
verdict = 'PASS'
if 'min_limit' in metric_def:
if metric_stat < metric_def['min_limit']:
verdict = 'FAIL'
else:
verdict = 'PASS'
return verdict
def do_print_metrics(metric_def, metric_data):
if metric_data['metric_count'] > 0 :
# output = np.array( metric_data['metric_buf'] , [('id', 'S20'), ('metric', np.float), ('frame', np.int)])
output = metric_data['metric_buf']
# print output
fontP = FontProperties()
fontP.set_size('small')
plt.scatter(output['frame'], output['metric'], color='b', alpha=0.33, s = 1 )
plt.plot([0, output['frame'][metric_data['metric_count']-1]],[ metric_def['min_limit'],metric_def['min_limit']], 'r-', lw=2) # Red straight line
plt.title('Physical throughput ')
plt.xlabel('frame')
plt.ylabel(metric_def['id'])
plt.legend(prop=fontP)
mng = plt.get_current_fig_manager()
plt.show()
def do_img_metrics(metric_def, metric_data, fname):
if metric_data['metric_count'] > 0 :
# output = np.array( metric_data['metric_buf'] , [('id', 'S20'), ('metric', np.float), ('frame', np.int)])
output = metric_data['metric_buf']
# print 'TITI !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
# print output
# print metric_def['min_limit']
# print metric_data['metric_count']
# print output['frame'][metric_data['metric_count']-1]
fontP = FontProperties()
fontP.set_size('small')
plt.figure()
# print output['frame'].size
# print output['metric'].size
plt.scatter(output['frame'], output['metric'], color='b', alpha=0.33, s = 1 , label=metric_def['id'])
if 'min_limit' in metric_def:
plt.plot([0, output['frame'][metric_data['metric_count']-1]],[ metric_def['min_limit'],metric_def['min_limit']], 'r-', lw=2, label='min limit') # Red straight line
plt.title(metric_def['id'] +' ('+metric_def['unit_of_meas']+')')
plt.xlabel('frame')
plt.ylabel(metric_def['id'])
# Set graphic minimum Y axis
# -------------------------
if metric_data['metric_min'] < 0:
plt.ylim(ymin=metric_data['metric_min']+metric_data['metric_min']/10)
else :
plt.ylim(ymin=0)
y_axis_max = 0
if 'min_limit' in metric_def:
if metric_data['metric_max'] > metric_def['min_limit']:
y_axis_max =metric_data['metric_max']+metric_data['metric_max']/10
else:
y_axis_max =metric_def['min_limit']+metric_def['min_limit']/10
else:
y_axis_max =metric_data['metric_max']+metric_data['metric_max']/10
plt.ylim(ymax=y_axis_max)
lgd = plt.legend(prop=fontP, bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)
mng = plt.get_current_fig_manager()
plt.savefig(fname, bbox_extra_artists=(lgd,), bbox_inches='tight')
plt.close()
# with open(fname, 'r') as f:
# for line in f:
# m = re.search(metric['regex'], line)
# if m :
# print m.group(1) + " -> "+m.group(2)
def do_extract_traffic_metrics(args):
fname = args['file']
# print(fname)
# print 'metric id = ' + metric['id']
#[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
#[ 3] 0.0- 1.0 sec 238 KBytes 1.95 Mbits/sec 0.980 ms 2/ 174 (1.1%)
# [ 3] 0.0- 1.0 sec 63.2 KBytes 517 Kbits/sec 0.146 ms 1/ 45 (2.2%)
# iperf_regex = '[\s*(\d+)]\s+\d+\.\d+-\s*(\d+\.\d+)\s+sec\s+(\d+).+(\d+\.\d+).+(\d+\.\d+).+(\d+)\/\s*(\d+)\s+\((\d+\.\d+)\%\)'
# ID 0.0 1.0 63.2 KByte 517 Kbits/s 0.146
iperf_regex = '\[\s*(\d+)\]\s+(\d+\.*\d*)-\s*(\d+\.*\d*)\s+sec\s+(\d+\.*\d*)\s+(\D+)\s+(\d+\.*\d*)\s+(\D+)\s+(\d+\.*\d*)\s+ms\s+(\d+)\/\s*(\d+)\s+\((\d+\.*\d*)\%\)'
# print 'iperf regex = ' + iperf_regex
count = 0
bw_min = 0
bw_max = 0
bw_mean = 0
bw_median = 0
jitter_min = 0
jitter_max = 0
jitter_mean = 0
jitter_median = 0
rl_min = 0
rl_max = 0
rl_mean = 0
rl_median = 0
interval_stop_max = 0
output = np.fromregex(fname,iperf_regex, [('id', np.int) , ('interval_start', np.float), ('interval_stop', np.float), ('transfer', np.float), ('transfer_uom', 'S20') ,('bandwidth', np.float), ('bandwidth_uom', 'S20') ,('jitter', np.float), ('lost', np.int) , ('total', np.int), ('rate_lost', np.float) ] )
count = output['id'].size -1
# remove last line that is an iperf result resume
if count > 0:
output= np.delete(output, (count), axis=0 )
# print output
bw_min = np.amin(output['bandwidth']);
bw_max = np.amax(output['bandwidth']);
bw_mean = np.mean(output['bandwidth']);
bw_median = np.median(output['bandwidth']);
jitter_min = np.amin(output['jitter']);
jitter_max = np.amax(output['jitter']);
jitter_mean = np.mean(output['jitter']);
jitter_median = np.median(output['jitter']);
rl_min = np.amin(output['rate_lost']);
rl_max = np.amax(output['rate_lost']);
rl_mean = np.mean(output['rate_lost']);
rl_median = np.median(output['rate_lost']);
interval_stop_max = np.amax(output['interval_stop']);
else :
count = 0
ret = { 'traffic_count' : count,
'traffic_buf' : output,
'bw_min' : bw_min,
'bw_max' : bw_max,
'bw_mean' : bw_mean,
'bw_median' : bw_median,
'jitter_min' : jitter_min,
'jitter_max' : jitter_max,
'jitter_mean' : jitter_mean,
'jitter_median' : jitter_median,
'rl_min' : rl_min,
'rl_max' : rl_max,
'rl_mean' : rl_mean,
'rl_median' : rl_median,
'interval_stop_max' : interval_stop_max
}
return(ret)
def do_img_traffic(traffic_data, fname):
if traffic_data['traffic_count'] > 0 :
output = traffic_data['traffic_buf']
fontP = FontProperties()
fontP.set_size('small')
fig = plt.figure(1)
ax1= plt.subplot(311)
plt.plot(output['interval_stop'], output['bandwidth'], color='b' )
ax1.set_title('Bandwidth (Mbits/s)')
ax1.set_ylim(ymin=-1)
ax1.set_xlim(xmax=np.amax(output['interval_stop']))
text='min: '+str(traffic_data['bw_min'])+'\nmax: '+str(traffic_data['bw_max'])+'\nmean: '+str(traffic_data['bw_mean'])+'\nmedian: '+str(traffic_data['bw_median'])
ax1.text( np.amax(output['interval_stop'])+10,0,text)
ax1.set_xlabel('time (s)')
ax1.set_ylabel(' ')
ax2=plt.subplot(312)
plt.plot(output['interval_stop'], output['jitter'], color='b' )
ax2.set_title('Jitter (ms)')
ax2.set_xlim(xmax=np.amax(output['interval_stop']))
ax2.set_ylim(ymin=-1)
text='min: '+str(traffic_data['jitter_min'])+'\nmax: '+str(traffic_data['jitter_max'])+'\nmean: '+str(traffic_data['jitter_mean'])+'\nmedian: '+str(traffic_data['jitter_median'])
ax2.text( np.amax(output['interval_stop'])+10,0,text)
ax2.set_xlabel('time (s)')
ax2.set_ylabel(' ')
ax3=plt.subplot(313)
plt.plot(output['interval_stop'], output['rate_lost'], color='b')
ax3.set_title('Loss rate %')
ax3.set_xlim(xmax=np.amax(output['interval_stop']))
ax3.set_ylim(ymin=-1)
text='min: '+str(traffic_data['rl_min'])+'\nmax: '+str(traffic_data['rl_max'])+'\nmean: '+str(traffic_data['rl_mean'])+'\nmedian: '+str(traffic_data['rl_median'])
ax3.text( np.amax(output['interval_stop'])+10,0,text)
ax3.set_xlabel('time (s)')
ax3.set_ylabel(' ')
# plt.title('Physical throughput ('+metric_def['unit_of_meas']+')')
# plt.xlabel('time (s)')
# plt.ylabel(metric_def['id'])
# Set graphic minimum Y axis
# -------------------------
# if traffic_data['bw_min'] == 0 :
# plt.ylim(ymin=-metric_def['min_limit']/10)
# else :
# plt.ylim(ymin=0)
# y_axis_max = 0
# if traffic_data['metric_max'] > metric_def['min_limit']:
# y_axis_max =traffic_data['metric_max']+traffic_data['metric_max']/10
# else:
# y_axis_max =metric_def['min_limit']+metric_def['min_limit']/10
#
# plt.ylim(ymax=y_axis_max)
plt.tight_layout()
# lgd = plt.legend(prop=fontP, bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)
mng = plt.get_current_fig_manager()
plt.savefig(fname, bbox_inches='tight')
plt.close()
def create_report_html(context):
fname = context['report_path']+"/index.html"
#
with open(fname, 'w') as f:
html = render_template('index.html', context)
f.write(html)
def create_test_report_detailed_html(context, fname ):
with open(fname, 'w') as f:
html = render_template('testcase_report.html', context)
f.write(html)
def check_cell_synchro(fname):
with open(fname, 'r') as f:
for line in f:
m = re.search('AUTOTEST Cell Sync \:', line)
if m :
#print line
return 'CELL_SYNCH'
return 'CELL_NOT_SYNCH'
def check_exec_seg_fault(fname):
with open(fname, 'r') as f:
for line in f:
m = re.search('Segmentation fault', line)
if m :
#print line
return 'SEG_FAULT'
return 'NO_SEG_FAULT'

View File

@@ -1,4 +1,27 @@
#!/bin/bash
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# \author Navid Nikaein, Rohit Gupta
#arg0 -> Name of executable
#args[1...N] -> arguments to be passed to executable

View File

@@ -1,33 +1,25 @@
#!/usr/bin/python
#******************************************************************************
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# *******************************************************************************/
# \author Navid Nikaein, Rohit Gupta
import sys

View File

@@ -0,0 +1,13 @@
When running lsusb, if you have:
Bus 001 Device 002: ID 12d1:14fe Huawei Technologies Co., Ltd. Modem (Mass Storage Mode)
You need to run:
usb_modeswitch -v 12d1 -p 14fe -M '55534243123456780000000000000011062000000100000000000000000000'
After what, running lsusb should give:
Bus 001 Device 004: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
Values of 'Bus' and 'Device' may differ of course.

View File

@@ -0,0 +1,2 @@
sudo /opt/ltebox/tools/stop_ltebox || true
sudo /opt/ltebox/tools/start_ltebox

View File

@@ -0,0 +1 @@
sudo /opt/ltebox/tools/stop_ltebox

View File

@@ -0,0 +1,5 @@
sudo rmmod nasmesh || true
sudo rmmod ue_ip || true
sudo /opt/ltebox/tools/stop_ltebox || true
sudo killall -9 hss_sim || true
sudo /opt/hss_sim0609/starthss_real

View File

@@ -0,0 +1,146 @@
The configuration for the bandrich in the test setup is a bit hackish.
Here come some notes explaining what we do here.
To get /dev/bandrich.data and /dev/bandrich.control (so that you don't need
to look for which /dev/ttyUSBx are used by your dongle, and always use
the same files, no matter what), add a udev file:
/etc/udev/rules.d/bandrich.rules
containing lines:
SUBSYSTEM=="tty", ENV{ID_VENDOR_ID}=="1a8d", ENV{ID_MODEL_ID}=="100d", ENV{ID_SERIAL_SHORT}=="357473040068155", ENV{ID_USB_INTERFACE_NUM}=="00", SYMLINK+="bandrich.data", MODE="0666"
SUBSYSTEM=="tty", ENV{ID_VENDOR_ID}=="1a8d", ENV{ID_MODEL_ID}=="100d", ENV{ID_SERIAL_SHORT}=="357473040068155", ENV{ID_USB_INTERFACE_NUM}=="02", SYMLINK+="bandrich.control", MODE="0666"
To avoid NetworkManager to play with the bandrich, add also the line:
ENV{ID_VENDOR_ID}=="1a8d", ENV{ID_MM_DEVICE_IGNORE}="1"
Maybe also add; , ENV{ID_MM_DEVICE_IGNORE}="1"
to the two other lines.
Then run: udevadm control --reload-rules
And: service network-manager restart
Change vendor_id/model_id/serial/interface num to match yours.
Use lsusb -v to find values.
At first we used /dev/ttyUSB2 linked to /dev/bandrich for both data (in
the wvdial configuration file) and control (in the python code, opening
/dev/bandrich the standard unix way and read and write into it, with no
special libusb commands).
But it turned out that using /dev/ttyUSB2 for data gives bad throughput
results. We tested downlink UDP at 15Mb/s but the maximum throughput for
a 5MHz cell was around 13, and we had a lot of packets lost at the iperf's
UDP level. Radio was looking fine (all packets acked correctly), so it was
not a radio problem. The dongle in a windows machine was working fine,
15Mbs/s. Using the wvdial configuration file from test setup v1 gave also
good results. The only difference was the use of /dev/ttyUSB0 instead of
/dev/ttyUSB2. Using /dev/ttyUSB0 solved the throughput issue.
But using /dev/ttyUSB0 for control in the pyton code did not work. The
output was incorrect.
So we decided to have /dev/bandrich.data linked to /dev/ttyUSB0 for data
(wvdial) and /dev/bandrich.control linked to /dev/ttyUSB2 for control
(in python code).
It may not be the correct way to go, but it seems to do the trick so far.
Your device may need some other solution.
Here, we get, as result of lsusb -v:
[SNIP]
Bus 003 Device 009: ID 1a8d:100d BandRich, Inc. 4G LTE adapter
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x1a8d BandRich, Inc.
idProduct 0x100d 4G LTE adapter
bcdDevice 0.00
iManufacturer 10 BandRich, Inc.
iProduct 9 BandLuxe HSPA-LTE Adapter
iSerial 11 357473040068155
[SNIP]
You can also run:
udevadm monitor
and unplug/replug the dongle. It will print some information.
The command:
udevadm info --export-db
is also important to get the right identifier to put in ENV{}. (It also
gives the correct value.)
Here is extracted what we have for our dongle:
P: /devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.2/ttyUSB2/tty/ttyUSB2
N: ttyUSB2
S: bandrich
S: serial/by-id/usb-BandRich__Inc._BandLuxe_HSPA-LTE_Adapter_357473040068155-if02-port0
S: serial/by-path/pci-0000:00:1a.0-usb-0:1.2:1.2-port0
E: DEVLINKS=/dev/bandrich /dev/serial/by-id/usb-BandRich__Inc._BandLuxe_HSPA-LTE_Adapter_357473040068155-if02-port0 /dev/serial/by-path/pci-0000:00:1a.0-usb-0:1.2:1.2-port0
E: DEVNAME=/dev/ttyUSB2
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb3/3-1/3-1.2/3-1.2:1.2/ttyUSB2/tty/ttyUSB2
E: ID_BUS=usb
E: ID_MM_CANDIDATE=1
E: ID_MODEL=BandLuxe_HSPA-LTE_Adapter
E: ID_MODEL_ENC=BandLuxe\x20HSPA-LTE\x20Adapter
E: ID_MODEL_FROM_DATABASE=4G LTE adapter
E: ID_MODEL_ID=100d
E: ID_PATH=pci-0000:00:1a.0-usb-0:1.2:1.2
E: ID_PATH_TAG=pci-0000_00_1a_0-usb-0_1_2_1_2
E: ID_REVISION=0000
E: ID_SERIAL=BandRich__Inc._BandLuxe_HSPA-LTE_Adapter_357473040068155
E: ID_SERIAL_SHORT=357473040068155
E: ID_TYPE=generic
E: ID_USB_DRIVER=option
E: ID_USB_INTERFACES=:ffffff:020600:0a0000:080650:
E: ID_USB_INTERFACE_NUM=02
E: ID_VENDOR=BandRich__Inc.
E: ID_VENDOR_ENC=BandRich\x2c\x20Inc.
E: ID_VENDOR_FROM_DATABASE=BandRich, Inc.
E: ID_VENDOR_ID=1a8d
E: MAJOR=188
E: MINOR=2
E: SUBSYSTEM=tty
E: USEC_INITIALIZED=672068596
You can also run:
udevadm info -a -p /sys/bus/usb-serial/devices/ttyUSB0
udevadm info -a -p /sys/bus/usb-serial/devices/ttyUSB2
Note: after creating the udev files, you need to unplug/replug your
dongle for /dev/bandrich.data and /dev/bandrich.control to appear.
Note: the mode 0666 is for everyone to access the dongle (no need for
root privileges). If you prefer you can set it to 0600 (only root)
or 0660 (root and group).
Then you need to configure pppd, to get correct 'route' information when
you run wvdial.
The file /etc/ppp/peers/wvdial should have the following content:
noauth
name wvdial
usepeerdns
defaultroute
replacedefaultroute
The file wvdial.bandrich.conf has been created by copying some information
found on the Internet. Its content may not be fully correct. Adapt to your
situation. It seems to work here.

View File

@@ -0,0 +1,2 @@
echo $SERVER_IP
timeout -s 9 20s iperf -c $SERVER_IP -i1

View File

@@ -0,0 +1,3 @@
echo $SERVER_IP
echo $UDP_BANDWIDTH
timeout -s 9 20s iperf -c $SERVER_IP -i1 -u -b $UDP_BANDWIDTH

View File

@@ -0,0 +1,6 @@
sudo rm -rf /tmp/oai_test_setup
mkdir /tmp/oai_test_setup
cd /tmp/oai_test_setup
git clone $REPOSITORY_URL oai
cd oai
git checkout $COMMIT_ID

View File

@@ -0,0 +1,9 @@
cd /tmp/oai_test_setup/oai
source oaienv
cd cmake_targets
rm -rf log
mkdir -p log
echo $BUILD_ARGUMENTS
./build_oai $BUILD_ARGUMENTS
echo $BUILD_OUTPUT
ls $BUILD_OUTPUT

View File

@@ -0,0 +1,4 @@
cd /tmp/oai_test_setup/oai
source oaienv
echo $EXEC $EXEC_ARGS
$EXEC $EXEC_ARGS

View File

@@ -0,0 +1,13 @@
cd /tmp/oai_test_setup/oai
source oaienv
sudo rmmod nasmesh || true
sudo rmmod ue_ip || true
cd cmake_targets
rm -rf log
mkdir -p log
echo $PRE_BUILD
bash -c "$PRE_BUILD"
echo $BUILD_PROG $BUILD_ARGUMENTS
$BUILD_PROG $BUILD_ARGUMENTS
echo $PRE_EXEC
bash -c "$PRE_EXEC"

View File

@@ -0,0 +1,103 @@
import sys, os, select, re, time
def quit(r):
sys.stdout.flush()
os._exit(r)
class ModemResponse:
def __init__(self, retcode, retstring):
self.ret = retcode
self.data = retstring
class Modem:
def open(self):
self.i = os.open(self.devname, os.O_RDONLY)
self.o = os.open(self.devname, os.O_WRONLY)
#clear output of modem, if any is pending (not sure of this)
while True:
(ri, ro, re) = select.select([self.i], [], [self.i], 0)
if len(ri) == 0:
break
l = os.read(self.i, 65536)
print "WARNING: modem had unread data: '" + \
l.replace('\r', '\\r') + "'"
def __init__(self, devname):
self.devname = devname
self.i = -1
self.o = -1
self.open()
def send(self, s):
print "DEBUG: SEND TO MODEM: '" + s + "'"
os.write(self.o, s+"\r")
def recv(self):
return os.read(self.i, 65536)
def wait(self):
ok = '\r\nOK\r\n'
error = '\r\nERROR\r\n'
cme_error = '\r\nCME ERROR:[^\r]*\r\n'
no_carrier = '\r\nNO CARRIER\r\n'
l = ''
while True:
l = l + self.recv()
print "DEBUG: CURRENT MODEM RESPONSE: '" + \
l.replace('\r','\\r').replace('\n','\\n') + "'"
#AT returned 'things' are "\r\nXXXX\r\n", look for that.
#Check if last one matches 'ok', 'error' or 'cme_error'.
#(Hopefully this is enough and no other reply is possible.)
#This code accepts invalid responses from modem, ie. all
#that does not fit in the 'findall' is thrashed away, maybe
#we want to do something in this case?
res = re.findall('\r\n[^\r]*\r\n', l)
if len(res) == 0:
print "DEBUG: NO MATCH: wait for more input from modem"
continue
last_res = res[len(res)-1]
print "DEBUG: CURRENT LAST LINE: '" + \
last_res.replace('\r','\\r').replace('\n','\\n')+"'"
if re.match(ok, last_res) != None:
return ModemResponse(True, l)
if ( re.match(error, last_res) != None or
re.match(cme_error, last_res) != None or
re.match(no_carrier, last_res) != None):
return ModemResponse(False, l)
#TODO purge?
#re.purge()
def modem_reset_cycle(self):
#close all
os.close(self.i)
os.close(self.o)
self.i = -1
self.o = -1
print "DEBUG: RESET CYCLE: wait for modem to go away"
#wait for file descriptor to go away
while True:
try:
test = os.open(self.devname, os.O_RDONLY)
os.close(test)
time.sleep(0.1)
except BaseException, e:
break
print "DEBUG: RESET CYCLE: modem has gone away"
print "DEBUG: RESET CYCLE: wait for modem to come back"
#wait for file descriptor to be back, try to open it over and over
#TODO: use inotify here? (it's not in basic python as it seems)
while True:
try:
test = os.open(self.devname, os.O_RDONLY)
os.close(test)
break
except BaseException, e:
time.sleep(0.1)
print "DEBUG: RESET CYCLE: modem is back"
#back to business
self.open()

View File

@@ -0,0 +1,12 @@
#enable control+C reception (to be refined if it does not work)
stty isig intr ^C
cd /tmp/oai_test_setup/oai
source oaienv
sudo rmmod nasmesh || true
sudo rmmod ue_ip || true
cd cmake_targets/lte_build_oai/build
ulimit -c unlimited
sudo rm -f core
#sudo -E ./lte-softmodem -O $OPENAIR_DIR/cmake_targets/autotests/v2/config/enb.band7.tm1.usrpb210.conf
sudo -E ./lte-softmodem -O /tmp/enb.conf

View File

@@ -0,0 +1,4 @@
stty isig intr ^C
#timeout -s 9 20s iperf -s -i1
iperf -s -i1

View File

@@ -0,0 +1,4 @@
stty isig intr ^C
#timeout -s 9 20s iperf -s -i1 -u
iperf -s -i1 -u

View File

@@ -0,0 +1,13 @@
#enable control+C reception (to be refined if it does not work)
stty isig intr ^C
cd /tmp/oai_test_setup/oai
source oaienv
sudo rmmod nasmesh || true
sudo rmmod ue_ip || true
cd cmake_targets/autotests/v2/actions
sudo python start_3276.py
sudo wvdial -C wvdial.3276.conf || true
sudo python stop_3276.py

View File

@@ -0,0 +1,59 @@
import time
from modem import quit, Modem
try:
modem = Modem("/dev/ttyUSB0")
#test that modem is there
print "INFO: check modem's presence"
modem.send('AT')
if modem.wait().ret != True:
print "ERROR: no modem?"
quit(1)
#first deactivate
print "INFO: deactivate the modem"
modem.send('AT+CFUN=0')
if modem.wait().ret != True:
print "ERROR: failed deactivating the modem"
quit(1)
#activate the modem
print "INFO: activate the modem"
modem.send('AT+CFUN=1')
if modem.wait().ret != True:
print "ERROR: failed asking modem for activation"
quit(1)
#wait for modem to be connected
#timeout after one minute
print "INFO: wait for modem to be connected (timeout: one minute)"
start_time = time.time()
while True:
modem.send('AT+CGATT?')
r = modem.wait()
if r.ret != True:
print "ERROR: failed checking attachment status of modem"
quit(1)
if "+CGATT: 1" in r.data:
break
if not "CGATT: 0" in r.data:
print "ERROR: bad data when checking attachment status of modem"
quit(1)
time.sleep(0.1)
if time.time() > start_time + 60:
print "ERROR: modem not connected after one minute, close modem"
modem.send('AT+CFUN=0')
r = modem.wait()
if r.ret != True:
print "ERROR: closing modem failed"
quit(1)
print "INFO: modem is connected"
except BaseException, e:
print "ERROR: " + str(e)
quit(1)
quit(0)

View File

@@ -0,0 +1,26 @@
#enable control+C reception (to be refined if it does not work)
stty isig intr ^C
#If /dev/bandrich is not present when we start the test, what to do?
#The following commented lines are an attempt at solving this.
#This is not satisfying, so we rather do nothing.
##the UE got stuck once, I had to run usb_modeswitch by hand.
##So at this point, if /dev/bandrich does not exist, maybe the UE is
##stuck for whatever reason. Let's forcefully run usb_modeswitch.
#if [ ! -e /dev/bandrich ]; then sudo usb_modeswitch -v 1a8d -p 1000 -I -W -K; true; fi
#
##wait for /dev/bandrich (TODO: use inotify?)
##may fail if the bandrich is in a bad state
#while [ ! -e /dev/bandrich ]; do sleep 1; done
cd /tmp/oai_test_setup/oai
source oaienv
sudo rmmod nasmesh || true
sudo rmmod ue_ip || true
cd cmake_targets/autotests/v2/actions
python start_bandrich.py
sudo wvdial -C wvdial.bandrich.conf || true
python stop_bandrich.py

View File

@@ -0,0 +1,55 @@
import time
from modem import quit, Modem
try:
modem = Modem("/dev/bandrich.control")
#test that modem is there
print "INFO: check modem's presence"
modem.send('AT')
if modem.wait().ret != True:
print "ERROR: no modem?"
quit(1)
#activate the modem, be brutal and reset it too!
print "INFO: reset and activate the modem"
modem.send('AT+CFUN=1,1')
if modem.wait().ret != True:
print "ERROR: failed asking modem for activation"
quit(1)
#modem has gone! wait for it to pop up again
modem.modem_reset_cycle()
#wait for modem to be connected
#timeout after one minute
print "INFO: wait for modem to be connected (timeout: one minute)"
start_time = time.time()
while True:
modem.send('AT+CGATT?')
r = modem.wait()
if r.ret != True:
print "ERROR: failed checking attachment status of modem"
quit(1)
if "+CGATT: 1" in r.data:
break
if not "CGATT: 0" in r.data:
print "ERROR: bad data when checking attachment status of modem"
quit(1)
time.sleep(0.1)
if time.time() > start_time + 60:
print "ERROR: modem not connected after one minute, close modem"
modem.send('AT+CFUN=4')
r = modem.wait()
if r.ret != True:
print "ERROR: closing modem failed"
quit(1)
print "INFO: modem is connected"
except BaseException, e:
print "ERROR: " + str(e)
quit(1)
quit(0)

View File

@@ -0,0 +1,29 @@
import time
from modem import quit, Modem
try:
modem = Modem("/dev/ttyUSB0")
#test that modem is there
print "INFO: check modem's presence"
modem.send('AT')
r = modem.wait()
if r.ret != True and "NO CARRIER" not in r.data:
print "ERROR: no modem?"
quit(1)
if "NO CARRIER" in r.data:
print "WARNING: 'NO CARRIER' detected, not sure if handled correctly"
#deactivate the modem
print "INFO: deactivate the modem"
modem.send('AT+CFUN=0')
if modem.wait().ret != True:
print "ERROR: failed asking modem for deactivation"
quit(1)
except BaseException, e:
print "ERROR: " + str(e)
quit(1)
quit(0)

View File

@@ -0,0 +1,29 @@
import time
from modem import quit, Modem
try:
modem = Modem("/dev/bandrich.control")
#test that modem is there
print "INFO: check modem's presence"
modem.send('AT')
r = modem.wait()
if r.ret != True and "NO CARRIER" not in r.data:
print "ERROR: no modem?"
quit(1)
if "NO CARRIER" in r.data:
print "WARNING: 'NO CARRIER' detected, not sure if handled correctly"
#deactivate the modem
print "INFO: deactivate the modem"
modem.send('AT+CFUN=4')
if modem.wait().ret != True:
print "ERROR: failed asking modem for deactivation"
quit(1)
except BaseException, e:
print "ERROR: " + str(e)
quit(1)
quit(0)

View File

@@ -0,0 +1,27 @@
[Dialer Defaults]
Modem = /dev/ttyUSB0
ISDN = off
Modem Type = Analog Modem
Baud = 9600
Init1 = ATZ
Init2 = AT&F &D2 &C1
Init3 = AT+CGDCONT=1,"IP","oai.ipv4"
Phone = *99#
Phone1 =
Phone2 =
Phone3 =
Phone4 =
Ask Password = off
Password = ''
Username = ImaginLab
Auto Reconnect = off
Abort on Busy = off
Carrier Check = on
Check Def Route = on
Abort on No Dialtone = on
Stupid Mode = on
Idle Seconds = 0
Auto DNS = on
;Minimize = off
;Dock = off
;Do NOT edit this file by hand!

View File

@@ -0,0 +1,36 @@
[Dialer Defaults]
Modem = /dev/bandrich.data
ISDN = off
Modem Type = Analog Modem
Baud = 9600
Init = ATZ
Init2 = AT+CPIN?
Init3 = AT+CGREG?
Init4 = AT+COPS?
Init5 = AT+CSQ
Init6 =
Init7 = AT+CGATT=1
Init8 =
Init9 =
Phone = *99***1#
Phone1 =
Phone2 =
Phone3 =
Phone4 =
Dial Prefix =
Dial Attempts = 1
Dial Command = ATM1L3DT
Ask Password = off
Password = ''
Username = ImaginLab
Auto Reconnect = off
Abort on Busy = off
Carrier Check = on
Check Def Route = on
Abort on No Dialtone = on
Stupid Mode = on
Idle Seconds = 0
Auto DNS = on
;Minimize = off
;Dock = off
;Do NOT edit this file by hand!

View File

@@ -0,0 +1,551 @@
import threading, os, re
from utils import quickshell, log, TestFailed, do_tests
from task import Task, WAITLOG_SUCCESS
class alu_test:
def __init__(self,
epc, enb, ue,
openair,
user, password,
log_subdir,
env,
enb_rru = "",
enb_rcc = ""):
self.epc_machine = epc
self.enb_machine = enb
self.ue_machine = ue
self.openair_dir = openair
self.oai_user = user
self.oai_password = password
self.env = env
self.enb_rru_machine = enb_rru
self.enb_rcc_machine = enb_rcc
self.task_hss = None
self.task_enb = None
self.task_ue = None
self.task_rru_enb = None
self.task_rcc_enb = None
self.logdir = openair + '/cmake_targets/autotests/log/' + log_subdir
quickshell('mkdir -p ' + self.logdir)
#event object used to wait for several tasks at once
self.event = threading.Event()
##########################################################################
# finish
##########################################################################
def finish(self):
#brutally kill tasks still running
#TODO: call 'wait', some processes may still be there as zombies
if self.task_hss != None and self.task_hss.alive():
self.task_hss.kill()
if self.task_enb != None and self.task_enb.alive():
self.task_enb.kill()
if self.task_ue != None and self.task_ue.alive():
self.task_ue.kill()
if self.task_rru_enb != None and self.task_rru_enb.alive():
self.task_rru_enb.kill()
if self.task_rcc_enb != None and self.task_rcc_enb.alive():
self.task_rcc_enb.kill()
##########################################################################
# start_epc
##########################################################################
def start_epc(self):
#launch HSS, wait for prompt
log("INFO: ALU test: run HSS")
self.task_hss = Task("actions/alu_hss.bash",
"alu_hss",
self.epc_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/alu_hss." + self.epc_machine,
event=self.event)
self.task_hss.waitlog('S6AS_SIM-> ')
#then launch EPC, wait for connection on HSS side
log("INFO: ALU test: run EPC")
task_epc = Task("actions/alu_epc.bash",
"ALU EPC",
self.epc_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/alu_epc." + self.epc_machine)
ret = task_epc.wait()
if ret != 0:
log("ERROR: EPC start failure");
raise TestFailed()
self.task_hss.waitlog('Connected\n')
##########################################################################
# stop_epc
##########################################################################
def stop_epc(self):
#stop EPC, wait for disconnection on HSS side
log("INFO: ALU test: stop EPC")
task_epc = Task("actions/alu_epc_stop.bash",
"alu_epc_stop",
self.epc_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/alu_epc_stop." + self.epc_machine)
ret = task_epc.wait()
if ret != 0:
log("ERROR: ALU test: ALU EPC stop failed")
raise TestFailed()
self.task_hss.waitlog('Disconnected\n')
log("INFO: ALU test: stop HSS")
self.task_hss.sendnow("exit\n")
ret = self.task_hss.wait()
if ret != 0:
log("ERROR: ALU test: ALU HSS failed")
raise TestFailed()
##########################################################################
# compile_enb
##########################################################################
def compile_enb(self, build_arguments, log_suffix=""):
log("INFO: ALU test: compile softmodem on " + self.enb_machine)
envcomp = list(self.env)
envcomp.append('BUILD_ARGUMENTS="' + build_arguments + '"')
#we don't care about BUILD_OUTPUT but required (TODO: change that)
envcomp.append('BUILD_OUTPUT=/')
logdir = self.logdir + "/compile_log"
remote_files = "'/tmp/oai_test_setup/oai/cmake_targets/log/*'"
post_action = "mkdir -p "+ logdir + \
" && sshpass -p " + self.oai_password + \
" scp -r " + self.oai_user + \
"@" + self.enb_machine + ":" + remote_files + " " + logdir + \
" || true"
task = Task("actions/compilation.bash",
"compile_softmodem",
self.enb_machine,
self.oai_user,
self.oai_password,
envcomp,
self.logdir + "/compile_softmodem." + log_suffix + \
self.enb_machine,
post_action=post_action)
ret = task.wait()
if ret != 0:
log("ERROR: softmodem compilation failure");
raise TestFailed()
task.postaction()
##########################################################################
# start_enb
##########################################################################
def start_enb(self, config_file):
#copy wanted configuration file
quickshell("sshpass -p " + self.oai_password +
" scp config/" + config_file + " " +
self.oai_user + "@" + self.enb_machine + ":/tmp/enb.conf")
#run softmodem
log("INFO: ALU test: run softmodem with configuration file " +
config_file)
self.task_enb = Task("actions/run_enb.bash",
"run_softmodem",
self.enb_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/run_softmodem." + self.enb_machine,
event=self.event)
self.task_enb.waitlog('got sync')
##########################################################################
# stop_enb
##########################################################################
def stop_enb(self):
log("INFO: ALU test: stop softmodem")
self.task_enb.sendnow("%c" % 3)
ret = self.task_enb.wait()
if ret != 0:
log("ERROR: ALU test: softmodem failed")
#not sure if we have to quit here or not
#os._exit(1)
##########################################################################
# start_enb_rru_rcc
##########################################################################
def start_enb_rru_rcc(self, rru_config_file, rcc_config_file):
#copy wanted configuration files
quickshell("sshpass -p " + self.oai_password +
" scp config/" + rru_config_file + " " +
self.oai_user + "@" + self.enb_rru_machine+":/tmp/enb.conf")
quickshell("sshpass -p " + self.oai_password +
" scp config/" + rcc_config_file + " " +
self.oai_user + "@" + self.enb_rcc_machine+":/tmp/enb.conf")
#run RRU/RCC softmodem
log("INFO: ALU test: run RRU softmodem with configuration file " +
rru_config_file)
self.task_rru_enb = Task("actions/run_enb.bash",
"run_RRU_softmodem",
self.enb_rru_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/run_softmodem." + self.enb_rru_machine,
event=self.event)
self.task_rru_enb.waitlog('[RRH] binding to')
log("INFO: ALU test: run RCC softmodem with configuration file " +
rcc_config_file)
self.task_rcc_enb = Task("actions/run_enb.bash",
"run_RCC_softmodem",
self.enb_rcc_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/run_softmodem." + self.enb_rcc_machine,
event=self.event)
self.task_rcc_enb.waitlog('[BBU] local ip addr')
#wait for RRU and RCC to be connected
self.task_rru_enb.waitlog('devices ok (eNB_thread_asynch_rx)')
##########################################################################
# stop_enb_rru_rcc
##########################################################################
def stop_enb_rru_rcc(self):
log("INFO: ALU test: stop RRU/RCC softmodem")
self.task_rru_enb.sendnow("%c" % 3)
ret = self.task_rru_enb.wait()
if ret != 0:
log("ERROR: ALU test: RRU softmodem failed")
#not sure if we have to quit here or not
#os._exit(1)
self.task_rcc_enb.sendnow("%c" % 3)
ret = self.task_rcc_enb.wait()
if ret != 0:
log("ERROR: ALU test: RCC softmodem failed")
#not sure if we have to quit here or not
#os._exit(1)
##########################################################################
# start_ue
##########################################################################
def start_ue(self, ue):
log("INFO: ALU test: start " + ue + " UE")
self.task_ue = Task("actions/start_" + ue + ".bash",
"start_" + ue,
self.ue_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/start_" + ue + "." + self.ue_machine,
event=self.event)
self.task_ue.waitlog("local IP address", event=self.event)
self.event.wait()
#at this point one task has died or we have the line in the log
if self.task_ue.waitlog_state != WAITLOG_SUCCESS:
log("ERROR: ALU test: " + ue + " UE did not connect")
raise TestFailed()
self.event.clear()
if ( (self.task_enb != None and not self.task_enb.alive()) or
(self.task_rru_enb!=None and not self.task_rru_enb.alive()) or
(self.task_rcc_enb!=None and not self.task_rcc_enb.alive()) or
not self.task_hss.alive() or
not self.task_ue.alive()):
log("ERROR: ALU test: eNB, HSS or UE task died")
raise TestFailed()
#get UE IP
l = open(self.task_ue.logfile, "r").read()
self.ue_ip = re.search("local IP address (.*)\n", l) \
.groups()[0]
log("INFO: ALU test: " + ue + " UE IP address: " + self.ue_ip)
##########################################################################
# stop_ue
##########################################################################
def stop_ue(self, ue):
log("INFO: ALU test: stop " + ue + " UE")
self.task_ue.sendnow("%c" % 3)
ret = self.task_ue.wait()
if ret != 0:
log("ERROR: ALU test: task " + ue + " UE failed")
#not sure if we have to quit here or not
#os._exit(1)
##########################################################################
# _do_traffic (internal function, do not call out of the class)
##########################################################################
def _do_traffic(self, name,
server_code, server_machine, server_ip,
client_code, client_machine,
waitlog,
server_logfile, client_logfile,
udp_bandwidth=None):
log("INFO: ALU test: run traffic: " + name)
log("INFO: ALU test: launch server")
task_traffic_server = Task("actions/" + server_code + ".bash",
server_logfile,
server_machine,
self.oai_user,
self.oai_password,
self.env,
self.logdir + "/" + server_logfile + "." + server_machine,
event=self.event)
task_traffic_server.waitlog(waitlog)
env = list(self.env)
if udp_bandwidth != None:
env.append("UDP_BANDWIDTH=" + udp_bandwidth)
env.append("SERVER_IP=" + server_ip)
log("INFO: ALU test: launch client")
task_traffic_client = Task("actions/" + client_code + ".bash",
client_logfile,
client_machine,
self.oai_user,
self.oai_password,
env,
self.logdir + "/" + client_logfile + "." + client_machine,
event=self.event)
log("INFO: ALU test: wait for client to finish (or some error)")
self.event.wait()
log("DEBUG: event.wait() done")
if ( (self.task_enb != None and not self.task_enb.alive()) or
(self.task_rru_enb!=None and not self.task_rru_enb.alive()) or
(self.task_rcc_enb!=None and not self.task_rcc_enb.alive()) or
not self.task_hss.alive() or
not self.task_ue.alive()):
log("ERROR: unexpected task exited, test failed, kill all")
if task_traffic_client.alive():
task_traffic_client.kill()
if (self.task_enb != None and self.task_enb.alive()):
self.task_enb.kill()
if (self.task_rru_enb != None and self.task_rru_enb.alive()):
self.task_rru_enb.kill()
if (self.task_rcc_enb != None and self.task_rcc_enb.alive()):
self.task_rcc_enb.kill()
if self.task_ue.alive():
self.task_ue.kill()
ret = task_traffic_client.wait()
if ret != 0:
log("ERROR: ALU test: downlink traffic failed")
#not sure if we have to quit here or not
#os._exit(1)
#stop downlink server
#log("INFO: ALU test: stop server (kill ssh connection)")
#task_traffic_server.kill()
log("INFO: ALU test: stop server (ctrl+z then kill -9 %1)")
task_traffic_server.sendnow("%ckill -9 %%1 || true\n" % 26)
log("INFO: ALU test: wait for server to quit")
task_traffic_server.wait()
self.event.clear()
if ( (self.task_enb != None and not self.task_enb.alive()) or
(self.task_rru_enb!=None and not self.task_rru_enb.alive()) or
(self.task_rcc_enb!=None and not self.task_rcc_enb.alive()) or
not self.task_hss.alive() or
not self.task_ue.alive()):
log("ERROR: ALU test: eNB, HSS or UE task died")
raise TestFailed()
##########################################################################
# dl_tcp
##########################################################################
def dl_tcp(self, ue):
self._do_traffic(ue + " downlink TCP",
"server_tcp", self.ue_machine, self.ue_ip,
"client_tcp", self.epc_machine,
"Server listening on TCP port 5001",
ue + "_downlink_tcp_server",
ue + "_downlink_tcp_client")
##########################################################################
# ul_tcp
##########################################################################
def ul_tcp(self, ue):
self._do_traffic(ue + " uplink TCP",
"server_tcp", self.epc_machine, "192.172.0.1",
"client_tcp", self.ue_machine,
"Server listening on TCP port 5001",
ue + "_uplink_tcp_server",
ue + "_uplink_tcp_client")
##########################################################################
# dl_udp
##########################################################################
def dl_udp(self, ue, bandwidth):
self._do_traffic(ue + " downlink UDP",
"server_udp", self.ue_machine, self.ue_ip,
"client_udp", self.epc_machine,
"Server listening on UDP port 5001",
ue + "_downlink_udp_server",
ue + "_downlink_udp_client",
udp_bandwidth=bandwidth)
##########################################################################
# ul_udp
##########################################################################
def ul_udp(self, ue, bandwidth):
self._do_traffic(ue + " uplink UDP",
"server_udp", self.epc_machine, "192.172.0.1",
"client_udp", self.ue_machine,
"Server listening on UDP port 5001",
ue + "_uplink_udp_server",
ue + "_uplink_udp_client",
udp_bandwidth=bandwidth)
##############################################################################
# run_b210_alu
##############################################################################
def run_b210_alu(tests, openair_dir, oai_user, oai_password, env):
#compile eNB (two cases: one for FDD and one for TDD)
if do_tests(tests['b210']['alu']['fdd']):
alu = alu_test(epc='amerique', enb='hutch', ue='stevens',
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/b210_alu/compile_enb_fdd',
env=env)
try:
alu.compile_enb("--eNB -w USRP -x -c --disable-cpu-affinity")
except BaseException, e:
log("ERROR: ALU test failed: eNB compilation failed: " + str(e))
return
if do_tests(tests['b210']['alu']['tdd']):
alu = alu_test(epc='amerique', enb='calisson', ue='mozart',
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/b210_alu/compile_enb_tdd',
env=env)
try:
alu.compile_enb("--eNB -w USRP -x -c --disable-cpu-affinity")
except BaseException, e:
log("ERROR: ALU test failed: eNB compilation failed: " + str(e))
return
#compile RRU/RCC eNB
if do_tests(tests['remote b210']['alu']['fdd']):
#RRU
alu = alu_test(epc='amerique', ue='stevens',
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/remote_b210_alu/compile_enb_rru',
env=env,
#hack: set 'enb' to reuse 'compile_enb'
enb = 'superserver',
enb_rru = 'superserver', enb_rcc = 'starsky')
try:
alu.compile_enb("--eNB -x -c -w USRP -t ETHERNET",
log_suffix='rru.')
except BaseException, e:
log("ERROR: ALU test failed: RRU eNB compilation failed: "+str(e))
return
#RCC
alu = alu_test(epc='amerique', ue='stevens',
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/remote_b210_alu/compile_enb_rcc',
env=env,
#hack: set 'enb' to reuse 'compile_enb'
enb = 'starsky',
enb_rru = 'superserver', enb_rcc = 'starsky')
try:
alu.compile_enb("--eNB -w None -t ETHERNET",
log_suffix='rcc.')
except BaseException, e:
log("ERROR: ALU test failed: RCC eNB compilation failed: "+str(e))
return
#run tests
udp_dl_bandwidth = { "5" : "15M",
"10" : "30M",
"20" : "60M" }
udp_ul_bandwidth = { "5" : "7M",
"10" : "15M",
"20" : "15M" }
ue_machine = { "fdd" : "stevens",
"tdd" : "mozart" }
enb_machine = { "fdd" : "hutch",
"tdd" : "calisson" }
band = { "fdd" : "7",
"tdd" : "38" }
for mode in ('fdd', 'tdd'):
for bw in ('5', '10', '20'):
if do_tests(tests['b210']['alu'][mode][bw]):
log("INFO: ALU test: run tests for bandwidth " + bw + " MHz")
ctest = tests['b210']['alu'][mode][bw]
alu = alu_test(epc='amerique', enb=enb_machine[mode], ue=ue_machine[mode],
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/b210_alu/' + mode + "/" + bw,
env=env)
try:
alu.start_epc()
alu.start_enb("enb.band" + band[mode] + ".tm1.usrpb210." + mode + "." + bw + "MHz.conf")
for ue in ('bandrich', '3276'):
if ue in ctest and do_tests(ctest[ue]):
alu.start_ue(ue)
if do_tests(ctest[ue]['tcp']['dl']): alu.dl_tcp(ue)
if do_tests(ctest[ue]['tcp']['ul']): alu.ul_tcp(ue)
if do_tests(ctest[ue]['udp']['dl']): alu.dl_udp(ue, udp_dl_bandwidth[bw])
if do_tests(ctest[ue]['udp']['ul']): alu.ul_udp(ue, udp_ul_bandwidth[bw])
alu.stop_ue(ue)
alu.stop_enb()
alu.stop_epc()
except BaseException, e:
log("ERROR: ALU test failed: " + str(e))
alu.finish()
if do_tests(tests['remote b210']['alu'][mode][bw]):
log("INFO: ALU test: run RRU/RCC tests for bandwidth " + bw + " MHz")
ctest = tests['remote b210']['alu'][mode][bw]
alu = alu_test(epc='amerique', enb='', ue=ue_machine[mode],
openair=openair_dir,
user=oai_user, password=oai_password,
log_subdir='enb_tests/remote_b210_alu/' + bw,
env=env,
enb_rru='superserver', enb_rcc='starsky')
try:
alu.start_epc()
alu.start_enb_rru_rcc("rru.band7.tm1.if4p5." + bw + "MHz.udp.usrpb210.conf",
"rcc.band7.tm1.if4p5." + bw + "MHz.conf")
for ue in ('bandrich', '3276'):
if ue in ctest and do_tests(ctest[ue]):
alu.start_ue(ue)
if do_tests(ctest[ue]['tcp']['dl']): alu.dl_tcp(ue)
if do_tests(ctest[ue]['tcp']['ul']): alu.ul_tcp(ue)
if do_tests(ctest[ue]['udp']['dl']): alu.dl_udp(ue, udp_dl_bandwidth[bw])
if do_tests(ctest[ue]['udp']['ul']): alu.ul_udp(ue, udp_ul_bandwidth[bw])
alu.stop_ue(ue)
alu.stop_enb_rru_rcc()
alu.stop_epc()
except BaseException, e:
log("ERROR: ALU test failed: " + str(e))
alu.finish()

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,12 +10,13 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "92";
////////// Physical parameters:
@@ -23,32 +24,33 @@ eNBs =
component_carriers = (
{
node_function = "eNodeB_3GPP";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "FDD";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "TDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 7;
downlink_frequency = 2660000000L;
uplink_frequency_offset = -120000000;
eutra_band = 38;
downlink_frequency = 2580000000L;
uplink_frequency_offset = 0;
Nid_cell = 0;
N_RB_DL = 50;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 32;
rx_gain = 118;
tx_gain = 90;
rx_gain = 125;
prach_root = 0;
prach_config_index = 0;
prach_high_speed = "DISABLE";
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -19;
pdsch_referenceSignalPower = -24;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
@@ -61,14 +63,14 @@ eNBs =
phich_duration = "NORMAL";
phich_resource = "ONESIXTH";
srs_enable = "DISABLE";
/* srs_BandwidthConfig =;
/* srs_BandwidthConfig =;
srs_SubframeConfig =;
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_alpha = "AL1";
pucch_p0_Nominal = -108;
pucch_p0_Nominal = -96;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -78,13 +80,13 @@ eNBs =
rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE";
/*
/*
rach_sizeOfRA_PreamblesGroupA = ;
rach_messageSizeGroupA = ;
rach_messagePowerOffsetGroupB = ;
*/
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
@@ -99,10 +101,11 @@ eNBs =
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
srb1_parameters :
{
# timer_poll_retransmit = (ms) [5, 10, 15, 20,... 250, 300, 350, ... 500]
@@ -133,6 +136,7 @@ eNBs =
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
@@ -142,17 +146,17 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth6";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.82/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth6";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.82/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
log_config :
{
global_log_level ="debug";
global_log_level ="info";
global_log_verbosity ="medium";
hw_log_level ="info";
hw_log_verbosity ="medium";
@@ -167,6 +171,5 @@ eNBs =
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
}
);

View File

@@ -0,0 +1,175 @@
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
eNBs =
(
{
////////// Identification parameters:
eNB_ID = 0xe00;
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "92";
////////// Physical parameters:
component_carriers = (
{
node_function = "eNodeB_3GPP";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "TDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 38;
downlink_frequency = 2580000000L;
uplink_frequency_offset = 0;
Nid_cell = 0;
N_RB_DL = 100;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
rx_gain = 125;
prach_root = 0;
prach_config_index = 0;
prach_high_speed = "DISABLE";
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -24;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
pusch_hoppingMode = "interSubFrame";
pusch_hoppingOffset = 0;
pusch_groupHoppingEnabled = "ENABLE";
pusch_groupAssignment = 0;
pusch_sequenceHoppingEnabled = "DISABLE";
pusch_nDMRS1 = 1;
phich_duration = "NORMAL";
phich_resource = "ONESIXTH";
srs_enable = "DISABLE";
/* srs_BandwidthConfig =;
srs_SubframeConfig =;
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
pucch_deltaF_Format2 = "deltaF0";
pucch_deltaF_Format2a = "deltaF0";
pucch_deltaF_Format2b = "deltaF0";
rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE";
/*
rach_sizeOfRA_PreamblesGroupA = ;
rach_messageSizeGroupA = ;
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
rach_maxHARQ_Msg3Tx = 4;
pcch_default_PagingCycle = 128;
pcch_nB = "oneT";
bcch_modificationPeriodCoeff = 2;
ue_TimersAndConstants_t300 = 1000;
ue_TimersAndConstants_t301 = 1000;
ue_TimersAndConstants_t310 = 1000;
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
srb1_parameters :
{
# timer_poll_retransmit = (ms) [5, 10, 15, 20,... 250, 300, 350, ... 500]
timer_poll_retransmit = 80;
# timer_reordering = (ms) [0,5, ... 100, 110, 120, ... ,200]
timer_reordering = 35;
# timer_reordering = (ms) [0,5, ... 250, 300, 350, ... ,500]
timer_status_prohibit = 0;
# poll_pdu = [4, 8, 16, 32 , 64, 128, 256, infinity(>10000)]
poll_pdu = 4;
# poll_byte = (kB) [25,50,75,100,125,250,375,500,750,1000,1250,1500,2000,3000,infinity(>10000)]
poll_byte = 99999;
# max_retx_threshold = [1, 2, 3, 4 , 6, 8, 16, 32]
max_retx_threshold = 4;
}
# ------- SCTP definitions
SCTP :
{
# Number of streams to use in input/output
SCTP_INSTREAMS = 2;
SCTP_OUTSTREAMS = 2;
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
}
);
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth6";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.82/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth6";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.82/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
log_config :
{
global_log_level ="info";
global_log_verbosity ="medium";
hw_log_level ="info";
hw_log_verbosity ="medium";
phy_log_level ="info";
phy_log_verbosity ="medium";
mac_log_level ="info";
mac_log_verbosity ="high";
rlc_log_level ="info";
rlc_log_verbosity ="medium";
pdcp_log_level ="info";
pdcp_log_verbosity ="medium";
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
}
);

View File

@@ -0,0 +1,175 @@
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
eNBs =
(
{
////////// Identification parameters:
eNB_ID = 0xe00;
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "92";
////////// Physical parameters:
component_carriers = (
{
node_function = "eNodeB_3GPP";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "TDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 38;
downlink_frequency = 2580000000L;
uplink_frequency_offset = 0;
Nid_cell = 0;
N_RB_DL = 25;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
rx_gain = 125;
prach_root = 0;
prach_config_index = 0;
prach_high_speed = "DISABLE";
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -24;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
pusch_hoppingMode = "interSubFrame";
pusch_hoppingOffset = 0;
pusch_groupHoppingEnabled = "ENABLE";
pusch_groupAssignment = 0;
pusch_sequenceHoppingEnabled = "DISABLE";
pusch_nDMRS1 = 1;
phich_duration = "NORMAL";
phich_resource = "ONESIXTH";
srs_enable = "DISABLE";
/* srs_BandwidthConfig =;
srs_SubframeConfig =;
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
pucch_deltaF_Format2 = "deltaF0";
pucch_deltaF_Format2a = "deltaF0";
pucch_deltaF_Format2b = "deltaF0";
rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE";
/*
rach_sizeOfRA_PreamblesGroupA = ;
rach_messageSizeGroupA = ;
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
rach_maxHARQ_Msg3Tx = 4;
pcch_default_PagingCycle = 128;
pcch_nB = "oneT";
bcch_modificationPeriodCoeff = 2;
ue_TimersAndConstants_t300 = 1000;
ue_TimersAndConstants_t301 = 1000;
ue_TimersAndConstants_t310 = 1000;
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
srb1_parameters :
{
# timer_poll_retransmit = (ms) [5, 10, 15, 20,... 250, 300, 350, ... 500]
timer_poll_retransmit = 80;
# timer_reordering = (ms) [0,5, ... 100, 110, 120, ... ,200]
timer_reordering = 35;
# timer_reordering = (ms) [0,5, ... 250, 300, 350, ... ,500]
timer_status_prohibit = 0;
# poll_pdu = [4, 8, 16, 32 , 64, 128, 256, infinity(>10000)]
poll_pdu = 4;
# poll_byte = (kB) [25,50,75,100,125,250,375,500,750,1000,1250,1500,2000,3000,infinity(>10000)]
poll_byte = 99999;
# max_retx_threshold = [1, 2, 3, 4 , 6, 8, 16, 32]
max_retx_threshold = 4;
}
# ------- SCTP definitions
SCTP :
{
# Number of streams to use in input/output
SCTP_INSTREAMS = 2;
SCTP_OUTSTREAMS = 2;
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
}
);
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth6";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.82/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth6";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.82/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
log_config :
{
global_log_level ="info";
global_log_verbosity ="medium";
hw_log_level ="info";
hw_log_verbosity ="medium";
phy_log_level ="info";
phy_log_verbosity ="medium";
mac_log_level ="info";
mac_log_verbosity ="high";
rlc_log_level ="info";
rlc_log_verbosity ="medium";
pdcp_log_level ="info";
pdcp_log_verbosity ="medium";
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,12 +10,13 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "92";
////////// Physical parameters:
@@ -23,8 +24,8 @@ eNBs =
component_carriers = (
{
node_function = "eNodeB_3GPP";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "FDD";
tdd_config = 3;
tdd_config_s = 0;
@@ -33,23 +34,23 @@ eNBs =
downlink_frequency = 2660000000L;
uplink_frequency_offset = -120000000;
Nid_cell = 0;
N_RB_DL = 25;
N_RB_DL = 50;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 32;
rx_gain = 116;
tx_gain = 90;
rx_gain = 125;
prach_root = 0;
prach_config_index = 0;
prach_high_speed = "DISABLE";
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -16;
pdsch_referenceSignalPower = -24;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
@@ -62,14 +63,14 @@ eNBs =
phich_duration = "NORMAL";
phich_resource = "ONESIXTH";
srs_enable = "DISABLE";
/* srs_BandwidthConfig =;
/* srs_BandwidthConfig =;
srs_SubframeConfig =;
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -108;
pucch_p0_Nominal = -103;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -79,13 +80,13 @@ eNBs =
rach_numberOfRA_Preambles = 64;
rach_preamblesGroupAConfig = "DISABLE";
/*
/*
rach_sizeOfRA_PreamblesGroupA = ;
rach_messageSizeGroupA = ;
rach_messagePowerOffsetGroupB = ;
*/
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
@@ -105,7 +106,6 @@ eNBs =
}
);
srb1_parameters :
{
# timer_poll_retransmit = (ms) [5, 10, 15, 20,... 250, 300, 350, ... 500]
@@ -136,6 +136,7 @@ eNBs =
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
@@ -145,17 +146,17 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.19/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.19/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
log_config :
{
global_log_level ="debug";
global_log_level ="info";
global_log_verbosity ="medium";
hw_log_level ="info";
hw_log_verbosity ="medium";
@@ -170,6 +171,5 @@ eNBs =
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "93";
mobile_network_code = "92";
////////// Physical parameters:
@@ -36,7 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 100;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -47,10 +47,10 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -30;
pdsch_referenceSignalPower = -24;
pdsch_p_b = 0;
pusch_n_SB = 1;
pusch_enable64QAM = "DISABLE";
@@ -70,7 +70,7 @@ eNBs =
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -100;
pucch_p0_Nominal = -103;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -102,7 +102,7 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
ue_TransmissionMode = 1;
}
);
@@ -136,7 +136,8 @@ eNBs =
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
@@ -145,11 +146,11 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "lo";
ENB_IPV4_ADDRESS_FOR_S1_MME = "127.0.0.2/24";
ENB_INTERFACE_NAME_FOR_S1U = "lo";
ENB_IPV4_ADDRESS_FOR_S1U = "127.0.0.4/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.19/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.19/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "94";
mobile_network_code = "92";
////////// Physical parameters:
@@ -47,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -24;
@@ -137,7 +137,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
@@ -147,10 +147,10 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "lo";
ENB_IPV4_ADDRESS_FOR_S1_MME = "127.0.0.2/24";
ENB_INTERFACE_NAME_FOR_S1U = "lo";
ENB_IPV4_ADDRESS_FOR_S1U = "127.0.0.4/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.19/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.19/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "93";
mobile_network_code = "92";
////////// Physical parameters:
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 50;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -100,7 +101,7 @@ eNBs =
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -136,7 +137,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
@@ -146,26 +147,27 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "lo";
ENB_IPV4_ADDRESS_FOR_S1_MME = "127.0.0.2/24";
ENB_INTERFACE_NAME_FOR_S1U = "lo";
ENB_IPV4_ADDRESS_FOR_S1U = "127.0.0.4/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.18/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.18/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "74:d4:35:cc:8d:15";
local_address = "34:e6:d7:3c:ae:fc";
{
local_if_name = "eth1";
remote_address = "10.10.10.157";
local_address = "10.10.10.18";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4p5";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);
@@ -188,4 +190,3 @@ eNBs =
};
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "93";
mobile_network_code = "92";
////////// Physical parameters:
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 100;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -100,7 +101,7 @@ eNBs =
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -136,7 +137,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
@@ -146,26 +147,27 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "lo";
ENB_IPV4_ADDRESS_FOR_S1_MME = "127.0.0.2/24";
ENB_INTERFACE_NAME_FOR_S1U = "lo";
ENB_IPV4_ADDRESS_FOR_S1U = "127.0.0.4/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.18/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.18/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "74:d4:35:cc:8d:15";
local_address = "34:e6:d7:3c:ae:fc";
{
local_if_name = "eth1";
remote_address = "10.10.10.157";
local_address = "10.10.10.18";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4p5";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);
@@ -188,4 +190,3 @@ eNBs =
};
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,7 +10,7 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 25;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -100,7 +101,7 @@ eNBs =
ue_TimersAndConstants_t311 = 10000;
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -136,7 +137,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
@@ -146,26 +147,27 @@ eNBs =
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "lo";
ENB_IPV4_ADDRESS_FOR_S1_MME = "127.0.0.2/24";
ENB_INTERFACE_NAME_FOR_S1U = "lo";
ENB_IPV4_ADDRESS_FOR_S1U = "127.0.0.4/24";
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.18/24";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.18/24";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
};
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "74:d4:35:cc:8d:15";
local_address = "34:e6:d7:3c:ae:fc";
{
local_if_name = "eth1";
remote_address = "10.10.10.157";
local_address = "10.10.10.18";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4p5";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "93";
mobile_network_code = "92";
////////// Physical parameters:
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 50;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -85,7 +86,7 @@ eNBs =
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
@@ -101,6 +102,8 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -155,17 +158,18 @@ eNBs =
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "34:e6:d7:3c:ae:fc";
local_address = "74:d4:35:cc:8d:15";
local_if_name = "eth3";
remote_address = "10.10.10.18";
local_address = "10.10.10.157";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4p5";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,14 +10,14 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
mobile_country_code = "208";
mobile_network_code = "93";
mobile_network_code = "92";
////////// Physical parameters:
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 100;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -85,7 +86,7 @@ eNBs =
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
@@ -101,6 +102,8 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -155,17 +158,18 @@ eNBs =
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "34:e6:d7:3c:ae:fc";
local_address = "74:d4:35:cc:8d:15";
local_if_name = "eth3";
remote_address = "10.10.10.18";
local_address = "10.10.10.157";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4p5";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);

View File

@@ -1,4 +1,4 @@
Active_eNBs = ( "eNB_Eurecom_LTEBox");
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
@@ -10,7 +10,7 @@ eNBs =
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB_Eurecom_LTEBox";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = "1";
@@ -36,6 +36,7 @@ eNBs =
Nid_cell = 0;
N_RB_DL = 25;
Nid_cell_mbsfn = 0;
nb_antenna_ports = 1;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
tx_gain = 90;
@@ -46,7 +47,7 @@ eNBs =
prach_zero_correlation = 1;
prach_freq_offset = 2;
pucch_delta_shift = 1;
pucch_nRB_CQI = 1;
pucch_nRB_CQI = 0;
pucch_nCS_AN = 0;
pucch_n1_AN = 32;
pdsch_referenceSignalPower = -29;
@@ -67,9 +68,9 @@ eNBs =
srs_ackNackST =;
srs_MaxUpPts =;*/
pusch_p0_Nominal = -90;
pusch_p0_Nominal = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -96;
pucch_p0_Nominal = -104;
msg3_delta_Preamble = 6;
pucch_deltaF_Format1 = "deltaF2";
pucch_deltaF_Format1b = "deltaF3";
@@ -85,7 +86,7 @@ eNBs =
rach_messagePowerOffsetGroupB = ;
*/
rach_powerRampingStep = 4;
rach_preambleInitialReceivedTargetPower = -108;
rach_preambleInitialReceivedTargetPower = -104;
rach_preambleTransMax = 10;
rach_raResponseWindowSize = 10;
rach_macContentionResolutionTimer = 48;
@@ -101,6 +102,8 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
}
);
@@ -155,17 +158,18 @@ eNBs =
rrh_gw_config = (
{
local_if_name = "eth0";
remote_address = "90:e2:ba:c5:fc:04";
local_address = "00:13:95:1f:a0:af";
local_if_name = "eth3";
remote_address = "10.10.10.18";
local_address = "10.10.10.157";
local_port = 50000; #for raw option local port must be the same to remote
remote_port = 50000;
rrh_gw_active = "yes";
tr_preference = "raw_if4";
tr_preference = "udp_if4p5";
rf_preference = "usrp_b200";
iq_txshift = 4;
tx_sample_advance = 80;
tx_scheduling_advance = 9;
if_compression = "alaw";
}
);

View File

@@ -0,0 +1,104 @@
import os, subprocess, time, fcntl, termios, tty, signal, thread
from utils import log
class connection:
def __init__(self, description, host, user, password):
self.description = description
self.host = host
self.user = user
self.password = password
self.sendlock = thread.allocate_lock()
try:
(pid, fd) = os.forkpty()
except BaseException, e:
log("ERROR: forkpty for '" + description + "': " + str(e))
(pid, fd) = (-1, -1)
if pid == -1:
log("ERROR: creating connection for '" + description + "'")
os._exit(1)
# child process, run ssh
if pid == 0:
try:
os.execvp('sshpass', ['sshpass', '-p', password,
'ssh', user + '@' + host])
except BaseException, e:
log("ERROR: execvp for '" + description + "': " + str(e))
log("ERROR: execvp failed for '" + description + "'")
os._exit(1)
# parent process
# make the TTY raw to avoid getting input printed and no ^M
try:
tty.setraw(fd, termios.TCSANOW)
except BaseException, e:
log("ERROR: failed configuring TTY: " + str(e))
os._exit(1)
# try:
# fcntl.fcntl(fd, fcntl.F_SETFL,
# fcntl.fcntl(fd, fcntl.F_GETFL) | os.O_NONBLOCK)
# except:
# log("ERROR: fcntl failed for '" + description + "'")
# os._exit(1)
self.pid = pid
self.fd = fd
self.active = True
self.retcode = -1
def send(self, string):
if self.active == False:
log("ERROR: send: child is dead for '" + self.description + "'")
return -1
try:
(pid, out) = os.waitpid(self.pid, os.WNOHANG)
except BaseException, e:
log("ERROR: send: waitpid failed for '" + self.description +
"': " + str(e))
(pid, out) = (self.pid, 1)
if pid != 0:
log("ERROR: send: child process dead for '" +
self.description + "'")
try:
os.close(self.fd)
except BaseException, e:
#we don't care about errors at this point
pass
self.active = False
self.retcode = out
return -1
self.sendlock.acquire()
length = len(string)
while length != 0:
try:
ret = os.write(self.fd, string)
except BaseException, e:
log("ERROR: send fails for '" + self.description + "': " +
str(e))
os._exit(1)
if ret == 0:
log("ERROR: send: write returns 0 for '" +
self.description + "'")
os._exit(1)
length = length - ret
string = string[ret:]
self.sendlock.release()
return 0
def kill(self, signal=signal.SIGTERM):
log("INFO: kill connection '" + self.description + "'")
try:
os.kill(self.pid, signal)
except BaseException, e:
log("ERROR: connection.kill: " + str(e))

View File

@@ -0,0 +1,79 @@
import threading, os
from utils import log
class MachineWaiterThread(threading.Thread):
def __init__(self, machine, tasks):
threading.Thread.__init__(self)
self.machine = machine
self.tasks = tasks
def run(self):
try:
for task in self.tasks:
ret = task.wait()
if ret != 0:
log("ERROR: task '" + task.description + "' failed " +
"on machine " + self.machine.name)
task.postaction()
self.machine.unbusy()
except BaseException, e:
log("ERROR: MachineWaiterThread: " + str(e))
os._exit(1)
class Machine():
def __init__(self, machine, cond):
self.name = machine
self.free = True
self.cond = cond
def busy(self, tasks):
waiter = MachineWaiterThread(self, tasks)
waiter.start()
def unbusy(self):
self.cond.acquire()
self.free = True
self.cond.notify()
self.cond.release()
class MachineList():
def __init__(self, list):
self.list = []
self.cond = threading.Condition()
for m in list:
self.list.append(Machine(m, self.cond))
def get_free_machine(self):
try:
self.cond.acquire()
while True:
free_machine = None
for m in self.list:
if m.free == True:
free_machine = m
break
if free_machine != None:
break
self.cond.wait()
free_machine.free = False
self.cond.release()
except BaseException, e:
log("ERROR: machine_list: " + str(e))
os._exit(1)
return free_machine
def wait_all_free(self):
try:
self.cond.acquire()
while True:
all_free = True
for m in self.list:
if m.free == False:
all_free = False
break
if all_free == True:
break
self.cond.wait()
self.cond.release()
except BaseException, e:
log("ERROR: machine_list: " + str(e))
os._exit(1)

View File

@@ -0,0 +1,705 @@
#!/usr/bin/python
import os, re, sys, time, threading, thread
import xml.etree.ElementTree as ET
from utils import test_in_list, quickshell, log
from task import Task, WAITLOG_SUCCESS, WAITLOG_FAILURE
from machine_list import MachineList
oai_user = os.environ.get('OAI_USER')
oai_password = os.environ.get('OAI_PASS')
requested_tests = os.environ.get('OAI_TEST_CASE_GROUP')
machines = os.environ.get('MACHINELIST')
generic_machines = os.environ.get('MACHINELISTGENERIC')
result_dir = os.environ.get('RESULT_DIR')
nruns_softmodem = os.environ.get('NRUNS_LTE_SOFTMODEM')
openair_dir = os.environ.get('OPENAIR_DIR')
some_undef = False
if (oai_user == None) :
log("variable OAI_USER is not defined")
some_undef = True
if (oai_password == None) :
log("variable OAI_PASS is not defined")
some_undef = True
if (requested_tests == None) :
log("variable OAI_TEST_CASE_GROUP is not defined")
some_undef = True
if (machines == None) :
log("variable MACHINELIST is not defined")
some_undef = True
if (generic_machines == None) :
log("variable MACHINELISTGENERIC is not defined")
some_undef = True
if (result_dir == None) :
log("variable RESULT_DIR is not defined")
some_undef = True
if (nruns_softmodem == None) :
log("variable NRUNS_LTE_SOFTMODEM is not defined")
some_undef = True
if (openair_dir == None) :
log("variable OPENAIR_DIR is not defined")
some_undef = True
if (some_undef == True):
os._exit(1)
requested_tests = requested_tests .replace('"','')
machines = machines .replace('"','')
generic_machines = generic_machines .replace('"','')
xml_test_file = os.environ.get('OPENAIR_DIR') + \
"/cmake_targets/autotests/test_case_list.xml"
xmlTree = ET.parse(xml_test_file)
xmlRoot = xmlTree.getroot()
exclusion_tests=xmlRoot.findtext('TestCaseExclusionList',default='')
all_tests=xmlRoot.findall('testCase')
exclusion_tests=exclusion_tests.split()
requested_tests=requested_tests.split()
#check that exclusion tests are well formatted
#(6 digits or less than 6 digits followed by +)
for test in exclusion_tests:
if (not re.match('^[0-9]{6}$', test) and
not re.match('^[0-9]{1,5}\+$', test)):
log("ERROR: exclusion test is invalidly formatted: " + test)
os._exit(1)
#check that requested tests are well formatted
#(6 digits or less than 6 digits followed by +)
#be verbose
for test in requested_tests:
if (re.match('^[0-9]{6}$', test) or
re.match('^[0-9]{1,5}\+$', test)):
log("INFO: test group/case requested: " + test)
else:
log("ERROR: requested test is invalidly formatted: " + test)
os._exit(1)
#get the list of tests to be done
todo_tests=[]
for test in all_tests:
if (test_in_list(test.get('id'), requested_tests) and
not test_in_list(test.get('id'), exclusion_tests)):
log("INFO: test will be run: " + test.get('id'))
todo_tests.append(test)
else:
log("INFO: test will be skipped: " + test.get('id'))
#get commit ID to use
commit_id = quickshell("git rev-parse --verify HEAD").replace('\n','')
if (len(commit_id) != 20*2):
log("ERROR: bad commit '" + commit_id + "'")
log("INFO: test for commit " + commit_id)
#get repository URL
repository_url = quickshell("git config remote.origin.url").replace('\n','')
log("INFO: repository URL: " + repository_url)
#prepare environment for tasks
env = []
env.append("REPOSITORY_URL=" + repository_url)
env.append("COMMIT_ID=" + commit_id)
#clone repository on all machines in the test setup
tasks=[]
for machine in machines.split():
tasks.append(Task("actions/clone_repository.bash",
"clone repository on " + machine,
machine,
oai_user,
oai_password,
env,
openair_dir + "/cmake_targets/autotests/log/clone." \
+ machine))
for task in tasks:
log("INFO: wait for task: " + task.description)
ret = task.wait()
if ret != 0 or not "TEST_SETUP_SUCCESS" in open(task.logfile).read():
log("ERROR: task failed: " + task.description)
os._exit(1)
##############################################################################
# run compilation tests #
##############################################################################
machine_list = MachineList(generic_machines.split())
for test in todo_tests:
action = test.findtext('class')
if action != 'compilation':
continue
id = test.get('id')
machine = machine_list.get_free_machine()
log("INFO: start " + action + " test " + id + " on machine " +
machine.name)
tasks = []
runenv = list(env)
runenv.append('OPENAIR_DIR=/tmp/oai_test_setup/oai')
runenv.append('BUILD_ARGUMENTS="'
+ test.findtext('compile_prog_args')
+ '"')
runenv.append('BUILD_OUTPUT="'
+ test.findtext('compile_prog_out')
.replace('\n','')
+ '"')
logdir = openair_dir +"/cmake_targets/autotests/log/"+ id +"/compile_log"
remote_files = "'/tmp/oai_test_setup/oai/cmake_targets/log/*'"
post_action = "mkdir -p "+ logdir + \
" && sshpass -p " + oai_password + " scp -r " + oai_user + \
"@" + machine.name + ":" + remote_files + " " + logdir + \
" || true"
tasks.append(Task("actions/" + action + ".bash",
action + " of test " + id + " on " + machine.name,
machine.name,
oai_user,
oai_password,
runenv,
openair_dir + "/cmake_targets/autotests/log/"
+ id + "."
+ machine.name,
post_action=post_action))
machine.busy(tasks)
##############################################################################
# run execution tests #
##############################################################################
class ExecutionThread(threading.Thread):
def __init__(self, id, machine, test):
threading.Thread.__init__(self)
self.machine = machine
self.id = id
self.test = test
def run(self):
id = self.id
machine = self.machine
test = self.test
# step 1: compile
log("INFO: start compilation of test " + id + " on machine " +
machine.name)
tasks = []
runenv = list(env)
runenv.append('OPENAIR_DIR=/tmp/oai_test_setup/oai')
runenv.append('PRE_BUILD="'
+ test.findtext('pre_compile_prog')
+ '"')
runenv.append('BUILD_PROG="'
+ test.findtext('compile_prog')
+ '"')
runenv.append('BUILD_ARGUMENTS="'
+ test.findtext('compile_prog_args')
+ '"')
runenv.append('PRE_EXEC="'
+ test.findtext('pre_exec') + " "
+ test.findtext('pre_exec_args')
+ '"')
logdir = openair_dir +"/cmake_targets/autotests/log/"+ id + \
"/compile_log"
remote_files = "'/tmp/oai_test_setup/oai/cmake_targets/log/*'"
post_action = "mkdir -p "+ logdir + \
" && sshpass -p " + oai_password + \
" scp -r " + oai_user + "@" + machine.name + ":" + \
remote_files + " " + logdir + \
" || true"
task = Task("actions/execution_compile.bash",
"compilation of test " + id + " on " + machine.name,
machine.name,
oai_user,
oai_password,
runenv,
openair_dir + "/cmake_targets/autotests/log/"
+ id + "_compile."
+ machine.name,
post_action=post_action)
ret = task.wait()
task.postaction()
if ret != 0:
log("ERROR: compilation of test " + id + " failed: " + str(ret))
machine.unbusy()
return
#step 2: run all tests
nruns = test.findtext('nruns')
args = test.findtext('main_exec_args')
i = 0
for arg in args.splitlines():
i = i+1
runenv2 = list(runenv)
runenv2.append('OPENAIR_TARGETS=/tmp/oai_test_setup/oai/targets')
runenv2.append('EXEC="'
+ test.findtext('main_exec')
+ '"')
runenv2.append('EXEC_ARGS="' + arg + '"')
for run in range(int(nruns)):
log("INFO: start execution of test " + id + " case " +
str(i) + " run " + str(run) + " on machine " +
machine.name)
task =Task("actions/execution.bash",
"execution of test " + id + " on " + machine.name,
machine.name,
oai_user,
oai_password,
runenv2,
openair_dir + "/cmake_targets/autotests/log/"
+ id + "_case_" + str(i) + "_run_" + str(run)
+ "." + machine.name)
ret = task.wait()
if ret != 0:
log("ERROR: execution of test " +id+ " failed: " +
str(ret))
machine.unbusy()
for test in todo_tests:
action = test.findtext('class')
if action != 'execution':
continue
id = test.get('id')
machine = machine_list.get_free_machine()
ExecutionThread(id, machine, test).start()
#wait for compilation/execution tests to be finished
#log only if some compilation/execution tests are actually done
for test in todo_tests:
action = test.findtext('class')
if action == 'execution' or action == 'compilation':
log("INFO: requested compilation/execution tests " +
"have been launched, waiting for completion")
break
machine_list.wait_all_free()
##############################################################################
# run eNB softmodem tests #
##############################################################################
tests = {}
for a in { 'b210', 'remote b210', 'x310', 'exmimo2' }:
tests[a] = {}
for b in { 'alu', 'openair-cn' }:
tests[a][b] = {}
for c in { 'fdd', 'tdd' }:
tests[a][b][c] = {}
for d in { '5', '10', '20' }:
tests[a][b][c][d] = {}
for e in { 'bandrich', 'sony', '3276' }:
tests[a][b][c][d][e] = {}
for f in { 'tcp', 'udp' }:
tests[a][b][c][d][e][f] = {}
for g in { 'dl', 'ul' }:
tests[a][b][c][d][e][f][g] = False
todo_tests_ids = []
for test in todo_tests:
todo_tests_ids.append(test.get('id'))
for test in todo_tests_ids:
if test=='015500':tests['b210']['alu']['fdd'][ '5']['bandrich']['udp']['ul']=True
if test=='015501':tests['b210']['alu']['fdd']['10']['bandrich']['udp']['ul']=True
if test=='015502':tests['b210']['alu']['fdd']['20']['bandrich']['udp']['ul']=True
if test=='015503':tests['b210']['alu']['fdd'][ '5']['bandrich']['udp']['dl']=True
if test=='015504':tests['b210']['alu']['fdd']['10']['bandrich']['udp']['dl']=True
if test=='015505':tests['b210']['alu']['fdd']['20']['bandrich']['udp']['dl']=True
if test=='015506':log('WARNING: skip test ' + test) #TODO
if test=='015507':log('WARNING: skip test ' + test) #TODO
if test=='015508':log('WARNING: skip test ' + test) #TODO
if test=='015509':log('WARNING: skip test ' + test) #TODO
if test=='015510':log('WARNING: skip test ' + test) #TODO
if test=='015511':log('WARNING: skip test ' + test) #TODO
if test=='015512':tests['b210']['alu']['fdd'][ '5']['bandrich']['tcp']['ul']=True
if test=='015513':tests['b210']['alu']['fdd']['10']['bandrich']['tcp']['ul']=True
if test=='015514':tests['b210']['alu']['fdd']['20']['bandrich']['tcp']['ul']=True
if test=='015515':tests['b210']['alu']['fdd'][ '5']['bandrich']['tcp']['dl']=True
if test=='015516':tests['b210']['alu']['fdd']['10']['bandrich']['tcp']['dl']=True
if test=='015517':tests['b210']['alu']['fdd']['20']['bandrich']['tcp']['dl']=True
if test=='015518':log('WARNING: skip test ' + test) #TODO
if test=='015519':log('WARNING: skip test ' + test) #TODO
if test=='015520':log('WARNING: skip test ' + test) #TODO
if test=='015521':log('WARNING: skip test ' + test) #TODO
if test=='015522':log('WARNING: skip test ' + test) #TODO
if test=='015523':log('WARNING: skip test ' + test) #TODO
if test=='015600':log('WARNING: skip test ' + test) #TODO
if test=='015601':log('WARNING: skip test ' + test) #TODO
if test=='015602':log('WARNING: skip test ' + test) #TODO
if test=='015603':log('WARNING: skip test ' + test) #TODO
if test=='015604':log('WARNING: skip test ' + test) #TODO
if test=='015605':log('WARNING: skip test ' + test) #TODO
if test=='015700':log('WARNING: skip test ' + test) #TODO
if test=='015701':log('WARNING: skip test ' + test) #TODO
if test=='015702':log('WARNING: skip test ' + test) #TODO
if test=='015703':log('WARNING: skip test ' + test) #TODO
if test=='015704':log('WARNING: skip test ' + test) #TODO
if test=='015705':log('WARNING: skip test ' + test) #TODO
if test=='015800':log('WARNING: skip test ' + test) #TODO
if test=='015801':log('WARNING: skip test ' + test) #TODO
if test=='015802':log('WARNING: skip test ' + test) #TODO
if test=='015803':log('WARNING: skip test ' + test) #TODO
if test=='015804':log('WARNING: skip test ' + test) #TODO
if test=='015805':log('WARNING: skip test ' + test) #TODO
if test=='015806':log('WARNING: skip test ' + test) #TODO
if test=='015807':log('WARNING: skip test ' + test) #TODO
if test=='015808':log('WARNING: skip test ' + test) #TODO
if test=='015809':log('WARNING: skip test ' + test) #TODO
if test=='015810':log('WARNING: skip test ' + test) #TODO
if test=='015811':log('WARNING: skip test ' + test) #TODO
if test=='015812':log('WARNING: skip test ' + test) #TODO
if test=='015813':log('WARNING: skip test ' + test) #TODO
if test=='015814':log('WARNING: skip test ' + test) #TODO
if test=='015815':log('WARNING: skip test ' + test) #TODO
if test=='015816':log('WARNING: skip test ' + test) #TODO
if test=='015817':log('WARNING: skip test ' + test) #TODO
if test=='015818':log('WARNING: skip test ' + test) #TODO
if test=='015819':log('WARNING: skip test ' + test) #TODO
if test=='015820':log('WARNING: skip test ' + test) #TODO
if test=='015821':log('WARNING: skip test ' + test) #TODO
if test=='015822':log('WARNING: skip test ' + test) #TODO
if test=='015823':log('WARNING: skip test ' + test) #TODO
if test=='016000':log('WARNING: skip test ' + test) #TODO
if test=='016001':log('WARNING: skip test ' + test) #TODO
if test=='016002':log('WARNING: skip test ' + test) #TODO
if test=='016003':log('WARNING: skip test ' + test) #TODO
if test=='016004':log('WARNING: skip test ' + test) #TODO
if test=='016005':log('WARNING: skip test ' + test) #TODO
if test=='016100':log('WARNING: skip test ' + test) #TODO
if test=='016101':log('WARNING: skip test ' + test) #TODO
if test=='016102':log('WARNING: skip test ' + test) #TODO
if test=='016103':log('WARNING: skip test ' + test) #TODO
if test=='016104':log('WARNING: skip test ' + test) #TODO
if test=='016105':log('WARNING: skip test ' + test) #TODO
if test=='016300':log('WARNING: skip test ' + test) #TODO
if test=='016301':log('WARNING: skip test ' + test) #TODO
if test=='016302':log('WARNING: skip test ' + test) #TODO
if test=='016303':log('WARNING: skip test ' + test) #TODO
if test=='016304':log('WARNING: skip test ' + test) #TODO
if test=='016305':log('WARNING: skip test ' + test) #TODO
if test=='016500':log('WARNING: skip test ' + test) #TODO
if test=='016501':log('WARNING: skip test ' + test) #TODO
if test=='016502':log('WARNING: skip test ' + test) #TODO
if test=='016503':log('WARNING: skip test ' + test) #TODO
if test=='016504':log('WARNING: skip test ' + test) #TODO
if test=='016505':log('WARNING: skip test ' + test) #TODO
if test=='017000':log('WARNING: skip test ' + test) #TODO
if test=='017001':log('WARNING: skip test ' + test) #TODO
if test=='017002':log('WARNING: skip test ' + test) #TODO
if test=='017003':log('WARNING: skip test ' + test) #TODO
if test=='017004':log('WARNING: skip test ' + test) #TODO
if test=='017005':log('WARNING: skip test ' + test) #TODO
if test=='017500':log('WARNING: skip test ' + test) #TODO
if test=='017501':log('WARNING: skip test ' + test) #TODO
if test=='017502':log('WARNING: skip test ' + test) #TODO
if test=='017503':log('WARNING: skip test ' + test) #TODO
if test=='017504':log('WARNING: skip test ' + test) #TODO
if test=='017505':log('WARNING: skip test ' + test) #TODO
if test=='017600':tests['remote b210']['alu']['fdd'][ '5']['bandrich']['udp']['ul']=True
if test=='017601':tests['remote b210']['alu']['fdd']['10']['bandrich']['udp']['ul']=True
if test=='017602':tests['remote b210']['alu']['fdd']['20']['bandrich']['udp']['ul']=True
if test=='017603':tests['remote b210']['alu']['fdd'][ '5']['bandrich']['udp']['dl']=True
if test=='017604':tests['remote b210']['alu']['fdd']['10']['bandrich']['udp']['dl']=True
if test=='017605':tests['remote b210']['alu']['fdd']['20']['bandrich']['udp']['dl']=True
if test=='017606':tests['remote b210']['alu']['fdd'][ '5']['bandrich']['tcp']['ul']=True
if test=='017607':tests['remote b210']['alu']['fdd']['10']['bandrich']['tcp']['ul']=True
if test=='017608':tests['remote b210']['alu']['fdd']['20']['bandrich']['tcp']['ul']=True
if test=='017609':tests['remote b210']['alu']['fdd'][ '5']['bandrich']['tcp']['dl']=True
if test=='017610':tests['remote b210']['alu']['fdd']['10']['bandrich']['tcp']['dl']=True
if test=='017611':tests['remote b210']['alu']['fdd']['20']['bandrich']['tcp']['dl']=True
if test=='018000':log('WARNING: skip test ' + test) #TODO
if test=='018001':log('WARNING: skip test ' + test) #TODO
if test=='018002':log('WARNING: skip test ' + test) #TODO
if test=='018003':log('WARNING: skip test ' + test) #TODO
if test=='018004':log('WARNING: skip test ' + test) #TODO
if test=='018005':log('WARNING: skip test ' + test) #TODO
if test=='018500':log('WARNING: skip test ' + test) #TODO
if test=='018501':log('WARNING: skip test ' + test) #TODO
if test=='018502':log('WARNING: skip test ' + test) #TODO
if test=='018503':log('WARNING: skip test ' + test) #TODO
if test=='018504':log('WARNING: skip test ' + test) #TODO
if test=='018505':log('WARNING: skip test ' + test) #TODO
if test=='018600':tests['b210']['alu']['tdd'][ '5']['3276']['udp']['ul']=True
if test=='018601':tests['b210']['alu']['tdd']['10']['3276']['udp']['ul']=True
if test=='018602':tests['b210']['alu']['tdd']['20']['3276']['udp']['ul']=True
if test=='018603':tests['b210']['alu']['tdd'][ '5']['3276']['udp']['dl']=True
if test=='018604':tests['b210']['alu']['tdd']['10']['3276']['udp']['dl']=True
if test=='018605':tests['b210']['alu']['tdd']['20']['3276']['udp']['dl']=True
if test=='018606':log('WARNING: skip test ' + test) #TODO
if test=='018607':log('WARNING: skip test ' + test) #TODO
if test=='018608':log('WARNING: skip test ' + test) #TODO
if test=='018609':log('WARNING: skip test ' + test) #TODO
if test=='018610':log('WARNING: skip test ' + test) #TODO
if test=='018611':log('WARNING: skip test ' + test) #TODO
if test=='018612':tests['b210']['alu']['tdd'][ '5']['3276']['tcp']['ul']=True
if test=='018613':tests['b210']['alu']['tdd']['10']['3276']['tcp']['ul']=True
if test=='018614':tests['b210']['alu']['tdd']['20']['3276']['tcp']['ul']=True
if test=='018615':tests['b210']['alu']['tdd'][ '5']['3276']['tcp']['dl']=True
if test=='018616':tests['b210']['alu']['tdd']['10']['3276']['tcp']['dl']=True
if test=='018617':tests['b210']['alu']['tdd']['20']['3276']['tcp']['dl']=True
if test=='018618':log('WARNING: skip test ' + test) #TODO
if test=='018619':log('WARNING: skip test ' + test) #TODO
if test=='018620':log('WARNING: skip test ' + test) #TODO
if test=='018621':log('WARNING: skip test ' + test) #TODO
if test=='018622':log('WARNING: skip test ' + test) #TODO
if test=='018623':log('WARNING: skip test ' + test) #TODO
if test=='025500':log('WARNING: skip test ' + test) #TODO
if test=='025501':log('WARNING: skip test ' + test) #TODO
if test=='025502':log('WARNING: skip test ' + test) #TODO
if test=='025503':log('WARNING: skip test ' + test) #TODO
if test=='025504':log('WARNING: skip test ' + test) #TODO
if test=='025505':log('WARNING: skip test ' + test) #TODO
if test=='025506':log('WARNING: skip test ' + test) #TODO
if test=='025507':log('WARNING: skip test ' + test) #TODO
if test=='025508':log('WARNING: skip test ' + test) #TODO
if test=='025509':log('WARNING: skip test ' + test) #TODO
if test=='025510':log('WARNING: skip test ' + test) #TODO
if test=='025511':log('WARNING: skip test ' + test) #TODO
if test=='025512':log('WARNING: skip test ' + test) #TODO
if test=='025513':log('WARNING: skip test ' + test) #TODO
if test=='025514':log('WARNING: skip test ' + test) #TODO
if test=='025515':log('WARNING: skip test ' + test) #TODO
if test=='025516':log('WARNING: skip test ' + test) #TODO
if test=='025517':log('WARNING: skip test ' + test) #TODO
if test=='025518':log('WARNING: skip test ' + test) #TODO
if test=='025519':log('WARNING: skip test ' + test) #TODO
if test=='025520':log('WARNING: skip test ' + test) #TODO
if test=='025521':log('WARNING: skip test ' + test) #TODO
if test=='025522':log('WARNING: skip test ' + test) #TODO
if test=='025523':log('WARNING: skip test ' + test) #TODO
if test=='025700':log('WARNING: skip test ' + test) #TODO
if test=='025701':log('WARNING: skip test ' + test) #TODO
if test=='025702':log('WARNING: skip test ' + test) #TODO
if test=='025703':log('WARNING: skip test ' + test) #TODO
if test=='025704':log('WARNING: skip test ' + test) #TODO
if test=='025705':log('WARNING: skip test ' + test) #TODO
from alu_test import run_b210_alu
#B210 ALU tests
run_b210_alu(tests, openair_dir, oai_user, oai_password, env)
#for test in todo_tests:
# action = test.findtext('class')
# if action != 'lte-softmodem':
# continue
# if not "start_ltebox" in test.findtext('EPC_main_exec'):
# continue
# id = test.get('id')
# log("INFO: Running ALU test " + id)
# logdir = openair_dir + "/cmake_targets/autotests/log/" + id
# quickshell("mkdir -p " + logdir)
# epc_machine = test.findtext('EPC')
# enb_machine = test.findtext('eNB')
# ue_machine = test.findtext('UE')
#
# #event object used to wait for several tasks at once
# event = threading.Event()
#
# #launch HSS, wait for prompt
# log("INFO: " + id + ": run HSS")
# task_hss = Task("actions/alu_hss.bash",
# "ALU HSS",
# epc_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/alu_hss." + epc_machine, event=event)
# task_hss.waitlog('S6AS_SIM-> ')
#
# #then launch EPC, wait for connection on HSS side
# log("INFO: " + id + ": run EPC")
# task = Task("actions/alu_epc.bash",
# "ALU EPC",
# epc_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/alu_epc." + epc_machine)
# ret = task.wait()
# if ret != 0:
# log("ERROR: EPC start failure");
# os._exit(1)
# task_hss.waitlog('Connected\n')
#
# #compile softmodem
# log("INFO: " + id + ": compile softmodem")
# envcomp = list(env)
# envcomp.append('BUILD_ARGUMENTS="' +
# test.findtext('eNB_compile_prog_args') + '"')
# #we don't care about BUILD_OUTPUT but it's required (TODO: change that)
# envcomp.append('BUILD_OUTPUT=/')
# task = Task("actions/compilation.bash",
# "compile softmodem",
# enb_machine,
# oai_user,
# oai_password,
# envcomp,
# logdir + "/compile_softmodem." + enb_machine)
# ret = task.wait()
# if ret != 0:
# log("ERROR: softmodem compilation failure");
# os._exit(1)
#
## #copy wanted configuration file
## quickshell("sshpass -p " + oai_password +
## " scp config/enb.band7.tm1.usrpb210.conf " +
## oai_user + "@" + enb_machine + ":/tmp/enb.conf")
#
# #run softmodem
# log("INFO: " + id + ": run softmodem")
# task_enb = Task("actions/run_enb.bash",
# "run softmodem",
# enb_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/run_softmodem." + enb_machine, event=event)
# task_enb.waitlog('got sync')
#
# #start UE
# log("INFO: " + id + ": start bandrich UE")
# task_ue = Task("actions/start_bandrich.bash",
# "start bandrich UE",
# ue_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/start_bandrich." + ue_machine, event=event)
# task_ue.waitlog("local IP address", event=event)
#
# event.wait()
#
# #at this point one task has died or we have the line in the log
# if task_ue.waitlog_state != WAITLOG_SUCCESS:
# log("ERROR: " + id + ": bandrich UE did not connect")
# os._exit(1)
#
# event.clear()
#
# if ( not task_enb.alive() or
# not task_hss.alive() or
# not task_ue.alive()):
# log("ERROR: " + id + ": eNB or UE tasks died")
# os._exit(1)
#
# #get bandrich UE IP
# l = open(task_ue.logfile, "r").read()
# ue_ip = re.search("local IP address (.*)\n", l).groups()[0]
# log("INFO: " + id + ": bandrich UE IP address: " + ue_ip)
#
# #run traffic
# log("INFO: " + id + ": run downlink TCP traffic")
#
# log("INFO: " + id + ": launch server")
# task_traffic_ue = Task("actions/downlink_bandrich.bash",
# "start iperf on bandrich UE as server",
# ue_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/downlink_bandrich." + ue_machine,
# event=event)
# task_traffic_ue.waitlog("Server listening on TCP port 5001")
#
# log("INFO: " + id + ": launch client")
# envepc = list(env)
# envepc.append("UE_IP=" + ue_ip)
# task = Task("actions/downlink_epc.bash",
# "start iperf on EPC as client",
# epc_machine,
# oai_user,
# oai_password,
# envepc,
# logdir + "/downlink_epc." + epc_machine, event=event)
# log("INFO: " + id + ": wait for client (or some error)")
#
# event.wait()
# log("DEBUG: event.wait() done")
#
# if ( not task_enb.alive() or
# not task_hss.alive() or
# not task_ue.alive()):
# log("ERROR: unexpected task exited, test failed, kill all")
# if task.alive():
# task.kill()
# if task_enb.alive():
# task_enb.kill()
# if task_ue.alive():
# task_ue.kill()
#
# ret = task.wait()
# if ret != 0:
# log("ERROR: " + id + ": downlink traffic failed")
# #not sure if we have to quit here or not
# #os._exit(1)
#
# #stop downlink server
# log("INFO: " + id + ": stop server (kill ssh connection)")
# task_traffic_ue.kill()
# log("INFO: " + id + ": wait for server to quit")
# task_traffic_ue.wait()
#
# #stop UE
# log("INFO: " + id + ": stop bandrich UE")
# task_ue.sendnow("%c" % 3)
# ret = task_ue.wait()
# if ret != 0:
# log("ERROR: " + id + ": task bandrich UE failed")
# #not sure if we have to quit here or not
# #os._exit(1)
#
# #stop softmodem
# log("INFO: " + id + ": stop softmodem")
# task_enb.sendnow("%c" % 3)
# ret = task_enb.wait()
# if ret != 0:
# log("ERROR: " + id + ": softmodem failed")
# #not sure if we have to quit here or not
# #os._exit(1)
#
# #stop EPC, wait for disconnection on HSS side
# log("INFO: " + id + ": stop EPC")
# task = Task("actions/alu_epc_stop.bash",
# "ALU EPC stop",
# epc_machine,
# oai_user,
# oai_password,
# env,
# logdir + "/alu_epc_stop." + epc_machine)
# ret = task.wait()
# if ret != 0:
# log("ERROR: " + id + ": ALU EPC stop failed")
# os._exit(1)
# task_hss.waitlog('Disconnected\n')
#
# log("INFO: " + id + ": stop HSS")
# task_hss.sendnow("exit\n")
# ret = task_hss.wait()
# if ret != 0:
# log("ERROR: " + id + ": ALU HSS failed")
# os._exit(1)
import utils
log(utils.GREEN + "GOODBYE" + utils.RESET)
#os._exit(0)
#run lte softmodem tests

View File

@@ -0,0 +1,370 @@
import os, time, threading, sys, os, errno, select
from connection import connection
import utils
from utils import log
#this class is to communicate between reader and sender threads
#the reader increments a count each time it receives the prompt
#and wakes up the sender
#it also indicates when it exits so the sender can exit too
#the sender (calling get) waits for the count to be greated than passed
#argument or if reader exited
#it returns argument+1 if things okay, -1 if reader exited
class Counter:
def __init__(self):
self.count = 0
self.cond = threading.Condition()
def inc(self):
self.cond.acquire()
self.count = self.count + 1
self.cond.notify()
self.cond.release()
def set(self, value):
self.cond.acquire()
self.count = value
self.cond.notify()
self.cond.release()
def get(self, current):
self.cond.acquire()
while True:
if self.count == -1:
ret = -1
break
if self.count >= current + 1:
ret = current + 1
break
self.cond.wait()
self.cond.release()
return ret
#this class is used for the main application to wait for some specific
#output from the remote program (typically the ALU HSS prompt, indicating
#it is ready and we can proceed further)
#(too much classes...)
class ProducerConsumer:
def __init__(self):
self.count = 0
self.cond = threading.Condition()
def add(self, v):
self.cond.acquire()
self.count = self.count + v
self.cond.notify()
self.cond.release()
def set(self, v):
self.cond.acquire()
self.count = v
self.cond.notify()
self.cond.release()
def get(self, old):
self.cond.acquire()
while True:
if self.count == -1:
ret = -1
break
if self.count > old:
ret = self.count
break
self.cond.wait()
self.cond.release()
return ret
#this thread gets input from the child process of the task
#it removes the prompts it gets (be carefully to use a prompt
#that will not be output of any command otherwise you dead)
class ReaderThread(threading.Thread):
def __init__(self, fdin, logfile, prompt, prompt_counter, producer):
threading.Thread.__init__(self)
self.fdin = fdin
self.logfile = logfile
self.prompt_counter = prompt_counter
self.prompt = prompt
self.promptsize = len(prompt)
self.stack = ""
self.stacksize = 0
self.producer = producer
def run(self):
try:
outfile = open(self.logfile, "w")
except BaseException, e:
log("ERROR: ReaderThread: " + self.logfile + ": " + str(e))
os._exit(1)
while True:
try:
(a, b, c) = select.select([ self.fdin ], [], [ self.fdin ])
except BaseException, e:
log("ERROR: ReaderThread: " + self.logfile +
": select failed: " + str(e))
os._exit(1)
try:
z = os.read(self.fdin, 1024)
except OSError, e:
if e.errno == errno.EIO:
#pipe has died, quit the thread
break
else:
log("ERROR: ReaderThread: " + self.logfile +
": unhandled error: " + str(e))
except BaseException, e:
log("ERROR: ReaderThread: " + self.logfile +
": unhandled error: " + str(e))
break
try:
produced = 0
#this part is to remove the prompt
for x in z:
if x == self.prompt[self.stacksize]:
self.stack = self.stack + x
self.stacksize = self.stacksize + 1
if self.stacksize == self.promptsize:
self.prompt_counter.inc()
self.stack = ""
self.stacksize = 0
else:
outfile.write(self.stack)
outfile.write(x)
produced = produced + len(self.stack) + len(x)
self.stack = ""
self.stacksize = 0
outfile.flush()
self.producer.add(produced)
except BaseException, e:
log("ERROR: ReaderThread: " + self.logfile + ": " + str(e))
os._exit(1)
try:
outfile.close()
except BaseException, e:
log("ERROR: ReaderThread: " + self.logfile + ": " + str(e))
os._exit(1)
#close the pipe, don't care about errors
try:
os.close(self.fdin)
except:
pass
#signal sender to quit
self.prompt_counter.set(-1)
self.producer.set(-1)
class SenderQuit(Exception):
pass
#this thread sends commands to the child process of the task
#it waits for the prompt between each command
#'event' is used for the main thread to wait for one of several tasks
#to quit, meaning error or end-of-test
class SenderThread(threading.Thread):
def __init__(self, fdout, prompt_counter, connection, env, action,
description, prompt, event=None):
threading.Thread.__init__(self)
self.fdin = fdout
self.prompt_counter = prompt_counter
self.connection = connection
self.env = env
self.action = action
self.description = description
self.prompt = prompt
self.count = 0
self.event = event
self.alive = True
def wait_prompt(self):
self.count = self.prompt_counter.get(self.count)
if self.count == -1:
raise SenderQuit()
def _run(self):
self.connection.send('export PS1=' + self.prompt + '\n')
self.wait_prompt()
self.connection.send('set +o emacs\n')
self.wait_prompt()
self.connection.send('echo\n')
self.wait_prompt()
self.connection.send('echo\n')
self.wait_prompt()
self.connection.send("echo -e '" + utils.GREEN +
'---------------------------------------------'
+ utils.RESET + "'\n")
self.wait_prompt()
self.connection.send('echo\n')
self.wait_prompt()
self.connection.send("echo -n -e '" + utils.YELLOW +
"COMMANDS START: " +
utils.RESET + "'\n")
self.wait_prompt()
self.connection.send('date\n')
self.wait_prompt()
for l in self.env:
self.connection.send('export ' + l + '\n')
self.wait_prompt()
with open(self.action) as f:
for line in f:
self.connection.send("echo -n -e '" + utils.GREEN +
"RUNNING: " + utils.RESET + "'\n")
self.wait_prompt()
self.connection.send("echo '" +
line.replace('\n','')
.replace("'", "'\\''") + "'\n")
self.wait_prompt()
self.connection.send(line)
self.wait_prompt()
self.connection.send("if [ $? != 0 ]; then " +
"echo -e '" + utils.RED +
"TEST_SETUP_ERROR: " + utils.RESET +
"last command failed, exiting'; " +
"date; exit 1; fi\n")
self.wait_prompt()
self.connection.send("echo -n -e '" + utils.YELLOW +
"COMMANDS DONE: " +
utils.RESET + "'\n")
self.wait_prompt()
self.connection.send('date\n')
self.wait_prompt()
self.connection.send("echo -e '" + utils.GREEN +
"TEST_SETUP_SUCCESS" + utils.RESET + "'\n")
self.wait_prompt()
self.connection.send('exit\n')
def run(self):
try:
self._run()
except SenderQuit:
log("WARNING: '" + self.description + "' exits too early?")
pass
except BaseException, e:
log("ERROR: task failed: " + str(e))
log("ERROR: action is: " + self.action)
log("ERROR: description is: " + self.description)
os._exit(1)
self.alive = False
if self.event != None:
self.event.set()
WAITLOG_RUNNING = 0
WAITLOG_SUCCESS = 1
WAITLOG_FAILURE = 2
class WaitlogFailed(Exception):
pass
#'event' is used by main thread to wait for any of several threads to quit.
#'Task' passes it the 'SenderThread' above, which sets it when it finishes.
class Task:
def __init__(self, action, description, machine, user, password, env,
logfile, post_action = None, event=None):
self.action = action
self.description = description
self.machine = machine
self.user = user
self.password = password
self.post_action = post_action
self.producer = ProducerConsumer()
self.logfile = logfile
prompt = "__OAI_TEST_SETUP_PROMPT__:"
prompt_counter = Counter()
self.connection = connection(description, machine, user, password)
self.reader = ReaderThread(self.connection.fd, logfile, prompt,
prompt_counter, self.producer)
self.reader.start()
self.sender = SenderThread(self.connection.fd, prompt_counter,
self.connection, env, action, description,
prompt, event)
self.sender.start()
def wait(self, timeout=-1):
if self.connection.active == False:
return self.connection.retcode
try:
(pid, ret) = os.waitpid(self.connection.pid, 0)
except KeyboardInterrupt, e:
log("ERROR: ctrl+c catched! " + str(e))
os._exit(1)
except BaseException, e:
log("ERROR: " + str(e))
os._exit(1)
self.sender.join()
self.reader.join()
return ret
#this function should not be called, it is used internally by 'waitlog'
#in mode 'background thread'
#TODO: join() the thread at some point
def _waitlog_thread(self, task, s):
consumed = 0
while True:
consumed = task.producer.get(consumed)
if consumed == -1:
log("ERROR: string '" + s + "' not found in logfile " +
task.logfile)
task.waitlog_state = WAITLOG_FAILURE
task.waitlog_event.set()
return
if s in open(task.logfile).read():
task.waitlog_state = WAITLOG_SUCCESS
task.waitlog_event.set()
return
#two ways to wait for a string in the log file:
# - blocking way
# - background thread, using an Event to signal success/failure
def waitlog(self, s, event=None):
if event != None:
self.waitlog_state = WAITLOG_RUNNING
self.waitlog_event = event
self.waitlog_thread = \
threading.Thread(target=self._waitlog_thread,
args=(self, s))
self.waitlog_thread.start()
return
#TODO: optimize, do not process all the file at each wakeup
consumed = 0
while True:
consumed = self.producer.get(consumed)
if consumed == -1:
log("ERROR: string '" + s + "' not found in logfile " +
self.logfile)
raise WaitlogFailed()
if s in open(self.logfile).read():
return
def sendnow(self, x):
self.connection.send(x)
def alive(self):
return self.sender.alive
def kill(self):
self.connection.kill()
#put some error log in logfile, for verbosity
try:
f = open(self.logfile, "a+")
f.write("\n\n" + utils.RED + "TEST_SETUP_ERROR: " + utils.RESET +
"task killed by test setup\n\n");
close(f)
except BaseException, e:
pass
def postaction(self):
if self.post_action != None:
out = utils.quickshell(self.post_action)
if len(out):
log("INFO: task '" + self.description +
"' post_action '" + self.post_action + "' says: ")
for l in out.splitlines():
log("INFO: " + l)

View File

@@ -0,0 +1,84 @@
import subprocess, os, thread, sys, time
#logging facitiliy
#TODO: simplify (a first version redefined stdout, then we replaced 'print'
#instead, keeping stuff as is)
class Logger:
def __init__(self, stream):
self.stream = stream
self.start_of_line = True
self.lock = thread.allocate_lock()
openair_dir = os.environ.get('OPENAIR_DIR')
if openair_dir == None:
print "FATAL: no OPENAIR_DIR"
os._exit(1)
try:
self.logfile = open(openair_dir +
"/cmake_targets/autotests/log/python.stdout", "w")
except BaseException, e:
print "FATAL: cannot create log file"
print e
os._exit(1)
def put(self, data):
self.stream.write(data)
self.logfile.write(data)
def write(self, data):
self.lock.acquire()
for c in data:
if self.start_of_line:
self.start_of_line = False
t = time.strftime("%H:%M:%S", time.localtime()) + ": "
self.stream.write(t)
self.logfile.write(t)
self.put(c)
if c == '\n':
self.start_of_line = True
self.stream.flush()
self.logfile.flush()
self.lock.release()
logger = Logger(sys.stdout)
def log(x):
logger.write(x + "\n")
#check if given test is in list
#it is in list if one of the strings in 'list' is at the beginning of 'test'
def test_in_list(test, list):
for check in list:
check=check.replace('+','')
if (test.startswith(check)):
return True
return False
#run a local command in a shell
def quickshell(command):
process = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
(retout, reterr) = process.communicate()
if (process.returncode != 0):
log("ERROR: shell command failed: " + command)
if len(retout):
log("ERROR: command says: ")
for l in retout.splitlines():
log("ERROR: " + l)
os._exit(1)
return retout
RED="\x1b[31m"
GREEN="\x1b[32m"
YELLOW="\x1b[33m"
RESET="\x1b[m"
#an exception raised when a test fails
class TestFailed(Exception):
pass
#this function returns True if a test in 'x' is set to True
#to be used as: if do_tests(tests['b210']['alu']) ...
def do_tests(x):
if type(x) == list:
for v in x:
if do_tests(v): return True
return False
if type(x) == dict: return do_tests(x.values())
if x == True: return True
return False

View File

@@ -1,34 +1,25 @@
#!/bin/bash
################################################################################
#
# Copyright (c) 2015, EURECOM (www.eurecom.fr)
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# The views and conclusions contained in the software and documentation are those
# of the authors and should not be interpreted as representing official policies,
# either expressed or implied, of the FreeBSD Project.
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file build_oai
# brief OAI automated build tool that can be used to install, compile, run OAI.
# author Navid Nikaein, Lionel GAUTHIER, Laurent Thomas
@@ -42,6 +33,13 @@ ORIGIN_PATH=$PWD
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
source $THIS_SCRIPT_PATH/tools/build_helper
# set environment variables (OPENAIR_HOME, ...)
set_openair_env
#variables for UE data generation
gen_nvram_path=$OPENAIR_DIR/targets/bin
conf_nvram_path=$OPENAIR_DIR/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
MSC_GEN="False"
XFORMS="True"
PRINT_STATS="False"
@@ -49,7 +47,7 @@ VCD_TIMING="False"
DEADLINE_SCHEDULER_FLAG_USER="False"
FORCE_DEADLINE_SCHEDULER_FLAG_USER=""
CPU_AFFINITY_FLAG_USER="False" #Only valid when lowlatecy flag is set to False
REL="Rel10"
REL="Rel14"
HW="None"
TP="None"
NOS1=0
@@ -62,19 +60,27 @@ BUILD_DOXYGEN=0
T_TRACER="False"
DISABLE_HARDWARE_DEPENDENCY="False"
CMAKE_BUILD_TYPE=""
CMAKE_CMD="$CMAKE"
UE_AUTOTEST_TRACE="False"
UE_DEBUG_TRACE="False"
UE_TIMING_TRACE="False"
DISABLE_LOG_X="False"
USRP_REC_PLAY="False"
BUILD_ECLIPSE=0
UE_NAS_USE_TUN="False"
trap handle_ctrl_c INT
function print_help() {
echo_info '
echo_info "
This program installs OpenAirInterface Software
You should have ubuntu 14.xx, updated, and the Linux kernel >= 3.14
Options
-h
This help
-c | --clean
Erase all files to make a rebuild from start"
Erase all files to make a rebuild from start
-C | --clean-all
Erase all files made by previous compilations, installations"
Erase all files made by previous compilations, installations
--clean-kernel
Erase previously installed features in kernel: iptables, drivers, ...
-I | --install-external-packages
@@ -83,18 +89,21 @@ Options
--install-optional-packages
Install useful but not mandatory packages such as valgrind
-g | --run-with-gdb
Add debugging symbols to compilation directives. It also disables any compiler optimization.
Add debugging symbols to compilation directives. It also disables any compiler optimization. Only for debugging. Do not use in normal operation!
-h | --help
Print this help
--eNB
Makes the LTE softmodem
--UE
Makes the UE specific parts (ue_ip, usim, nvram)
--RRH
Makes the RRH
Makes the UE specific parts (ue_ip, usim, nvram) from the given configuration file
--UE-conf-nvram [configuration file]
Specify conf_nvram_path (default \"$conf_nvram_path\")
--UE-gen-nvram [output path]
Specify gen_nvram_path (default \"$gen_nvram_path\")
-r | --3gpp-release
default is Rel10,
default is Rel14,
Rel8 limits the implementation to 3GPP Release 8 version
Rel10 limits the implementation to 3GPP Release 10 version
-w | --hardware
EXMIMO, USRP, BLADERF, ETHERNET, LMSSDR, None (Default)
Adds this RF board support (in external packages installation and in compilation)
@@ -102,7 +111,7 @@ Options
ETHERNET , None
Adds this trasport protocol support in compilation
--oaisim
Makes the oaisim simulator. Hardware will be defaulted to "None".
Makes the oaisim simulator. Hardware will be defaulted to \"None\".
--phy_simulators
Makes the unitary tests Layer 1 simulators
--core_simulators
@@ -136,18 +145,33 @@ Options
Enables the T tracer.
--disable-hardware-dependency
Disable HW dependency during installation
--ue-autotest-trace
Enable specific traces for UE autotest framework
--ue-trace
Enable traces for UE debugging
--ue-timing
Enable traces for timing
--disable-log
Disable all LOG_* macros
--build-eclipse
Build eclipse project files. Paths are auto corrected by fixprj.sh
--usrp-recplay
Build for I/Q record-playback modes
--ue-nas-use-tun
Use TUN devices for the UEs instead of ue_ip.ko
Usage (first build):
oaisim (eNB + UE): ./build_oai -I -g --oaisim -x --install-system-files
Eurecom EXMIMO + COTS UE : ./build_oai -I -g --eNB -x --install-system-files
NI/ETTUS B201 + COTS UE : ./build_oai -I -g --eNB -x --install-system-files -w USRP
oaisim (eNB + UE): ./build_oai -I --oaisim -x --install-system-files
Eurecom EXMIMO + COTS UE : ./build_oai -I --eNB -x --install-system-files
NI/ETTUS B201 + COTS UE : ./build_oai -I --eNB -x --install-system-files -w USRP
Usage (Regular):
oaisim : ./build_oai --oaisim -x
Eurecom EXMIMO + OAI ENB : ./build_oai --eNB -x
NI/ETTUS B201 + OAI ENB : ./build_oai --eNB -x -w USRP'
NI/ETTUS B201 + OAI ENB : ./build_oai --eNB -x -w USRP"
}
function main() {
until [ -z "$1" ]
do
case "$1" in
@@ -173,19 +197,25 @@ function main() {
GDB=1
CMAKE_BUILD_TYPE="Debug"
echo_info "Will Compile with gdb symbols and disable compiler optimization"
CMAKE_CMD="$CMAKE_CMD -DCMAKE_BUILD_TYPE=Debug --trace-expand"
shift;;
--eNB)
eNB=1
echo_info "Will compile eNB"
shift;;
-a | --agent)
echo_info "FlexRAN support is always compiled into the eNB"
shift;;
--UE)
UE=1
echo_info "Will compile UE"
shift;;
--RRH)
RRH=1
echo_info "Will compile RRH"
shift;;
--UE-conf-nvram)
conf_nvram_path=$(readlink -f "$1")
shift 2;;
--UE-gen-nvram)
gen_nvram_path=$(readlink -f $2)
shift 2;;
-r | --3gpp-release)
REL=$2
echo_info "Setting release to: $REL"
@@ -287,6 +317,43 @@ function main() {
echo_info "Disabling hardware dependency for compiling software"
DISABLE_HARDWARE_DEPENDENCY="True"
shift 1;;
--ue-autotest-trace)
UE_AUTOTEST_TRACE="True"
echo_info "Enabling autotest specific trace for UE"
shift 1;;
--ue-trace)
UE_DEBUG_TRACE="True"
echo_info "Enabling UE trace for debug"
shift 1;;
--ue-timing)
UE_TIMING_TRACE="True"
echo_info "Enabling UE timing trace"
shift 1;;
--disable-log)
DISABLE_LOG_X="True"
echo_info "Disabling all LOG_* traces"
shift 1;;
--uhd-images-dir)
UHD_IMAGES_DIR=$2
echo_info "Downloading UHD images in the indicated location"
shift 2;;
--build-eclipse)
BUILD_ECLIPSE=1
CMAKE_CMD="$CMAKE_CMD"' -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE -G"Eclipse CDT4 - Unix Makefiles"'
echo_info "Enabling build eclipse project support"
shift 1;;
--build-telnetsrv)
BUILD_TELNETSRV=1
echo_info "Build embedded telnet server"
shift ;;
--usrp-recplay)
USRP_REC_PLAY="True"
echo_info "Enabling USRP record playback mode"
shift 1;;
--ue-nas-use-tun)
UE_NAS_USE_TUN="True"
echo_info "Enabling UE NAS TUN device usage instead of ue_ip.ko"
shift 1;;
-h | --help)
print_help
exit 1;;
@@ -297,8 +364,15 @@ function main() {
esac
done
CMAKE_CMD="$CMAKE_CMD .."
echo_info "CMAKE_CMD=$CMAKE_CMD"
if [ "$eNB" = "1" ] && [ "$UE" = "1" ]; then
echo_error "Cannot build UE and eNB on one build_oai execution"
echo_error "use 2 build_oai invocations"
exit
fi
#########################################################
# check validity of HW and TP parameters for RRH and eNB
# check validity of HW and TP parameters for eNB
#########################################################
# to be discussed
@@ -314,15 +388,6 @@ function main() {
fi
fi
if [ "$RRH" = "1" ] ; then
if [ "$TP" = "None" ] ; then
echo_fatal "A transport protocol (e.g. -t ETHERNET) must be defined!"
fi
if [ "$HW" = "None" ] ; then
echo_info "No radio head has been selected (HW set to $HW)"
fi
fi
echo_info "RF HW set to $HW"
#Now we set flags to enable deadline scheduler settings
#By default: USRP: disable,
@@ -330,7 +395,7 @@ function main() {
#By default: EXMIMO: enable
if [ "$FORCE_DEADLINE_SCHEDULER_FLAG_USER" = "" ]; then
if [ "$HW" = "EXMIMO" ] ; then
DEADLINE_SCHEDULER_FLAG_USER="False"
DEADLINE_SCHEDULER_FLAG_USER="True"
elif [ "$HW" = "ETHERNET" ] ; then
DEADLINE_SCHEDULER_FLAG_USER="False"
elif [ "$HW" = "OAI_USRP" ] ; then
@@ -357,13 +422,16 @@ function main() {
echo_info "Flags for Deadline scheduler: $DEADLINE_SCHEDULER_FLAG_USER"
echo_info "Flags for CPU Affinity: $CPU_AFFINITY_FLAG_USER"
if [ -n "$UHD_IMAGES_DIR" ] && [ -z "$INSTALL_EXTERNAL" ]; then
echo_error "UHD images download settings will not be applied without -I present"
exit
fi
############################################
# setting and printing OAI envs, we should check here
############################################
echo_info "2. Setting the OAI PATHS ..."
set_openair_env
cecho "OPENAIR_DIR = $OPENAIR_DIR" $green
# for conf files copy in this bash script
@@ -394,7 +462,7 @@ function main() {
echo_info "installing packages for USRP support"
check_install_usrp_uhd_driver
if [ ! "$DISABLE_HARDWARE_DEPENDENCY" == "True" ]; then
install_usrp_uhd_driver
install_usrp_uhd_driver $UHD_IMAGES_DIR
fi
fi
if [ "$HW" == "OAI_BLADERF" ] ; then
@@ -404,6 +472,9 @@ function main() {
flash_firmware_bladerf
fi
fi
echo_info "installing protobuf/protobuf-c for flexran agent support"
install_protobuf_from_source
install_protobuf_c_from_source
fi
if [ "$INSTALL_OPTIONAL" = "1" ] ; then
@@ -413,9 +484,9 @@ function main() {
if [ "$oaisim" = "1" ] ; then
#to be discussed
# there is no RF device and no transport protocol
# there is no RF device transport protocol
HW="None"
TP="None"
TP="ETHERNET"
if [ "$XFORMS" == "True" ] ; then
PRINT_STATS="True"
@@ -428,12 +499,25 @@ function main() {
DIR=$OPENAIR_DIR/cmake_targets
if [ "$NOS1" = "1" ] ; then
lte_build_dir=lte_noS1_build_oai
lte_exec=lte-softmodem-nos1
if [ "$eNB" = "1" ] ; then
lte_exec=lte-softmodem-nos1
fi
if [ "$UE" = "1" ] ; then
lte_exec=lte-uesoftmodem-nos1
fi
else
lte_build_dir=lte_build_oai
lte_exec=lte-softmodem
if [ "$eNB" = "1" ] ; then
lte_exec=lte-softmodem
fi
if [ "$UE" = "1" ] ; then
lte_exec=lte-uesoftmodem
fi
fi
# configuration module libraries, one currently available, using libconfig
config_libconfig_shlib=params_libconfig
# first generate the CMakefile in the right directory
if [ "$eNB" = "1" -o "$UE" = "1" -o "$HW" = "EXMIMO" ] ; then
@@ -456,9 +540,19 @@ function main() {
echo "set (DEADLINE_SCHEDULER \"${DEADLINE_SCHEDULER_FLAG_USER}\" )" >>$cmake_file
echo "set (CPU_AFFINITY \"${CPU_AFFINITY_FLAG_USER}\" )" >>$cmake_file
echo "set ( T_TRACER $T_TRACER )" >> $cmake_file
echo "set (UE_AUTOTEST_TRACE $UE_AUTOTEST_TRACE)" >> $cmake_file
echo "set (UE_DEBUG_TRACE $UE_DEBUG_TRACE)" >> $cmake_file
echo "set (UE_TIMING_TRACE $UE_TIMING_TRACE)" >> $cmake_file
echo "set (DISABLE_LOG_X $DISABLE_LOG_X)" >> $cmake_file
echo "set (USRP_REC_PLAY $USRP_REC_PLAY)" >> $cmake_file
if [ "$UE" = 1 -a "$NOS1" = "0" ] ; then
echo_info "Compiling UE S1 build : enabling Linux and NETLINK"
echo "set (LINUX True )" >> $cmake_file
echo "set (PDCP_USE_NETLINK True )" >> $cmake_file
fi
echo 'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)' >> $cmake_file
cd $DIR/$lte_build_dir/build
cmake ..
eval $CMAKE_CMD
fi
if [ "$eNB" = "1" -o "$UE" = "1" ] ; then
@@ -467,6 +561,14 @@ function main() {
$lte_build_dir $lte_exec \
$lte_exec $dbin/$lte_exec.$REL
# mandatory shared lib
compilations \
$lte_build_dir $config_libconfig_shlib \
lib$config_libconfig_shlib.so $dbin/lib$config_libconfig_shlib.so
compilations \
$lte_build_dir coding \
libcoding.so $dbin/libcoding.so
if [ "$NOS1" = "1" ] ; then
compilations \
$lte_build_dir nasmesh \
@@ -487,7 +589,7 @@ function main() {
# mkdir -p $DIR/at_commands/build
# cd $DIR/at_commands/build
# cmake ..
# eval $CMAKE_CMD
# compilations \
# at_commands at_nas_ue \
# at_nas_ue $dbin/at_nas_ue
@@ -496,22 +598,24 @@ function main() {
mkdir -p $DIR/nas_sim_tools/build
cd $DIR/nas_sim_tools/build
cmake ..
eval $CMAKE_CMD
compilations \
nas_sim_tools usim \
usim $dbin/usim
compilations \
nas_sim_tools nvram \
nvram $dbin/nvram
compilations \
nas_sim_tools conf2uedata \
conf2uedata $dbin/conf2uedata
# generate USIM data
if [ -f $dbin/nvram ]; then
install_nas_tools $dbin $dconf
if [ -f $dbin/conf2uedata ]; then
install_nas_tools $conf_nvram_path $gen_nvram_path
echo_info "Copying UE specific part to $DIR/$lte_build_dir/build"
cp -Rvf $dbin/.ue_emm.nvram $DIR/$lte_build_dir/build
cp -Rvf $dbin/.ue.nvram $DIR/$lte_build_dir/build
cp -Rvf $dbin/.usim.nvram $DIR/$lte_build_dir/build
cp -Rvf $dbin/.ue_emm.nvram0 $DIR/$lte_build_dir/build
cp -Rvf $dbin/.ue.nvram0 $DIR/$lte_build_dir/build
cp -Rvf $dbin/.usim.nvram0 $DIR/$lte_build_dir/build
else
echo_warning "not generated UE NAS files: binaries not found"
fi
@@ -523,18 +627,23 @@ function main() {
mkdir -p build
cd build
rm -f *sim
cmake ..
eval $CMAKE_CMD
fi
if [ "$SIMUS_PHY" = "1" ] ; then
# lte unitary simulators compilation
echo_info "Compiling unitary tests simulators"
simlist="dlsim ulsim pucchsim prachsim pdcchsim pbchsim mbmssim"
# TODO: fix: dlsim_tm4 pucchsim prachsim pdcchsim pbchsim mbmssim
#simlist="dlsim_tm4 dlsim ulsim pucchsim prachsim pdcchsim pbchsim mbmssim"
simlist="dlsim ulsim"
for f in $simlist ; do
compilations \
lte-simulators $f \
$f $dbin/$f.$REL
done
compilations \
lte-simulators coding \
libcoding.so $dbin/libcoding.so
fi
# Core simulators
@@ -561,6 +670,7 @@ function main() {
compilations \
$lte_build_dir updatefw \
updatefw $dbin/updatefw
echo_info "Compiling oarf tools. The logfile for compilation is here: $dlog/oarf.txt"
make -C $OPENAIR_DIR/cmake_targets/$lte_build_dir/build oarf > $dlog/oarf.txt 2>&1
cp $OPENAIR_DIR/cmake_targets/$lte_build_dir/build/*.oct $dbin
if [ -s $dbin/oarf_config_exmimo.oct ] ; then
@@ -593,14 +703,21 @@ function main() {
echo "set ( RRC_ASN1_VERSION \"${REL}\")" >> $cmake_file
echo "set ( ENABLE_VCD_FIFO $VCD_TIMING )" >> $cmake_file
echo "set ( T_TRACER $T_TRACER )" >> $cmake_file
echo "set ( UE_NAS_USE_TUN $UE_NAS_USE_TUN )" >> $cmake_file
echo 'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)' >> $cmake_file
[ "$CLEAN" = "1" ] && rm -rf $DIR/$oaisim_build_dir/build
mkdir -p $DIR/$oaisim_build_dir/build
cd $DIR/$oaisim_build_dir/build
cmake ..
eval $CMAKE_CMD
compilations \
$oaisim_build_dir $oaisim_exec \
$oaisim_exec $dbin/$oaisim_exec.$REL
compilations \
$oaisim_build_dir $config_libconfig_shlib \
lib$config_libconfig_shlib.so $dbin/lib$config_libconfig_shlib.so
compilations \
$oaisim_build_dir coding \
libcoding.so $dbin/libcoding.so
if [ "$NOS1" != "1" ] ; then
@@ -608,7 +725,7 @@ function main() {
echo_info "Compiling at_nas_ue"
mkdir -p $DIR/at_commands/build
cd $DIR/at_commands/build
cmake ..
eval $CMAKE_CMD
compilations \
at_commands at_nas_ue \
at_nas_ue $dbin/at_nas_ue
@@ -622,17 +739,20 @@ function main() {
[ "$CLEAN" = "1" ] && rm -rf $DIR/nas_sim_tools/build
mkdir -p $DIR/nas_sim_tools/build
cd $DIR/nas_sim_tools/build
cmake ..
eval $CMAKE_CMD
compilations \
nas_sim_tools usim \
usim $dbin/usim
compilations \
nas_sim_tools nvram \
nvram $dbin/nvram
compilations \
nas_sim_tools conf2uedata \
conf2uedata $dbin/conf2uedata
# generate USIM data
if [ -f $dbin/nvram ]; then
install_nas_tools $dbin $dconf
if [ -f $dbin/conf2uedata ]; then
install_nas_tools $conf_nvram_path $gen_nvram_path
else
echo_warning "not generated UE NAS files: binaries not found"
fi
@@ -648,11 +768,20 @@ function main() {
CMakeFiles/nasmesh/nasmesh.ko $dbin/nasmesh.ko
#oai_nw_drv
compilations \
$oaisim_build_dir oai_nw_drv \
CMakeFiles/oai_nw_drv/oai_nw_drv.ko $dbin/oai_nw_drv.ko
#compilations \
# $oaisim_build_dir oai_nw_drv \
# CMakeFiles/oai_nw_drv/oai_nw_drv.ko $dbin/oai_nw_drv.ko
fi
if [ "$TP" == "ETHERNET" ] ; then
compilations \
$oaisim_build_dir oai_eth_transpro \
liboai_eth_transpro.so $dbin/liboai_eth_transpro.so.$REL
ln -sf liboai_eth_transpro.so liboai_transpro.so
ln -sf $dbin/liboai_eth_transpro.so.$REL $dbin/liboai_transpro.so
echo_info "liboai_transpro.so is linked with ETHERNET library"
fi
cmake_file=$DIR/oaisim_mme_build_oai/CMakeLists.txt
cp $DIR/oaisim_mme_build_oai/CMakeLists.template $cmake_file
echo "set ( CMAKE_BUILD_TYPE $CMAKE_BUILD_TYPE )" >> $cmake_file
@@ -664,77 +793,48 @@ function main() {
#[ "$CLEAN" = "1" ] && rm -rf $DIR/oaisim_mme_build_oai/build
#mkdir -p $DIR/oaisim_mme_build_oai/build
#cd $DIR/oaisim_mme_build_oai/build
#cmake ..
#eval $CMAKE_CMD
#compilations \
# oaisim_mme_build_oai oaisim_mme \
# oaisim_mme $dbin/oaisim_mme.$REL
fi
# RRH compilation
# Telnet server compilation
#####################
if [ "$RRH" = "1" ] ; then
if [ "$BUILD_TELNETSRV" = "1" ] ; then
build_dir=$lte_build_dir
compilations \
$build_dir telnetsrv \
libtelnetsrv.so $dbin/libtelnetsrv.so
rrh_exec=rrh_gw
rrh_build_dir=rrh_gw
echo_info "Compiling $rrh_exec ..."
[ "$CLEAN" = "1" ] && rm -rf $DIR/rrh_gw/build
mkdir -p $DIR/$rrh_build_dir/build
cmake_file=$DIR/$rrh_build_dir/CMakeLists.txt
echo "cmake_minimum_required(VERSION 2.8)" > $cmake_file
echo "set ( CMAKE_BUILD_TYPE $CMAKE_BUILD_TYPE )" >> $cmake_file
echo "set ( ENABLE_VCD_FIFO $VCD_TIMING )" >> $cmake_file
echo "set ( ENABLE_ITTI False )" >> $cmake_file
echo "set ( RF_BOARD \"${HW}\")" >> $cmake_file
echo "set ( TRANSP_PRO \"${TP}\")" >> $cmake_file
echo 'set ( PACKAGE_NAME "\"rrh_gw\"")' >> $cmake_file
echo "set ( DEADLINE_SCHEDULER \"${DEADLINE_SCHEDULER_FLAG_USER}\" )" >>$cmake_file
echo "set ( CPU_AFFINITY \"${CPU_AFFINITY_FLAG_USER}\" )" >>$cmake_file
echo "set ( T_TRACER $T_TRACER )" >> $cmake_file
echo 'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)' >> $cmake_file
cd $DIR/$rrh_build_dir/build
cmake ..
compilations \
rrh_gw rrh_gw \
rrh_gw $dbin/rrh_gw
fi
fi
# build RF device and transport protocol libraries
#####################################
if [ "$eNB" = "1" -o "$RRH" = "1" ] ; then
if [ "$eNB" = "1" -o "$UE" = "1" ] ; then
if [ "$eNB" = "1" ] ; then
build_dir=$lte_build_dir
else
build_dir=$rrh_build_dir
fi
build_dir=$lte_build_dir
# build RF device libraries (currently EXMIMO is not complied with the rest of HW targets)
# build RF device libraries
if [ "$HW" != "None" ] ; then
rm -f liboai_device.so
rm -f $dbin/liboai_device.so
# link liboai_device.so with the selected RF device library
if [ "$HW" == "EXMIMO" ] ; then
#add exmimo compilation
#TODO EXMIMO library support
compilations \
$build_dir oai_exmimodevif \
liboai_exmimodevif.so $dbin/liboai_exmimodevif.so.$REL
ln -sf liboai_exmimodevif.so liboai_device.so
ln -sf $dbin/liboai_exmimodevif.so.$REL $dbin/liboai_device.so
echo_info "liboai_device.so is linked to EXMIMO device library"
elif [ "$HW" == "OAI_USRP" ] ; then
if [ -d "/usr/include/uhd" ] ; then
compilations \
$build_dir oai_usrpdevif \
liboai_usrpdevif.so $dbin/liboai_usrpdevif.so.$REL
fi
compilations \
$build_dir oai_usrpdevif \
liboai_usrpdevif.so $dbin/liboai_usrpdevif.so.$REL
ln -s liboai_usrpdevif.so liboai_device.so
ln -s $dbin/liboai_usrpdevif.so.$REL $dbin/liboai_device.so
ln -sf liboai_usrpdevif.so liboai_device.so
ln -sf $dbin/liboai_usrpdevif.so.$REL $dbin/liboai_device.so
echo_info "liboai_device.so is linked to USRP device library"
elif [ "$HW" == "OAI_BLADERF" ] ; then
if [ -f "/usr/include/libbladeRF.h" ] ; then
@@ -743,8 +843,8 @@ function main() {
liboai_bladerfdevif.so $dbin/liboai_bladerfdevif.so.$REL
fi
ln -s liboai_bladerfdevif.so liboai_device.so
ln -s $dbin/liboai_bladerfdevif.so.$REL $dbin/liboai_device.so
ln -sf liboai_bladerfdevif.so liboai_device.so
ln -sf $dbin/liboai_bladerfdevif.so.$REL $dbin/liboai_device.so
echo_info "liboai_device.so is linked to BLADERF device library"
elif [ "$HW" == "OAI_LMSSDR" ] ; then
# if [ -f "/usr/include/libbladeRF.h" ] ; then
@@ -753,8 +853,8 @@ function main() {
liboai_lmssdrdevif.so $dbin/liboai_lmssdrdevif.so.$REL
# fi
ln -s liboai_lmssdrdevif.so liboai_device.so
ln -s $dbin/liboai_lmssdrdevif.so.$REL $dbin/liboai_device.so
ln -sf liboai_lmssdrdevif.so liboai_device.so
ln -sf $dbin/liboai_lmssdrdevif.so.$REL $dbin/liboai_device.so
echo_info "liboai_device.so is linked to LMSSDR device library"
else
echo_info "liboai_device.so is not linked to any device library"
@@ -770,8 +870,8 @@ function main() {
compilations \
$build_dir oai_eth_transpro \
liboai_eth_transpro.so $dbin/liboai_eth_transpro.so.$REL
ln -s liboai_eth_transpro.so liboai_transpro.so
ln -s $dbin/liboai_eth_transpro.so.$REL $dbin/liboai_transpro.so
ln -sf liboai_eth_transpro.so liboai_transpro.so
ln -sf $dbin/liboai_eth_transpro.so.$REL $dbin/liboai_transpro.so
echo_info "liboai_transpro.so is linked with ETHERNET library"
fi
fi
@@ -789,7 +889,7 @@ fi
[ "$CLEAN" = "1" ] && rm -rf $OPENAIR_DIR/cmake_targets/doxygen/build
mkdir -p $OPENAIR_DIR/cmake_targets/doxygen/build
cd $OPENAIR_DIR/cmake_targets/doxygen/build
cmake ..
eval $CMAKE_CMD
make doc
) >& $doxygen_log
fi

6
cmake_targets/build_ue Normal file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
#sudo ./build_oai -c -C -I --install-optional-packages --install-system-files --UE -w USRP -V
#sudo ./build_oai -c -C -I --install-optional-packages --UE -w USRP -V
#sudo ./build_oai -c -C --UE -w USRP -V
sudo ./build_oai -c -C --UE -w USRP
#sudo ./build_oai -c -C --UE -w USRP --build-eclipse

View File

@@ -2,17 +2,13 @@ cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ASN_DEBUG False)
set ( ADDR_CONF False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 True )
set ( EMOS False )
set ( EMIT_ASN_DEBUG False )
set ( ENABLE_FXP True )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING True )
set ( ENABLE_NEW_MULTICAST True )
set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_SECURITY True )
set ( ENABLE_STANDALONE_EPC False)
set ( ENABLE_USE_CPU_EXECUTION_TIME True )
@@ -21,7 +17,6 @@ set ( ENABLE_USE_RAW_SOCKET_FOR_SGI True)
set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE True )
set ( EXMIMO_IOT True )
set ( HARD_RT False )
set ( JUMBO_FRAME True )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U True)
@@ -33,7 +28,6 @@ set ( DEADLINE_SCHEDULER False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MESSAGE_CHART_GENERATOR False)
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
@@ -42,38 +36,25 @@ set ( NAS_MME False )
set ( NAS_UE True )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT True )
set ( NO_RRM True )
set ( OAI_EMU False )
set ( OAISIM False )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK True )
set ( OPENAIR1 True )
set ( OPENAIR2 True )
set ( OPENAIR_LTE True )
set ( PACKAGE_NAME "epc_test" )
set ( PBS_SIM False )
set ( PDCP_USE_NETLINK True )
set ( PC_DSP True )
set ( PC_TARGET True )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM True )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RRC_DEFAULT_RAB_IS_AM True)
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( TEST_OMG False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT True )

View File

@@ -3,12 +3,9 @@ set(PACKAGE_NAME "unitary_tests_simulators")
set(PHYSIM True)
set(RF_BOARD None)
set(XFORMS True)
set(ENABLE_ITTI False)
set(DEBUG_PHY False)
set(MU_RECIEVER False)
set(RANDOM_BF False)
set(PBS_SIM False)
set(PERFECT_CE False)
set(NAS_UE False)
set(MESSAGE_CHART_GENERATOR False)

View File

@@ -2,70 +2,89 @@ cmake_minimum_required(VERSION 2.8)
project(NAS_SIM_TOOLS)
include(FindPkgConfig)
pkg_search_module(CONFIG libconfig REQUIRED)
include_directories(${CONFIG_INCLUDE_DIRS})
add_definitions(-std=gnu99)
ENABLE_LANGUAGE(C)
#Sends the -std=c99 flag to the gcc compiler
add_definitions(-std=c99)
add_definitions(-DNAS_UE)
set(CMAKE_C_FLAGS
"${CMAKE_C_FLAGS} ${C_FLAGS_PROCESSOR} -Werror -Wall -Wstrict-prototypes -Wno-packed-bitfield-compat -g")
set(OPENAIR_DIR $ENV{OPENAIR_DIR})
set(OPENAIR1_DIR $ENV{OPENAIR_DIR}/openair1)
set(OPENAIR2_DIR $ENV{OPENAIR_DIR}/openair2)
set(OPENAIR3_DIR $ENV{OPENAIR_DIR}/openair3)
set(OPENAIR3_DIR $ENV{OPENAIR_DIR}/openair3)
set(OPENAIR_TARGETS $ENV{OPENAIR_DIR}/targets)
#set(EXECUTABLE_OUTPUT_PATH ${OPENAIR_DIR}/targets/bin)
# Add .h files for dependancies
set(usim_SRC
${OPENAIR_DIR}/openair3/NAS/TOOLS/usim_data.c
set(CONF2UEDATA_LIB_SRC
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_emm.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_user_data.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_usim.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_network.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_user_plmn.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_parser.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/fs.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/display.c
${OPENAIR_DIR}/openair3/NAS/UE/API/USIM/usim_api.c
${OPENAIR_DIR}/openair3/NAS/UE/API/USIM/aka_functions.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/memory.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/nas_log.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/OctetString.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/TLVEncoder.c
${OPENAIR_DIR}/common/utils/utils.c
)
set(usim_HDR
${OPENAIR_DIR}/openair3/NAS/TOOLS/network.h
set(conf2uedata_HDR
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf2uedata.h
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf_emm.h
${OPENAIR_DIR}/openair3/NAS/UE/API/USIM/usim_api.h
${OPENAIR_DIR}/openair3/NAS/UE/API/USIM/aka_functions.h
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/memory.h
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/nas_log.h
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/OctetString.h
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/TLVEncoder.h
${OPENAIR_DIR}/common/utils/utils.h
)
include_directories(
${OPENAIR_DIR}/common/utils
${OPENAIR_DIR}/openair3/NAS/UE
${OPENAIR_DIR}/openair3/NAS/COMMON
${OPENAIR_DIR}/openair3/NAS/UE/API/USER
${OPENAIR_DIR}/openair3/NAS/UE/API/USIM
${OPENAIR_DIR}/openair3/NAS/UE/EMM/
${OPENAIR_DIR}/openair3/NAS/UE/ESM/
${OPENAIR_DIR}/openair3/NAS/COMMON/IES/
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL
)
ADD_EXECUTABLE(usim ${usim_SRC} ${usim_HDR})
# conf2uedata binary
set(conf2uedata_SRC
${OPENAIR_DIR}/openair3/NAS/TOOLS/conf2uedata.c
${CONF2UEDATA_LIB_SRC}
)
add_executable(conf2uedata ${conf2uedata_SRC} ${conf2uedata_HDR} )
target_link_libraries(conf2uedata ${CONFIG_LIBRARIES})
# usim binary
set(usim_SRC
${OPENAIR_DIR}/openair3/NAS/TOOLS/usim.c
${CONF2UEDATA_LIB_SRC}
)
add_executable(usim ${usim_SRC} ${conf2uedata_HDR} )
target_link_libraries(usim ${CONFIG_LIBRARIES})
# nvram binary
set(nvram_SRC
${OPENAIR_DIR}/openair3/NAS/TOOLS/ue_data.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/memory.c
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/nas_log.c
${OPENAIR_DIR}/openair3/NAS/TOOLS/nvram.c
${CONF2UEDATA_LIB_SRC}
)
set(nvram_HDR
${OPENAIR_DIR}/openair3/NAS/UE/EMM/emmData.h
${OPENAIR_DIR}/openair3/NAS/COMMON/UTIL/memory.h
${OPENAIR_DIR}/openair3/NAS/COMMON/userDef.h
)
ADD_EXECUTABLE(nvram ${nvram_SRC} ${nvram_HDR})
#install (TARGETS usim DESTINATION ${EXECUTABLE_OUTPUT_PATH})
#install (TARGETS nvram DESTINATION ${EXECUTABLE_OUTPUT_PATH})
#install(CODE "EXECUTE_PROCESS (COMMAND ${OPENAIR_TARGETS}/bin/nvram --gen WORKING_DIRECTORY ${OPENAIR_TARGETS}/bin)")
#install(CODE "EXECUTE_PROCESS (COMMAND ${OPENAIR_TARGETS}/bin/usim --gen WORKING_DIRECTORY ${OPENAIR_TARGETS}/bin)")
add_executable(nvram ${nvram_SRC} ${conf2uedata_HDR} )
target_link_libraries(nvram ${CONFIG_LIBRARIES})

View File

@@ -1,16 +1,12 @@
cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ADDR_CONF False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 True )
set ( EMOS False )
set ( ENABLE_FXP True )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING True )
set ( ENABLE_NEW_MULTICAST True )
set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY True )
set ( ENABLE_STANDALONE_EPC False)
@@ -20,7 +16,6 @@ set ( ENABLE_USE_RAW_SOCKET_FOR_SGI True)
set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE True )
set ( EXMIMO_IOT True )
set ( HARD_RT False )
set ( JUMBO_FRAME True )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U True)
@@ -32,7 +27,6 @@ set ( DEADLINE_SCHEDULER False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MESSAGE_CHART_GENERATOR False)
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
@@ -41,40 +35,26 @@ set ( NAS_MME False )
set ( NAS_UE True )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT True )
set ( NO_RRM True )
set ( OAI_EMU True )
set ( OAISIM True )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK True )
set ( OPENAIR1 True )
set ( OPENAIR2 True )
set ( OPENAIR_LTE True )
set ( PACKAGE_NAME "oaisim" )
set ( PBS_SIM False )
set ( PDCP_USE_NETLINK True )
set ( PC_DSP True )
set ( PC_TARGET True )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM True )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RRC_DEFAULT_RAB_IS_AM True)
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( SPECTRA False )
set ( TEST_OMG False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT False )

View File

@@ -1,16 +1,12 @@
cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ADDR_CONF False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 False )
set ( EMOS False )
set ( ENABLE_FXP False )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING False )
set ( ENABLE_NEW_MULTICAST False )
set ( ENABLE_PGM_TRANSPORT False )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY False )
set ( ENABLE_STANDALONE_EPC False )
@@ -21,7 +17,6 @@ set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE False )
set ( EPC_BUILD True )
set ( EXMIMO_IOT False )
set ( HARD_RT False )
set ( JUMBO_FRAME False )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U True)
@@ -32,7 +27,6 @@ set ( LOG_NO_THREAD False )
set ( DEADLINE_SCHEDULER False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
@@ -42,42 +36,27 @@ set ( NAS_NETLINK False )
set ( NAS_UE False )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT False )
set ( NO_RRM False )
set ( OAI_EMU False )
set ( OAISIM False )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK False )
set ( OPENAIR1 False )
set ( OPENAIR2 False )
set ( OPENAIR_EMU False )
set ( OPENAIR_LTE False )
set ( PACKAGE_NAME "EPC" )
set ( PBS_SIM False )
set ( PC_DSP False )
set ( PC_TARGET False )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION False )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM False )
set ( PUCCH False )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( SPECTRA False )
set ( TEST_OMG False )
set ( UPDATE_RELEASE_9 True)
set ( UPDATE_RELEASE_10 True)
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( XFORMS False )

View File

@@ -1,16 +1,11 @@
cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ADDR_CONF False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 True )
set ( EMOS False )
set ( ENABLE_FXP True )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING False )
set ( ENABLE_NEW_MULTICAST True )
set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY False )
set ( ENABLE_STANDALONE_EPC False)
@@ -20,7 +15,6 @@ set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False)
set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE True )
set ( EXMIMO_IOT True )
set ( HARD_RT False )
set ( JUMBO_FRAME True )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U False)
@@ -34,51 +28,35 @@ set ( MAX_NUM_CCs 1 )
set ( MESSAGE_CHART_GENERATOR False )
set ( MESSAGE_CHART_GENERATOR_RLC_MAC False )
set ( MESSAGE_CHART_GENERATOR_PHY False )
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX True )
set ( NAS_ADDRESS_FIX False )
set ( NAS_BUILT_IN_UE False)
set ( NAS_MME False )
set ( NAS_UE False )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT True )
set ( NO_RRM True )
set ( OAI_EMU True )
set ( OAISIM True )
set ( OAI_NW_DRIVER_TYPE_ETHERNET True )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK True )
set ( OPENAIR1 True )
set ( OPENAIR2 True )
set ( OPENAIR_EMU False )
set ( OPENAIR_LTE True )
set ( PACKAGE_NAME "oaisim" )
set ( PBS_SIM False )
set ( PDCP_USE_NETLINK True )
set ( PC_DSP True )
set ( PC_TARGET True )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM True )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( SPECTRA False )
set ( TEST_OMG False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( DEBUG_PHY False )
set ( DEBUG_PHY_PROC False)

View File

@@ -1,17 +1,13 @@
cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ADDR_CONF False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 True )
set ( EMOS False )
set ( ENABLE_FXP True )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING True )
set ( ENABLE_NEW_MULTICAST True )
set ( ENABLE_PDCP_NETLINK_FIFO False )
set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY True )
set ( ENABLE_STANDALONE_EPC False)
@@ -21,7 +17,6 @@ set ( ENABLE_USE_RAW_SOCKET_FOR_SGI True)
set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE True )
set ( EXMIMO_IOT True )
set ( HARD_RT False )
set ( JUMBO_FRAME True )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U True)
@@ -33,7 +28,6 @@ set ( DEADLINE_SCHEDULER False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MESSAGE_CHART_GENERATOR False)
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
@@ -42,44 +36,30 @@ set ( NAS_MME False )
set ( NAS_UE True )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT True )
set ( NO_RRM True )
set ( OAI_EMU True )
set ( OAISIM True )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK True )
set ( OPENAIR1 True )
set ( OPENAIR2 True )
set ( OPENAIR_LTE True )
set ( PACKAGE_NAME "oaisim" )
set ( PBS_SIM False )
set ( PDCP_USE_NETLINK True )
set ( PC_DSP True )
set ( PC_TARGET True )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM True )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RRC_DEFAULT_RAB_IS_AM True)
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( SPECTRA False )
set ( TEST_OMG False )
set ( TEST_S1C_MME True )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( XFORMS False )

View File

@@ -0,0 +1,3 @@
#!/bin/sh
export UHD_IMAGES_DIR=$SNAP/uhd_images
exec $@

View File

@@ -33,35 +33,26 @@ def printDebug(string):
def outputHeaderToFile(f, filename):
now = datetime.datetime.now()
f.write("""/*******************************************************************************
Eurecom OpenAirInterface
Copyright(c) 1999 - 2013 Eurecom
This program is free software; you can redistribute it and/or modify it
under the terms and conditions of the GNU General Public License,
version 2, as published by the Free Software Foundation.
This program is distributed in the hope it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
The full GNU General Public License is included in this distribution in
the file called "COPYING".
Contact Information
Openair Admin: openair_admin@eurecom.fr
Openair Tech : openair_tech@eurecom.fr
Forums : http://forums.eurecom.fr/openairinterface
Address : EURECOM, Campus SophiaTech, 450 Route des Chappes
06410 Biot FRANCE
*******************************************************************************/
f.write("""/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
""")
f.write("/*******************************************************************************\n")

View File

@@ -1,38 +1,45 @@
################################################################################
#
# Copyright (c) 2015, EURECOM (www.eurecom.fr)
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# The views and conclusions contained in the software and documentation are those
# of the authors and should not be interpreted as representing official policies,
# either expressed or implied, of the FreeBSD Project.
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file build_helper
# brief
# authors Laurent Thomas, Lionel GAUTHIER
#
#######################################
if [ ! -f /etc/os-release ]; then
echo "No /etc/os-release file found. You're likely on an unsupported distro."
exit -1
fi
OS_DISTRO=$(grep "^ID=" /etc/os-release | sed "s/ID=//" | sed "s/\"//g")
OS_RELEASE=$(grep "^VERSION_ID=" /etc/os-release | sed "s/VERSION_ID=//" | sed "s/\"//g")
case "$OS_DISTRO" in
fedora) OS_BASEDISTRO="fedora"; INSTALLER="dnf"; CMAKE="cmake" ;;
rhel) OS_BASEDISTRO="fedora"; INSTALLER="yum"; CMAKE="cmake3" ;;
centos) OS_BASEDISTRO="fedora"; INSTALLER="yum"; CMAKE="cmake3" ;;
debian) OS_BASEDISTRO="debian"; INSTALLER="apt-get"; CMAKE="cmake" ;;
ubuntu) OS_BASEDISTRO="debian"; INSTALLER="apt-get"; CMAKE="cmake" ;;
esac
KERNEL_VERSION=$(uname -r | cut -d '.' -f1)
KERNEL_MAJOR=$(uname -r | cut -d '.' -f2)
SUDO='sudo -E'
###############################
@@ -75,12 +82,11 @@ echo_info() { cecho "$*" $blue ;}
# If we can't check the distribution, it returns "Unknown"
# This function return always true as exit code by design
# Examples:
# Ubuntu16.04
# Debian8.5
# ubuntu16.04
# debian8.5
get_distribution_release() {
local distributor
if distributor=$(lsb_release -si 2>/dev/null) ; then
echo $distributor$(lsb_release -sr)
if [[ ! -z "$OS_DISTRO$OS_RELEASE" ]]; then
echo "$OS_DISTRO$OS_RELEASE"
else
echo Unknown
fi
@@ -89,8 +95,13 @@ get_distribution_release() {
check_supported_distribution() {
local distribution=$(get_distribution_release)
case "$distribution" in
"Ubuntu16.04") return 0 ;;
"Ubuntu14.04") return 0 ;;
"ubuntu17.10") return 0 ;;
"ubuntu17.04") return 0 ;;
"ubuntu16.04") return 0 ;;
"ubuntu14.04") return 0 ;;
"fedora24") return 0 ;;
"rhel7") return 0 ;;
"centos7") return 0 ;;
esac
return 1
}
@@ -145,6 +156,20 @@ clean_all_files() {
# Compilers
###################################
#check_warnings:
# print error message if the compilation had warnings
#argument:
# $1: log file
check_warnings() {
#we look for 'warning:' in the compilation log file
#this is how gcc starts a warning
#this is not perfect, we may get false positive
warning_count=`grep "warning:" "$1"|wc -l`
if [ $warning_count -gt 0 ]; then
echo_error "WARNING: $warning_count warnings. See $1"
fi
}
compilations() {
cd $OPENAIR_DIR/cmake_targets/$1/build
set +e
@@ -162,6 +187,7 @@ compilations() {
if [ -s $3 ] ; then
cp $3 $4
echo_success "$2 compiled"
check_warnings "$dlog/$2.$REL.txt"
else
echo_error "$2 compilation failed"
exit 1
@@ -172,58 +198,73 @@ compilations() {
# External packages installers
############################################
install_nettle_from_source() {
nettle_install_log=$OPENAIR_DIR/cmake_targets/log/nettle_install_log.txt
echo_info "\nInstalling Nettle. The log file for nettle installation is here: $nettle_install_log "
install_protobuf_from_source(){
protobuf_install_log=$OPENAIR_DIR/cmake_targets/log/protobuf_install_log.txt
echo_info "\nInstalling Google Protobuf from sources. The log file for Protobuf installation is here: $protobuf_install_log "
(
cd /tmp
echo "Downloading nettle archive"
$SUDO rm -rf /tmp/nettle-2.5.tar.gz* /tmp/nettle-2.5
wget http://ftp.nluug.nl/gnu/nettle/nettle-2.5.tar.gz
if [ $? -ne 0 ]; then
wget ftp://ftp.lysator.liu.se/pub/security/lsh/nettle-2.5.tar.gz
fi
if [ ! -f nettle-2.5.tar.gz ]; then
echo_error "Could not download nettle source files"
cd -
return
fi
tar -xzf nettle-2.5.tar.gz
cd nettle-2.5/
./configure --disable-openssl --enable-shared --prefix=/usr
echo "Compiling nettle"
echo "Downloading protobuf"
#rm -rf /tmp/protobuf-2.6.1.tar.gz* /tmp/protobuf-2.6.1
#wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
#tar -xzvf protobuf-2.6.1.tar.gz --owner $USER --group $USER --no-same-owner
#cd protobuf-2.6.1/
rm -rf /tmp/protobuf-cpp-3.3.0.tar.gz* /tmp/protobuf-3.3.0
wget https://github.com/google/protobuf/releases/download/v3.3.0/protobuf-cpp-3.3.0.tar.gz
tar -xzvf protobuf-cpp-3.3.0.tar.gz --owner $USER --group $(groups | cut -d" " -f1) --no-same-owner
cd protobuf-3.3.0/
./configure
echo "Compiling protobuf"
make -j`nproc`
make check
$SUDO make install
) >& $nettle_install_log
$SUDO make install
$SUDO ldconfig
) >& $protobuf_install_log
}
install_gnutls_from_source(){
gnutls_install_log=$OPENAIR_DIR/cmake_targets/log/gnutls_install_log.txt
echo_info "\nInstalling Gnutls. The log file for Gnutls installation is here: $gnutls_install_log "
install_protobuf_c_from_source(){
protobuf_c_install_log=$OPENAIR_DIR/cmake_targets/log/protobuf_c_install_log.txt
echo_info "\nInstalling Google Protobuf_C from sources. The log file for Protobuf_C installation is here: $protobuf_c_install_log "
(
cd /tmp
echo "Downloading gnutls archive"
$SUDO rm -rf /tmp/gnutls-3.1.23.tar.xz* /tmp/gnutls-3.1.23
wget http://mirrors.dotsrc.org/gcrypt/gnutls/v3.1/gnutls-3.1.23.tar.xz || \
wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.1/gnutls-3.1.23.tar.xz
if [ ! -f gnutls-3.1.23.tar.xz ]; then
echo_error "Could not download gnutls source files"
cd -
return
if [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
fi
tar -xJf gnutls-3.1.23.tar.xz
cd gnutls-3.1.23/
./configure --prefix=/usr
echo "Compiling gnutls"
cd /tmp
echo "Downloading protobuf-c"
rm -rf /tmp/protobuf-c
git clone https://github.com/protobuf-c/protobuf-c.git
cd protobuf-c
git checkout 2a46af42784abf86804d536f6e0122d47cfeea45
./autogen.sh
./configure
echo "Compiling protobuf-c"
make -j`nproc`
$SUDO make install
)>& $gnutls_install_log
$SUDO make install
$SUDO ldconfig
) >& $protobuf_c_install_log
}
install_usrp_uhd_driver_from_source(){
uhd_install_log=$OPENAIR_DIR/cmake_targets/log/uhd_install_log.txt
echo_info "\nInstalling UHD driver from sources. The log file for UHD driver installation is here: $uhd_install_log "
(
cd /tmp
echo "Downloading UHD driver"
rm -rf /tmp/uhd
git clone https://github.com/EttusResearch/uhd.git
cd uhd
git checkout tags/release_003_010_001_001
mkdir -p host/build
cd host/build
$CMAKE ../
echo "Compiling UHD"
make -j`nproc`
make test
$SUDO make install
$SUDO ldconfig
) >& $uhd_install_log
}
check_install_usrp_uhd_driver(){
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
#first we remove old installation
$SUDO apt-get remove -y uhd || true
$SUDO apt-get remove libuhd-dev libuhd003 uhd-host -y
@@ -232,34 +273,100 @@ check_install_usrp_uhd_driver(){
#The new USRP repository
$SUDO add-apt-repository ppa:ettusresearch/uhd -y
$SUDO apt-get update
$SUDO apt-get -y install python python-tk libboost-all-dev libusb-1.0-0-dev
$SUDO apt-get -y install libuhd-dev libuhd003
$SUDO apt-get -y --allow-unauthenticated install python python-tk libboost-all-dev libusb-1.0-0-dev
$SUDO apt-get -y --allow-unauthenticated install libuhd-dev libuhd003 uhd-host
elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then
$SUDO $INSTALLER -y install python boost libusb-devel libusbx-devel boost-devel python-mako python-docutils cmake
$SUDO pip install requests
if [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then
# until EPEL repo hasn't bumped UHD driver to >=3.10 in EPEL, build driver from source
$SUDO $INSTALLER -y remove uhd uhd-devel uhd-firmware
install_usrp_uhd_driver_from_source
else
$SUDO $INSTALLER -y install uhd uhd-devel uhd-firmware
fi
fi
}
install_usrp_uhd_driver() {
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
# We move uhd-host apart because it depends on linux kernel version
# On newer kernels, it fails to install
$SUDO apt-get -y install uhd-host
$SUDO uhd_images_downloader
fi
if [ -z $1 ]; then
$SUDO uhd_images_downloader
else
$SUDO uhd_images_downloader -i $1
fi
}
install_bladerf_driver_from_source(){
bladerf_install_log=$OPENAIR_DIR/cmake_targets/log/bladerf_install_log.txt
echo_info "\nInstalling BladeRF driver from sources. The log file for BladeRF driver installation is here: $bladerf_install_log "
(
cd /tmp
echo "Downloading BladeRF driver"
rm -rf /tmp/bladeRF
git clone https://github.com/Nuand/bladeRF.git
cd bladeRF
git checkout tags/2016.06
mkdir -p build
cd build
$CMAKE ../
echo "Compiling BladeRF driver"
make
$SUDO make install
$SUDO ldconfig
echo "Downloading FPGA and firmware images"
cd /tmp/bladeRF
wget https://www.nuand.com/fx3/bladeRF_fw_latest.img
wget https://www.nuand.com/fpga/hostedx40-latest.rbf
sudo mkdir -p /usr/share/Nuand/bladeRF
sudo mv bladeRF_fw_latest.img /usr/share/Nuand/bladeRF/bladeRF_fw.img
sudo mv hostedx40-latest.rbf /usr/share/Nuand/bladeRF/hostedx40.rbf
) >& $bladerf_install_log
}
check_install_bladerf_driver(){
if [ "$(get_distribution_release)" == "Ubuntu14.04" ] ; then
$SUDO add-apt-repository -y ppa:bladerf/bladerf
$SUDO apt-get update
fi
$SUDO apt-get install -y bladerf libbladerf-dev
$SUDO apt-get install -y bladerf-firmware-fx3
$SUDO apt-get install -y bladerf-fpga-hostedx40
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
if [ "$(get_distribution_release)" == "ubuntu14.04" ] ; then
$SUDO add-apt-repository -y ppa:bladerf/bladerf
$SUDO apt-get update
fi
$SUDO apt-get install -y --allow-unauthenticated bladerf libbladerf-dev
$SUDO apt-get install -y --allow-unauthenticated bladerf-firmware-fx3
$SUDO apt-get install -y --allow-unauthenticated bladerf-fpga-hostedx40
elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then
install_bladerf_driver_from_source
else
echo_error "BladeRF Installer for OAI does not support automatic build. Install BladeRF compiling sources manually from BladeRF website"
fi
}
flash_firmware_bladerf() {
$SUDO bladeRF-cli --flash-firmware /usr/share/Nuand/bladeRF/bladeRF_fw.img
}
check_install_lmssdr_driver(){
if ( [ -d "/usr/local/include/lime" ] &&
[ -f "/usr/local/include/lime/LimeSuite.h" ] )
then
echo_success "Found lmssdr drivers and tools installed from source"
else
echo_error "lmssdr support implies installing lmssdr drivers and tools" \
" from sources. check:"
echo_info "https://open-cells.com/index.php/2017/05/10/limesdr-installation/"
echo_fatal "Cannot compile lmssdr device"
fi
}
check_install_additional_tools (){
$SUDO apt-get update
$SUDO apt-get install -y \
$SUDO $INSTALLER update -y
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
PACKAGE_LIST="\
check \
dialog \
dkms \
@@ -283,16 +390,78 @@ check_install_additional_tools (){
android-tools-adb \
wvdial \
python-numpy \
sshpass \
nscd \
bc \
ntp
$SUDO pip install paramiko
$SUDO pip install pyroute2
$SUDO rm -fr /opt/ssh
$SUDO GIT_SSL_NO_VERIFY=true git clone https://gist.github.com/2190472.git /opt/ssh
sshpass \
nscd \
bc \
ntp \
python-scipy \
python-matplotlib"
elif [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then
PACKAGE_LIST="\
check \
dialog \
dkms \
gawk \
boost-devel \
openvpn \
pkgconfig \
pexpect \
sshfs \
swig \
wireshark \
unzip \
valgrind \
vconfig \
ctags \
ntpdate \
iperf3 \
wvdial \
numpy \
sshpass \
nscd \
python2-paramiko \
python-pyroute2 \
python-netifaces \
scipy \
python-matplotlib"
elif [[ "$OS_DISTRO" == "fedora" ]]; then
PACKAGE_LIST=" \
check \
dialog \
dkms \
gawk \
boost-devel \
openvpn \
pkgconfig \
python-pexpect \
sshfs \
swig \
wireshark \
unzip \
valgrind \
vconfig \
ctags \
ntpdate \
iperf3 \
wvdial \
python-numpy \
sshpass \
nscd \
python2-paramiko \
python-pyroute2 \
python-netifaces \
python2-scipy \
python2-matplotlib"
fi
$SUDO $INSTALLER install -y $PACKAGE_LIST
$SUDO rm -fr /opt/ssh
$SUDO GIT_SSL_NO_VERIFY=true git clone https://gitlab.eurecom.fr/oai/ssh.git /opt/ssh
#The packages below are already installed for Redhat distros (RHEL, CentOS, Fedora)
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
$SUDO pip install paramiko
$SUDO pip install pyroute2 colorama
log_netiface=$OPENAIR_DIR/cmake_targets/log/netiface_install_log.txt
echo_info "Installing Netinterfaces package. The logfile for installation is in $log_netiface"
(
@@ -303,6 +472,7 @@ check_install_additional_tools (){
$SUDO python setup.py install
cd -
) >& $log_netiface
fi
}
check_install_oai_software() {
@@ -311,17 +481,28 @@ check_install_oai_software() {
echo_error "Your distribution $(get_distribution_release) is not supported by oai !"
exit 1
fi
$SUDO apt-get update
$SUDO $INSTALLER update -y
if [[ "$OS_DISTRO" == "ubuntu" ]]; then
local LAPACK_LIBNAME="liblapack.so"
local LAPACK_TARGET="/usr/lib/atlas-base/atlas/liblapack.so"
$SUDO apt install -y software-properties-common
case "$(get_distribution_release)" in
"Ubuntu14.04")
specific_packages="libtasn1-3-dev"
"ubuntu14.04")
specific_packages="libtasn1-3-dev gccxml libgnutls-dev libatlas-dev"
# For iperf3
$SUDO add-apt-repository "deb http://archive.ubuntu.com/ubuntu trusty-backports universe"
$SUDO apt-get update
;;
"Ubuntu16.04")
specific_packages="libtasn1-6-dev"
"ubuntu16.04")
specific_packages="libtasn1-6-dev gccxml libgnutls-dev libatlas-dev"
;;
"ubuntu17.04")
specific_packages="libtasn1-6-dev castxml libgnutls28-dev libatlas-dev"
;;
"ubuntu17.10")
specific_packages="libtasn1-6-dev castxml libgnutls28-dev"
LAPACK_LIBNAME="liblapack.so-x86_64-linux-gnu"
LAPACK_TARGET="/usr/lib/x86_64-linux-gnu/atlas/liblapack.so"
;;
esac
$SUDO apt-get install -y \
@@ -337,7 +518,6 @@ check_install_oai_software() {
texlive-latex-base \
ethtool \
flex \
gccxml \
gdb \
git \
graphviz \
@@ -348,7 +528,6 @@ check_install_oai_software() {
iptables \
iptables-dev \
libatlas-base-dev \
libatlas-dev \
libblas-dev \
libconfig8-dev \
libffi-dev \
@@ -382,18 +561,97 @@ check_install_oai_software() {
xmlstarlet \
python-pip \
pydb \
wget
libyaml-dev \
wget \
libxpm-dev
$SUDO update-alternatives --set liblapack.so /usr/lib/atlas-base/atlas/liblapack.so
$SUDO update-alternatives --set "$LAPACK_LIBNAME" "$LAPACK_TARGET"
$SUDO apt-get install -y nettle-dev nettle-bin
elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then
if [[ "$OS_DISTRO" == "rhel" ]] || [[ "$OS_DISTRO" == "centos" ]]; then
if rpm -q epel-release > /dev/null; then
echo "EPEL repos already present. Good."
else
echo "EPEL repos not present. Installing them."
$SUDO $INSTALLER install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
fi
$SUDO $INSTALLER install -y python-epdb
$SUDO $INSTALLER install -y gccxml
else
$SUDO $INSTALLER install -y mscgen pydb
# Fedora repos already contain gccxml's successor castxml.
$SUDO $INSTALLER install -y castxml
fi
#Sometimes linux headers are not available in apt-get if kernel is custom or new
$SUDO apt-get install linux-headers-`uname -r` || true
# First we remove gnutls/nettle installation and then install from sources
$SUDO apt-get remove -y libgnutls-dev nettle-dev nettle-bin
install_nettle_from_source
install_gnutls_from_source
$SUDO $INSTALLER install -y \
autoconf \
automake \
bc \
bison \
$CMAKE \
doxygen \
ethtool \
flex \
gdb \
git \
graphviz \
gtkwave \
guile-devel \
iperf \
iproute \
iptables \
iptables-devel \
atlas-devel \
blas-devel \
libconfig-devel \
libffi-devel \
xforms \
xforms-devel \
libgcrypt-devel \
gmp-devel \
gtk3-devel \
libidn2-devel \
libidn-devel \
mariadb-devel \
octave-devel \
openpgm-devel \
lksctp-tools \
lksctp-tools-devel \
openssl-devel \
libtasn1 \
libtool \
libusb-devel \
libxml2 \
libxml2-devel \
libxslt-devel \
octave \
octave-signal \
openssh-clients \
openssh-server \
openssl \
patch \
psmisc \
python \
subversion \
xmlstarlet \
python-pip \
wget \
kernel-headers \
kernel-devel \
nettle-devel \
gnutls-devel \
libXpm-devel \
lapack \
lapack-devel \
blas \
blas-devel \
libyaml-devel
fi
install_asn1c_from_source
$SUDO rm -fr /opt/ssh
$SUDO git clone https://gist.github.com/2190472.git /opt/ssh
}
install_asn1c_from_source(){
@@ -401,12 +659,15 @@ install_asn1c_from_source(){
echo_info "\nInstalling ASN1. The log file for ASN1 installation is here: $asn1_install_log "
(
$SUDO rm -rf /tmp/asn1c
git clone https://gitlab.eurecom.fr/oai/asn1c.git /tmp/asn1c
GIT_SSL_NO_VERIFY=true git clone https://gitlab.eurecom.fr/oai/asn1c.git /tmp/asn1c
cd /tmp/asn1c
cp /usr/share/misc/config.guess .
cp /usr/share/misc/config.sub .
./configure
make -j`nproc`
$SUDO make install
cd -
$SUDO ldconfig
) > $asn1_install_log 2>&1
}
@@ -415,19 +676,18 @@ install_asn1c_from_source(){
################################################
install_nas_tools() {
cd $1
if [ ! -f .ue.nvram ]; then
if [ ! -f .ue.nvram0 ]; then
echo_success "generate .ue_emm.nvram .ue.nvram"
./nvram --gen
./nvram --gen -c $1 -o $2
else
[ ./nvram -nt .ue.nvram -o ./nvram -nt .ue_emm.nvram ] && ./nvram --gen
[ ./nvram -nt .ue.nvram0 -o ./nvram -nt .ue_emm.nvram0 ] && ./nvram --gen -c $1 -o $2
fi
if [ ! -f .usim.nvram ]; then
if [ ! -f .usim.nvram0 ]; then
echo_success "generate .usim.nvram"
./usim --gen
./usim --gen -c $1 -o $2
else
[ ./usim -nt .usim.nvram ] && ./usim --gen
[ ./usim -nt .usim.nvram0 ] && ./usim --gen -c $1 -o $2
fi
}

View File

@@ -1,32 +1,25 @@
#!/bin/bash
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file build_test_epc_tools
# brief
# author Lionel Gauthier

View File

@@ -1,31 +1,24 @@
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file example_enb_exmimo_mme_hss.txt
# brief
# author Lionel Gauthier

View File

@@ -1,31 +1,24 @@
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file example_oaisim_enb_ue_mme_virtual.txt
# brief
# author Lionel Gauthier

View File

@@ -3,19 +3,17 @@
# in those arrays, each line is:
# <file> <sha1sum of file (without line 4 which changes depending on the location of the files)> <patch to apply to file>
RRC_Rel14=(
"SystemInformation-r8-IEs.h" 4df485c5ddf2540eca271876cdc512caa19b0890 "fix_asn1.data/RRC.rel14/SystemInformation-r8-IEs.h.diff"
"SystemInformation-NB-r13-IEs.h" 6d91332d5c39205819b06e5e36efe62ff8e5b33b "fix_asn1.data/RRC.rel14/SystemInformation-NB-r13-IEs.h.diff"
)
RRC_Rel10=(
"SystemInformation-r8-IEs.h" 603cd6615cff36ec7020692d72c0d6de7c4859cb "fix_asn1.data/RRC.rel10/SystemInformation-r8-IEs.h.diff"
)
X2AP_Rel11_2=(
"X2ap-CriticalityDiagnostics-IE-List.h" ae96308b37fcbcbf39da5012e42968135fc5f27b "fix_asn1.data/X2AP.rel11.2/X2ap-CriticalityDiagnostics-IE-List.h.diff"
"NativeInteger.c" 1a55f5402fd363318cf5444ffe1f67530dcf66ff "fix_asn1.data/X2AP.rel11.2/NativeInteger.c.diff"
"constr_SET_OF.c" 808cbbdf19b118c0bdb04e3acf2cbe6e4133be2b "fix_asn1.data/X2AP.rel11.2/constr_SET_OF.c.diff"
)
S1AP_Rel10_5=(
"NativeInteger.c" 1a55f5402fd363318cf5444ffe1f67530dcf66ff "fix_asn1.data/S1AP.rel10.5/NativeInteger.c.diff"
"constr_SET_OF.c" 808cbbdf19b118c0bdb04e3acf2cbe6e4133be2b "fix_asn1.data/S1AP.rel10.5/constr_SET_OF.c.diff"
)
red_color="$(tput setaf 1)"
@@ -94,6 +92,10 @@ function patch_rrc()
local version="$2"
case "$version" in
Rel14 )
echo "patching RRC files release 14"
apply_patches "$directory" RRC_Rel14 ${#RRC_Rel14[*]}
;;
Rel10 )
echo "patching RRC files release 10"
apply_patches "$directory" RRC_Rel10 ${#RRC_Rel10[*]}
@@ -130,8 +132,7 @@ function patch_s1ap()
case "$version" in
R10 )
echo "patching S1AP files release 10.5"
apply_patches "$directory" S1AP_Rel10_5 ${#S1AP_Rel10_5[*]}
#nothing to do anymore (fixes went to asn1c)
;;
* )
error unknwon/unhandled S1AP version \'"$version"\'

View File

@@ -0,0 +1,47 @@
48a49,70
> struct SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member {
> SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member_PR present;
> union SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member_u {
> SystemInformationBlockType2_NB_r13_t sib2_r13;
> SystemInformationBlockType3_NB_r13_t sib3_r13;
> SystemInformationBlockType4_NB_r13_t sib4_r13;
> SystemInformationBlockType5_NB_r13_t sib5_r13;
> SystemInformationBlockType14_NB_r13_t sib14_r13;
> SystemInformationBlockType16_NB_r13_t sib16_r13;
> /*
> * This type is extensible,
> * possible extensions are below.
> */
> SystemInformationBlockType15_NB_r14_t sib15_v1430;
> SystemInformationBlockType20_NB_r14_t sib20_v1430;
> SystemInformationBlockType22_NB_r14_t sib22_v1430;
> } choice;
>
> /* Context for parsing across buffer boundaries */
> asn_struct_ctx_t _asn_ctx;
> };
>
52,72c74
< A_SEQUENCE_OF(struct SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member {
< SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member_PR present;
< union SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member_u {
< SystemInformationBlockType2_NB_r13_t sib2_r13;
< SystemInformationBlockType3_NB_r13_t sib3_r13;
< SystemInformationBlockType4_NB_r13_t sib4_r13;
< SystemInformationBlockType5_NB_r13_t sib5_r13;
< SystemInformationBlockType14_NB_r13_t sib14_r13;
< SystemInformationBlockType16_NB_r13_t sib16_r13;
< /*
< * This type is extensible,
< * possible extensions are below.
< */
< SystemInformationBlockType15_NB_r14_t sib15_v1430;
< SystemInformationBlockType20_NB_r14_t sib20_v1430;
< SystemInformationBlockType22_NB_r14_t sib22_v1430;
< } choice;
<
< /* Context for parsing across buffer boundaries */
< asn_struct_ctx_t _asn_ctx;
< } ) list;
---
> A_SEQUENCE_OF(struct SystemInformation_NB_r13_IEs__sib_TypeAndInfo_r13__Member) list;

View File

@@ -0,0 +1,23 @@
73,77d72
< /* SystemInformation-r8-IEs */
< typedef struct SystemInformation_r8_IEs {
< struct SystemInformation_r8_IEs__sib_TypeAndInfo {
< A_SEQUENCE_OF(struct SystemInformation_r8_IEs__sib_TypeAndInfo__Member {
< SystemInformation_r8_IEs__sib_TypeAndInfo__Member_PR present;
103c98,102
< } choice;
---
> };
>
> struct SystemInformation_r8_IEs__sib_TypeAndInfo__Member {
> SystemInformation_r8_IEs__sib_TypeAndInfo__Member_PR present;
> union SystemInformation_r8_IEs__sib_TypeAndInfo__Member_u choice;
107c106,111
< } ) list;
---
> };
>
> /* SystemInformation-r8-IEs */
> typedef struct SystemInformation_r8_IEs {
> struct SystemInformation_r8_IEs__sib_TypeAndInfo {
> A_SEQUENCE_OF(struct SystemInformation_r8_IEs__sib_TypeAndInfo__Member) list;

View File

@@ -1,8 +0,0 @@
283c283
< int dynamic = 0;
---
> //int dynamic = 0;
290c290
< dynamic = 1;
---
> //dynamic = 1;

View File

@@ -1,4 +0,0 @@
1007c1007
< (int)nelems, (int)ct ? ct->effective_bits : -1);
---
> (int)nelems, ct ? ct->effective_bits : -1);

View File

@@ -1,8 +0,0 @@
283c283
< int dynamic = 0;
---
> //int dynamic = 0;
290c290
< dynamic = 1;
---
> //dynamic = 1;

View File

@@ -1,4 +0,0 @@
1007c1007
< (int)nelems, (int)ct ? ct->effective_bits : -1);
---
> (int)nelems, ct ? ct->effective_bits : -1);

View File

@@ -0,0 +1,19 @@
#!/bin/bash
function main()
{
mkdir -p $1
#echo generate protobuf messages inside $1 $2
c_out=$1
shift
proto_path=$1
shift
protoc-c --c_out=$c_out --proto_path=$proto_path $*
#protoc --cpp_out=$c_out --proto_path=$proto_path $*
}
main "$@"

View File

@@ -1,32 +1,25 @@
#!/bin/bash
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@lists.eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements. See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# * http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# * contact@openairinterface.org
# */
# file indent_source_code
# brief
# author Lionel Gauthier

Some files were not shown because too many files have changed in this diff Show More