Compare commits

...

2020 Commits

Author SHA1 Message Date
Raymond Knopp
687d151bfd removal of a warning 2020-11-29 19:42:03 +01:00
Raymond Knopp
4a2a81f311 fixed missing parenthesis in ul_cqi computation 2020-11-29 08:24:35 +01:00
Raymond Knopp
0477e881b5 removed most new warnings 2020-11-28 00:11:13 +01:00
Raymond Knopp
18756c35eb demotion of LOG_W to LOG_D 2020-11-27 21:46:22 +01:00
Raymond Knopp
223ed810b2 Merge remote-tracking branch 'origin/develop' into develop-oriecpriupdates 2020-11-27 19:11:05 +01:00
Raymond Knopp
2303a9bcf6 CPPcheck errors + some warnings 2020-11-27 18:54:09 +01:00
Remi Hardy
6b8eb372c5 Integration 2020 wk48 2
MR945 : nr prach fr2
- Introduction of the PRACH frontend for FR2 (120kHz SCS, 32 and 66 PRB). 
- Tested with nr_prachsim and testcases added to test_case_list.xml also included some fixes for FR1, 
when prach occasion > 0 (small difference in Ncp)

MR950 : DL and UL PTRS for 5G NR

MR971 : Correct NDI + Minor MAC subPDU handling improvements
Fixes the issue : Ping in develop was unusually high (70+ms). The issue was that TA was scheduled in the second slot (of the two we currently schedule), but NDI was toggled for the first one. 
Other improvements:
- Correctly put padding MAC subPDU
- Only use subPDU DLSCH long header if length >= 256B
- Calculate TBS in DL pre-processor considering header and TA CE overhead.
- Improve some of the logging (LOG_D)
- re-enable TA

MR970 : uci gnb mac functions file
- Moved gNB MAC UCI related functions in a new file

MR972 : Bugfix nr rate matching assertion
- Fixes the assertion happening in rate matching of pdsch during iperf test.

MR975 : File openning in rrc_gNB_internal
- Only allow file opening in rrc_gNB-internal.c in phytest mode

MR977 : NR UE DCI sanity checks and fixes
These changes resolve a few stability issues and errors in NR UE
- Added sanity check for pucch_resource_indicator received in DL DCI, which resolves SEGV in select_pucch_resource() and check_pucch_format()
- Additional sanity checks included to catch false or erroneous DCI received
- Wrong MCS table calculation and error in accessing ul_config_request at UE resolved
2020-11-26 17:44:48 +01:00
Remi Hardy
43da900710 extending nsa fr1 test 2020-11-26 11:50:36 +01:00
hardy
b16d7b2eed Merge remote-tracking branch 'origin/NR_mac_uci_functions_rework' into integration_2020_wk48_2 2020-11-25 18:15:43 +01:00
hardy
2855970763 Merge remote-tracking branch 'origin/NR_UE_stability_fixes' into integration_2020_wk48_2 2020-11-25 12:25:45 +01:00
hardy
08b30babdc Merge remote-tracking branch 'origin/rrc-enb-phy-testmode' into integration_2020_wk48_2 2020-11-25 12:25:08 +01:00
hardy
40085ad064 Merge remote-tracking branch 'origin/nr_dl_ul_ptrs' into integration_2020_wk48_2 2020-11-25 12:23:55 +01:00
Shweta Shrivastava
e8b7dc8454 Fix error 2020-11-24 15:23:34 -06:00
Shweta Shrivastava
17b8ff50f8 Minor edits for consistency and clarity 2020-11-24 14:53:08 -06:00
Thomas Schlichter
6803e78ceb Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_dlsch.c
	openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c
	openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
	openair2/RRC/NR/nr_rrc_proto.h
2020-11-24 16:58:58 +01:00
hardy
25391056c4 Merge remote-tracking branch 'origin/bugfix-nr-rate-matching-assertion' into integration_2020_wk48_2 2020-11-24 15:28:03 +01:00
hardy
11eeafd328 Merge remote-tracking branch 'origin/repair-TA' into integration_2020_wk48_2 2020-11-24 15:27:21 +01:00
hardy
865888b3d8 Merge remote-tracking branch 'origin/nr_prach_fr2' into integration_2020_wk48_2 2020-11-24 15:26:59 +01:00
Navid Nikaein
a1d901277e Check if the file is openned first 2020-11-24 14:28:17 +01:00
Shweta Shrivastava
06f55552fe Fix small error 2020-11-24 01:04:46 -06:00
Shweta Shrivastava
a6e15d4436 Fix TransformPrecoding values to be consistent with FAPI spec 2020-11-24 00:59:08 -06:00
Shweta Shrivastava
683ff6eb39 DCI sanity checks for MCS and frequency domain assignment 2020-11-24 00:53:25 -06:00
Shweta Shrivastava
9ff55751ee DCI sanity check for pucch_resource_indicator value 2020-11-24 00:42:14 -06:00
Remi Hardy
2529c20bff Integration 2020 wk48
MR932 : Nr sa ngap rrc wk42 
- Initial implementation of NGAP and RRC extensions for SA
 
MR956 : Correct use of ssb_position bitmaps  

MR958 : 5G NR Downlink DMRS Type 2
- Implementation of 5G NR Downlink DMRS type 2 (generation on gNB side, channel estimation with linear interpolation in frequency domain on UE side), needed for MIMO
  
MR961 : 5G NR UE TTI cleanup  
- Remove current_thread_id array, nr_tti_rx, nr_tti_tx, subframe_rx and subframe_tx

MR965 : fix a segdev
2020-11-23 22:12:10 +01:00
Florian Kaltenberger
bf62f2bcce fixing FR2 arfcn 2020-11-22 21:40:36 +01:00
Raymond Knopp
7955cb4f8e tested IF4p5 on asterix/obelix (100 PRB via 1 Gbit/s) 2020-11-22 10:10:12 +01:00
Raymond Knopp
f0320ea0e2 testing of RCC 2020-11-21 14:06:24 +01:00
Eurecom
7a538b09d5 testing legacy RRU 2020-11-21 11:34:25 +01:00
Eurecom
f7811624b3 regular eNB with usrp seems ok 2020-11-20 14:32:24 +01:00
Raymond Knopp
a627d9c2a3 preparing merge, fixing issues inflicted on usrp radios after IF5 modifications 2020-11-20 14:02:51 +01:00
Sakthivel Velumani
0aa14f183e Editing an error message 2020-11-20 13:39:54 +01:00
Sakthivel Velumani
70e4bfda18 Storing Z inside harq_process structure
The LDPC lifting size has to be stored for each harq_process as its only assigned in the first round.
2020-11-20 13:37:34 +01:00
Francesco Mani
82c4380a4e uci mac functions in a new file 2020-11-20 10:22:10 +01:00
Robert Schmidt
d116c60831 Improve DLSCH MAC scheduling logging 2020-11-20 09:54:38 +01:00
Robert Schmidt
e6bb685b5d re-enable TA 2020-11-20 09:54:34 +01:00
Robert Schmidt
bc088c975b Account for OH in preprocessor 2020-11-20 09:54:34 +01:00
Robert Schmidt
d89716541f Fix: Always place padding subPDU if space permits 2020-11-20 09:54:37 +01:00
Robert Schmidt
d245f7b958 Fix: Use DL-SCH long subheader when L >= 256 2020-11-20 09:54:34 +01:00
Robert Schmidt
3ff26c8f84 Fix: Reset HARQ feedback slot
If we schedule in a second slot, this ensures that the correct HARQ
process' NDI is toggled.
2020-11-20 09:52:42 +01:00
Florian Kaltenberger
fd9dbad966 Merge branch 'develop' into 'nr_prach_fr2' 2020-11-20 08:47:34 +01:00
Thomas Schlichter
291c94d34c Merge remote-tracking branch 'origin/nr_ue_tti_cleanup' into integration_2020_wk48
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/dci_nr.c
	openair1/PHY/NR_UE_TRANSPORT/nr_transport_proto_ue.h
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
2020-11-19 18:42:30 +01:00
Raymond Knopp
47a7186621 Merge remote-tracking branch 'origin/develop' into develop-oriecpriupdates 2020-11-19 18:35:52 +01:00
Florian Kaltenberger
4b82bbf346 Update nr_prach.c 2020-11-19 16:15:11 +01:00
Florian Kaltenberger
f99643a67b Update prachsim.c 2020-11-19 16:13:09 +01:00
Florian Kaltenberger
ad2e0ebe2d Update test_case_list.xml 2020-11-19 16:10:16 +01:00
hardy
4c3ee5f0e0 Merge remote-tracking branch 'origin/fix-itti-segv' into integration_2020_wk48 2020-11-19 14:59:39 +01:00
hardy
e097bec73e Merge remote-tracking branch 'origin/nr_dl_dmrs_type2' into integration_2020_wk48 2020-11-19 14:58:54 +01:00
hardy
b57ef17b1c Merge remote-tracking branch 'origin/bch-fixes-bitmap' into integration_2020_wk48 2020-11-19 14:58:02 +01:00
hardy
a0d58f224c Merge remote-tracking branch 'origin/NR_SA_NGAP_RRC_wk42' into integration_2020_wk48 2020-11-19 14:57:08 +01:00
Remi Hardy
40141270e3 Integration 2020 wk47
MR939 : Nr rlc am bugfix w44 
- bugfix

MR948 : nr: rlc: hotfix - forgot to store frame and subfram  
- minor bugfix

MR942 : Feature/make s1 mme port configurable 
- This patch adds an optional "port" option to set another sctp port than 36412 

MR959 : minor: remove a CPPCHECK error for NR RLC
- remove a CPPCHECK error (not a real error) for NR RLC
2020-11-19 13:13:03 +01:00
Francesco Mani
0e298d8777 variable name change in nr_dlsch 2020-11-18 18:08:41 +01:00
Raymond Knopp
98a96115c7 testing with AW2S RRU. 2020-11-18 10:50:03 +01:00
Thomas Schlichter
f41502cd19 fix compile warnings introduced by merge with develop 2020-11-18 10:38:15 +01:00
Thomas Schlichter
b06c7af345 NR UE: fix tti issues introduced by merge with develop 2020-11-18 10:38:04 +01:00
Thomas Schlichter
e059eeabc8 Merge remote-tracking branch 'develop' 2020-11-18 10:37:20 +01:00
Laurent
a592d0eb6f fix warnings 2020-11-18 08:53:02 +01:00
Laurent
7dd1d45626 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into fix-itti-segv 2020-11-17 15:46:47 +01:00
Laurent
614152b1b3 fix a segv 2020-11-17 15:44:11 +01:00
masayuki.harada
be31d514b4 Fix warning and compile error. 2020-11-17 22:09:41 +09:00
hardy
d9c0a13fc5 Merge remote-tracking branch 'origin/hotfix-minor-remove-nr-rlc-cppcheck-error' into integration_2020_wk47 2020-11-17 13:54:30 +01:00
hardy
fcd00c2af0 Merge remote-tracking branch 'origin/hotfix-nr-rlc-tick' into integration_2020_wk47 2020-11-17 13:53:44 +01:00
hardy
02594fea3b Merge remote-tracking branch 'origin/feature/make-s1-mme-port-configurable' into integration_2020_wk47 2020-11-17 13:53:10 +01:00
hardy
9d58ead40f Merge remote-tracking branch 'origin/nr-rlc-am-bugfix-w44' into integration_2020_wk47 2020-11-17 13:51:46 +01:00
zhenghuangkun
5cbffcc3c4 Fix ITTI build error 2020-11-17 09:03:06 +00:00
Remi Hardy
8f03a80a36 Integration 2020 wk46 2
MR890 : moving the OFDM phase rotation from RU to DU  
Moves the recently introduced phase rotations from RU to DU. 
This is important for setups that do not use the monolithic mode (like Benetel RRU).

MR944 : fix pdsch low prb 
Fix for DLSCH decoding for low TBS and for ULSCH. 
In the UE, DLSCH decoding stats are printed periodically for every 64 frames. 
DLSCH decoding is skipped if UE receives retransmission for successfully decoded CW.
 
MR946 : S1ap bugfix rab setup  
Fix a bug in S1AP

MR951 : CI NSA FR1 logging and reporting update  
Enhancement of gNB html + log report showing (RAPROC PUSCH check, dlsch and ulsch statistics)

M954 : Mac fixes wk45 2
Hotfix: preserves "low" delay (20-30ms) and correct HARQ retransmissions by disabling timing advance (TA)
Reduces log level, compiler warning, correct TA condition
2020-11-17 09:14:05 +01:00
Thomas Schlichter
c4448a2f24 fix warnings and indentation 2020-11-16 13:40:45 +01:00
Cedric Roux
7b48f89496 minor: remove a CPPCHECK error for NR RLC
This "error" is not a real error.
openair2/LAYER2/nr_rlc/tests/test.c includes testXX.h to define the array
int test[] and by design test[2] always exists.

Let's simply suppress the reporting of this error.
2020-11-16 10:25:58 +01:00
Parminder Singh
6c2fbb361d Merge remote-tracking branch 'origin/develop' into fhg_shp_phase_noise_est 2020-11-16 09:47:46 +01:00
Thomas Schlichter
9f841634b5 Merge remote-tracking branch 'develop' 2020-11-16 09:40:06 +01:00
masayuki.harada
e3d3c6e418 Merge branch 'NR_SA_NGAP_RRC_wk42' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_SA_NGAP_RRC_wk42 2020-11-16 13:59:33 +09:00
Thomas Schlichter
47ce347d7e NR UE cleanup: remove current_thread_id array, nr_tti_rx, nr_tti_tx, subframe_rx and subframe_tx 2020-11-13 17:29:02 +01:00
hardy
63277ad3de Merge remote-tracking branch 'origin/mac-fixes-wk45_2' into integration_2020_wk46_2 2020-11-13 13:26:15 +01:00
hardy
1bb68b6f66 Merge remote-tracking branch 'origin/rh_ci_fr1_update' into integration_2020_wk46_2 2020-11-13 13:25:40 +01:00
hardy
f267efbe5a Merge remote-tracking branch 'origin/s1ap-bugfix-rab_setup' into integration_2020_wk46_2 2020-11-13 13:23:18 +01:00
hardy
12e0f738b7 Merge remote-tracking branch 'origin/fix_pdsch_low_prb' into integration_2020_wk46_2 2020-11-13 13:22:39 +01:00
hardy
4b3a67b3a7 Merge remote-tracking branch 'origin/benetel_phase_rotation' into integration_2020_wk46_2 2020-11-13 13:21:42 +01:00
Sakthivel Velumani
cc2cc95f02 Merge branch 'develop' into fix_pdsch_low_prb 2020-11-13 11:56:36 +01:00
Remi Hardy
b452218383 Integration 2020 wk46
MR936: nr_fdd_if_fix
- Add support for 5G NR FDD bands and introduce configurable IF frequencies (esp. on nrUE) with configurable UL-DL-frequency offset. 
 
MR940: dongzhanyi-zte-develop2  
- Solved the problem that UE UL LDPC code can only process data within 8 code blocks (the UE UL LDPC code could only process data within 8 code blocks. If there were more than 8 code blocks, an error would occur)

MR943: NR_UE_MAC_scheduler
- Dynamic calculation of slot for PUSCH transmission based on slot offset k2. PUSCH slot is no longer hard-coded to 8.
- Support for multiple UL allocations in a frame by supporting a ul_config_request per UL slot.
- Support for multiple PDUs per slot
- Fixes for a few UE crashes/assertion failures due to invalid DCI received
- UE scheduler code clean-up
2020-11-13 11:12:30 +01:00
yincong
c208bffa3a add OAI license 2020-11-13 16:11:41 +08:00
zhenghuangkun@cn.fujitsu.com
f64bba177a Modify SA source code 2020-11-13 07:37:22 +00:00
Parminder Singh
4fe5986845 Corrected conditional statement wrt OAI Formatting Rules 2020-11-12 19:29:10 +01:00
Robert Schmidt
65c7ab092a Correct use of ssb_position bitmaps 2020-11-12 10:45:13 +01:00
Remi Hardy
0ea4378bd8 fixing reporting appearance 2020-11-12 10:40:16 +01:00
hardy
e7b2c47348 Merge remote-tracking branch 'origin/nr_fdd_if_fix' into integration_2020_wk46 2020-11-12 09:27:00 +01:00
Robert Schmidt
fe6f7244df Fix compiler warning: %ld in printf 2020-11-11 16:48:53 +01:00
Robert Schmidt
308de3b68d Lower PHY/HARQ log level 2020-11-11 16:48:40 +01:00
Robert Schmidt
67d6311143 Hotfix: disable TA to keep RTT low + HARQ retx intact 2020-11-11 16:47:18 +01:00
Robert Schmidt
434186fd9f Correct TA timer condition
- wrap around 1024 (frame number is 0-1023)
- check for equality of frames with high numbers will trigger every 10ms
2020-11-11 16:45:54 +01:00
Khodr Saaifan
89b102c8cc Enable dmrs config1 for pdsch and clean the code 2020-11-11 10:29:48 +01:00
Khodr Saaifan
1ca324e595 Enable DMRS config2 for PDSCH and fix bug in the UE phy_procedures_nr_ue 2020-11-11 09:36:59 +01:00
Thomas Schlichter
f2502eebab fix some compile warnings 2020-11-10 21:10:55 +01:00
Frédéric Leroy
06aefa589f fix(build_helper): fix superfluous $ in protobuf extraction command 2020-11-10 20:39:21 +01:00
Thomas Schlichter
55717204dc cleanup: remove TTI related parameters from NR_DL_FRAME_PARMS 2020-11-10 19:19:51 +01:00
hardy
536125c356 Merge remote-tracking branch 'origin/dongzhanyi-zte-develop2' into integration_2020_wk46 2020-11-10 17:24:40 +01:00
hardy
e9fff748c6 Merge remote-tracking branch 'origin/NR_UE_MAC_scheduler' into integration_2020_wk46 2020-11-10 17:23:36 +01:00
Remi Hardy
a452f74f0d bug fix 2020-11-10 17:14:57 +01:00
Remi Hardy
4353880dbd gNB html + log update for nsa fr1 ok 2020-11-10 16:53:01 +01:00
Thomas Schlichter
b402026aef Add DL PTRS test cases to CI 2020-11-10 14:30:42 +01:00
cig
122e18d088 Common function to check the frequency channel raster 2020-11-10 10:52:44 +01:00
Parminder Singh
841ddaf9f8 Corrected data type for printf to remove warning in nr-softmodem
- In gNB_scheduler int is updated to long int to avoid warnings for
printf
2020-11-10 10:50:27 +01:00
cig
7e1ac1fa49 Merge remote-tracking branch 'origin/develop' into fhg-fdd-custom-if 2020-11-10 10:41:10 +01:00
Sakthivel Velumani
f36f724b04 The same BG related updates are added to UL 2020-11-09 23:44:55 +01:00
Sakthivel Velumani
4c8ec44678 Updated the stats message 2020-11-09 23:39:09 +01:00
Remi Hardy
789e48fcd2 debug 2020-11-09 17:50:34 +01:00
Parminder Singh
b0ee3bb206 Correction for first OFDM symbol estimation and compensation
- Direct multiply with the conjugate of the estimation for compensation
2020-11-09 17:25:00 +01:00
hardy
9d3304059a for debug 2020-11-09 16:51:58 +01:00
matzakos
7772a51c07 Merge remote-tracking branch 'origin/develop' into NR_SA_NGAP_RRC_wk42
Conflicts:
	openair2/RRC/NR/MESSAGES/asn1_msg.c
	openair2/RRC/NR/nr_rrc_proto.h
	targets/COMMON/create_nr_tasks.c
2020-11-09 15:52:52 +01:00
hardy
e8aeccad9f fix typo 2020-11-09 15:45:09 +01:00
Frédéric Leroy
89f7132685 fix(config): set S1AP_PORT_NUMBER as default value for mme port 2020-11-09 15:43:01 +01:00
Frédéric Leroy
78fa6df3a4 feat: add "port" parameter on configuration files
Use default port 36412 for S1
2020-11-09 15:15:46 +01:00
hardy
7ce5aaa136 adding dlsch and ulsch statistics 2020-11-09 15:13:56 +01:00
Frédéric Leroy
6338831315 feat(build_helper): use 'id' command instead $USER variable
When $USER is not set (Yes we did !), extracting protobuf fails.
Wh avoid this by using the 'id' command both to get user and group ids.
2020-11-09 14:55:02 +01:00
hardy
7878e102e0 improving markers for NSA FR1 test 2020-11-09 14:33:59 +01:00
Florian Kaltenberger
6e1ad6e93b Merge remote-tracking branch 'origin/develop' into benetel_phase_rotation 2020-11-09 13:58:41 +01:00
Sakthivel Velumani
c61b47dc96 Revert "Enabled ACK/NACK logs for CI"
This reverts commit 199ce5d953ed90e052a69f520b30b7253b163250.
2020-11-09 12:24:10 +01:00
Sakthivel Velumani
a57136697f Skip decoding for false retransmission
If UE receives retransmission for already decoded PDSCH, it skips decoding and sets ACK directly.
And adding PDSCH decoding stats and printing then every 64 frames for CI purpose
2020-11-09 12:24:10 +01:00
Sakthivel Velumani
2f76924671 Enabled ACK/NACK logs for CI 2020-11-09 12:19:41 +01:00
Sakthivel Velumani
66323e0b1d BG selection bug fix
The BG was set to its default for rounds > 0. This is now fixed by adding it to harq structure.
Also a fix for wrong I_lbrm set in dlsch decoding.
2020-11-09 12:19:41 +01:00
Xue Song
9bba3c795a Fix GTPU's IP setting error 2020-11-09 18:04:56 +09:00
Parminder Singh
443f1817e5 Merge remote-tracking branch 'origin/develop' into fhg_shp_phase_noise_est 2020-11-08 18:47:29 +01:00
Florian Kaltenberger
6056de78b3 fixing dependency in CMakeLists.txt 2020-11-08 17:02:40 +01:00
Parminder Singh
910c1860f0 DMRS estimation default value is moved outside slot processing
- in PTRS processing the default value for DMRS is set outside slot
   processing.
2020-11-06 14:26:25 +01:00
Parminder Singh
03db617c38 Remove TX-GAIN multiplication with transmitted signal in ULSIM
- Removed tx_gain calculations and multiplication with tx signal
- Updated sigma value calculations and removed unused variables
- Re-indent the related code for better readability
2020-11-06 12:12:43 +01:00
Cedric Roux
8fee453c8e nr: rlc: hotfix - forgot to store frame and subframe... 2020-11-06 11:36:57 +01:00
Remi Hardy
3d60e95387 Merge branch 'integration_2020_wk45_2' into 'develop'
Integration 2020 wk45 (2) comprising:

MR937:Nr dl sched fixes  
-restore old phytest scheduler behavior
-correct TA scheduling
-correct SSB
-shorten interface of `nr_fill_nfapi_dl_pdu()`
-Track RB allocation on symbol basis (bitmap)
-add a `remove_nr_ue_list()`, could be used instead of MR !934

MR910:5G SA NAS messages 
- 5G SA nass messages and a simple unitary test code
 
MR927:Nr rrc configuration fr2
- introduces some bug fixes for FR2 that might also have an impact on FR1.
2020-11-06 11:29:03 +01:00
Raphael Defosseux
7f70174cf8 CI: added missing build artifacts in one of the pipeline; fix RA test
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-11-06 11:15:23 +01:00
hardy
3917b1ae0f Merge remote-tracking branch 'origin/NR_RRCConfiguration_FR2' into integration_2020_wk45_2 2020-11-05 16:53:13 +01:00
hardy
802e8218ad Merge remote-tracking branch 'origin/noCore' into integration_2020_wk45_2
Conflicts:
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
2020-11-05 16:49:21 +01:00
Parminder Singh
13645b1b5e Updated the sin cos table condition check
- Sin cos table quadrant condition checks are updated
- function are indented properly
- Debug prints are updated for double data type
2020-11-05 16:31:16 +01:00
Parminder Singh
c16e5831d1 Added debug prints in ULSIM for PTRS RE calculations
- Added PTRS Symbols in a slot and Resource elements count in debug print
2020-11-05 14:08:02 +01:00
Parminder Singh
c9523b88a7 Updated UL ptrs processing wrt DL
- Most DL code is reused for Ul also to reduce code duplication
- Common CPE calculation function is used for error estimation
- Common slot processing function is used for inter/extrapolation
- Removed old implementation dedicated to UL
2020-11-05 14:00:01 +01:00
Parminder Singh
f0c843faf9 Sin cos table initialization for ULSIM also
- As new sin cos table is used in phase noise function it shall be
  initialized for ULSIM also
2020-11-05 13:36:44 +01:00
Thomas Schlichter
53edb35eb7 Fix whitespace changes 2020-11-05 12:25:57 +01:00
Parminder Singh
41d3bcac85 Fix - Issue with uninitialized structure in NR_ULSCH_CODING.c
- Initialized variable to remove the valgrind issue.
2020-11-05 10:35:09 +01:00
Khodr Saaifan
97a9dfd83a UE: implement pdsch channel estimation for dmrs_config type2 2020-11-05 10:19:22 +01:00
Khodr Saaifan
1de69e8e27 PHY: link dmrs_config to higher layers 2020-11-05 03:22:30 +01:00
Shweta Shrivastava
46219d8c61 Fixed ulsim compilation error 2020-11-04 10:47:02 -06:00
Parminder Singh
0ce350d1cf Merge remote-tracking branch 'origin/develop' into fhg-shp-dl-ptrs 2020-11-04 16:20:50 +01:00
Eugene Bogush
3c3593c6a6 fix for proc: e_rab_setup_resp 2020-11-04 15:26:54 +01:00
Parminder Singh
209785551a Review Comments are updated
- updated return function value to -1
- removed static variable for dmrs symbol selection for channel
- Updated sin cos quadrant check conditions
- removed casting from PTRS slope and related calculations
2020-11-04 11:29:35 +01:00
Thomas Schlichter
e38679e6da Merge remote-tracking branch 'develop' 2020-11-04 10:22:11 +01:00
Laurent
39bb839d7c Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into noCore 2020-11-03 23:21:47 +01:00
Robert Schmidt
2e03cbe7bf Track RBs in vrb_map as binary 2020-11-03 20:02:48 +01:00
Florian Kaltenberger
0d30561ecd Merge remote-tracking branch 'origin/develop' into NR_RRCConfiguration_FR2 2020-11-03 16:55:20 +01:00
Florian Kaltenberger
d17e075f78 Merge remote-tracking branch 'origin/develop' into nr_prach_fr2 2020-11-03 16:08:17 +01:00
Florian Kaltenberger
6f28d0e38b some fixes - prachsim working now for FR2 - added testcases 2020-11-03 16:01:58 +01:00
Raymond Knopp
f920962b9b tracing in IF5_tools.c for fronthaul error debugging 2020-11-03 15:21:36 +01:00
Thomas Schlichter
5903467849 Merge remote-tracking branch 'develop' into nr_fdd_if_fix
Conflicts:
	ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf
	openair2/LAYER2/NR_MAC_UE/config_ue.c
	openair2/LAYER2/NR_MAC_gNB/config.c
2020-11-03 14:27:16 +01:00
Robert Schmidt
c4f8ff1561 Assert on condition UE not found in UE_list 2020-11-03 14:23:50 +01:00
Robert Schmidt
ad0424cbba Check all RA procs in nr_rx_sdu() if unknown RNTI 2020-11-03 14:23:50 +01:00
Robert Schmidt
d94b1cd1a5 Track RB allocation in vrb_map{,_UL} on per-symbol basis 2020-11-03 14:23:50 +01:00
Robert Schmidt
40175d244a Format schedule_nr_mib() 2020-11-03 14:23:50 +01:00
Francesco Mani
2bdcbe6c18 Fix for filling vrb_map for ssb
The SSB nFAPI message is only sent every 8 frames, and automatically
repeated by the PHY layer in between. This commit sets the vrb_map
structure in those frames in between nFAPI so that the scheduler does
not schedule on such resources.
2020-11-03 14:23:50 +01:00
Robert Schmidt
a94da10dee Remove UE from UE_list on disconnect 2020-11-03 14:23:50 +01:00
Robert Schmidt
9125fc8d22 Refactor/shorten interface of nr_fill_nfapi_dl_pdu() 2020-11-03 14:23:50 +01:00
Robert Schmidt
8651b7fd14 Remove commented/unused code in DLSCH/phytest scheduler 2020-11-03 14:23:50 +01:00
Robert Schmidt
0deb5d291d Use special dlsim preprocessor 2020-11-03 14:23:50 +01:00
Robert Schmidt
b389e43eea Add phytest preprocessor
The phytest preprocessor schedules only one UE, as many RBs as possible
(largest continuous RB region), with a fixed MCS and time domain
allocation.
2020-11-03 14:22:28 +01:00
Robert Schmidt
fd9f5d2d2c Use function pointer to call pre-processor 2020-11-03 14:22:27 +01:00
Robert Schmidt
14f15d7e77 Fix: postprocessor resets UE scheduling condition 2020-11-03 14:22:27 +01:00
Francesco Mani
8363849c3f Modification of TA update procedure 2020-11-03 14:22:27 +01:00
Robert Schmidt
fd3d49bbe7 Correctly check and apply the TA in DLSCH scheduler 2020-11-03 14:21:37 +01:00
Remi Hardy
adcf9e9f86 Merge branch 'integration_2020_wk45' into 'develop'
MR902 Nr mac ssb ro ue idcc
- Construction of SSB-RO mapping table on the UE
- RO selection based on SSB index
- RACH preamble selection based on SSB index in a selected RO
- RA-RNTI calculation
  

MR928 nr: add MAC PDU traces for wireshark
- The T tracer macpdu2wireshark has been modified to handle the new traces. The usage is the same as for LTE.  

MR929 RA fixes for NR UE  

MR938 CI: Parse UE TUN interface correctly in S1 mode
- The TUN interface configuration is changed to use program "ip" only. 
- The CI script parsing is changed accordingly: the pipeline will recognize the attempt to bring up the interface of the first UE.

MR933 nr rlc: bugfix 
- ret.next was not set in a particular case
2020-11-03 12:45:06 +01:00
Parminder Singh
741a5b98e7 Added sin cos table implementation for dlsim
- Sin and Cos values are obtained from a table with a resolution of
  100.
- dlsim is updated to use this table for phase noise.
2020-11-03 11:26:37 +01:00
Raymond Knopp
8b92c53141 modifications for eCPRI radio units, increased averaging in eNodeB subband I0 measurements 2020-11-03 06:01:42 +01:00
Shweta Shrivastava
93e34b7fd7 Fixes for a few UE failures due to invalid DCI received 2020-11-02 19:02:34 -06:00
Frédéric Leroy
1426ee5ed6 feat: add optional parameter port for mme connection 2020-11-02 17:16:29 +01:00
Florian Kaltenberger
4ab9c75578 first version of PRACH for FR2. to be tested 2020-11-02 14:19:14 +01:00
hardy
caa31696c3 Merge remote-tracking branch 'origin/nr-rlc-bugfix-w44' into integration_2020_wk45 2020-11-02 14:13:12 +01:00
hardy
58b91359e1 Merge remote-tracking branch 'origin/fix-ci-tun' into integration_2020_wk45 2020-11-02 14:12:22 +01:00
hardy
cb7e2c11e3 Merge remote-tracking branch 'origin/NR_UE_RA_fixes' into integration_2020_wk45 2020-11-02 14:11:44 +01:00
hardy
628c2b7486 Merge remote-tracking branch 'origin/nr-mac-pdu-wireshark' into integration_2020_wk45 2020-11-02 14:11:13 +01:00
Frédéric Leroy
cad824099e fix(build_helper): use SUDO when we are a regular user
root user is not tied to a container.
Let the possibility to build when we run as a regular user in a
container.
2020-11-02 10:54:17 +01:00
Parminder Singh
65fb8a84b8 Fixed Channel compensation for dlsim for multiple DMRS
- fixed channel compensation by choosing most recent DMRS symbol ina
  slot
- Removed code to find nearest DMRS symbol for channle compensation
- Updated TBS calculation in DLSIM
- Added debug prints in PTRS CPE estimation for DMRS symbol
2020-10-31 14:36:05 +01:00
dongzhanyi
ed2eb95c4a solved the problem that UE UL LDPC code can only process data within 8 code blocks 2020-10-31 07:13:07 +08:00
Eurecom
c355a26aa6 fixing RA test iteration to 10 times to have a chance (unstable in CI env) 2020-10-30 15:26:57 +01:00
Thomas Schlichter
1020292984 fix CPPCHECK warning regarding "cfg" in openair1/PHY/INIT/nr_parms.c 2020-10-30 13:17:04 +01:00
Florian Kaltenberger
0609742e21 Merge remote-tracking branch 'origin/benetel_5g_prach_fix' into benetel_phase_rotation 2020-10-30 12:30:25 +01:00
Shweta Shrivastava
16b80425b8 Small fix 2020-10-29 21:32:51 -05:00
Laurent
7d603191db merge develop 2020-10-29 16:29:32 +01:00
Laurent
136d9ccb67 add documentation and code review comments 2020-10-29 16:14:55 +01:00
Cedric Roux
aec21aa234 nr rlc: add a test 2020-10-29 15:48:01 +01:00
Cedric Roux
f433c90efe nr rlc: fix a bug
The count was wrong.
2020-10-29 15:47:50 +01:00
cig
1daebfbd86 Fixed CPPCHECK warning about potential null pointer dereference of cfg 2020-10-29 13:53:47 +01:00
cig
a47f31a44a Added configuration files for FDD band 66 2020-10-29 13:53:47 +01:00
Parminder Singh
1e9720ef88 Added -U command line parameter to update DMRS configuration for DLSIM
- -U 2 0 [0-2], can be used to update DMRS configurations
- update check for additional position 3 in dlsch decoding
2020-10-29 13:49:03 +01:00
cig
e37fb2ae05 Updated doc files with IF / FDD features 2020-10-29 10:01:02 +01:00
Shweta Shrivastava
c0d123b9f7 Support for multiple PDUs in a UL slot 2020-10-28 20:54:18 -05:00
matzakos
87c83aaf21 Merge remote-tracking branch 'origin/develop' into NR_SA_NGAP_RRC_wk42
Conflicts:
	cmake_targets/CMakeLists.txt
	docker/Dockerfile.enb.rhel7.oc4-4
	openair1/SCHED_NR_UE/pucch_uci_ue_nr.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
2020-10-29 00:19:49 +01:00
Robert Schmidt
9d2651d080 CI: Parse UE TUN interface correctly in S1 mode
See also commit 8c5976e279

Above commit changed the TUN interface configuration to use program "ip"
only. This commit changes the CI script parsing correspondingly: the
pipeline will recognize the attempt to bring up the interface of the
first UE.
2020-10-28 17:10:21 +01:00
hardy
b18c361125 improved CI RA checks 2020-10-28 17:07:19 +01:00
Raymond Knopp
e880e66b65 Merge branch 'NR_RRCConfiguration_FR2' of http://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRCConfiguration_FR2 2020-10-28 16:40:11 +01:00
Raymond Knopp
77b152ade5 adding config file for band 13 2020-10-28 16:39:47 +01:00
Parminder Singh
327ba9d398 PTRS DL extraction, estimation and compensation
- Added PTRS extraction and estimation for DL
- Added processing for whole slot wrt PTRS estimates
- DLSIM is updated to used -T flag to enable PTRS
- DMRS compensated signal is further compensated with PTRS estimation
2020-10-28 15:39:03 +01:00
Thomas Schlichter
4cac02e014 Merge remote-tracking branch 'eurecom/develop' into fhg-fdd-custom-if 2020-10-28 14:08:23 +01:00
Florian Kaltenberger
8ba0d28ace hardcoding measurement frequency to 3.6GHz. 2020-10-28 13:58:38 +01:00
Thomas Schlichter
eaf43790a0 synchronize gnb.band78.tm1.106PRB.usrpx300.conf for USRP X300 with main version for URSP N310 2020-10-28 13:52:01 +01:00
Mario Hudon
bddd86b77a Merge remote-tracking branch 'oai-eurecom/develop' into NR_MAC_SSB_RO_UE_IDCC 2020-10-28 08:23:29 -04:00
Florian Kaltenberger
ba6edde825 updating 4g config file 2020-10-28 13:08:05 +01:00
Florian Kaltenberger
a129f121cc dpdk changes for 18.11 2020-10-28 13:07:41 +01:00
Florian Kaltenberger
638b5de1d2 updating config file for gNB 2020-10-28 11:28:00 +01:00
Florian Kaltenberger
144e267541 fixing PRACH bug in benetel_5g driver 2020-10-28 11:08:26 +01:00
Florian Kaltenberger
f4f9d3b4d7 hardcoding ra_rnti in case of long prach for benetel 2020-10-28 11:06:35 +01:00
hardy
3578426082 fixed UE log file name 2020-10-28 10:07:25 +01:00
Thomas Schlichter
41f4ed9eaf synchronize gnb.band78.tm1.106PRB.usrpn300.conf file in ci-scripts and target directory 2020-10-28 09:53:38 +01:00
Raymond Knopp
36bbd2a068 adapting config file for band 261 2020-10-27 21:07:13 +01:00
masayuki.harada
483f4b2d1b Fix merge miss. 2020-10-28 04:21:41 +09:00
masayuki.harada
dc288b7bc8 Merge branch 'develop_SA_L3' into NR_SA_NGAP_RRC_wk42
# Conflicts:
#	openair2/GNB_APP/gnb_paramdef.h
#	openair2/RRC/NR/rrc_gNB.c
2020-10-28 03:57:14 +09:00
Shweta Shrivastava
661dd53186 Minor changes + UL scheduler code restructure 2020-10-27 13:36:45 -05:00
masayuki.harada
8cff73dc39 Fix merge error. 2020-10-28 03:19:41 +09:00
Remi Hardy
68619cae68 Merge branch 'integration_2020_wk44' into 'develop'
Integration 2020 wk44

MR923 : Fixes tun  
TUN-interface related changes

MR925 : bugfix: fix frequencies in nr_bandtable    
The array nr_bandtable has then been reviewed fully and all the values that were wrong have been changed.   The check of correctness was done using the website https://www.sqimway.com/nr_band.php  
  
MR931 : Finalize oaicn integration (CI)  
In addition, the "known unstable scenarios" are highlighted in the CI HTML reports.

MR917 : NR CSI reporting
This is a new feature
2020-10-27 18:35:34 +01:00
Eurecom
31f1a4b137 fixed RA check marker 2020-10-27 18:23:14 +01:00
Mario Hudon
818694acaa -Code review: Use FAPI PRACH PDU instead of PRACH vars in nr_ue_get_rach/nr_get_prach_resources 2020-10-27 11:26:16 -04:00
masayuki.harada
5c49c67f98 Merge remote-tracking branch 'remotes/origin/develop_SA_RRC' into develop_SA_L3
# Conflicts:
#	openair2/RRC/NR_UE/rrc_UE.c
#	openair2/RRC/NR_UE/rrc_defs.h
2020-10-27 20:47:03 +09:00
masayuki.harada
1956fd3b72 Merge commit 'b67badef1b2fd390d801e20644b08df0d5880583' into develop_SA_L3
# Conflicts:
#	common/utils/ocp_itti/intertask_interface.h
#	openair2/RRC/NR/rrc_gNB.c
#	openair3/NGAP/ngap_gNB_nas_procedures.c
2020-10-27 20:25:16 +09:00
masayuki.harada
4649f0f615 Merge remote-tracking branch 'remotes/origin/develop_SA_SIM' into develop_SA_L3 2020-10-27 19:47:49 +09:00
cig
ae86b727e2 Update the time channel statistics "dl_ch_estimates" in nr_pbch_channel_estimation
- it shall be updated at every last PBCH symbol
- this fixes stability issues with the FDD mode
2020-10-27 11:09:26 +01:00
cig
6862affdf4 Cleanup RF HW configuration at UE side
- removed redundant initialisation of variables
- introduced two "RF helpers" function that are replacing shared code in the sync routines
- added a new .c file and updated the cmakelists and .h files
2020-10-27 11:09:17 +01:00
cig
95bd55d8b6 Cleanup redundant setting of duplex mode after sync 2020-10-27 10:43:24 +01:00
cig
a9096bc9ef Moved downlink and uplink frequencies global variables to the relevant .h file 2020-10-27 10:43:24 +01:00
cig
3939406141 Logging fixes at UE and gNB 2020-10-27 10:43:24 +01:00
cig
8e7d69989b Cleanup initialisation frame params UE and command line options
- got rid of global variable fp
- code cleanup, removed redundant and unused code
- removed unused command line options and variables
- grouped command line setting in set_options function
2020-10-27 10:43:24 +01:00
cig
eb3c6538ee Moved N_TA offset setting to init function 2020-10-27 10:43:24 +01:00
cig
8ee8b81043 Cleaned up unused UE variables, members, commented out code 2020-10-27 10:43:24 +01:00
cig
c961e81ce9 Broken down get_band into two functions to get duplex offset and frame type
- the band is coming from the SI, therefore a function to get the band is not
  necessary
- this solves also the limitations of the get_band algorithm with the NR bands
  overlapping in the NR operating bands table (e.g. band 78 and band 48)
2020-10-27 10:43:24 +01:00
cig
7e45f8be7a Fix for scan carrier to make it compatible with custom DL/UL IF implementation 2020-10-27 10:41:59 +01:00
cig
fa07a48456 Set downlink carrier and uplink CO @ UE through command line
- this reflects the implementation of IF and IF offset in the gNB RU
- the RF frequencies are set at HW level while the target frequencies are
  stored in fp, therefore the values stored in fp should not be changed
  after sync as only the tx/rx freq is updated
- removed overwritten dl/ul carrier frequencies in fp after sync
- removed redundant set of tx/rx freq in ue_synch (done in init_openair0)
- removed irrelevant set of dl/ul carrier freq in get_options
2020-10-27 10:41:59 +01:00
cig
63e93528b9 Bypass the tdd_table in FDD mode
- tdd_table is filled in only in TDD mode and should not be used in FDD mode
2020-10-27 10:41:59 +01:00
cig
1bacb91add Bugfix: set freq_offet to static to avoid re-initialisation in frequency scanner 2020-10-27 10:41:59 +01:00
cig
60d81f231a Configuration changes to support FDD
- adapted the get_band function: the algorithm is now taking into account
  also the UL frequency in order to fetch the proper band (this was failing
  before as some NR bands have the same DL band, e.g. band 65 and 66)
- added new bands to the NR table as per TS 38.101 V16.4.0 (2020)
- made the from_nrarfcn function compatible with UL FDD (this function,
  used for both DL and UL  was previously working with TDD only as it
  did not compute properly the frequency for the UL FDD, throwing asserts)
- introduced common functions to get the NR table idx and the duplex mode,
  removing repeated code in the process
- removed the unused function to get the uldl offset
- improved some logging
- other minor fixes to the relevant code
2020-10-27 10:41:59 +01:00
cig
609844a379 Small code cleanup gNB
- removed long-time commented out and unused code
- fixed logging
2020-10-27 10:39:43 +01:00
cig
29f7a5082a Introduced configuration of RU IF offset from configuration file
- the RU now supports IF equipment with custom FR1 TX/RX frequencies
- this configuration parameter together with the if_freq parameter allows
  to set a custom IF RX frequency for the gNB
- if the IF offset is not specified, legacy code applies
2020-10-27 10:39:43 +01:00
He Shanyun
5880c1f8c7 add nas message for registration request 2020-10-27 09:28:47 +00:00
Xue Song
356a4d83e9 fix nrUE build error 2020-10-27 07:41:53 +00:00
yaojie
a5343618cf Added the judgment of the NGAP field in the configuration file 2020-10-27 07:40:09 +00:00
Laurent
7ec149cc35 merge develop 2020-10-27 08:23:59 +01:00
He Shanyun
b67badef1b fix build error of phy simulator 2020-10-27 02:59:52 +00:00
Xue Song
41d3892c64 Merge branch 'develop_SA_NGAP' into develop_SA_RRC 2020-10-27 02:51:57 +00:00
Xue Song
62292f892e modify ngap_gNB_handle_nas_first_req 2020-10-27 01:56:41 +00:00
Raymond Knopp
6c414a80d4 wqMerge remote-tracking branch 'origin/develop' into develop-oriecpriupdates 2020-10-26 19:58:25 +01:00
hardy
779362dcb7 Merge remote-tracking branch 'origin/NR_CSI_reporting' into integration_2020_wk44 2020-10-26 17:30:17 +01:00
hardy
b0797c0899 Merge remote-tracking branch 'origin/finalize-oaicn-integration' into integration_2020_wk44 2020-10-26 17:29:28 +01:00
hardy
97d284bea3 Merge remote-tracking branch 'origin/bugfix-nr-bands' into integration_2020_wk44 2020-10-26 17:28:58 +01:00
hardy
89d7353ddf Merge remote-tracking branch 'origin/fixes-tun' into integration_2020_wk44 2020-10-26 17:28:11 +01:00
Parminder Singh
42e9c655be Moved LLR calculations inside a static function
- LLR calculations are moved inside a static function and done for a
  slot in last symbol processing
2020-10-26 15:01:43 +01:00
Cedric Roux
3826ea13ac nr rlc: bugfix - ret.next was not set in a particular case
The function next_missing needs a rewrite...
2020-10-26 11:01:44 +01:00
Parminder Singh
cf3780c04d Added PTRS related definitions and variables for DL processing in UE
- Added PTRS variables in transport UE header file
- Added DMRS inline symbol check function in refsig.h
- Added PTRS estimation and other related structures in defs_nr_UE.h file
2020-10-26 10:29:39 +01:00
Parminder Singh
8d496bdcf8 Adding PTRS symbol from gNB in DL
- Based upon ptrs bitmap, ptrs symbols are added in DL
- Mac ptrs validation condition is updated
2020-10-26 10:28:02 +01:00
Parminder Singh
22cd1885bc DMRS Specific changes from fhg-dl-dmrs branch 2020-10-26 10:23:52 +01:00
Parminder Singh
54c89ccdbc MAC layer changes to process PTRS RRC values and validation
- Get RRC values from dedicated bandwidth part and process it
- Validate all settings in MAC layer and enable PTRS processing in PHY
2020-10-26 10:15:19 +01:00
Parminder Singh
3651107f81 Added PTRS parameters in UE nFAPI interface
- PTRSPortIndex, PTRSTimeDensity, PTRSFreqDensity, PTRSReOffset, nEpreRatioOfPDSCHToPTRS
- mcs_table : to calculate MCS table in MAC layer and pass tp PHY
- pduBitmap : same as used in DL FAPI interface, to enable or disable PTRS processing
2020-10-26 10:06:33 +01:00
Wu.Jing
66bc0bac1e Merge branch 'master' into develop_SA_L3 2020-10-26 09:04:03 +00:00
Wu.Jing
08e775559b Merge branch 'develop_SA_SIM' into develop_SA_L3 2020-10-26 09:02:18 +00:00
Parminder Singh
a7982741aa RRC sub-function to add PTRS configuration for DL
- Added a function to add PTRS values in RRC context.
- This function can be used to overwrite the PTRS values also.
- When RRC config file contains PTRS values then this function can be used
respectively in RRC context.
2020-10-26 10:01:15 +01:00
Raphael Defosseux
41d059794c Merge remote-tracking branch 'origin/oc-docker-october-improvements' into finalize-oaicn-integration 2020-10-26 09:49:44 +01:00
Raphael Defosseux
457734988c CI: lock mechanism around the VM usage
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-26 09:49:33 +01:00
Raphael Defosseux
61989549e1 CI: better handling of the case when no UE is connected to ADB server
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-26 09:49:33 +01:00
Raphael Defosseux
0a4cfc2173 CI: scenarios that are known as unstable won't be seen as failures
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-26 09:49:33 +01:00
Raphael Defosseux
fb957484af CI: intermediate commit
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-26 09:49:33 +01:00
Francesco Mani
1a1ee59d39 Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-26 09:27:52 +01:00
Francesco Mani
c41566ac6a fix compilation error 2020-10-26 09:27:40 +01:00
Khodr Saaifan
c93147ee43 gNB: allow more than 2 antenna ports at the Tx side 2020-10-26 08:44:16 +01:00
Wu.Jing
a9b76b5341 Merge branch 'develop_SA_RRC' into develop_SA_SIM
Conflicts:
	openair2/RRC/NR/MESSAGES/asn1_msg.c
	openair2/RRC/NR/rrc_gNB.c
2020-10-26 07:30:18 +00:00
Wu.Jing
92ba7dc249 Merge branch 'develop_SA_NGAP' into develop_SA_RRC 2020-10-26 06:20:02 +00:00
masayuki.harada
1ce1e8f82b Merge branch 'oai_develop'
# Conflicts:
#	ci-scripts/Jenkinsfile-gitlab
2020-10-26 15:03:58 +09:00
Remi Hardy
97ae4300f7 Merge branch 'integration_2020_wk42_2' into 'develop'
Integration 2020 wk42 (2)

MR921 : Hotfix for DL DCI issue in UE  
Fixing a bug from last MR.  
Fix in nr_dlsim that prevents reporting false 'PDSCH ok' message

MR915 : Fix to avoid RRC->X2AP ticking every msec when x2ap task is not enabled  
The aim of itti RRC_SUBFRAME_PROCESS message (MAC->RRC) is to trigger an itti X2AP_SUBFRAME_PROCESS message (RRC->X2AP)  
This change avoids creating RRC_SUBFRAME_PROCESS message if x2ap task is not enabled
2020-10-25 15:50:41 +01:00
Hongzhi WANG
0109c7b1fb remove ue warnings 2020-10-23 18:09:13 +02:00
Raphael Defosseux
d240e85c21 docker: removing obsolete file
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-23 17:08:29 +02:00
Francesco Mani
5de83e0bb8 fixing a couple of warnings 2020-10-23 16:49:58 +02:00
Raymond Knopp
c737ea2f8f fixing issue with PRACH0 and multiple PRACH occasions 2020-10-23 16:06:04 +02:00
Florian Kaltenberger
3b56994113 fixing warnings 2020-10-23 14:18:12 +02:00
Florian Kaltenberger
32c8c86730 fixing benetel drivers after introduction of multiple PRACH occastions 2020-10-23 13:28:48 +02:00
Xue Song
d5f95c6c79 fix some error 2020-10-23 08:00:21 +00:00
Xue Song
ce85677762 modify some issues 2020-10-23 03:42:06 +00:00
Mario Hudon
dd573e891d Changed for the original file in develop 2020-10-22 18:55:05 -04:00
Mario Hudon
e23219d53b Removed changes in fix_scc to avoid impact on the actual value of ssb_PositionsInBurst_Bitmap in the archived configuration files 2020-10-22 18:39:25 -04:00
Mario Hudon
a9169c0234 -Updated for a clean merge 2020-10-22 17:55:23 -04:00
Khodr Saaifan
0f538755c7 Fix DMRS RE allocation: 1- allowed_xlsch_re_in_dmrs_symbol 2- Double DMRS 3- w_t and w_f 2020-10-22 23:10:58 +02:00
Florian Kaltenberger
085dff3e1e Merge remote-tracking branch 'origin/develop' into benetel_phase_rotation 2020-10-22 21:37:23 +02:00
Florian Kaltenberger
c3f1029bdf fixing bug for WORKER_ENABLE 2020-10-22 21:34:00 +02:00
Laurent
c8111292e9 fix warnings from merge 2020-10-22 21:06:35 +02:00
Mario Hudon
31fb92b802 Moved UE SSB/RO handling code from nr_mac_common to nr_ue_procedures 2020-10-22 13:45:33 -04:00
hardy
8d65628052 re-enabling RA test 2020-10-22 17:58:00 +02:00
Raphael Defosseux
4899c55101 [docker] adding some tools and missing USIM generation config file
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-22 17:05:08 +02:00
Raphael Defosseux
0519e31575 [docker] add CMD w/ 'sleep infinity' for remaining target images
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-22 16:56:04 +02:00
hardy
bebc0d98d7 Merge remote-tracking branch 'origin/UE_DL_DCI_hotfix' into integration_2020_wk42_2 2020-10-22 16:23:34 +02:00
hardy
0a8bc5cdb5 Merge remote-tracking branch 'origin/fix_rrc_x2_ticking' into integration_2020_wk42_2 2020-10-22 16:23:05 +02:00
matzakos
e904cf3a00 Add comments for dummy function definitions in nr phy simulators 2020-10-22 16:16:10 +02:00
masayuki.harada
a21ba6c7dc Merge remote-tracking branch 'remotes/origin/develop_SA_L3' into NR_SA_NGAP_RRC_wk42 2020-10-22 19:59:13 +09:00
Thomas Schlichter
bc810d1d04 Merge branch 'develop' into NR_UE_RA_fixes 2020-10-22 12:31:59 +02:00
zhanghuiqin
f3c922b1c1 fix RRCReject 2020-10-22 09:19:27 +00:00
Thomas Schlichter
7c5677fd1f fix message 1 frame number calculation on NR UE
UE initiates the RA procedure with sending message 1 via PRACH 150 frames after synchronizing with the gNB.
As the frame numbers wrap at 1024, we have to calculate the frame number for message 1 using modulo calculation.
2020-10-22 10:25:48 +02:00
Francesco Mani
76abeaf30e Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-22 09:26:51 +02:00
He Shanyun
028be9e486 fix build error of phy simulator 2020-10-22 05:55:51 +00:00
Mario Hudon
b61b591e42 Merge remote-tracking branch 'oai-eurecom/develop' into NR_MAC_SSB_RO_UE_IDCC 2020-10-21 18:51:03 -04:00
Mario Hudon
3874e934d8 Added support of PRACH on start symbol != 0 on the UE 2020-10-21 15:45:08 -04:00
Cedric Roux
ae8c0ef448 nr: add MAC PDU traces for wireshark
The T tracer macpdu2wireshark has been modified to handle the new traces.
The usage is the same as for LTE.

In NR the RACH is logged as an LTE RACH. Maybe we'll change that in the
future. Looking at the source code of wireshark, I could not find any
way to report NR RACH. Maybe they forgot it. Or I did not search correctly...
2020-10-21 18:09:15 +02:00
Mohammed Ismail
7cc5765848 docker file updates on gnb and lteue
Signed-off-by: Mohammed Ismail <mohammed.ismail@eurecom.fr>
2020-10-21 16:35:34 +02:00
cig
1ef9a7ceb6 Enter PRACH procedures only after UE sync 2020-10-21 16:02:47 +02:00
Raphael Defosseux
0e1a56c766 DOC: 1st draft for OC build / deployment
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-21 15:59:27 +02:00
Raphael Defosseux
1bed270326 DOC: adding table of content
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-21 15:14:00 +02:00
Raphael Defosseux
81785c1d91 DOC: initial draft for docker/openshift
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-21 15:14:00 +02:00
Raphael Defosseux
ddfeaf8119 [docker] adding a CMD for eNB dockerfiles
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-21 15:14:00 +02:00
Thomas Schlichter
fb7a098a47 fix execution of nr_ue_pdsch_procedures() only once per slot for SI_PDSCH, P_PDSCH and RA_PDSCH 2020-10-21 14:56:44 +02:00
Laurent
5c69510f17 merge develop, improve doc 2020-10-21 14:38:17 +02:00
Raphael Defosseux
b70671777c Merge branch 'integration_2020_wk42' into 'develop'
Develop Integration Branch: 2020 wk42

The following Merge Requests were included:

* MR 913 : Flexran Base Station Apps  
* MR 875 : Nr mac ssb ro global edge  
* MR 897 : python framework cleanup (CI)  
* MR 924 : C-RNTI as TC-RNTI  
* MR 911 : Cce indexing fix  
* MR 922 : fixes mac sched nfapi
2020-10-21 13:39:04 +02:00
masayuki.harada
a6a39d9951 Merge branch 'develop_SA_L3' into NR_SA_NGAP_RRC_wk42
# Conflicts:
#	openair2/RRC/NR/rrc_gNB.c
2020-10-21 16:41:09 +09:00
yaojie
bfd2c35c35 fix warning/error 2020-10-21 07:30:20 +00:00
masayuki.harada
72cc6b16bf Merge branch 'develop_SA_L3' into 'master'
develop_SA_L3_20201021

See merge request !2
2020-10-21 14:25:37 +09:00
Shweta Shrivastava
7344ca7e3b Support for PUSCH config requests for multiple UL slots 2020-10-20 22:34:10 -05:00
Xue Song
592642cb28 modify RRC messages 2020-10-21 02:46:40 +00:00
cig
4589d86018 Set init_msg1 at the start of the nr_ue_prach_procedures 2020-10-20 18:07:17 +02:00
Thomas Schlichter
97e88dae06 Merge remote-tracking branch 'UE_DL_DCI_hotfix' 2020-10-20 17:47:35 +02:00
Khodr Saaifan
e01279805d gNB: fix Resource mapping to support multiple layers DMRS generation 2020-10-20 14:09:59 +02:00
Thomas Schlichter
65962b4881 fix compilation of telnetsrv_proccmd.c with deadline scheduler disabled 2020-10-20 13:35:46 +02:00
Thomas Schlichter
d9a3009f10 fix some cppcheck warnings 2020-10-20 13:35:46 +02:00
Thomas Schlichter
7428723c87 Synchronize gnb.band78.tm1.106PRB.usrpn300.conf files in ci-scripts and targets directory 2020-10-20 13:35:46 +02:00
He Shanyun
e15f0b2813 add struct for registration request message 2020-10-20 11:30:06 +00:00
zhanghuiqin
fad30fff8a fix UECapabilityEnquiry & UECapabilityInformation 2020-10-20 08:41:41 +00:00
Florian Kaltenberger
288df1af6d remove hardcoding of FR2 parameters 2020-10-20 07:59:04 +02:00
Florian Kaltenberger
9e69c0e35d Merge remote-tracking branch 'origin/develop' into NR_RRCConfiguration_FR2 2020-10-20 07:38:07 +02:00
Raphael Defosseux
01c8e3e63f [OC]: point to proper namespace and branch
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-19 17:24:26 +02:00
Raphael Defosseux
50fbb1f111 CI: increased time-outs on last few VM creations
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-19 13:16:26 +02:00
Francesco Mani
914b8da916 fix after integration 2020-10-19 12:46:55 +02:00
matzakos
8e3ec3e5a8 Merge remote-tracking branch 'origin/develop' into fix_rrc_x2_ticking 2020-10-19 11:49:43 +02:00
Raphael Defosseux
1da61458ba DOC: adding docker readme skeleton
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-19 11:32:32 +02:00
hardy
ae6af7ed8c Merge remote-tracking branch 'origin/rh_ci_py' into integration_2020_wk42
Conflicts:
	ci-scripts/reportTestLocally.sh

Kept new RA test disabled
2020-10-19 11:24:12 +02:00
hardy
03e5b461a3 Merge remote-tracking branch 'origin/NR_MAC_SSB_RO_GlobalEdge' into integration_2020_wk42
Solved Conflicts in:
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
	openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
2020-10-19 11:18:30 +02:00
hardy
8eb9d0b4a6 Merge remote-tracking branch 'origin/fixes-mac-sched-nfapi' into integration_2020_wk42 2020-10-19 10:52:37 +02:00
hardy
4d14cc63b9 Merge remote-tracking branch 'origin/cce_indexing_fix' into integration_2020_wk42 2020-10-19 10:51:46 +02:00
hardy
d94fc12887 Merge remote-tracking branch 'origin/NR_RA_updates' into integration_2020_wk42 2020-10-19 10:50:56 +02:00
hardy
639d957e30 Merge remote-tracking branch 'origin/flexran-apps' into integration_2020_wk42 2020-10-19 10:49:44 +02:00
zhanghuiqin
49487217bf add UECapabitlityEnquiry(ue) 2020-10-19 08:22:15 +00:00
Xue Song
4766f3a629 fix RRCReconfiguration/RRCReconfigurationComplete 2020-10-19 07:58:10 +00:00
Qiu DeZhi
4421bc5665 modify rrcRelease 2020-10-19 06:55:53 +00:00
Qiu DeZhi
1605266440 Add RRCrelease 2020-10-19 04:59:29 +00:00
Shweta Shrivastava
f85559abf1 Removed hard-coded PUSCH slot at UE; use dynamic grant 2020-10-18 23:51:48 -05:00
Raphael Defosseux
13cf8284fd Merge branch 'integration_2020_wk41' into 'develop'
develop integration branch : 2020 week 41

* MR909 small-bugfixes-wk40 (Cedric Roux)
* MR919 docker and openshift initial support
2020-10-18 21:21:59 +02:00
Raphael Defosseux
591184c4ba CI: proper disabling of 5g RF sim RA-TEST
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-17 22:07:03 +02:00
Raphael Defosseux
3f2da854ef CI: increase time-out for RF Sim tests
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-17 21:18:00 +02:00
Florian Kaltenberger
63ddc9ac10 fixing a cppcheck warning 2020-10-16 14:21:44 +02:00
hardy
930c147b18 removing useless debug comments 2020-10-16 14:13:31 +02:00
hardy
118575d7d2 aligning ci-scripts/runTestOnVM.sh with integration_2020_wk41 2020-10-16 14:11:06 +02:00
Laurent
6b7eb07224 remove gtp work 2020-10-16 12:01:20 +02:00
Laurent
dd43752bbe add thread pool init 2020-10-16 11:41:14 +02:00
matzakos
dc63cab2b0 Merge remote-tracking branch 'origin/develop' into fix_rrc_x2_ticking 2020-10-16 11:35:54 +02:00
yaojie
6030a75a65 fix securityModeCommand/securityModeComplete 2020-10-16 09:15:53 +00:00
Xue Song
dfa50d975b Modify RRCSetupComplete 2020-10-16 08:42:28 +00:00
Xue Song
5697057f0b Unblock ITTI SIM process 2020-10-16 05:06:19 +00:00
Xue Song
a76ef07a69 Merge branch 'develop_SA_RRC' into develop_SA_SIM 2020-10-16 01:48:23 +00:00
Xue Song
43ef53cbcf Add pucchresset->maxPayloadMinus1 to be compatible with Rel15 2020-10-16 01:46:15 +00:00
Francesco Mani
10c196b64a Merge branch 'NR_CSI_reporting' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_CSI_reporting 2020-10-15 14:52:39 +02:00
Hongzhi Wang
8ff485fca4 sending csi reporting in scheduled slot from rrc config 2020-10-15 14:47:56 +02:00
Qiu DeZhi
46bbb6a943 Modify RRCSetupComplete 2020-10-15 10:34:19 +00:00
Cedric Roux
f3a27d6ae3 bugfix: fix frequencies in nr_bandtable
A test with band 79 was not working. It turns out that the computation
of the frequency from the NR-ARFCN was giving a wrong value.

After fixing band 79 as found in this commit, the frequency was correct.

The array nr_bandtable has then been reviewed fully and all the values
that were wrong have been changed. The check of correctness was done
using the website https://www.sqimway.com/nr_band.php
2020-10-15 11:50:11 +02:00
Florian Kaltenberger
0d555854e9 Merge branch 'NR_MAC_SSB_RO_GlobalEdge' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_MAC_SSB_RO_GlobalEdge 2020-10-15 11:27:10 +02:00
Francesco Mani
757a01d2d9 k2 = 6 in rfsim config file 2020-10-15 11:26:51 +02:00
Remi Hardy
4f2f1cc744 Update TESTING_GNB_W_COTS_UE.md 2020-10-15 11:16:00 +02:00
Wu.Jing
0312db24b4 comment nnsf that it hasnot be test 2020-10-15 08:57:28 +00:00
Wu.Jing
b2722225ab Merge branch 'master' into develop_SA_L3 2020-10-15 08:26:42 +00:00
Francesco Mani
62dbda5c83 Merge remote-tracking branch 'origin/develop' into NR_RA_updates 2020-10-15 10:18:16 +02:00
Raphael Defosseux
c69a30fe5d CI: disabling RA test check for the moment. 5G RF SIM normal phy-test should be passing now
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-15 10:14:56 +02:00
kn.raju
2cad2b936e modified mapping of SSB index to UE_id 2020-10-15 13:00:04 +05:30
Francesco Mani
5f1fe21c7c Revert "Fix to avoid RRC->X2AP ticking every msec when x2ap task is not enabled"
This reverts commit 1a5874d40f.
2020-10-15 08:54:31 +02:00
masayuki.harada
fa8e7d9f71 Merge remote-tracking branch 'remotes/origin/develop_SA_SIM' into develop_SA_L3 2020-10-15 15:43:46 +09:00
masayuki.harada
d626d4b27f Merge remote-tracking branch 'remotes/origin/develop_SA_RRC' into develop_SA_L3 2020-10-15 15:42:34 +09:00
masayuki.harada
bdc83aaac6 Merge remote-tracking branch 'remotes/origin/develop_SA_NGAP' into develop_SA_L3
# Conflicts:
#	openair2/GNB_APP/gnb_paramdef.h
#	openair3/NGAP/ngap_gNB_nas_procedures.c
2020-10-15 15:39:46 +09:00
masayuki.harada
af35e37c74 Merge branch 'oai_develop'
# Conflicts:
#	openair2/RRC/NR/rrc_gNB.c
2020-10-15 15:25:04 +09:00
yaojie
1fd1853ce7 add nr_decode_SI/SIB2/SIB3 2020-10-15 05:46:32 +00:00
yaojie
f00e5deb14 fix about nnfs,make it TODO 2020-10-14 08:34:41 +00:00
Qiu DeZhi
b4fad9c589 Merge branch 'develop_SA_SIM' of http://10.37.143.24:8000/gitlab/vran/OAI-5GNR into develop_SA_SIM 2020-10-14 08:02:27 +00:00
yaojie
e981df3cd8 add nr_decode_SIB1 2020-10-14 05:27:38 +00:00
He Shanyun
e6ddb5379c add process for itti simulator 2020-10-14 03:22:55 +00:00
Florian Kaltenberger
18ae5acc98 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_GlobalEdge 2020-10-13 21:47:21 +02:00
Francesco Mani
37b8995e9e fix merge bug at ue 2020-10-13 14:18:09 +02:00
Xue Song
878b483746 Merge branch 'develop_SA_RRC' into develop_SA_SIM 2020-10-13 11:37:45 +00:00
Xue Song
9812545c61 modify rrc_gNB_generate_RRCSetup 2020-10-13 11:36:52 +00:00
Xue Song
38516da2dc Merge branch 'develop_SA_RRC' into develop_SA_SIM 2020-10-13 10:48:46 +00:00
Xue Song
0f378cf3da modify RRCSetup 2020-10-13 10:48:01 +00:00
Sakthivel Velumani
2581428808 changing k2 to 6 to support oai-ue
this shouldn't affect the testing with cots ue
2020-10-13 11:49:21 +02:00
Xue Song
db410e41a6 Merge branch 'develop_SA_RRC' into develop_SA_SIM 2020-10-13 09:31:16 +00:00
Xue Song
8c421698c4 modify do_RRCSetup 2020-10-13 09:07:19 +00:00
Qiu DeZhi
f9d8c922e4 add rrcRelease 2020-10-13 07:26:54 +00:00
yaojie
602424f616 handle bcch message in rrc_nrue_task 2020-10-13 07:13:42 +00:00
Robert Schmidt
a6126a39a5 Remove MAX_NUMBER_NETIF and use num UE 2020-10-13 09:07:46 +02:00
Robert Schmidt
8c5976e279 Use "ip add" to add IP addresses
This then only uses the "modern" ip tool instead of ifconfig, and the
command is more "homogeneous".
2020-10-13 09:07:46 +02:00
Robert Schmidt
298956509f Delete double UE IP config setup 2020-10-13 09:07:46 +02:00
Robert Schmidt
4c7035e6e3 Remove UESIM_EXPANSION
This completely removes the UESIM_EXPANSION define: it does not compile
at the moment. Its function was to multiplex multiple UEs on the same
TUN interface. However, this functionality is not needed since it is
possible to allocate many TUN devices (i.e., >= 32).
2020-10-13 09:07:46 +02:00
Francesco Mani
4df83dd00e Merge remote-tracking branch 'origin/fix_rrc_x2_ticking' into NR_CSI_reporting 2020-10-13 08:51:13 +02:00
Robert Schmidt
ff48c369c5 Lower nFAPI eNB log level 2020-10-13 08:49:30 +02:00
Robert Schmidt
ac4bb8bc55 Prevent deadlocks in nFAPI when no free index 2020-10-13 08:49:30 +02:00
Robert Schmidt
9882460607 Remove Mutexes in phy_stub_UE.c
Various mutexes are present in the phy_stub_UE.c file. However, it will
only be run in a single thread; the multiple-thread implementation also
runs the higher layers concurrently, which leads to races and segfaults.
Therefore, remove these mutexes, as we don't need them.
2020-10-13 08:49:30 +02:00
Robert Schmidt
581de8b2d8 Limit UE UL RBs to 48 2020-10-13 08:49:30 +02:00
Robert Schmidt
41a440fad2 Do not schedule static slices if 0 RB(G)s 2020-10-13 08:49:29 +02:00
Robert Schmidt
ca1b0e2bbc Bugfix RR algo: if a UE cannot be allocated, skip it 2020-10-13 08:49:29 +02:00
abdeljel
8aa270a7c0 Refactor HARQ retx in try_allocate_harq_retransmission() 2020-10-13 08:49:29 +02:00
yincong
e344a7bd4a add Sidelink redioresource 2020-10-13 06:14:16 +00:00
Xue Song
f6d5e5f95d handle dcch message in rrc_nrue_task 2020-10-13 02:11:39 +00:00
Sakthivel Velumani
c9c1df0bff fixed dlsim build error
also added a log message for DCI generation in MAC
2020-10-12 18:59:15 +02:00
Sakthivel Velumani
f7cef6b132 fixed return value inconsistancy
changed uint8_t to void as return is not used in the calling function
2020-10-12 18:59:14 +02:00
Sakthivel Velumani
de4a370c39 changing k2 to 6 to support oai-ue
this shouldn't affect the testing with cots ue
2020-10-12 18:59:14 +02:00
Sakthivel Velumani
3a7079228e scheduling slot 2 aslo 2020-10-12 18:59:14 +02:00
Robert Schmidt
72556206e9 Simplify set_Y() 2020-10-12 18:59:14 +02:00
Sakthivel Velumani
e75108d312 fixing dlsim 2020-10-12 18:59:14 +02:00
Sakthivel Velumani
5307eed845 fixing warnings 2020-10-12 18:59:14 +02:00
Sakthivel Velumani
8a1be8aa2f increased the number of pdcch candidates in ue 2020-10-12 18:59:14 +02:00
Sakthivel Velumani
62562c32e9 fixing bug in pucch 2020-10-12 18:59:14 +02:00
Sakthivel Velumani
6b3ddcc799 fixed cce indexing to allow multiple pdcch on single coreset 2020-10-12 18:59:14 +02:00
Laurent
910a130eb2 Merge branch 'noCore' of https://gitlab.eurecom.fr/oai/openairinterface5g into noCore 2020-10-12 18:25:19 +02:00
Laurent
4f2d8ebfcd merge develop, use Linux crypto library 2020-10-12 18:24:08 +02:00
hardy
fd571e9014 Merge remote-tracking branch 'origin/small-bugfixes-w40' into integration_2020_wk41 2020-10-12 18:08:16 +02:00
hardy
e801d03836 Merge remote-tracking branch 'origin/rh_ci_oc' into integration_2020_wk41 2020-10-12 18:07:27 +02:00
Sakthivel Velumani
4074db8515 Hotfix for DL DCI issue in UE
Created two dci_pdu's to hold dci configuration for UL and DL DCI.
This wasn't a problem before as only one DCI was scheduled.
2020-10-12 18:07:24 +02:00
matzakos
cb7b924950 Create dummy x2 function where needed in the nr phy simulators
-To avoid including the whole x2 libraries for the corresponding executables
2020-10-12 17:53:40 +02:00
Raphael Defosseux
221e43bbb9 NASMESH: support for latest kernel version on RHEL
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:29:04 +02:00
Raphael Defosseux
357748dfff BUILD: fix check when not in a container
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:29:04 +02:00
Raphael Defosseux
00926c5b7d [DOCKER][Ubuntu18]: adding Ubuntu18 support
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:29:04 +02:00
Raphael Defosseux
b6d0f22c13 [OC][RHEL8]: updating dockerfiles w/ proper library management on target images + support for USRP build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:28:41 +02:00
Raphael Defosseux
49e1add19f [DOCKER][RHEl8]:
* Standalone support on RHEL8.2 (without OpenShift build-config system)
* few ports for RHEL8.2 standalone podman/docker usage
* Supports eNB/gNB/LTE-UE/NR-UE

Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:25:46 +02:00
Raphael Defosseux
4aae87ca5e BUILD: remove ue_ip is container-based build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:25:46 +02:00
Raphael Defosseux
45dfec4671 [OC][RHEL8]: copy/pasta error on build options
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:25:23 +02:00
Raphael Defosseux
8c41a241ee [OC][RHEL8]: finalizing lte/nr UE image builds on RHEL8
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:24:37 +02:00
Raphael Defosseux
40ff24661e [DOCKER]: fix files to copy
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:24:18 +02:00
Raphael Defosseux
0100b26686 [OC]: added support for RHEL8.2
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-12 17:23:30 +02:00
hardy
e598df840e [OC][Docker][RHEL8] Initial Support 2020-10-12 17:17:16 +02:00
Francesco Mani
b7d71d58ad Merge remote-tracking branch 'origin/fix_rrc_x2_ticking' into NR_CSI_reporting 2020-10-12 17:14:55 +02:00
Francesco Mani
d0bcde029a Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-12 17:08:04 +02:00
yaojie
5db27b9305 Add RRCSetup 2020-10-12 09:29:56 +00:00
Laurent
489fc7c0fe trial 2020-10-12 10:52:46 +02:00
Xue Song
f4f8db4373 Merge branch 'develop_SA_RRC' into develop_SA_SIM
Modify RRCReconfiguration
2020-10-12 04:59:49 +00:00
Xue Song
994229963b Modify RRCReconfiguration 2020-10-12 02:59:22 +00:00
Wu.Jing
ac6262e82b fix gNB build error 2020-10-10 06:57:57 +00:00
yaojie
3b6f720125 RM3977 2020-10-10 06:25:29 +00:00
Xue Song
fefb6148e6 Modify some warnings
Add nr_rrc_pdcp_config_security
Delete ENABLE_SECURITY
2020-10-10 06:18:40 +00:00
zhenghuangkun
84579c5dc0 Modify MME_MODE_ENABLED to AMF_MODE_ENABLED
Modify kenb to kgnb
Modify some warnings
2020-10-10 06:16:49 +00:00
He Shanyun
90dc22aea6 add rrc_nrue_task 2020-10-10 05:15:46 +00:00
Xue Song
aa8e695d59 Fix compiling error 2020-10-10 03:24:06 +00:00
Wu.Jing
079157eb55 cherry-pick 3efc7538ac 2020-10-10 11:26:40 +09:00
zhenghuangkun
6ca5753555 Add author and email 2020-10-10 10:56:14 +09:00
He Shanyun
c180323de4 fix compile issue about build ngap asn file 2020-10-10 10:55:49 +09:00
He Shanyun
9e428fe6c2 dummy define for some fields 2020-10-10 10:55:31 +09:00
zhenghuangkun
45e5be9c44 Add ErrorIndication
Add Paging
Add PDUSessionResourceModifyRequest
2020-10-10 10:55:01 +09:00
zhenghuangkun
57b28d0732 Add PDUSessionResourceReleaseCommand 2020-10-10 10:53:08 +09:00
zhenghuangkun
22ac1b9486 Add PDUSessionResourceModifyResponse
Add PDUSessionResourceReleaseResponse
Add NASNonDeliveryIndication
2020-10-10 10:52:08 +09:00
yincong
55495f68bc modify PDUSessionResourceSetupRequest 2020-10-10 10:51:51 +09:00
yincong
b84880a1fe PDUSessionResourceSetupRequest
PDUSessionResourceSetupResponse
2020-10-10 10:51:20 +09:00
zhenghuangkun
655b7d64f9 Add UERadioCapabilityInfoIndication 2020-10-10 10:51:10 +09:00
He Shanyun
fbea1eff2b modify type of tac 2020-10-10 10:50:57 +09:00
zhenghuangkun
c6d6a42484 Add UEContextReleaseComplete
Add UEContextReleaseRequest
2020-10-10 10:50:43 +09:00
zhenghuangkun
5217b76448 Add DownlinkNASTransport Message
Add UEContextReleaseCommand Message
Modify NGSetup Message Encode failed
2020-10-10 10:50:19 +09:00
Thomas Schlichter
5d4bc9d72a fix compilation of telnetsrv_proccmd.c with deadline scheduler disabled 2020-10-09 18:18:23 +02:00
Thomas Schlichter
986bd80c4e fix some cppcheck warnings 2020-10-09 17:45:48 +02:00
Thomas Schlichter
2d99d9ab8d Synchronize gnb.band78.tm1.106PRB.usrpn300.conf files in ci-scripts and targets directory 2020-10-09 17:23:48 +02:00
Francesco Mani
74b2aec212 fix for rach pdus 2020-10-09 13:46:38 +02:00
Remi Hardy
0fe3e5fde2 Merged branch 'integration_2020_wk40' into 'develop'
Integration 2020 wk40 comprises the following udpates:

MR893 ULSCH decode mthread: 
- Enabled parallelization of ULSCH segments decoding, deinterleaving and rx rate matching.
  
MR896 Nsa remove band hardcodings:
- A missing commit from wk39, just a log change   

MR901 NR UE DCI improvements:
- Handling of DCI formats 0_0 and 0_1, including removing hard-coding and scheduling PUSCH with DCI parameters
- Blind decoding of DCIs based on size and format indicator
- Fix for segmentation fault during ULSCH encoding

MR895 support of RA procedure by implementing Msg3 on UE

MR908 NR DL scheduler improvements:
Preliminary work on the DL scheduler
- cleanup of DL scheduler, add interface preprocessor-postprocessor (`NR_UE_sched_ctrl_t`)
- postprocessor can handle multiple UEs. Preprocessor will follow soon (proportional fair scheduler)
- No MAC UE Context creation before end of RA (Msg 3)
These updates do not change anything performance wise (no additional scheduled slots, etc). 
This MR also reduces gNB log.
2020-10-09 11:26:09 +02:00
yaojie
457423fe25 RM3977 2020-10-09 08:03:48 +00:00
Robert Schmidt
8cb530d25c Address review in !913: rename functions 2020-10-09 09:02:59 +02:00
Francesco Mani
f28d7ce8ff bugfix in dlsim and ulsim 2020-10-08 17:33:17 +02:00
matzakos
9aba4bcf8c Include X2 libraries in nr phy simulators to avoid linking errors
-Also change the place of the check on whether x2ap is enabled to trigger the ITTI tick message from RRC to X2AP.
2020-10-08 15:34:35 +02:00
Raphael Defosseux
43c76e868f CI: adding waiver on License Banner check for milenage.h file
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-10-08 13:44:56 +02:00
Qiu Dezhi
ad1f8a372e Add RrcSetupComplete 2020-10-08 14:22:23 +09:00
Thomas Schlichter
2a4153eb29 fixup previous merge with develop branch 2020-10-07 17:54:39 +02:00
Robert Schmidt
a389e6f5e9 Fixup: reserve space for TA command 2020-10-07 17:54:39 +02:00
Francesco Mani
dec42f3385 rearrangement of handle_uci function for acknack 2020-10-07 17:38:37 +02:00
matzakos
1a5874d40f Fix to avoid RRC->X2AP ticking every msec when x2ap task is not enabled
-Since the aim of itti RRC_SUBFRAME_PROCESS message (MAC->RRC) is to trigger an itti X2AP_SUBFRAME_PROCESS message (RRC->X2AP), avoid creating
RRC_SUBFRAME_PROCESS message if x2ap task is not enabled. Not sure if this is the best solution. We could also avoid only sending the second itti X2AP_SUBFRAME_PROCESS message.
2020-10-07 14:37:02 +02:00
Francesco Mani
3af7ab3ff8 Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-10-07 11:20:32 +02:00
Xue Song
97dd024c1d Fix some issues 2020-10-07 08:57:30 +00:00
Raphael Defosseux
5411461582 Merge remote-tracking branch 'origin/develop' into integration_2020_wk40 2020-10-07 10:53:36 +02:00
matzakos
c6aae3140e Merge develop branch into NR_SA_NGAP_RRC 2020-10-07 10:38:58 +02:00
zhanghuiqin
8f2c96e6e2 add RRCReconfigurationComplete 2020-10-07 12:20:19 +08:00
Dong Anyuan
d82d881463 create CPPCheck Jenkins Job for OAI-5GNG/develop_SA_L3 2020-10-07 12:07:35 +09:00
Shweta Shrivastava
2305470a75 Fix for using K2 offset other than 2 2020-10-06 13:26:45 -05:00
Robert Schmidt
f146b640d5 FlexRAN agent app: trigger UE-slice assoc through IMSI regex 2020-10-06 19:47:33 +02:00
matzakos
824c504b11 Fix to avoid RRC->X2AP ticking every msec when x2ap task is not enabled
-Since the aim of itti RRC_SUBFRAME_PROCESS message (MAC->RRC) is to trigger an itti X2AP_SUBFRAME_PROCESS message (RRC->X2AP), avoid creating
RRC_SUBFRAME_PROCESS message if x2ap task is not enabled. Not sure if this is the best solution. We could also avoid only sending the second itti X2AP_SUBFRAME_PROCESS message.
2020-10-06 18:31:31 +02:00
Robert Schmidt
e569577944 FlexRAN: send loaded apps/macObjects to RTC 2020-10-06 17:45:50 +02:00
Robert Schmidt
28c47996e4 When preparing slice update/search also loaded libraries 2020-10-06 17:45:50 +02:00
Robert Schmidt
38ace905aa Check for shared objects beforing setting scheduler 2020-10-06 17:45:50 +02:00
Robert Schmidt
21dcd834cc Save list of SOs used in user plane 2020-10-06 17:45:50 +02:00
Robert Schmidt
65e52fcf11 Inform MAC of control delegation and load in user plane 2020-10-06 17:44:16 +02:00
Robert Schmidt
0f641b7d9c If unknown scheduler, save message and contact controller 2020-10-06 17:44:16 +02:00
Robert Schmidt
9de83a047a FlexRAN: Add control_delegation_request protobuf message 2020-10-06 17:44:16 +02:00
Robert Schmidt
c500babe8b FlexRAN fixup: FLPT_DELEGATE_REQUEST and corresp. destroy() 2020-10-06 17:44:16 +02:00
Robert Schmidt
865348b047 FlexRAN agent app: Add sample FlexRAN app 2020-10-06 17:44:16 +02:00
Robert Schmidt
fde3127823 FlexRAN Agent reconfiguration: call flexran_agent_handle_apps() 2020-10-06 17:44:16 +02:00
Robert Schmidt
8772856fd4 FlexRAN: Add app loader/CM 2020-10-06 17:44:16 +02:00
Robert Schmidt
9e4320864f FlexRAN control delegation: write/remove depending if payload present 2020-10-06 17:44:09 +02:00
Robert Schmidt
6e2c8d847a FlexRAN: new agent reconfiguration syntax, instead of YAML 2020-10-06 17:44:09 +02:00
Robert Schmidt
1c5a4eb645 FlexRAN: add control app delegation type in protobuf 2020-10-06 17:44:09 +02:00
Robert Schmidt
61344db9dd FlexRAN delegation: mapper function to return path name 2020-10-06 17:44:08 +02:00
Robert Schmidt
f63cf65919 FlexRAN: Improve handling of received shared objects 2020-10-06 17:44:08 +02:00
Robert Schmidt
5d9c61ea2a FlexRAN timers: Fix segfault timer no associated message 2020-10-06 17:27:12 +02:00
Robert Schmidt
33b73193e8 FlexRAN timers: enable timer add/remove within timer event
A lock help during executing a timer event prevented such event from
creating/removing new timers due to a dead lock. This commit changes the
logic of the timing loop and adding/removing code such that this dead
lock does not happen.
2020-10-06 17:27:12 +02:00
Robert Schmidt
7bdf807bab FlexRAN timers: Remove destroy_timers() 2020-10-06 17:27:12 +02:00
Robert Schmidt
db933da183 FlexRAN bugfix: first timer expiry after period 2020-10-06 17:27:12 +02:00
Francesco Mani
87b02489b0 using crnti as tcrnti 2020-10-06 14:12:29 +02:00
Laurent
6b676d1605 Fix compilation issues 2020-10-06 13:54:30 +02:00
hardy
d61f45ecb9 Merge remote-tracking branch 'origin/ulsch_decode_mthread' into integration_2020_wk40 2020-10-06 11:00:09 +02:00
hardy
8f9ba5553d Merge remote-tracking branch 'origin/nsa_remove_band_hardcodings' into integration_2020_wk40 2020-10-06 09:30:04 +02:00
Francesco Mani
8d6e0a43d1 adding cfra flag 2020-10-05 18:04:20 +02:00
Francesco Mani
3ac23f80f9 Merge remote-tracking branch 'origin/NR_DL_scheduler' into nr_ue_msg3 2020-10-05 14:56:18 +02:00
Francesco Mani
8e4a2f82c4 bugfix in crc6 2020-10-05 14:48:58 +02:00
Robert Schmidt
2904367165 Fixup: reserve space for TA command 2020-10-05 13:14:58 +02:00
Robert Schmidt
2e41782a12 Add configurable UE as param for nr_generate_dlsch_pdu() 2020-10-05 13:14:58 +02:00
Robert Schmidt
eb263af39e Remove statistics from nr_generate_dlsch_pdu() 2020-10-05 13:14:58 +02:00
Robert Schmidt
4ecb236df6 nr_fill_nfapi_dl_pdu(): pdu index and nPDUs counting 2020-10-05 13:14:58 +02:00
Robert Schmidt
cbd6250fdf Directly construct tx_req nFAPI message in DL postprocessor 2020-10-05 13:14:58 +02:00
Robert Schmidt
22cb1567d4 allocate only necessary amount of RBs 2020-10-05 13:14:58 +02:00
Robert Schmidt
d145d8d662 Consider retransmissions in the preprocessor 2020-10-05 13:14:58 +02:00
Robert Schmidt
0ef332ef75 DL Post processor: distinguish tx/retx 2020-10-05 13:14:58 +02:00
Robert Schmidt
acffd17d6f Store retx Info 2020-10-05 13:14:58 +02:00
Robert Schmidt
8a004df0c9 Create UE MAC Context after successful RA 2020-10-05 13:14:58 +02:00
Robert Schmidt
ee850206e4 fixup: throughput correct only if first TDD slot 2020-10-05 13:14:58 +02:00
Robert Schmidt
f80ab8797a Use vrb_map in in DL for NSA mode 2020-10-05 13:14:58 +02:00
Robert Schmidt
d7d21efcf5 Post-processor: enable multi-UE handling 2020-10-05 13:14:58 +02:00
Robert Schmidt
059f585e06 Preprocessor: check for number of UEs 2020-10-05 13:14:58 +02:00
Robert Schmidt
abd608b6cb Mark active in add_new_nr_ue() only if phytest 2020-10-05 13:14:58 +02:00
Robert Schmidt
d921581922 Remove fiveG_connected and use active 2020-10-05 13:14:58 +02:00
Robert Schmidt
793cbda97e Simplify allocate_rn_CCEs() 2020-10-05 13:14:58 +02:00
Robert Schmidt
1a73ea6c6d Make UE_info.active C99 bool 2020-10-05 13:14:58 +02:00
Robert Schmidt
0032bcc905 add_nr_ue_list() 2020-10-05 13:14:58 +02:00
Robert Schmidt
d0667d9ea4 Add NR_UE_list_t type 2020-10-05 13:14:58 +02:00
Robert Schmidt
e956c17bf8 Rename NR_UE_list_t to NR_UE_info_t
The name NR_UE_list_t is misleading: beyond being a simple "list", this
structure carries all/most UE-related MAC information. If at all, it is
a container for multiple lists. The next commit introduces a
NR_UE_list_t structure that organizes UEs in lists such that it is
easier to go through the UEs.
2020-10-05 13:14:58 +02:00
Thomas Schlichter
97354f1e2f Merge remote-tracking branch 'NR_UE_UL_DCI_improvements' into integration_2020_wk40
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
	openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
2020-10-05 12:15:59 +02:00
Thomas Schlichter
8b4d1a0f0f Merge remote-tracking branch 'NR_DL_scheduler' into integration_2020_wk40 2020-10-05 12:13:13 +02:00
hardy
51311c6c1c adding RA test to CI 2020-10-05 11:25:52 +02:00
Francesco Mani
91bfb290f1 Merge branch 'NR_CSI_reporting' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_CSI_reporting 2020-10-05 11:24:49 +02:00
Francesco Mani
9301bca035 fix for pucch rx reading rxdataF 2020-10-05 11:24:32 +02:00
Robert Schmidt
f28679b360 PreProc IF: save MCS-info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
f9dd8292f8 PreProc IF: Freq domain allocation per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
6c7ff44cd9 PreProc IF: save Time domain assignment info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
112b30d79a PreProc IF: save PUCCH info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
34a31a20b7 PreProc IF: save CCE info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
dcdee083ac PreProc IF: RLC status per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt
d12180b25b Start PreProc interface, add UE active BWP 2020-10-05 10:29:45 +02:00
Robert Schmidt
f86e4305f6 Reduce log DLSCH scheduler 2020-10-05 10:29:45 +02:00
Robert Schmidt
1b5558537f Move HARQ calculations out of nr_fill_nfapi_dl_pdu() 2020-10-05 10:29:45 +02:00
Robert Schmidt
4cebd0dd92 Only send random data if phytest 2020-10-05 10:29:45 +02:00
Robert Schmidt
7f51eca9d3 Remove UE-specific ulsch bitmap, special phy test slot
when in phy test, only schedule UE to be in slot 8
2020-10-05 10:29:45 +02:00
Robert Schmidt
14613222f3 clean up gNB_dlsch_ulsch_scheduler(), remove UE-specific DL bitmap 2020-10-05 10:29:45 +02:00
Robert Schmidt
de2cf2393b Do not allocate CCE in nr_configure_pdcch()
nr_configure_pdcch() allocates the CCE, but this is not wanted, e.g., in
multi-user scheduling, since it might not be possible to allocate the
CCEs for these UEs. This commit makes the following changes:

- remove CCE allocation in nr_configure_pdcch()
- remove coreset search in nr_configure_pdcch()
- add functions get_coreset() and get_searchspace() to retrieve coresets
  and search spaces easily
- in nr_fill_nfapi_dl_pdu(), add extra parameters for aggregation level
  and CCE indices and the searchspace and coreset of a UE, which might
  be different for each UE
- allocate CCEs manually in phytest, RA, and DLSCH schedulers
2020-10-05 10:29:45 +02:00
Robert Schmidt
43f177e7df Restructure nr_schedule_ue_spec() 2020-10-05 10:29:44 +02:00
Robert Schmidt
3de6b619be Move TBS calculation out of nr_fill_nfapi_dl_pdu 2020-10-05 10:29:44 +02:00
Robert Schmidt
685c540353 nr_fill_nfapi_dl_pdu(): MCS + other params configurable 2020-10-05 10:29:44 +02:00
Robert Schmidt
041bb7a755 Inline nr_get_tbs_dl() 2020-10-05 10:29:44 +02:00
Robert Schmidt
7a0650c40c nr_fill_nfapi_dl_pdu(): Parameters by value, not pointers 2020-10-05 10:29:44 +02:00
Robert Schmidt
77f5d59691 Create separate nr_fill_nfapi_dl_pdu() 2020-10-05 10:29:44 +02:00
Robert Schmidt
e259111f77 Create NR DLSCH nr_schedule_ue_spec() 2020-10-05 10:29:44 +02:00
Robert Schmidt
7cf7a0e8b1 Reduce log nr-softmodem 2020-10-05 10:24:41 +02:00
hardy
eb3f34aad5 fixed egrep to match pass test 2020-10-05 10:14:10 +02:00
hardy
538be9155c finalized RFsim RA check test 2020-10-04 21:34:30 +02:00
Florian Kaltenberger
c2889d3b49 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_GlobalEdge 2020-10-04 20:54:40 +02:00
Florian Kaltenberger
39615e8210 fixing ocp targets as well 2020-10-04 20:54:27 +02:00
Laurent
4772f7f6e4 for push to OSA git 2020-10-04 19:35:41 +02:00
Laurent
4dacef8bb7 merge develop and test 2020-10-04 19:22:33 +02:00
hardy
0004490f58 rfsim RA check : check html formatting 2020-10-04 15:52:18 +02:00
hardy
15005cfd28 still working on rfsim RA test 2020-10-04 14:46:41 +02:00
Sakthivel Velumani
eebc233abd reducing ulsch decoding cores for CI segfault 2020-10-02 15:18:04 +02:00
Sakthivel Velumani
53f3874032 updating ulsim to take samples from exernal source 2020-10-02 15:11:28 +02:00
Sakthivel Velumani
3367b0f199 fixing compile warnings 2020-10-02 14:30:42 +02:00
laurent
5cb8e9e14d Reduce difference with OSA develop branch for merge 2020-10-02 11:26:46 +02:00
Cedric Roux
0ec02eaf5d T tracer: bugfix: properly log the MIB
Bytes of the MIB were logged in reverse.

Bug reported by David Breaux <davidbreaux67@gmail.com>.
2020-10-01 18:18:25 +02:00
Cedric Roux
35a0a4e1c7 rrc enb: small fix to avoid wrong code execution
dedicated_DRB was not set properly when the NSA UE sends
ReconfigurationComplete so the wrong code was executed below
(we had dedicated_DRB == 0). Let's put a value that does
nothing (-1 seems fine).
2020-10-01 18:18:25 +02:00
Cedric Roux
3c85a88081 s1ap encoding: return -1 on error 2020-10-01 18:18:25 +02:00
Remi Hardy
bc73585d31 Merge branch 'integration_2020_wk39' into 'develop', comprising :
MR 896 : Nsa remove band hardcodings  
Removes hardcodings of EUTRA and NR bands in UE_Capability_Enquiry and NR_UE Capability_Enquiry messages, providing them from the eNB config file and gNB over X2 respectively. Moreover, the SSB Absolute frequency of the gNB is now provided by the eNB configuration file (instead of being hardcoded at rrc_eNB.c)  

MR903 : pusch ta update  
Update of PUSCH Timing advance  

MR 900 : improve x2/rrc for ENDC  
This MR introduces several enhancements in X2AP and RRC to deal with ENDC. 
The main goal is to deal with UE's on/off and with various errors.
Includes :
- DC prep and DC overall X2 timers
- X2 messages for UE release and DC timers' timeout
2020-10-01 18:16:53 +02:00
Rakesh
5f7c30fb8c fix for get_slot_from_timestamp 2020-10-01 17:47:17 +02:00
laurent
6b50cbcae2 continue 5G SA 2020-10-01 16:13:03 +02:00
Hongzhi Wang
0ea9c3f711 ue changing csi length function name 2020-10-01 13:12:02 +02:00
Florian Kaltenberger
e68d09404c fixing compiler warnings and hopefully if4.5 CI tests 2020-10-01 07:40:49 +02:00
Sakthivel Velumani
13b016de53 doing nr_segmentation in all rounds
because round 0 could be skipped if no pusch signal detected
2020-09-30 16:24:40 +02:00
Robert Schmidt
a2bf8f478a Add configurable UE as param for nr_generate_dlsch_pdu() 2020-09-30 14:52:59 +02:00
Robert Schmidt
f97c4f8ae6 Remove statistics from nr_generate_dlsch_pdu() 2020-09-30 14:52:59 +02:00
Robert Schmidt
574f47d014 nr_fill_nfapi_dl_pdu(): pdu index and nPDUs counting 2020-09-30 14:52:59 +02:00
Robert Schmidt
ea9aacd664 Directly construct tx_req nFAPI message in DL postprocessor 2020-09-30 14:52:59 +02:00
Robert Schmidt
b7b32fbe77 allocate only necessary amount of RBs 2020-09-30 14:52:59 +02:00
Robert Schmidt
0c61983196 Consider retransmissions in the preprocessor 2020-09-30 14:52:59 +02:00
Robert Schmidt
2209b999a0 DL Post processor: distinguish tx/retx 2020-09-30 14:52:59 +02:00
Robert Schmidt
09d85a052a Store retx Info 2020-09-30 14:52:59 +02:00
Robert Schmidt
b4d8e41a00 Create UE MAC Context after successful RA 2020-09-30 14:52:59 +02:00
Robert Schmidt
a2b1fa5d57 fixup: throughput correct only if first TDD slot 2020-09-30 14:52:59 +02:00
Robert Schmidt
b9eb6c9843 Use vrb_map in in DL for NSA mode 2020-09-30 14:52:59 +02:00
Robert Schmidt
ce2dd17ed5 Post-processor: enable multi-UE handling 2020-09-30 14:52:59 +02:00
Robert Schmidt
fdb4c69221 Preprocessor: check for number of UEs 2020-09-30 14:52:59 +02:00
Robert Schmidt
f13c97db02 Mark active in add_new_nr_ue() only if phytest 2020-09-30 14:52:59 +02:00
Robert Schmidt
738d61a173 Remove fiveG_connected and use active 2020-09-30 14:52:59 +02:00
Robert Schmidt
77e2a5aab8 Simplify allocate_rn_CCEs() 2020-09-30 14:52:59 +02:00
Robert Schmidt
5efe475120 Make UE_info.active C99 bool 2020-09-30 14:52:59 +02:00
Robert Schmidt
34f61ce396 add_nr_ue_list() 2020-09-30 14:52:59 +02:00
Robert Schmidt
ccb83d16e1 Add NR_UE_list_t type 2020-09-30 14:52:59 +02:00
Robert Schmidt
adcd2949fe Rename NR_UE_list_t to NR_UE_info_t
The name NR_UE_list_t is misleading: beyond being a simple "list", this
structure carries all/most UE-related MAC information. If at all, it is
a container for multiple lists. The next commit introduces a
NR_UE_list_t structure that organizes UEs in lists such that it is
easier to go through the UEs.
2020-09-30 14:52:59 +02:00
Robert Schmidt
476c7177f9 PreProc IF: save MCS-info per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
9ad94aad82 PreProc IF: Freq domain allocation per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
123a4e9ada PreProc IF: save Time domain assignment info per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
ad4da1b068 PreProc IF: save PUCCH info per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
020405686c PreProc IF: save CCE info per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
5e5abe420e PreProc IF: RLC status per UE 2020-09-30 14:52:59 +02:00
Robert Schmidt
77a814fe27 Start PreProc interface, add UE active BWP 2020-09-30 14:52:59 +02:00
Robert Schmidt
a403ca0398 Reduce log DLSCH scheduler 2020-09-30 14:52:59 +02:00
Robert Schmidt
b516e26a66 Move HARQ calculations out of nr_fill_nfapi_dl_pdu() 2020-09-30 14:52:59 +02:00
Robert Schmidt
8dd212c0d1 Only send random data if phytest 2020-09-30 14:52:59 +02:00
Robert Schmidt
439095bc84 Remove UE-specific ulsch bitmap, special phy test slot
when in phy test, only schedule UE to be in slot 8
2020-09-30 14:52:59 +02:00
Robert Schmidt
4ffc4fdad8 clean up gNB_dlsch_ulsch_scheduler(), remove UE-specific DL bitmap 2020-09-30 14:52:59 +02:00
Robert Schmidt
5578aeb4a5 Do not allocate CCE in nr_configure_pdcch()
nr_configure_pdcch() allocates the CCE, but this is not wanted, e.g., in
multi-user scheduling, since it might not be possible to allocate the
CCEs for these UEs. This commit makes the following changes:

- remove CCE allocation in nr_configure_pdcch()
- remove coreset search in nr_configure_pdcch()
- add functions get_coreset() and get_searchspace() to retrieve coresets
  and search spaces easily
- in nr_fill_nfapi_dl_pdu(), add extra parameters for aggregation level
  and CCE indices and the searchspace and coreset of a UE, which might
  be different for each UE
- allocate CCEs manually in phytest, RA, and DLSCH schedulers
2020-09-30 14:52:59 +02:00
Robert Schmidt
67a081772d Restructure nr_schedule_ue_spec() 2020-09-30 14:52:59 +02:00
Robert Schmidt
f0533b9ec4 Move TBS calculation out of nr_fill_nfapi_dl_pdu 2020-09-30 14:52:59 +02:00
Robert Schmidt
71bfadf192 nr_fill_nfapi_dl_pdu(): MCS + other params configurable 2020-09-30 14:52:59 +02:00
Robert Schmidt
fc179f396c Inline nr_get_tbs_dl() 2020-09-30 14:52:59 +02:00
Robert Schmidt
9b2be0a1f6 nr_fill_nfapi_dl_pdu(): Parameters by value, not pointers 2020-09-30 14:52:59 +02:00
Robert Schmidt
192da32734 Create separate nr_fill_nfapi_dl_pdu() 2020-09-30 14:52:59 +02:00
Robert Schmidt
566bc95bc0 Create NR DLSCH nr_schedule_ue_spec() 2020-09-30 14:52:59 +02:00
Robert Schmidt
5b9658f005 Reduce log nr-softmodem 2020-09-30 14:52:59 +02:00
hardy
f69824c998 Merge remote-tracking branch 'origin/PUSCH_TA_update' into integration_2020_wk39 2020-09-30 14:38:43 +02:00
hardy
70135e1c74 Merge remote-tracking branch 'origin/nsa_remove_band_hardcodings' into integration_2020_wk39 2020-09-30 14:36:24 +02:00
kn.raju
66b20f1ac3 Fixed improper UE_id 2020-09-30 15:23:09 +05:30
Xue Song
b331fc9af6 Add rrc_ue_process_rrcReconfiguration
->nr_rrc_ue_process_measConfig
    ->nr_rrc_ue_process_radioBearerConfig
Modify RRCReconfiguration message (gnb->ue)
2020-09-30 08:15:22 +00:00
hardy
ed0d35dcc3 dummy push 2020-09-30 09:22:04 +02:00
Shweta Shrivastava
659b8e32e4 Removed hard-coding for mcs_table 2020-09-30 01:05:29 -05:00
matzakos
410c18ecd8 Change log message 2020-09-29 19:49:18 +02:00
hardy
b9f91a62da updated the RFsim RA check (not final) 2020-09-29 18:05:18 +02:00
Francesco Mani
a53f195bb4 Merge remote-tracking branch 'origin/develop' into NR_CSI_reporting 2020-09-29 17:04:03 +02:00
Hongzhi Wang
73281a4302 ue computing csi bit length from rrc 2020-09-29 11:28:17 +02:00
Xue Song
118ac391ad Modify some warnings
Add nr_rrc_pdcp_config_security
Delete ENABLE_SECURITY
2020-09-29 06:11:02 +00:00
yincong
685837f8de Merge branch 'master' into develop_SA_L3 2020-09-29 03:08:58 +00:00
zhenghuangkun
3efc7538ac Modify MME_MODE_ENABLED to AMF_MODE_ENABLED
Modify kenb to kgnb
Modify some warnings
2020-09-29 02:56:21 +00:00
masayuki.harada
c264b2650d Merge remote-tracking branch 'remotes/origin/oai_develop' 2020-09-29 10:44:46 +09:00
Francesco Mani
1340e00fec mcs table for pusch from rrc config 2020-09-28 19:05:23 -05:00
Hongzhi Wang
8676ceea7e initializing nr ue dlsch harq status 2020-09-28 18:06:18 -05:00
hardy
544df8cbdb fixing another typo 2020-09-28 23:10:29 +02:00
masayuki.harada
c948fefec2 Revert some changes to avoid setup failure. 2020-09-28 19:55:31 +09:00
masayuki.harada
67b91fec27 Merge commit '5372a3478ad3047b80c65828862742ba4dd8b77b' into candidate_20200928 2020-09-28 19:51:43 +09:00
Francesco Mani
4b4304b5c3 modifications in pucch scheduling to avoid conflicts between acknacks and csi 2020-09-28 12:22:01 +02:00
masayuki.harada
d797dacaaa Merge branch 'candidate_20200928' into 'master'
Candidate 20200928

See merge request !1
2020-09-28 18:25:29 +09:00
zhanghuiqin
f86fb5df56 add RRCSetupRequest(ue→gnb) 2020-09-28 08:44:23 +00:00
Francesco Mani
0b1f0f8693 function to compute nr of prbs for pucch 2020-09-28 10:35:37 +02:00
yincong
b46abe7bcb add nr_rrc_ue_process_securityModeCommand
add pdcp_config_set_security
2020-09-28 07:22:52 +00:00
zhenghuangkun
ad44cbdc94 Add author and email 2020-09-28 06:03:39 +00:00
hardy
2498bc8bc0 fixed 1 typo ; 1 cut error (part of code missing) 2020-09-27 12:54:41 +02:00
hardy
175c98af0e Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_py 2020-09-27 12:30:56 +02:00
Guido Casati
f8796fb71f Update doc/RUNMODEM.md with the RA setup 2020-09-25 13:50:08 +02:00
Xue Song
b5f58b7d22 Add RRCReconfigurationComplete message
Modify compilation warning
2020-09-25 10:27:27 +00:00
hardy
670ca6877e logging debug data from initializeUE 2020-09-25 11:32:08 +02:00
Francesco Mani
df369e0cae mcs table for pusch from rrc config 2020-09-25 10:13:26 +02:00
He Shanyun
9c462934d4 fix compile issue about build ngap asn file 2020-09-25 07:55:58 +00:00
Francesco Mani
a0ec575b3c initialization of ta variables 2020-09-25 07:50:57 +02:00
Francesco Mani
17051b86d8 changes in ta procedure at gnb, to be tested with the phone 2020-09-25 07:50:45 +02:00
Shweta Shrivastava
06313dc616 Introduced UE Assertion if value of K2 is less than DURATION_RX_TO_TX 2020-09-24 23:53:07 -05:00
Shweta Shrivastava
911092f574 Fixed values of slot offset K2 in gNB config file 2020-09-24 23:48:46 -05:00
hardy
8ccf320813 terminateOAIUE was still missing an arg 2020-09-24 23:17:56 +02:00
Francesco Mani
b69920b9f6 fix for reference point for k in pucch2 dmrs 2020-09-24 18:50:06 +02:00
hardy
2fe140ffa6 Merge branch 'rh_ci_py' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_py 2020-09-24 17:29:44 +02:00
hardy
09052083d2 working on RA test for 5G Rfsim 2020-09-24 17:27:22 +02:00
He Shanyun
1aac22879c dummy define for some fields 2020-09-24 11:56:06 +00:00
laurent
ffd4c20e58 fix L2 tracing in wireshark, start security mode comman 2020-09-24 11:55:43 +02:00
Hongzhi Wang
4cb1193ba2 initializing nr ue dlsch harq status 2020-09-24 09:27:32 +02:00
matzakos
72b53688b8 Merge branch 'nsa_remove_band_hardcodings' of https://gitlab.eurecom.fr/oai/openairinterface5g into nsa_remove_band_hardcodings 2020-09-24 08:11:30 +02:00
matzakos
7c8019da9f Merge develop into nsa_remove_band_hardcodings branch 2020-09-24 08:10:55 +02:00
kn.raju
f07ef48249 solved nr_dlsim issue 2020-09-24 11:26:56 +05:30
zhanghuiqin
7dac9ba9a0 add UECapabilityEnquiry 2020-09-24 14:08:43 +09:00
Xue Song
caff16a6d1 Add RRCReconfiguration message 2020-09-24 03:00:43 +00:00
He Shanyun
966569c119 implement RRC release 2020-09-24 01:33:53 +00:00
Qiu Dezhi
49eb710850 add UeCapabilityInformation message 2020-09-24 10:14:27 +09:00
hardy
c74e1b2c04 reverted some changes that are no longer needed (and lead to improper execution) 2020-09-24 00:03:44 +02:00
Remi Hardy
f66b79fffb added nr_scg_ssb_freq param in enb conf file used by CI 2020-09-23 17:48:35 +02:00
hardy
a0c30944a4 added 5g rfsim RA check procedure 2020-09-23 16:44:37 +02:00
hardy
812b2384fc fixed SSH issue / fixed functions arguments 2020-09-23 15:01:59 +02:00
zhanghuiqin
06578d2d2b add UECapabilityEnquiry 2020-09-23 19:28:34 +09:00
zhenghuangkun
79632d2f91 Add ErrorIndication
Add Paging
Add PDUSessionResourceModifyRequest
2020-09-23 05:45:33 +00:00
Florian Kaltenberger
a06a2ef700 moving find_SSB_and_RO_available to MAC 2020-09-22 22:48:50 +02:00
Laurent
3024f57805 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into noCore 2020-09-22 17:57:27 +02:00
Cedric Roux
1d583c14a8 nr: fix compilation of physical simulators
Maybe not the right way to do.
To be checked.
2020-09-22 17:42:30 +02:00
Francesco Mani
03b97dd45e using signal_energy_nodc 2020-09-22 17:35:27 +02:00
Laurent
19c6229049 merge develop, compile ok 2020-09-22 16:24:49 +02:00
Florian Kaltenberger
79bf2b3fb0 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_GlobalEdge 2020-09-22 15:26:57 +02:00
hardy
b9d98b0029 fixed SSH call without instanciation (temp : by passing obj as parameter) 2020-09-22 14:29:28 +02:00
Florian Kaltenberger
f11bf8dc47 reducing logs 2020-09-22 14:00:26 +02:00
Cedric Roux
6cc7e22132 nr: bugfix: set ul_valid_re_per_slot properly
After the UE disconnects, the next connection fails
because the gNB cannot decode Msg3. The root cause
seems to be this ul_valid_re_per_slot not set to 0.
Setting it before the test fixes the problem and
does not seem to impact anything else.
2020-09-22 12:44:51 +02:00
Cedric Roux
00e6a13764 nr: hack to remove UE data in gNB's PHY
Some data remains in the PHY of the gNB after UE removal by
upper layers. After some connection/deconnection/reconnection
the gNB will exit because there is no free space in PHY.

This commit adds some global variables shared by MAC and PHY.
The function mac_remove_nr_ue puts UEs to be removed in it
and the function rxtx removes what needs to be removed.

This is a hack. It will be removed at some point in time.

The real way to remove in the PHY should be to release
data after some time of inactivity in the PHY, which would
mean the UE has been removed in upper layers. Kind of
timer-based thing. There should be no communication between
PHY and MAC.
2020-09-22 12:35:44 +02:00
Cedric Roux
4236ff2b3e nr: improve x2/rrc for ENDC
This commit introduces several enhancements in X2AP and RRC to deal
with ENDC. The main goal is to deal with UE's on/off and with various
errors.

The following work is included:

    - DC prep and DC overall X2 timers
    - X2 messages for UE release and DC timers' timeout

Open problems:

    - what to do when the UE sends an scg Failure? This commit removes
      the UE. And this removal may not be correctly done
    - UE removal in the gNB's PHY layer (a next commit is coming,
      but it is hackish and will need a rework)
2020-09-22 11:57:31 +02:00
Shweta Shrivastava
8cd05eac17 Fix for handling same length DCIs 2020-09-21 22:06:55 -05:00
Shweta Shrivastava
6c6e29faf8 Merge branch 'develop' into NR_UE_UL_DCI_improvements 2020-09-21 19:19:11 -05:00
Shweta Shrivastava
590a9d41ea Fix for segfault in nrLDPC_encoder 2020-09-21 18:57:27 -05:00
Mario Hudon
b0b5825c6a -Re-added a missing function for the gNB build 2020-09-21 16:53:03 -04:00
Florian Kaltenberger
221973bffc PRACH duration to be calculated based on PRACH format.
PRACH_PDU.prach_format now interpreted according to last version (March 2020) of 5G FAPI specs
fixing nr_prachsim
2020-09-21 22:17:28 +02:00
Mario Hudon
479cacbf38 Merge remote-tracking branch 'oai-eurecom/develop' into NR_MAC_SSB_RO_UE_IDCC 2020-09-21 14:28:02 -04:00
Remi Hardy
5372a3478a Merge branch 'integration_2020_wk38' into 'develop'
Integration 2020 wk38

See merge request oai/openairinterface5g!899
2020-09-21 17:27:37 +02:00
Laurent
93550b1cb0 add test code, finished authentication 2020-09-21 15:11:02 +02:00
hardy
098409adb2 Merge remote-tracking branch 'origin/rh_ci_doc' into integration_2020_wk38 2020-09-21 14:58:12 +02:00
hardy
e95e5ac7d9 fixed python typo 2020-09-21 14:56:48 +02:00
hardy
ac970cca5f ssh fix + additional debug info 2020-09-21 11:38:54 +02:00
He Shanyun
58bab3f202 fix compiler error of UE when rrc is rel16 2020-09-21 03:29:59 +00:00
zhenghuangkun
bc70da119d Fix merge build error 2020-09-21 02:54:09 +00:00
zhenghuangkun
0f3d53e1b9 Merge remote-tracking branch 'remotes/origin/master' into develop_SA_L3 2020-09-21 02:20:35 +00:00
Mario Hudon
282823d9a7 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_UE_IDCC 2020-09-18 16:32:24 -04:00
Mario Hudon
7996582729 - Added support for random RO selection for a given SSB index in a slot (as per 38.321)
- Fixed random preamble selection in contention-based RA
- Cleaned-up comments and commented code
2020-09-18 15:00:59 -04:00
Francesco Mani
ccae34e647 taking into account pucch2 acknack for mac 2020-09-18 18:59:59 +02:00
hardy
56b551fde4 Merge remote-tracking branch 'origin/fix-0509-crash-RRCConnectionReconfiguration' into integration_2020_wk38 2020-09-18 17:20:30 +02:00
hardy
76c0c6beea Merge remote-tracking branch 'origin/2020-09-ci-updates' into integration_2020_wk38 2020-09-18 17:19:26 +02:00
hardy
d25722b251 Merge remote-tracking branch 'origin/nr-rlc-time-handling' into integration_2020_wk38 2020-09-18 17:18:13 +02:00
hardy
b9a48b3560 fixed parameters list in functions 2020-09-18 17:06:14 +02:00
Raphael Defosseux
f9ca09fbf4 CI: typo in MR case
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-18 16:41:18 +02:00
hardy
2bb5032f18 fixing SSH object instanciation issue 2020-09-18 10:12:49 +02:00
zhenghuangkun
ec988428ac Add PDUSessionResourceReleaseCommand 2020-09-18 06:49:09 +00:00
He Shanyun
bb73d64186 implement securityCommandComplete 2020-09-18 05:07:20 +00:00
Shweta Shrivastava
c91d689d8c Imrpovements for extracting UL DCI, remove hardcoding, blind decoding of DCI 2020-09-17 22:31:32 -05:00
hardy
8c99b7ba13 dummy push 2020-09-17 18:30:01 +02:00
Francesco Mani
d3843b7214 initialization of ta variables 2020-09-17 17:53:37 +02:00
Rakesh
2cac29b5c6 fix for modulation rotataion to support all numerlogies 2020-09-17 17:46:50 +02:00
Sakthivel Velumani
6ff951be08 wait before abandoning next trx processing 2020-09-17 17:09:15 +02:00
Francesco Mani
e8be11da21 changes in ta procedure at gnb, to be tested with the phone 2020-09-17 11:48:45 +02:00
Cedric Roux
f87b93e639 nr: fix check in nr_find_pucch 2020-09-17 10:55:48 +02:00
hardy
28936a10a0 fixed a few issues / typo 2020-09-17 10:17:16 +02:00
Xue Song
e5216cdba3 Handle NGAP Initial Context Setup Request message from NGAP task 2020-09-17 07:55:05 +00:00
zhenghuangkun
5689cf906a Add PDUSessionResourceModifyResponse
Add PDUSessionResourceReleaseResponse
Add NASNonDeliveryIndication
2020-09-17 07:37:09 +00:00
Xue Song
679b6be9be Modify RRCSetupRequest message
Add RRCSetupComplete message
2020-09-17 03:18:56 +00:00
yincong
b0c79092fa modify PDUSessionResourceSetupRequest 2020-09-17 10:33:12 +09:00
He Shanyun
a02b0b4054 implement SecurityModeCommand 2020-09-17 01:19:50 +00:00
Francesco Mani
4776e13c5f bugfix in scheduling acknack 2020-09-16 18:48:40 +02:00
Sakthivel Velumani
db5011922d ulschsim works 2020-09-16 17:59:49 +02:00
hardy
b5377042c8 removed SSH lib shortcut 2020-09-16 16:31:04 +02:00
Sakthivel Velumani
c65c6a401f Merge branch 'ulsch_decode_mthread' of https://gitlab.eurecom.fr/oai/openairinterface5g into ulsch_decode_mthread 2020-09-16 16:25:08 +02:00
Sakthivel Velumani
76d841ff89 fixed ulschsim 2020-09-16 16:24:58 +02:00
hardy
5aa8368577 added local SSH obj instanciation inside the methods 2020-09-16 16:21:23 +02:00
Remi Hardy
0677e03aa8 adding missing libs 2020-09-16 12:30:09 +02:00
Rakesh
8ab1c0b9d4 Merge remote-tracking branch 'origin/develop' into NR_RRCConfiguration_FR2 2020-09-16 11:56:07 +02:00
hardy
15dfc7fc73 tentative to move oaicitest class to a separate module 2020-09-16 11:50:16 +02:00
matzakos
db33ee5ec2 Add NR_RRC_LIB in lte-uesoftmodem
- To avoid linking error due to dependency from NR_RRC FreqBandList type
2020-09-16 11:14:34 +02:00
Thomas Schlichter
30f1f947c6 fix some CPPCHECK errors and compile warnings
use snprintf() instead of sprintf() to avoid writes outside buffer limits
2020-09-16 10:08:10 +02:00
Thomas Schlichter
659cd82c21 Merge remote-tracking branch 'develop' 2020-09-15 16:00:23 +02:00
Xue Song
a81b655c3f Add RRC Setup message 2020-09-15 10:33:30 +00:00
yincong
b77ecaf2d8 PDUSessionResourceSetupRequest
PDUSessionResourceSetupResponse
2020-09-15 19:19:36 +09:00
Raphael Defosseux
4a873b4d43 CI: optmimizations on VM-based framework
also correction for Circular Dependency Protection on header files
    also correction on the banner check

Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-15 12:18:26 +02:00
Francesco Mani
6998d303fc using different resource (with different symbol) in case 2 pucch in a slot 2020-09-15 11:12:05 +02:00
Sakthivel Velumani
005e5f85df Merge branch 'develop' into ulsch_decode_mthread 2020-09-15 11:09:37 +02:00
Florian Kaltenberger
5bb1893f3d forgot to account for prachStartSymbol in rx_nr_prach_ru 2020-09-15 09:59:28 +02:00
zhenghuangkun
15cd202d5f Add UERadioCapabilityInfoIndication 2020-09-15 07:54:03 +00:00
Sergey Aranovskiy
3a2e3ff316 Fix formatting style
Signed-off-by: Sergey Aranovskiy <aranovskiy@mwnts.ru>
2020-09-15 09:57:28 +03:00
He Shanyun
ef508433d2 modify type of tac 2020-09-15 15:24:44 +09:00
zhenghuangkun
4a7ca735da Add UEContextReleaseComplete
Add UEContextReleaseRequest
2020-09-15 00:57:40 +00:00
matzakos
161d788fea Add absolute SSB frequency of nr cell as configuration parameter in the eNB configuration file instead of hardcoding it at rrc_eNB for NSA scenario 2020-09-14 14:47:10 +02:00
Florian Kaltenberger
a98cf88735 fixing a mistake in the computation of the prach_start_symbol 2020-09-14 13:38:30 +02:00
Francesco Mani
cb5362ea53 allowing 2 different pucch occasions in a slot 2020-09-14 12:08:25 +02:00
hardy
123666b730 completing the fr1 doc (with python script) 2020-09-14 11:11:39 +02:00
hardy
0c30b3a1e7 added CI integration of FR1 test section 2020-09-14 10:47:01 +02:00
hardy
0acd1e0974 fixing the CN doc path on an other line as well 2020-09-14 10:30:58 +02:00
hardy
a2b14d9cbc fixing the path to CN doc in FR1 doc 2020-09-14 10:16:09 +02:00
zhenghuangkun
b2f4b9828b Add DownlinkNASTransport Message
Add UEContextReleaseCommand Message
Modify NGSetup Message Encode failed
2020-09-14 06:51:14 +00:00
Cedric Roux
5b0efd5b83 NR: fix time keeping in RLC for gNB
RLC has timers. We need to keep track of time. We chose to not use
realtime but 'processing time'. That is we send a tick to RLC for every
subframe when it is processed by the softmodem. Before this commit we
used to increase time in the function mac_rlc_status_ind which is called
for every subframe in the eNB, but not in the gNB (at least not in the
current gNB). So we need another way to keep track of time.

The function gNB_dlsch_ulsch_scheduler is called for every slot. It seems
to be the perfect candidate to send a tick to RLC for every subframe. We
take care of subcarrier spacing to send every subframe (one subframe is
always 1ms), not every slot (slot duration depends on subcarrier spacing).

It may not be the best solution. To be revised if needed.

Note: the UE has not been fixed. Some modification is needed for the UE
too, most probably.
2020-09-12 14:54:09 +02:00
Xue Song
3f02d18f86 NR RRC ASN1 version upgrade release 16
Add RRCSetupRequest message
Add RRCReject message
2020-09-12 10:23:31 +00:00
He Shanyun
3c84c4d887 fix issues about sending ngap message by sctp 2020-09-12 08:36:31 +00:00
Sergey Aranovskiy
4bcf0a407d Fix crash when sending RRCConnectionReestablishmentReject
Create a temporary rrc_eNB_ue_context_t when it can't be obtained from
current RRC state:
- if UE was not attached to current eNB
- when RRCConnectionReestablishmentRequest has a wrong encoding
- in all other cases when ue_context_p can't be obtained.

Signed-off-by: Sergey Aranovskiy <aranovskiy@mwnts.ru>
2020-09-11 23:18:14 +03:00
matzakos
86a0210f50 Merge remote-tracking branch 'origin/develop' into nsa_remove_band_hardcodings 2020-09-11 18:19:08 +02:00
matzakos
f9aaa4336d Merge remote-tracking branch 'origin/develop' into nsa_remove_band_hardcodings 2020-09-11 17:54:49 +02:00
Mario Hudon
da355a395f Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB_RO_UE_IDCC 2020-09-11 11:12:58 -04:00
Florian Kaltenberger
fecf27e223 updating FAPI interface with PRACH configuration index
NR PHY should now be able to handle multiple PRACH occasions
2020-09-11 17:00:44 +02:00
Raphael Defosseux
3a7ac9821e Merge branch 'integration_2020_wk37' into 'develop'
Develop integration 2020 week 37

The following Merge Requests have been included:

* MR [878] : CI framework update for 5G NSA FR1 setup
* MR [885] : PTRS-based UL phase compensation
2020-09-11 16:49:52 +02:00
matzakos
3671692656 More corrections wrt Band Information in NR UE Capability message 2020-09-11 16:05:35 +02:00
Sakthivel Velumani
34ae102229 Merge branch 'develop' into ulsch_decode_mthread 2020-09-11 15:01:19 +02:00
matzakos
67db56d873 Corrections to properly fill the Band Information list at UE Capability Enquiry message 2020-09-11 14:39:49 +02:00
zhenghuangkun
7e327ae84a Add UplinkNASTransport Message 2020-09-11 10:11:25 +00:00
Guido Casati
b95ea59421 ulsim fix: missing qam_mod_order in UL PUSCH PDU 2020-09-11 11:43:57 +02:00
zhenghuangkun
05033b0bf4 Add InitialContextSetupResponse Message 2020-09-11 09:23:39 +00:00
Francesco Mani
461990a155 changes in pucch2 indication 2020-09-11 11:04:05 +02:00
He Shanyun
3b3452dcce fix issue about load config error of gnb 2020-09-11 06:09:24 +00:00
kn.raju
f9db898155 modified num of FAPI PRACH pdu 2020-09-11 11:38:41 +05:30
zhenghuangkun
2b22daa445 Fix Warning 2020-09-11 05:38:30 +00:00
zhenghuangkun
5dc6712cec Add InitialUEMessage And InitialContextSetupRequest Message 2020-09-11 03:01:55 +00:00
Sakthivel Velumani
77dc7daf0a fixed bugs 2020-09-10 20:28:38 +02:00
Francesco Mani
ae0c02b261 some rearrangements in function to schedule csi reporting 2020-09-10 18:19:25 +02:00
Thomas Schlichter
8e5ec076ae Merge remote-tracking branch 'ptrs_ul_phase_compensation'
Conflicts:
	openair1/PHY/INIT/nr_init.c
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair1/SIMULATION/NR_PHY/ulsim.c
2020-09-10 16:52:42 +02:00
Florian Kaltenberger
6931fd7d37 moving the OFDM phase rotation from RU to DU 2020-09-10 15:57:40 +02:00
hardy
ebd7f50992 Merge remote-tracking branch 'origin/rh_ci_fr1' into integration_2020_wk37 2020-09-10 15:30:27 +02:00
hardy
53922c13cf Merge remote-tracking branch 'origin/ptrs_ul_phase_compensation' into integration_2020_wk37 2020-09-10 15:23:53 +02:00
Francesco Mani
0113d9927f rnti from UE_list in pucch pdu 2020-09-10 14:21:35 +02:00
hardy
e1927aa46b Merge branch 'rh_ci_fr1' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_fr1 2020-09-10 14:16:23 +02:00
hardy
6039cda5a9 remove oc files as they were developed in an other branch 2020-09-10 14:15:15 +02:00
He Shanyun
c8b67cb1a1 compile NGAP_GNB lib 2020-09-10 11:34:02 +00:00
Hongzhi Wang
99d220c3e1 set rnti at gnb and remove uci crc length at ue 2020-09-10 12:51:58 +02:00
Hongzhi Wang
54ba635cf7 update csi report 2020-09-10 12:34:49 +02:00
Hongzhi Wang
4d4843e7b1 adding rsrp measurement and csi report 2020-09-10 12:34:29 +02:00
zhenghuangkun
46f1dc9614 Modify NGAP Message 2020-09-10 09:19:49 +00:00
Remi Hardy
0d9fc95063 Update TESTING_GNB_W_COTS_UE.md 2020-09-10 10:36:08 +02:00
Xue Song
bdd31eb852 fix the problem that nr-rrc-16.1.0.asn1 cannot generate C files 2020-09-10 08:23:28 +00:00
He Shanyun
8f3adc8bc8 fix gNB build error 2020-09-10 07:05:01 +00:00
Remi Hardy
894fd8c40c Merge branch 'rh_ci_fr1' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_fr1 2020-09-09 17:59:51 +02:00
Remi Hardy
2ab1b9697d fixed cls_cots_ue.py packages ; fixed terminate_ue_flag copy-paste error 2020-09-09 17:58:16 +02:00
Thomas Schlichter
8f58d1ec7f Fix nr_ulsim to transmit actual random data instead of uninitialized PDU 2020-09-09 16:50:32 +02:00
matzakos
8670269d69 Remove hardcodings of eutra and nr bands in UE Capability Enquiry messages 2020-09-09 16:21:55 +02:00
Raphael Defosseux
128887b9bc DOC: replace obsolete links w/ correct ones
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-09 16:18:14 +02:00
Rakesh
960ab93183 changing UL PRB for FR2 32 PRB testing 2020-09-09 16:11:01 +02:00
Rakesh
8022252513 Function to check for ssb from rrc configuration 2020-09-09 16:08:54 +02:00
Rakesh
ec51d54f89 fix for number of slots per tdd period calculation 2020-09-09 16:00:39 +02:00
Rakesh
26fb2905f5 adding prb 32 for timing advance calculation 2020-09-09 15:59:03 +02:00
Rakesh
948dc6b1d9 bug fix in channel estimation 2020-09-09 15:53:13 +02:00
Rakesh
0b7573484c overiting centre frequency for FR2 testing 2020-09-09 15:49:40 +02:00
Rakesh
39f84c3a62 FR2 testing 2020-09-09 15:46:25 +02:00
hardy
4ec420271f fixed how to retrieve the cots ue file location 2020-09-09 15:14:18 +02:00
zhenghuangkun
85fe26bd80 Modify NGAP Messages 2020-09-09 18:55:14 +09:00
matzakos
05f49e5b1e Preliminary work to remove hardcodings of nr frequency bands for the NSA setup
- Create itti message to tranfer to RRC the information received at eNB through X2 ENDC Setup Request message
2020-09-09 11:52:07 +02:00
Parminder Singh
2281436b66 Fix - Issue with uninitialized structure in ULSIM
- Changed malloc to calloc to set all values to zero to remove the
  valgrind issue with uninitialized structure values in RC.gNB structure
2020-09-09 11:11:24 +02:00
hardy
1c77b36ae9 reverted eNB auto terminate fix (not working) 2020-09-09 10:26:58 +02:00
Rakesh
42fe39ece5 moving gpio control to the rx 2020-09-08 22:43:42 +02:00
Thomas Schlichter
9e52db7538 Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_coding.c
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
	openair1/SIMULATION/NR_PHY/dlsim.c
	openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
2020-09-08 17:42:52 +02:00
Francesco Mani
692215752b adapting GES commit 532fdbb4 to compute CSI meas report bilen (only for SSB) 2020-09-08 17:33:35 +02:00
Remi Hardy
ef04e7e90d replaced if if ... by if elif ... in GetPAramtersFromXML function 2020-09-08 17:24:18 +02:00
Mario Hudon
c48e96e93a -UE RACH updates
- Added support for FR1 in RO selection
  -RACH preamble selected according to the chosen RO
2020-09-08 11:18:42 -04:00
Remi Hardy
de6a4b81ae fixed eNB auto termination ; cleaned cots_ue_airplane action (no longer needed) 2020-09-08 16:58:06 +02:00
Sakthivel Velumani
e686da4e48 fixed tbslbrm 2020-09-08 16:08:30 +02:00
cig
6ac5a6e74a N_RB configuration for DCI extraction according to 7.3.1.0 of TS 38.212
- replacing ambiguous configuration of N_RB for extraction of DCI 1_0
2020-09-08 14:09:05 +02:00
cig
7c3377d515 Minor fixes to RA procedures
- added some text descriptions
- replaced active BWP with initial BWP in Msg3 scheduling (8.3 TS 38.213)
- fixed logging
- disabled Msg3 repetitions after first transmission (disabled RA @ MAC)
2020-09-08 14:09:05 +02:00
cig
81398971ff Set tb_size in bytes and A in bits @ UE
- now is consistent for both UE and gNB
2020-09-08 14:09:05 +02:00
cig
9ac6dfee09 Minor fixes UE
- added some descriptions to the code
- fixed hardcoded factors
- removed commented out and unused code
- phy_procedures_nrUE_RX: removed unused do_pdcch_flag
- updated LTE naming to 5G
2020-09-08 14:09:05 +02:00
cig
7ab4abacb1 Retrieve N_PRB Overhead from PUSCH-ServingCellConfig 2020-09-08 14:09:05 +02:00
cig
e72ef27e66 Moved nr_compute_tbs_common file to common MAC folder
- updated cmakelists file
- fixed formatting, tabs and white spaces in the function
2020-09-08 14:09:05 +02:00
cig
66b117dcd5 NR UE PUSCH procedures fixes
- moved remaining PUSCH PDU configuration from ULSCH
  procedures entirely to MAC
- introduced a function for DMRS RE configuration
- cleaned up redundant code in ULSCH procedures
- fixed TBS computation for Msg3
2020-09-08 14:08:56 +02:00
Remi Hardy
2541e8cf27 adding a more challenging ping in the FR1 testcase 2020-09-08 13:22:31 +02:00
Remi Hardy
a3a05075f3 adding a more challenging ping in the FR1 testcase 2020-09-08 13:20:52 +02:00
Thomas Schlichter
73f5851690 Merge remote-tracking branch 'develop'
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
	openair1/PHY/NR_TRANSPORT/pucch_rx.c
	openair1/SIMULATION/NR_PHY/ulsim.c
2020-09-08 12:01:37 +02:00
Sakthivel Velumani
9751fa052b bugfix in tx rate matching 2020-09-08 10:52:15 +02:00
Raphael Defosseux
bdc1fa4edf Merge branch 'develop_integration_2020_w36' into 'develop'
Develop integration 2020 week 36

The following Merge Requests have been included:

* MR [877] : update conf2uedata
* MR [879] : Nr ul scheduling
* MR [880] : Cleanup usage of txdata array in NR UE threads
* MR [882] : Fixes for handling NR UE DCI decoding errors
* MR [884] : benetel: driver for Benetel's 4G and 5G RRUs
* MR [886] : NR UE fix get_Qm_dl and nr_get_code_rate_dl
* MR [887] : Usrp fix adc shift and pps sync
2020-09-08 10:38:29 +02:00
Remi Hardy
c4428f67ae Merge branch 'rh_ci_fr1' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_fr1 2020-09-08 10:13:49 +02:00
Remi Hardy
20ee6ca67c fixing logging and html rendering 2020-09-08 10:10:27 +02:00
Sakthivel Velumani
be522f5c44 changed ul resources to full bwp 2020-09-07 16:31:38 +02:00
Raymond Knopp
d38af248db fixing a stupid mistake introduced in da3dd6b8 2020-09-07 16:21:13 +02:00
Sakthivel Velumani
915854447b fixed merge 2020-09-07 16:10:15 +02:00
Sakthivel Velumani
9b9295f5b2 Merge branch 'NR_UL_scheduling' into ulsch_decode_mthread 2020-09-07 15:13:08 +02:00
Francesco Mani
f80bcef3dc back to 16 PRBs and 1 nrofreportedRS 2020-09-07 13:56:16 +02:00
Remi Hardy
a19ce58978 Update TESTBenches.md 2020-09-07 11:49:38 +02:00
Remi Hardy
cd73b71037 Update TESTBenches.md 2020-09-07 11:47:30 +02:00
Remi Hardy
a511d9043a Update TESTBenches.md 2020-09-07 11:47:06 +02:00
hardy
bc8543c55c updating testbenches doc resources 2020-09-07 11:47:10 +02:00
Raphael Defosseux
e5bbc0f1e4 BUILD: fix compilation warning and circular dependency protection on header files
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-07 10:54:49 +02:00
Raphael Defosseux
0b4716d739 Merge remote-tracking branch 'origin/NR_UL_scheduling' into develop_integration_2020_w36 2020-09-07 10:33:24 +02:00
Raymond Knopp
5e10e26668 PUCCH2 3-11 bits with > 2 PRB. Will work for even number of PRBs up to 16 2020-09-07 09:13:32 +02:00
zhenghuangkun
170a8f1702 Add NGAP Config 2020-09-07 12:53:24 +09:00
Raymond Knopp
1a8e531436 PUCCH2 3-11 bits with > 2 PRB. Will work for even number of PRBs up to 16 2020-09-05 15:12:31 +02:00
Sakthivel Velumani
21f5956f72 fixed dlsch_errors stats 2020-09-04 17:36:34 +02:00
Raphael Defosseux
88b3d0af5e CI: adding new rx gain for NR-UE
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-04 16:20:38 +02:00
Thomas Schlichter
6868a3db0d Fix merge conflict in openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
I had to remove the Msg2 transmission in phytest mode, which was present in branch 'benetel_integration'.
This caused following assertion:

Assertion (Foffset <= Ncb) failed!
In nr_rate_matching_ldpc() /home/sli/sudas-demonstrator/openair1/PHY/CODING/nr_rate_matching.c:411
Foffset 6492 > Ncb 924
2020-09-04 16:14:28 +02:00
Remi Hardy
7c92b90444 Update TESTING_GNB_W_COTS_UE.md 2020-09-04 15:28:42 +02:00
cig
e837c3b1b5 Msg3 PDU configuration cleanup
- fetching resource allocation from higher layer
- sorting out config for the remaining parameters
2020-09-04 14:45:15 +02:00
cig
88e6fb9d36 Fixed warnings 2020-09-04 14:45:15 +02:00
cig
e81b195917 Replaced malloc with local variable for ptrs_ports_list 2020-09-04 14:45:15 +02:00
cig
1f684f79c1 Introduced a function to fill the scheduled_response
- redundant code for the configuration of the scheduled_response was removed
- scheduled response is not needed to be stored in the NR_UE_MAC_INST struct as it passed to the function right away
2020-09-04 14:45:15 +02:00
cig
8694e5ee80 Removed tx_request from the NR_UE_MAC_INST struct
- tx_request is filled in the nr_scheduled_response upon the presence tx data
2020-09-04 14:45:15 +02:00
cig
ab4f9de25c Code cleanup UE 2020-09-04 14:45:15 +02:00
cig
539bc784b4 Changes to number of PDUs logic @ UE
- calling nr_ue_scheduled_response after pdu preparation
- increasing the number_pdus before response scheduling
- resetting after dl/ul config pdu handling
2020-09-04 14:44:22 +02:00
cig
28eb835533 Enter ULSCH procedures for Msg3 transmission 2020-09-04 14:44:22 +02:00
cig
83979a8758 Code cleanup, logging, formatting
- removed superfluos code
- formatting
- fixed logging
- removed redundant nr_get_dci_size (replaced by nr_dci_size)
- removed unused and long-time commented out functions @ UE side
2020-09-04 14:44:22 +02:00
cig
0fafb2ba64 Set DMRS offset to 0 when transform precoding is enabled 2020-09-04 14:44:22 +02:00
cig
4715308bd2 Msg3 implementation
- extraction of resource allocation from Msg2
- configuration of Msg3 PDU
- Msg3 scheduling
- MAC/PHY interface adaptations
2020-09-04 14:44:22 +02:00
Thomas Schlichter
ac5f5d7899 add missing init_symbol_rotation() to nr-uesoftmodem.c 2020-09-04 14:15:58 +02:00
Thomas Schlichter
966cc20766 fix compile warning in rfsimulator 2020-09-04 14:05:26 +02:00
Thomas Schlichter
6f1d37d1d7 enable OFDM symbol rotation in PUSCH transmission 2020-09-04 14:03:58 +02:00
Remi Hardy
63394891ee Update TESTING_GNB_W_COTS_UE.md 2020-09-04 13:43:29 +02:00
Raphael Defosseux
9675f34854 CPPCHECK: few fixes
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-04 12:37:15 +02:00
Raphael Defosseux
f7ad3f1e4d Merge remote-tracking branch 'origin/NR_UL_scheduling' into develop_integration_2020_w36 2020-09-04 12:07:46 +02:00
Raphael Defosseux
8b77c68f28 fix nr_dlsim build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-04 11:59:24 +02:00
Sakthivel Velumani
7820a57bf8 fixed ul harq assertion 2020-09-04 11:59:23 +02:00
Francesco Mani
5c19d13cae SSB resource set, 2 PRBs and 11 bits 2020-09-04 11:54:30 +02:00
Raphael Defosseux
4c779ba466 Merge remote-tracking branch 'origin/NR_UL_scheduling' into develop_integration_2020_w36 2020-09-04 11:48:45 +02:00
Raphael Defosseux
e3301fa62d Merge remote-tracking branch 'origin/usrp_fix_adc_shift_and_pps_sync' into develop_integration_2020_w36 2020-09-04 11:45:52 +02:00
Florian Kaltenberger
111cf1e3d9 changing rx gain to max in all n310 config files 2020-09-04 11:31:20 +02:00
Thomas Schlichter
db77516652 fix some compile warnings for nr_dlsim and nr_ulsim 2020-09-04 11:16:21 +02:00
zhenghuangkun
fe4b3c0a21 Create ngap files 2020-09-04 18:00:03 +09:00
Thomas Schlichter
3faeff23c1 fixing compile errors and some warnings 2020-09-04 09:47:17 +02:00
Remi Hardy
e3264917ce small fixes 2020-09-04 09:28:29 +02:00
Raymond Knopp
7394e4dc9c changes to DLSCH/ULSCH statistics in PHY 2020-09-03 22:20:44 +02:00
Raymond Knopp
42f96710f2 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling
Conflicts:
	openair2/NR_PHY_INTERFACE/NR_IF_Module.c
2020-09-03 20:59:58 +02:00
Raymond Knopp
66b4c74f36 added MAC statistics (Transport and logical channel interfaces) 2020-09-03 18:58:30 +02:00
Raphael Defosseux
0e96ad6a57 CI: updating also ci conf file
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-03 16:51:54 +02:00
Raphael Defosseux
59ab6f3628 Merge remote-tracking branch 'origin/usrp_fix_adc_shift_and_pps_sync' into develop_integration_2020_w36 2020-09-03 16:50:21 +02:00
Raphael Defosseux
746fb82839 Merge remote-tracking branch 'origin/NR_UE_get_Qm_dl_fix' into develop_integration_2020_w36 2020-09-03 16:49:58 +02:00
Raphael Defosseux
2dcf50a5bc Merge remote-tracking branch 'origin/benetel_integration' into develop_integration_2020_w36 2020-09-03 16:47:39 +02:00
Raphael Defosseux
869f0e989c Merge remote-tracking branch 'origin/NR_UE_DCI_decode_fix' into develop_integration_2020_w36 2020-09-03 16:45:56 +02:00
Raphael Defosseux
a05f7e1448 Merge remote-tracking branch 'origin/nr_ue_txdata_cleanup' into develop_integration_2020_w36 2020-09-03 16:41:25 +02:00
Raphael Defosseux
ec1a7cadff Merge remote-tracking branch 'origin/NR_UL_scheduling' into develop_integration_2020_w36 2020-09-03 16:35:03 +02:00
Raphael Defosseux
3970424b29 Merge remote-tracking branch 'origin/docs/fix-small-error' into develop_integration_2020_w36 2020-09-03 16:34:42 +02:00
Florian Kaltenberger
a44a32af28 Merge remote-tracking branch 'origin/develop' into benetel_integration 2020-09-03 15:28:52 +02:00
Florian Kaltenberger
8ba3ba91ef updating conf file for CI 2020-09-03 15:27:56 +02:00
Florian Kaltenberger
2c7968cc04 changing rx gain to max in all n310 config files 2020-09-03 13:59:53 +02:00
Florian Kaltenberger
5d5aea13b9 adding config file for n310 2020-09-03 13:50:07 +02:00
Florian Kaltenberger
627da47786 fixing adc inpput shift and gain table for N310. adding pps sync. 2020-09-03 13:49:41 +02:00
Sakthivel Velumani
1ffa59c9f2 moved dl & ul harq handlers to MAC 2020-09-03 13:33:43 +02:00
Remi Hardy
cb650a1a6e v0.2 integrating the new cots control procedure into the existing framework 2020-09-03 11:54:18 +02:00
Sakthivel Velumani
9026652468 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-09-03 11:03:03 +02:00
Sakthivel Velumani
0c1c2edd65 small fix 2020-09-03 11:02:41 +02:00
masyuki.harada
0a375bc044 Create asn1 file 2020-09-03 17:17:47 +09:00
Thomas Schlichter
15a376fab2 Harden nr_get_Qm() and nr_get_code_rate_dl() functions
Check the provided MCS index according to the specified table.
Some tables go up to MCS index 27, others up to MCS index 28.
If the MCS index exceeds the allowed limit, assume max. MCS.
2020-09-03 09:10:51 +02:00
yaojie
760acd0856 Create directory structure 2020-09-03 15:27:32 +09:00
Raymond Knopp
37dcdeb338 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-09-02 22:11:44 +02:00
Raymond Knopp
142249d84b added ulsch statistics 2020-09-02 22:11:04 +02:00
Remi Hardy
430496d59f v0.1 (temporary) running fr1 2020-09-02 17:52:18 +02:00
Francesco Mani
1025fd850c trying to fix some cppcheck errors 2020-09-02 16:44:40 +02:00
Raphael Defosseux
5a9ed93032 CPPCHECK: does not understand the different lengths of arrays
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-02 16:38:06 +02:00
Raphael Defosseux
1c457bf1fa BUILD: missing dependency on T_TRACER for L2_LTE_NR sub-lib
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-02 16:13:22 +02:00
Raymond Knopp
73c7bee040 added basic analytics for PDSCH measurements 2020-09-02 16:12:16 +02:00
Francesco Mani
4d2a8cc8d0 completed scheduling of csi meas report reception (to be tested) 2020-09-02 14:55:37 +02:00
Parminder Singh
b6792b3487 Fixed Warning issue due to wrong data type in ULSIM 2020-09-02 10:59:28 +02:00
Parminder Singh
88a14fc4cc Set the previous PTRS estimates to 0 for each slot
- The memory shall be reset for each slot to avoid interpolation error.
2020-09-02 10:10:10 +02:00
Parminder Singh
6ce38ac960 Fix Phase noise addition in ULSIM
- moved the noise function gNB variable
2020-09-02 09:53:45 +02:00
Parminder Singh
f7ed592ef5 Fixed available_bits calculation for PTRS in -n option in ulsim 2020-09-02 09:51:04 +02:00
Remi Hardy
237fdf5bd0 xml files update 2020-09-01 18:50:54 +02:00
Thomas Schlichter
0cff460e0e Fix alignment of mod_ptrs array in nr_ulsch_ue.c 2020-09-01 17:45:04 +02:00
Thomas Schlichter
600dd0e913 Add nr_ulsim testcases for UL DMRS and PTRS configurations 2020-09-01 17:39:21 +02:00
Remi Hardy
574c5944de file cleaning 2020-09-01 16:53:40 +02:00
Remi Hardy
78c7fb9f9b bug fixing + completing fr1 automation 2020-09-01 16:52:41 +02:00
Remi Hardy
d50e523d0e reworking check of xml_class_list location 2020-09-01 13:29:36 +02:00
Parminder Singh
92fc259592 Merge remote-tracking branch 'origin/develop' into fhg_shp_phase_noise_est 2020-09-01 12:55:50 +02:00
Parminder Singh
8cf32ed2ad Modify DMRS configuration with command line in ULSIM
- To modify DMRS use -U flag followed by 3 integers
- Example: ./nr_ulsim -U 2 1 0
- 1st Value is the list of arguments     -> e.g. 2
- 2nd Value is for TYPE{0=A,1=B}         -> e.g. 1
- 3rd Value is for ADD_POS{0,1,2,3}      -> e.g. 0
2020-09-01 12:22:12 +02:00
Sakthivel Velumani
0a3941fd17 dl harq handle update 2020-09-01 12:07:06 +02:00
Sakthivel Velumani
9e7ae9ce5f ul harq numbering fix 2020-09-01 11:35:08 +02:00
Remi Hardy
c3e2df6639 adding new xml files for fr1 setup 2020-09-01 10:24:40 +02:00
Francesco Mani
47a3ee095b first version of function to prepare scheduling of csi meas reporting 2020-09-01 10:12:41 +02:00
Sakthivel Velumani
892dffec3b dlsim perf print fix 2020-09-01 10:07:18 +02:00
kn.raju
86dee25800 Reverted multi RACH process 2020-08-31 22:31:14 +05:30
Parminder Singh
14096886e8 Enable PTRS with command line in ULSIM
- To enable PTRS use -T flag followed by 3 integers
- Example: ./nr_ulsim -T 2 0 2
- 1st Value is the list of arguments -> e.g. 2
- 2nd Value is for L_PTRS{0,1,2}     -> e.g. 0
- 3rd Value is for K_PTRS{2,4}       -> e.g. 2
2020-08-31 17:51:56 +02:00
hardy
c86fac47b9 fixing typo to make it work 2020-08-31 15:36:24 +02:00
hardy
88f9d88a44 Merge branch 'rh_ci_fr1' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_fr1 2020-08-31 15:26:46 +02:00
hardy
b67d4bd183 fixing typo in searching path ci-scripts 2020-08-31 15:24:45 +02:00
Raymond Knopp
d443d9e915 added multi-antenna support for gNB RX (tested in ulsim) 2020-08-31 13:43:16 +02:00
Remi Hardy
9f772f36fd checking issues 2020-08-31 11:44:09 +02:00
Francesco Mani
d34bef816f first commit to schedule reception of csi measrep 2020-08-31 11:20:53 +02:00
Raymond Knopp
dbdae54c6d removed AssertFatal in nr_ue_mac_procedures.c for nr_dlsim HARQ tests. For some unknown reason there are occasion 0 SDUs sent up to MAC which causes failure. 2020-08-29 21:51:10 +02:00
Laurent
693364ddc5 merge develop 2020-08-29 09:37:15 +02:00
Laurent
a3367e58ea Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into main5G 2020-08-29 09:35:47 +02:00
Shweta Shrivastava
f8b130a8ee Fix for build warnings 2020-08-28 16:15:13 -05:00
Raymond Knopp
cbeccf9868 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-28 17:35:18 +02:00
Raymond Knopp
99774b2afb bugfix in nr_dlsch_decoding.c 2020-08-28 17:34:47 +02:00
Francesco Mani
6a801ab562 Merge branch 'NR_UL_scheduling' into NR_CSI_reporting 2020-08-28 16:19:19 +02:00
Francesco Mani
4e8fa97d7d getting rid of frame_rx and slot_rx in gnb scheduler 2020-08-28 15:42:14 +02:00
Thomas Schlichter
8f09cc6c75 fix UE UL DMRS generation if start_rb != 0 in nr_ue_ulsch_procedures()
also do some code cleanup while at it...
2020-08-28 14:27:20 +02:00
Parminder Singh
ec0aea2374 Removed separate LLR calculation for PTRS
- New Data Structure to store PTRS RE's is removed
- LLR's are calculated at the end symbol for whole slot
2020-08-28 12:14:13 +02:00
Thomas Schlichter
a14dd04e1b Fix memory allocation of gNB channel estimation arrays 2020-08-28 10:03:38 +02:00
Sakthi
1fc73ba77f fixing nr-softmodem 2020-08-27 21:50:35 +02:00
Mario Hudon
597ddf7574 Merged in some FR2 fixes from Rakesh 2020-08-27 15:23:59 -04:00
Sakthivel Velumani
57dec19ac8 fixed thread init; ulsim runs fine 2020-08-27 18:23:29 +02:00
Francesco Mani
96f78feec7 moving init_symbol_rotation in uesoftmodem 2020-08-27 14:52:58 +02:00
Sakthivel Velumani
478c7352b3 fixes 2020-08-27 13:06:48 +02:00
Sakthivel Velumani
3e3af2c11b bugfixes 2020-08-27 12:42:25 +02:00
Parminder Singh
b288eafd1e Common Phase error estimation and compensation in uplink.
FEATURE STATEMENT:
- Introduce linear phase error noise model in Uplink at UE
- Perform common phase error (CPE) estimation and compensation at gNB

SOLUTION:
- A linear phase shift model is introduced in simulation.
- PTRS symbols are used to perform estimation of CPE from DMRS compensated signal
- The estimated values are interpolated in time domain and signal is compensated for the CPE.
- PTRS processing is done in Frequency Domain for each symbol in a slot and
  LLR's are calculated for each symbol accordingly.

IMPLEMENTATION:
* sim.h/channle_sim.c
- Linear Phase Noise Generation model definition.
* nr_ul_channel_estimation.c/nr_ul_estimation.h
- CPE estimation from PTRS and DMRS compensated signal.
* nr_dmrs_rx.c/nr_refsig.h
- Regenerate PTRS symbols at gNB.
* nr_ulsch_demodulation.c
- Removed old PTRS processing code and move to a common PTRS processing function
* defs_gNB.h/init.c
- New PTRS variables definition and initialization
* nr_ulsch_ue.c
- Corrected PTRS parameter to get new PTRS symbols for each OFDM symbol

TESTING
* ulsim.c
- Added Phase noise, Enable PTRS signal and verified the output.

VERIFICATION
- The LLR are rotated back with estimated CPE and no error is observed in scrambling/decoding
2020-08-27 11:55:06 +02:00
Francesco Mani
4cc5bf586e fix for pucchsim with sr 2020-08-27 10:35:05 +02:00
Raymond Knopp
260a9e58a0 nr_pbchsim modifications for carrier phase rotation procedure 2020-08-27 05:49:46 +02:00
Sakthi
9dc149e0f0 added postDecode; ulsim compiles 2020-08-27 00:42:21 +02:00
Shweta Shrivastava
3a999254c9 Fixes for handling NR UE DCI decoding errors 2020-08-26 15:01:00 -05:00
Mario Hudon
384fc315c8 Fixed initialization of SSB to RO mapping tables 2020-08-26 13:24:04 -04:00
Mario Hudon
638d8f8d0d Fix endianness handling of the ssb_PositionsInBurst 2020-08-26 13:14:50 -04:00
Sakthivel Velumani
e6804be968 created worker threads 2020-08-26 18:01:38 +02:00
Raphael Defosseux
e31349256f hotfix for eNB-OCP build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-26 17:24:45 +02:00
Cedric Roux
d7bdf4937a nr: use RLC AM instead of RLC UM 2020-08-26 17:15:43 +02:00
Cedric Roux
01da43a00d nr rlc: remove hardcoded values 2020-08-26 16:54:03 +02:00
Thomas Schlichter
070ee365e3 Fixup dlsch harq if() conditions in nr_dlsch_demodulation.c 2020-08-26 16:46:48 +02:00
Thomas Schlichter
a8fc7ebd38 Merge remote-tracking branch 'develop' into nr_ue_txdata_cleanup 2020-08-26 16:45:48 +02:00
Francesco Mani
28b280a657 Merge remote-tracking branch 'origin/develop' into NR_UL_scheduling 2020-08-26 13:49:30 +02:00
Raphael Defosseux
ab025ab026 Merge branch 'develop_integration_2020_w34' into 'develop'
Develop integration 2020 week 34

The following merge requests have been included:

* MR [859] : Fixed the bug not sending MSG3
* MR [860] : FeMBMS eNB / UE End-to-End chain
* MR [866] : Improved modulation speed
* MR [872] : Improvement on CUDA GPU ldpc latency
2020-08-26 12:00:24 +02:00
Remi Hardy
eb78f3b9ea Merge branch 'rh_ci_fr1' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_fr1 2020-08-26 11:27:19 +02:00
Francesco Mani
a3466a4966 calling pucch format 2 decoding in gnb rx procedures 2020-08-26 09:35:38 +02:00
Francesco Mani
6042df1ab5 to make lte-uesoftmodem compile 2020-08-26 07:06:28 +02:00
Francesco Mani
d219341905 to make simulators compile 2020-08-25 19:02:13 +02:00
Raymond Knopp
12a75c60e2 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-25 15:03:06 +02:00
Raymond Knopp
632803289c fixed initialization of rotation for symbol 0 2020-08-25 15:02:41 +02:00
Francesco Mani
1b06523c86 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-25 14:44:24 +02:00
Francesco Mani
0130518529 rssi dBFS based on 16 bits 2020-08-25 14:44:08 +02:00
hardy
e2b19083e5 fixing the xml action list yaml file location search 2020-08-25 10:55:43 +02:00
Raymond Knopp
b58ea80990 debug trace 2020-08-25 10:47:48 +02:00
Raymond Knopp
0bb99458c3 bugfix for TX slot processing 2020-08-25 10:06:02 +02:00
Raymond Knopp
2124343889 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-25 01:50:43 +02:00
Raymond Knopp
cc0ff7422e implementation of missing symbol-based rotation for NR modulation/demodulation (Section 5.3 38.211). Tested with unitary simulators (ulsim/dlsim).
To be tested with gNB testbench and rfsimlator
2020-08-25 01:48:55 +02:00
Thomas Schlichter
cec42dc330 Some more UE timing fixes
- Check for timing_advance update _after_ RX (and TX) processing
- Update writeBlockSize when timing_advance value changes (for USRP)
- ignore timestamp when pre-reading the first OFDM symbol of a frame (for rfsimulator)
- do not busy wait for a finished RX-TX thread, use blocking wait instead
2020-08-24 20:01:56 +02:00
Francesco Mani
664ac4facc bugfix on last commit 2020-08-24 17:59:30 +02:00
Francesco Mani
c127a5a2f8 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-24 16:10:16 +02:00
Francesco Mani
c1b775394f tpc update for pusch only if there is signal 2020-08-24 16:10:13 +02:00
matzakos
0e02dcf620 Modify LCID value for RLC DRB preconfiguration in noS1 mode 2020-08-24 15:01:18 +02:00
Raphael Defosseux
f0fb73f673 CI: less verbose when running MBMS on UE side
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-24 14:19:51 +02:00
Raphael Defosseux
9b58b2c872 CI: uniqueness in references
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-24 14:19:14 +02:00
Raymond Knopp
50dda0e4fe Remove redundant log 2020-08-24 13:02:19 +02:00
Raymond Knopp
e471d8b898 Merge remote-tracking branch 'origin/NR_RRC_PDCP' into NR_UL_scheduling 2020-08-24 11:19:42 +02:00
Julio Renner
e3e84ca282 update conf2uedata 2020-08-24 02:21:03 +02:00
Thomas Schlichter
4049eb4f53 clean TX buffer on UE side after transmitting it via USRP 2020-08-22 11:08:47 +02:00
Thomas Schlichter
f51611b108 remove unused variable "pdsch_vars_flp" and type "LTE_UE_PDSCH_FLP" 2020-08-22 10:21:39 +02:00
Thomas Schlichter
32b9f74067 remove "pdsch_vars_flp", "pdsch_vars_SI", "pdsch_vars_ra", "pdsch_vars_p" and "pdsch_vars_MCH", use per thread "pdsch_vars" instead 2020-08-22 10:21:39 +02:00
Thomas Schlichter
f8cb47d447 fix uePcchLLR() in nr_phy_scope.c to plot the PDCCH LLRs 2020-08-22 10:21:39 +02:00
Thomas Schlichter
b0903e2079 change timing advance to only affect the TX timestamp, not the position in the "txdata" buffer 2020-08-22 10:21:36 +02:00
Thomas Schlichter
1ca238dc19 remove unused function ulsch_common_procedures() from phy_procedures_nr_ue.c 2020-08-22 10:19:15 +02:00
Thomas Schlichter
1f57bd9bd2 Transmit data to USRP after finishing the producing thread 2020-08-22 10:18:30 +02:00
Francesco Mani
2f65453508 improved threshold for pucch0 detection 2020-08-21 18:28:44 +02:00
hardy
b5e17fb2d1 preparation for oc enb 2020-08-21 17:38:48 +02:00
Raphael Defosseux
f36a1b42cb Merge remote-tracking branch 'origin/NCTU_OpinConnect_LDPC' into develop_integration_2020_w34 2020-08-21 16:13:47 +02:00
Raphael Defosseux
a8ea336cfd Merge remote-tracking branch 'origin/improve_nr_modulation' into develop_integration_2020_w34 2020-08-21 16:13:27 +02:00
Raphael Defosseux
34a2945abf Merge remote-tracking branch 'origin/fembms-enb-ue' into develop_integration_2020_w34 2020-08-21 16:13:08 +02:00
hardy
8b3eb61f1c fixing typos + more in-code comments 2020-08-21 16:04:32 +02:00
Laurent
038a80b2ff fixes after merge 2020-08-21 15:50:27 +02:00
Rakesh
98aefe94fb Merge remote-tracking branch 'origin/NR_UL_scheduling' into NR_RRCConfiguration_FR2 2020-08-21 15:12:45 +02:00
Francesco Mani
09344667c3 fix for unresolved conflict 2020-08-21 15:08:26 +02:00
Laurent
38f01abd77 merge develop, compile ok, no test 2020-08-21 14:26:06 +02:00
Rakesh
e1c6130187 Merge remote-tracking branch 'origin/NR_UL_scheduling' into NR_RRCConfiguration_FR2 2020-08-21 13:52:51 +02:00
Laurent
c05bc1a3e9 5G SA authentication: authentication request, partial authentication response 2020-08-21 13:48:26 +02:00
Cedric Roux
da3dd6b8b0 benetel: driver for Benetel's 4G and 5G RRUs
This commit contains work done by Eurecom and by Benetel.
2020-08-21 10:24:35 +02:00
Sakthivel Velumani
579f9f969b included check for mod_order 2020-08-20 16:59:02 +02:00
kn.raju
eeb20f23a2 Resolved temp-rnti issue 2020-08-20 18:59:14 +05:30
hardy
2724f9c198 updated control sequence of cots ue for CI bench 2020-08-20 15:26:23 +02:00
Francesco Mani
0be0b4e0e3 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-20 12:38:14 +02:00
Francesco Mani
fd003dd786 Merge remote-tracking branch 'origin/develop' into NR_UL_scheduling 2020-08-20 12:37:21 +02:00
Raymond Knopp
2dffbb75e7 fixing a bug in the prach sequency initialization 2020-08-20 12:28:11 +02:00
Francesco Mani
35c298d708 remove unnecessary declarations 2020-08-20 11:26:10 +02:00
Florian Kaltenberger
54f7019e19 Merge branch 'develop' into 'dongzhanyi-zte-develop'
# Conflicts:
#   openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
2020-08-20 10:24:24 +02:00
Raphael Defosseux
7f28f8d10d Merge branch 'develop_integration_2020_w33' into 'develop'
Develop integration: 2020 week 33

The following Merge Requests are included:

* MR [849] : Implement Message2 (RAR) reception for NR-UE
* MR [870] : Fix softmodem restart
* MR [871] : Fix support for MIMO in rf-simulator
* MR [873] : BUILD: fix for new API on load_softscope
2020-08-20 07:47:55 +02:00
Laurent
0ee578f4bd add authentication request 2020-08-19 19:30:53 +02:00
Francesco Mani
9245f22d43 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-19 17:23:49 +02:00
hardy
cc1e2c59cf adding resources and page for testbenches doc 2020-08-19 17:05:30 +02:00
matzakos
e5d317a4d2 Change DURATION_RX_TO_TX to 6 slots instead of 4 at nrUE
- Ensure that tx slot processing is done by the time trx_write_func() gets called
2020-08-19 16:56:04 +02:00
Sakthivel Velumani
8a10323d2a more mem alignment for dmrs 2020-08-19 15:52:16 +02:00
Sakthivel Velumani
44ac0ec190 fixing a log message 2020-08-19 15:39:21 +02:00
Sakthivel Velumani
403956d6c2 avoiding race condition for PDSCH tx 2020-08-19 14:52:16 +02:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
d4603636d3 fix compile problem in non-CUDA environment 2020-08-19 20:37:29 +08:00
hardy
28e37684f4 adding runtime stats to console and HTML when Terminate_UE 2020-08-19 14:27:15 +02:00
Francesco Mani
4d0d54a98d power target from config file functional 2020-08-19 14:25:03 +02:00
matzakos
53f0ab6405 Merge remote-tracking branch 'origin/develop' into dongzhanyi-zte-develop 2020-08-19 11:10:09 +02:00
Sakthivel Velumani
e4755f9c31 init mod tables fo ue 2020-08-19 10:27:59 +02:00
Raymond Knopp
f8c510e061 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-19 10:03:21 +02:00
Raymond Knopp
68fd55b21e added PDCCH lists to L1 processing to remove race condition between FAPI and L1 threads 2020-08-19 10:01:29 +02:00
hardy
eddf218d8d updating python to read ue commands dictionary 2020-08-18 22:18:31 +02:00
Francesco Mani
8999b51c1f bugifix 2020-08-18 17:36:52 +02:00
Sakthivel Velumani
f42291a4f7 Merge branch 'develop' into improve_nr_modulation 2020-08-18 17:20:46 +02:00
kn.raju
2be7cc59bf Addition of multi-user rach 2020-08-18 19:26:07 +05:30
Rakesh
76346c450d Tdd configuration and a small fix for get_band() for FR2 2020-08-18 15:50:38 +02:00
Francesco Mani
3952ad7729 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-18 15:47:52 +02:00
Francesco Mani
edf903f776 pucch power control and handling of missed reception using confidence level 2020-08-18 15:47:48 +02:00
Sakthivel Velumani
923070e6c1 mem alignment for dmrs symbs 2020-08-18 15:16:23 +02:00
Raymond Knopp
21b25fcefb Remove some heavy PRACH logs 2020-08-18 15:14:32 +02:00
Laurent
59964b0f84 Identity response encoding 2020-08-18 14:07:56 +02:00
Raymond Knopp
3e767faeeb fixed channel model initialization in rfsimulator for added parameter (to be added to bridge structure still) 2020-08-18 08:38:15 +02:00
Raymond Knopp
e68cfaf70e added AVX2 optimization for 64QAM LLR computation in NR ULSCH 2020-08-18 07:45:07 +02:00
Sakthivel Velumani
dc2d948bad memory bugfix and other minor fixes 2020-08-17 13:55:13 +02:00
Francesco Mani
ffae55f62c n0 measurement in pucchsim 2020-08-17 12:30:36 +02:00
Raymond Knopp
37c1219e79 AVX2 optimization of 16QAM NR ULSCH LLR 2020-08-16 23:07:04 +02:00
Raymond Knopp
fc21364fa0 optimization of ldpc deinterleaving and llr computation 2020-08-16 15:04:27 +02:00
Raymond Knopp
80cc29acd9 optimization of RE extraction for NR ULSCH. Addition of faster memcpy to utils 2020-08-16 12:10:42 +02:00
Raymond Knopp
b16b2f7d99 optimization of NR ULSCH unscrambling 2020-08-15 09:42:05 +02:00
Sakthivel Velumani
92595bb2af further fixes 2020-08-14 18:03:04 +02:00
Sakthivel Velumani
12feffcc1c bugfix 2020-08-14 17:29:51 +02:00
Sakthivel Velumani
9c01cc66ea diabling avx2 for qpsk 2020-08-14 16:31:37 +02:00
Sakthivel Velumani
8aa88999fc fixes 2020-08-14 11:43:54 +02:00
Parminder Singh
f4631f2186 Bug-fix in Up-link with respect to PUSCH RE calculation when PTRS is enabled.
Problem STATEMENT:
- When enabling PTRS flag in ulsim, there are multiple scrambling and decoding errors
  are observed even with high SNR values
  SNR 60dB   errors_scrambling 5546/13800
  Channel BLER 1.000000e+00, Channel BER 4.018841e-01

ANALYSIS:
- While extracting PTRS RE's, the PUSCH RE count was not updated accordingly for PTRS symbols.
- This results in 0 value LLR's on same positions which cause offset issue in later processing.

IMPLEMENTATION:
* nr_ulsch_demodulation.c
- In case of PTRS symbol, respective total number of PTRS RE's are subtracted from available
  PUSCH RE's in each PUSCH Symbol processing.

TESTING
* ulsim.c
- PTRS are enabled for testing and are not enabled by default by this commit.
- Available bit count is adjusted if PTRS is enabled.

VERIFICATION
- Total Scrambling errors after gNb processing shall be only 250 bits (in K=2)
  which were replaced with PTRS at UE side while transmission.
  SNR 60.000000 errors_scrambling 250/13800
  Channel BLER 0.000000e+00, Channel BER 1.811594e-02
- After adjusting available bits in ulsim.c for error calculation
  SNR 60.000000: n_errors errors_scrambling 0/13550
  Channel BLER 0.000000e+00, Channel BER 0.000000e+00

EXTRA
- Removed white-spaces from all above mentioned files
- Added Global/vim tags to .gitignore file
2020-08-14 10:20:36 +02:00
Rakesh
e4088f7f7f bug fix in dft memory allignment and get_band() for FR2 2020-08-14 09:55:22 +02:00
Rakesh
2da9710958 Merge remote-tracking branch 'origin/develop' into NR_RRCConfiguration_FR2 2020-08-14 09:54:04 +02:00
Francesco Mani
9f72b81df6 tci and csi on ssb depending on ssb bitmap 2020-08-14 08:47:20 +02:00
Raymond Knopp
9b138dec72 LLR scaling adjustment (log2_maxh computation) for NR ULSCH receiver. 2020-08-14 08:12:18 +02:00
Raphael Defosseux
140c70373e Merge remote-tracking branch 'origin/hotfix-ocp-executable' into develop_integration_2020_w33 2020-08-13 22:08:07 +02:00
Raphael Defosseux
3c3c94efa5 Merge remote-tracking branch 'origin/fix_rfsim_mimo' into develop_integration_2020_w33 2020-08-13 22:07:37 +02:00
Raphael Defosseux
4c6c4954e2 Merge remote-tracking branch 'origin/fix-softmodem-restart' into develop_integration_2020_w33 2020-08-13 22:07:02 +02:00
Raphael Defosseux
4ff959fe34 Merge remote-tracking branch 'origin/nrue_msg2_reception' into develop_integration_2020_w33 2020-08-13 22:06:25 +02:00
Thomas Schlichter
819ee74123 move up assertions in config_ue.c to satisfy cppcheck 2020-08-13 17:42:13 +02:00
Rakesh
b07f3739c4 fix for ue tx freq and gnb if_frequency 2020-08-13 11:45:48 +02:00
kn.raju
c68c26e5b0 added debug in logs in rx_nr_prach 2020-08-13 14:35:58 +05:30
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
bc1c69fead fix compile issue 2020-08-13 16:32:09 +08:00
Raymond Knopp
49a14c4f9f fixes for TDL channel models in nr_ulsim 2020-08-13 09:43:50 +02:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
1fa6e0c6a1 Merge remote-tracking branch 'origin/develop' into NCTU_OpinConnect_LDPC 2020-08-13 14:22:55 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
10d52466a8 Fix CUDA diff with develop 2020-08-13 14:15:54 +08:00
Francesco Mani
fa105bd4d9 reworking rrc config for csi meas report on ssb 2020-08-12 17:33:43 +02:00
kn.raju
7af14dd7c1 Added Debug logs for RACH issue with ssb id other than 0 2020-08-12 20:18:50 +05:30
Raymond Knopp
ae4f3320c7 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-12 16:23:54 +02:00
Raymond Knopp
13d1be0782 added TDL channel models and use them in nr_ulsim 2020-08-12 16:23:14 +02:00
Raphael Defosseux
4e67434570 BUILD: fix for new API on load_softscope
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-12 14:55:59 +02:00
matzakos
e0e0ed0cf9 Merge remote-tracking branch 'origin/NR_UL_scheduling' into NR_RRC_PDCP 2020-08-12 14:27:05 +02:00
Sakthivel Velumani
42ba1047ac changed pusch debug trace 2020-08-12 14:03:44 +02:00
Francesco Mani
5607a10dbc fixing compilation errors 2020-08-12 13:30:57 +02:00
Francesco Mani
d151e9fd6c making csi function compile again 2020-08-12 12:25:16 +02:00
Francesco Mani
5390811cac including first carrier offset in csi mapping 2020-08-12 12:24:54 +02:00
Francesco Mani
5117f0110f bug fixes and adding debug 2020-08-12 12:24:32 +02:00
Francesco Mani
d986d8bf2c csi-rs resource mapping (to be debugged and tested) 2020-08-12 12:24:02 +02:00
Francesco Mani
f8f97a21f5 implementation of table 7.4.1.5.3-1 2020-08-12 12:14:54 +02:00
Francesco Mani
2a3306a181 adding csi rs file, function still empty 2020-08-12 12:14:01 +02:00
Francesco Mani
76f360c112 generation of csi-rs sequence 2020-08-12 12:09:40 +02:00
laurent
5729f15363 merge develop 2020-08-12 11:43:33 +02:00
Thomas Schlichter
18b9edff09 Merge remote-tracking branch 'develop' into fix_rfsim_mimo
Conflicts:
	targets/ARCH/rfsimulator/simulator.c
2020-08-12 09:44:39 +02:00
Raphael Defosseux
05f052cc04 Merge branch 'develop_integration_2020_w31' into 'develop'
See merge request oai/openairinterface5g!869

Develop Integration Branch : 2020 week 31

The following Merge Requests have been included:

* MR [861] : Fixes for buffer overrun when L1 information is cleared upon UE removal in
* MR [863] : Small fixes
* MR [864] : Fixed the bug no supporting CellId more than 256
* MR [865] : Fix to have the sony 5g connect in NSA mode
* MR [867] : CI improvements for OCP-enb testing and NSA FR1 testing
* MR [868] : Add chansimuparams
2020-08-11 17:45:58 +02:00
Francesco Mani
b2e54e091c fixing an issue in n0 measurements 2020-08-11 13:57:02 +02:00
Raphael Defosseux
f445bdd324 CI: fixed typo in the list of allowed methods
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-11 11:29:05 +02:00
Thomas Schlichter
9bcec8a628 hotfix UE configuration for DCI format 1_1
Set n_dmrs_cdm_groups = 1 for now.
Should be fixed accordingly to TS 38.214 section 5.1.6.2
using tables 7.3.1.2.2-1, 7.3.1.2.2-2, 7.3.1.2.2-3, 7.3.1.2.2-4 of TS 38.212
2020-08-10 20:11:05 +02:00
Thomas Schlichter
a75d6088ea fix dlschsim by correctly setting dmrsConfigType 2020-08-10 20:05:40 +02:00
Sakthi
76f7840961 bug fixes 2020-08-10 19:22:53 +02:00
Sakthi
5e7ce26c10 more additions 2020-08-10 19:14:14 +02:00
laurent
7d1d8744e6 continue 5G SA NAS messages 2020-08-10 17:46:10 +02:00
Raphael Defosseux
470ecad248 Merge remote-tracking branch 'origin/add_chansimuparams' into develop_integration_2020_w31 2020-08-10 16:56:23 +02:00
Raphael Defosseux
e83acab6ca Merge remote-tracking branch 'origin/rh_ci_next' into develop_integration_2020_w31 2020-08-10 16:54:26 +02:00
Raphael Defosseux
e1ba785a94 Merge remote-tracking branch 'origin/fix-for-sony-5g-phone' into develop_integration_2020_w31 2020-08-10 16:54:14 +02:00
Raphael Defosseux
81f8af65a2 Merge remote-tracking branch 'origin/dongzhanyi-zte-develop1' into develop_integration_2020_w31 2020-08-10 16:53:58 +02:00
Raphael Defosseux
03a2d3e1ff Merge remote-tracking branch 'origin/bug-rfsim-and-warnings' into develop_integration_2020_w31 2020-08-10 16:53:37 +02:00
Raphael Defosseux
1aa7d4b9d5 Merge remote-tracking branch 'origin/hotfix-ue-release' into develop_integration_2020_w31 2020-08-10 16:53:12 +02:00
Sakthivel Velumani
e2afb8662e new table generator 2020-08-10 15:21:59 +02:00
Sakthivel Velumani
82df0e51b9 updated tables and 64qam mod 2020-08-10 15:19:53 +02:00
kn.raju
81f7ef4dac Fixed initial prach_id frame&slot number 2020-08-07 21:02:42 +05:30
Francesco Mani
7989afbb78 bugfix in measurements 2020-08-07 17:05:58 +02:00
Cedric Roux
c95e5deb42 add back ssb_perRACH_Occasion, sony phone complains 2020-08-07 10:33:26 +02:00
kn.raju
8ad840cbf0 Fixed issue in finding prach_id 2020-08-07 13:01:37 +05:30
Francesco Mani
7d46e43334 using the right structures for n0 measurements 2020-08-07 09:19:37 +02:00
Francesco Mani
e7ca1619b8 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-08-06 18:03:37 +02:00
Francesco Mani
d8d2739c2b bugfixes 2020-08-06 17:46:16 +02:00
Sakthivel Velumani
566570899c Handle case where all harq are busy 2020-08-06 15:49:44 +02:00
Sakthivel Velumani
107167d100 Fixed a bug in PDCCH sched 2020-08-06 15:40:45 +02:00
matzakos
cbb321d7a2 Merge branch 'NR_RRC_PDCP' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PDCP 2020-08-06 14:42:01 +02:00
matzakos
5ab8e0079b Merge remote-tracking branch 'origin/NR_UL_scheduling' into NR_RRC_PDCP 2020-08-06 14:27:54 +02:00
Cedric Roux
cccb56e571 nr rlc: bug fixes, cleanup
- bad values in asn1_utils.c (copy/paste from 4g)
- remove hardcoded values (t_reassembly, sn_field_length)
- some cleanup
2020-08-06 11:46:39 +02:00
laurent
9a72b0c52e partial code for NR SIB1, existing bugs fix, merge develop 2020-08-06 11:44:48 +02:00
kn.raju
5d4acc2ea3 added debug logs for phy issue 2020-08-06 14:37:46 +05:30
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
96023eeb93 Fix CUDA latency 2020-08-06 16:13:18 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
61bdea7584 fix build_oai and CUDA latency 2020-08-06 15:40:57 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
b64b6e85c4 fix build_oai and CUDA latency 2020-08-06 15:39:15 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
0e5d4fe268 fix CUDA latency 2020-08-06 15:32:30 +08:00
Thomas Schlichter
9dadad8298 fix enabling of PTRS
to set a flag in a bitmap, use "bitmap |= flag", to clear a flag in a bitmap use "bitmap &= ~flag".
2020-08-06 09:10:20 +02:00
Thomas Schlichter
3514caddc2 minor warning fixes 2020-08-06 09:06:37 +02:00
Khodr Saaifan
16ab5979e2 Extend rfsim to enable muti transmit antennas for gNB+solve beamforming ssb_index 0 when nb_tx>1 2020-08-05 19:15:00 +02:00
matzakos
431ed8bd73 Add GTPU tunnel data request at PDCP to deliver Uplink traffic over S1-U 2020-08-05 18:42:47 +02:00
Raphael Defosseux
cf23c58681 CI: fix typo for RAN HTML reporting
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-05 18:04:16 +02:00
Thomas Schlichter
00d9af7a15 Merge remote-tracking branch 'eurecom/develop' into fhg-ra2
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_demodulation.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
2020-08-05 17:16:42 +02:00
Francesco Mani
ee2bd11e6e to remove some logs 2020-08-05 16:35:09 +02:00
matzakos
e6f20804b9 Remove dependency from noS1 mode to forward received UL traffic from MAC to RLC 2020-08-05 15:45:39 +02:00
Francesco Mani
ff7ac327cd first version of pusch power control 2020-08-05 12:30:25 +02:00
Francesco Mani
61a2842da8 Merge remote-tracking branch 'origin/ul_harq' into NR_UL_scheduling 2020-08-05 12:22:33 +02:00
Robert Schmidt
e761819e28 Fix in other functions 2020-08-05 10:10:50 +02:00
Robert Schmidt
a4a7de5ffe Make restart work again: do not free/copy ru frame_parms 2020-08-05 08:57:05 +02:00
matzakos
1326f6daf7 NR_RRC_PDCP: Bring back Downlink data scheduling in every opportunity
-Schedule IP traffic when it is available and random data when there is no IP traffic
2020-08-04 14:59:05 +02:00
kn.raju
dfdca4a251 fixed floating point exception error 2020-08-04 11:20:31 +05:30
Sakthivel Velumani
f8675c258d Fixed linking errors 2020-08-03 14:11:52 +02:00
Raphael Defosseux
a385ad5244 Putting back SIGINT detection for lte-softmodem and initial skeleton to retrieve runtime stats from eNB/gNB
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-03 14:03:20 +02:00
Raphael Defosseux
7daa4a2a10 CI: update on FR1 scenarios
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-03 14:02:12 +02:00
kn.raju
a5580844b8 added for assoc period more than 1 2020-08-03 17:11:16 +05:30
matzakos
d013302c42 Merge remote-tracking branch 'origin/NR_UL_scheduling' into NR_RRC_PDCP
Conflicts:
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
2020-08-03 12:36:19 +02:00
Sakthivel Velumani
18a3747e82 added the changed octave script 2020-08-03 11:46:33 +02:00
Sakthivel Velumani
fbd4df014c Further improvements
additional 50% speed improvement with SIMD vectors
2020-08-03 11:22:34 +02:00
Raphael Defosseux
613d603278 CI: few fixes and improvements
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-08-03 11:15:06 +02:00
laurent
571d094715 Merge branch 'rh_ci_next' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_next 2020-08-03 09:20:49 +02:00
laurent
381fa7234a remove need to set /data/opencells-ran/../oaiCloneFapi before calling cmake 2020-08-03 09:20:25 +02:00
kn.raju
e56a085ada Fixed msg2 error and added CFRA config 2020-08-02 15:57:29 +05:30
kn.raju
18695f070e added logs for debug 2020-07-31 20:17:55 +05:30
Raphael Defosseux
0e06277360 CI: enabling 3/4 sampling rate when running gNB on B210
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 16:14:34 +02:00
Remi Hardy
de64484fe5 Update TESTING_GNB_W_COTS_UE.md 2020-07-31 16:11:13 +02:00
laurent
2b5c6a1e40 Merge branch 'rh_ci_next' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_next 2020-07-31 16:04:47 +02:00
laurent
b829d3c9f7 add exit trace and fix a gcc warning 2020-07-31 16:04:24 +02:00
Remi Hardy
def42f92d8 Update TESTING_GNB_W_COTS_UE.md 2020-07-31 15:07:26 +02:00
Raphael Defosseux
a12266b94f DOC: point now to CI-used conf files
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 14:43:05 +02:00
Raphael Defosseux
3ec2a46fd3 CI: fix clock management in FR1 conf files
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 14:40:52 +02:00
kn.raju
201ab3eb11 Resolving ra-rnti miss-match 2020-07-31 17:19:45 +05:30
Sakthivel Velumani
414cc0ee83 fixed bug 2020-07-31 12:48:44 +02:00
Sakthivel Velumani
ea8ad2d6ca handle harq if pusch not detected 2020-07-31 12:35:57 +02:00
Raphael Defosseux
a6cd5b2d34 CI: no more usage of 'daemon' for launch soft-modem executables
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 11:54:29 +02:00
Raphael Defosseux
f00ddc7972 CI: add OCP pipeline trigger to master pipeline
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 10:20:38 +02:00
Raphael Defosseux
765ba2eba3 CI: last typo
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-31 09:51:01 +02:00
Francesco Mani
c810300e48 tpc = 1 for pusch 2020-07-30 17:54:44 +02:00
Francesco Mani
27cdb8116d debug message for pusch not received 2020-07-30 17:53:35 +02:00
Sakthivel Velumani
82be36533b Included special case for 64qam 2020-07-30 17:31:28 +02:00
Raphael Defosseux
e55f2aea0c CI: adding support for FR1 run of both eNB and gNB
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-30 16:21:51 +02:00
Anes Rose Rigiel Antony
ccc143d6f6 Merge branch 'NR_MAC_SSB_RO_GlobalEdge' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_MAC_SSB_RO_GlobalEdge 2020-07-30 18:13:28 +05:30
kn.raju
7c9bd5b321 Added debug logs 2020-07-30 17:40:17 +05:30
kn.raju
312ff2f85f fixed run time issue 2020-07-30 17:40:17 +05:30
kn.raju
6acb8d909a rrc configuration changes reverted 2020-07-30 17:40:17 +05:30
kn.raju
df5ce819c6 fixed run time error 2020-07-30 17:40:17 +05:30
kn.raju
46dcf9406a Debug logs added 2020-07-30 17:40:17 +05:30
kn.raju
991e5ad49a Scheduling and handling of SSB-RO 2020-07-30 17:40:17 +05:30
Raphael Defosseux
5e62d39c9d CI: fix the air_interface support on RAN and OAI-UE sides -- separate member now.
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-30 14:06:31 +02:00
Raphael Defosseux
2612f2639d CI: fix a few remaining getters
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-30 10:38:36 +02:00
frtabu
d4bd2cdc63 implement modifying channel model algo while running, complete function freeing a model 2020-07-29 20:27:04 +02:00
laurent
81eb393000 add preeliminary support for ubuntu 20 or debian 11, add file for 5G SA 2020-07-29 18:28:29 +02:00
laurent
e52948a0a5 merge develop 2020-07-29 18:21:25 +02:00
Sakthivel Velumani
db90088c5b Fixed bug in ul harq handler 2020-07-29 17:08:20 +02:00
Sakthivel Velumani
420aaf371e Added print messages for debugging 2020-07-29 17:01:04 +02:00
Francesco Mani
8bebabc151 initialization of hrq_id 2020-07-29 16:04:30 +02:00
Raphael Defosseux
7dc726f8f5 Merge remote-tracking branch 'origin/develop' into rh_ci_next 2020-07-29 16:01:40 +02:00
Francesco Mani
1043320676 Merge remote-tracking branch 'origin/NR_UL_scheduling' into ul_harq 2020-07-29 15:32:08 +02:00
Cedric Roux
503b46cd53 fix to have the sony 5g connect in NSA mode
c_SRS was 61, which does not fit for 106 PRBs as it seems. Value 0 works.
Maybe not the right thing to do though (see 38.211 6.4.1.4.3,
table 6.4.1.4.3-1).

Also it seems necessary to pass desired LTE/NR bands when requesting
LTE UE capabilities. Today this is hardcoded, to be done better at
some point. We should get the bands from the eNB configuration and
the eNB/gNB X2 exchanges.
2020-07-29 14:55:40 +02:00
Francesco Mani
1dab506b78 minor changes 2020-07-29 14:50:07 +02:00
Sakthivel Velumani
7bcf468e1b Added the changed octave script 2020-07-29 13:11:31 +02:00
Sakthivel Velumani
5fa775580c Removed unwanted loop and if
Reordered mod_table to support new changes in the function
2020-07-29 13:01:09 +02:00
Cedric Roux
9c2696e5e2 fix to have the sony 5g connect in NSA mode
c_SRS was 61, which does not fit for 106 PRBs as it seems. Value 0 works.
Maybe not the right thing to do though (see 38.211 6.4.1.4.3,
table 6.4.1.4.3-1).

Also it seems necessary to pass desired LTE/NR bands when requesting
LTE UE capabilities. Today this is hardcoded, to be done better at
some point. We should get the bands from the eNB configuration and
the eNB/gNB X2 exchanges.
2020-07-29 11:11:04 +02:00
Javier Morgade
a8e2a8d4b0 Merge remote-tracking branch 'origin/develop' into fembms-enb-ue 2020-07-29 10:54:38 +02:00
Raphael Defosseux
f7dc17ec20 Merge branch 'integration_2020_wk30' into 'develop'
Integration branch 2020 week 30  

- MR 854 : NR_DCI_01  
- MR 857 : improve_ue_stability  
- MR 839 : mac-flexran-improvements
2020-07-29 09:20:42 +02:00
frtabu
f5d1dbb731 add telnet command to rfsimulator 2020-07-29 01:34:52 +02:00
frtabu
f61f9520db implement queued commands in telnet server 2020-07-28 20:08:48 +02:00
Raphael Defosseux
71c66ec583 CI: fix HTML tab name
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-28 17:08:09 +02:00
Remi Hardy
ca21ad8b36 cleaned-removed commented-out legacy code 2020-07-28 17:02:28 +02:00
Francesco Mani
86250f682a bugfix in ul estimation and other minor changes 2020-07-28 16:35:12 +02:00
Raphael Defosseux
5c2df00101 CI: fix terminate
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-28 16:28:36 +02:00
Raphael Defosseux
b8edd71244 CI: adding retries on OCP test
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-28 16:03:28 +02:00
Raphael Defosseux
5dd3e3353d CI: using ninja for OCP build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-28 15:25:00 +02:00
Raphael Defosseux
31a0d28ad9 CI: fix a few typos
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-28 15:22:46 +02:00
Remi Hardy
d3b415d6ed commented out printing of object attributes (debug) 2020-07-28 14:22:46 +02:00
Remi Hardy
8c9501b6a6 fixing args_parse function arguments list 2020-07-28 14:17:27 +02:00
Sakthivel Velumani
012db77f15 One more fix to pucch tx 2020-07-28 12:04:30 +02:00
Remi Hardy
eceb1ed21f fixed air_interface variable for ocp-enb option 2020-07-28 10:40:15 +02:00
dong.zhanyi
828bab2fd6 fixed the bug no supporting CellId more than 256 2020-07-28 07:34:05 +08:00
frtabu
7eb2ab66c5 add telnet commands to show and modify channel simulation parameters 2020-07-28 01:33:16 +02:00
dong.zhanyi
5c0a149946 fixed the bug no supporting the CellId more than 256 2020-07-28 07:00:56 +08:00
Sakthivel Velumani
c868c345e3 Fixed dl ack tx in pucch 0 2020-07-28 00:30:44 +02:00
Laurent
384aec0d03 coding 5G SA, add documentation 2020-07-27 20:35:10 +02:00
Laurent
427b223136 small fiwes 2020-07-27 16:08:31 +02:00
Javier Morgade
a061c8acc5 fembms: CI/CD fallback to original MBMS settings
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-27 14:17:58 +02:00
hardy
d81f8b9120 fixed CONST. missing in front of constant, leading to execution error 2020-07-27 14:08:21 +02:00
hardy
292addf8d6 Merge remote-tracking branch 'origin/NR_DCI_01' into integration_2020_wk30 2020-07-27 13:47:22 +02:00
hardy
0b58e7a6f5 Merge remote-tracking branch 'origin/mac-flexran-improvements' into integration_2020_wk30 2020-07-27 13:47:00 +02:00
hardy
45ef34737c Merge remote-tracking branch 'origin/NR_DCI_01' into integration_2020_wk30 2020-07-27 11:49:46 +02:00
hardy
607ebabbfe Merge remote-tracking branch 'origin/improve_ue_stability' into integration_2020_wk30 2020-07-27 11:48:15 +02:00
Javier Morgade
73dd471594 fembms: CI/CD using MBMS config to lauch FeMBMS test
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-27 10:34:43 +02:00
Francesco Mani
3648ac46ce fix in ulsch ch estimation debug message 2020-07-27 09:29:43 +02:00
Javier Morgade
e10b0646e4 fembms: CI/CD fallback USRP tests
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-26 08:41:42 +02:00
Javier Morgade
0c31b449ca fembms: CI/CD fixing USRP Test
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-25 15:48:05 +02:00
Javier Morgade
1d4bd3358a fembms: CI/CD fixing USRP Test
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-25 11:42:23 +02:00
cig
90dc9e9555 Set RA succeeded and UE mode to PUSCH after correct decoding of Msg2 2020-07-25 11:38:29 +02:00
cig
457c1b725a Small fixes @ UE 2020-07-25 11:38:22 +02:00
Javier Morgade
7f9dbdd3f4 fembms: CI/CD Test
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-25 08:06:04 +02:00
Sakthivel Velumani
5fd040d645 Added HARQ stats to ulsim 2020-07-25 00:36:53 +02:00
Mario Hudon
8ea4897ff9 Renaming of variables after code review 2020-07-24 15:22:01 -04:00
hardy
017e4339bb brought cde line arg parsing out of main.py, into a separated module 2020-07-24 18:03:22 +02:00
Javier Morgade
8e9a989aa5 fembms: FIX filename typo
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-24 17:48:51 +02:00
Javier Morgade
c681e800ba fembms: CI/CD Adding USRP coverage tests for FeMBMS
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-24 14:45:28 +02:00
Mario Hudon
8735920b5a Modified a comment 2020-07-24 08:17:59 -04:00
Sakthivel Velumani
0db13a3801 Added UL harq handling
Also fixed bugs in ulsim and dlsim harq tests
2020-07-24 14:00:55 +02:00
laurent
d04b4c0eeb fix ont bug in DFT and some performance improvements 2020-07-24 11:29:49 +02:00
Francesco Mani
d94f4cdae0 fixing again pusch ok when no data 2020-07-24 11:03:31 +02:00
Javier Morgade
6e54a81fa5 Merge branch 'fembms-enb-ue' of https://gitlab.eurecom.fr/oai/openairinterface5g into fembms-enb-ue 2020-07-24 09:46:52 +02:00
Javier Morgade
27b9fa6935 fembms: CI/DC adding missing commit
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-24 09:46:02 +02:00
Javier Morgade
63ed400e28 fembms: CI/CD Adding FeMBMS RFSIM coverage test
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-24 09:44:13 +02:00
Mario Hudon
f967ba1756 Added some comments and cleaned up code 2020-07-23 17:14:46 -04:00
Raymond Knopp
d8bbfdbdda bugfix in eNB_scheduler.c. Code still to be moved to L1. 2020-07-23 22:24:55 +02:00
Mario Hudon
7ecba96f42 Fixed compilation errors and warnings 2020-07-23 09:52:38 -04:00
Francesco Mani
1f74524d0d fix for prepare dci 0_1 2020-07-23 11:48:25 +02:00
Francesco Mani
483b601c54 Merge branch 'NR_UL_scheduling' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_UL_scheduling 2020-07-23 10:10:51 +02:00
Francesco Mani
05e6ebe24b fix for prepare dci 0_1 2020-07-23 10:10:19 +02:00
cig
bc243cee47 Bugfix in DMRS configuration at UE side:
- DM-RS type {1,2} was wrongly assigned to {1,2} instead of {0,1}
- Num DM-RS CDM groups without data is now taken into account in mthread
  decoding function
- number of DM-RS CDM groups without data for format 1_0 according to 5.1.6.2
  3GPP TS 38.214 version 15.9.0 Release 15:
-- the UE shall assume the number of DM-RS CDM groups without data is:
-- 1 (CDM group 0) for the case of PDSCH with allocation duration of 2 symb
-- 2 (CDM group {0,1}) for all other cases.
2020-07-22 23:52:16 +02:00
cig
ea86120c4b Restructured UE DCI configuration function:
- moved RRC structs checks and mac configuration to config_ue.c
- new implementation of DCI configuration according to 3GPP TS 38.331
  version 15.9.0 Release 15 and 3GPP TS 38.213 version 15.9.0 Release 15
2020-07-22 23:52:08 +02:00
Sakthivel Velumani
5f80474114 Merge branch 'ul_harq' into NR_UL_scheduling 2020-07-22 18:21:54 +02:00
Sakthivel Velumani
2cd3c0b7bb harq put in ulsim 2020-07-22 18:08:27 +02:00
Raymond Knopp
3d8e5e11ef fixes for buffer overrun when L1 information is cleared upon UE removal in RRC. This is a temporary fix to solve a stability issue for Benetel pending more significant changes along the same lines in several places. 2020-07-22 17:56:51 +02:00
Remi Hardy
220445f157 wip : fr1 set up automation / fixing issues from recent changes 2020-07-22 17:53:28 +02:00
Dr.-Ing. Javier Morgade
5a68767d6a Update enb.band17.tm1.mbms.25PRB.usrpb210.conf 2020-07-22 16:57:51 +02:00
Francesco Mani
390c648a81 bugfix in time domain assigment 2020-07-22 15:15:50 +02:00
Francesco Mani
39b22f17b3 calloc for dci_pdu 2020-07-22 15:11:17 +02:00
Francesco Mani
5331189c8b bugfixes 2020-07-22 15:07:04 +02:00
Francesco Mani
ac6aae9dde fix in allocation of segments 2020-07-22 14:53:16 +02:00
kn.raju
203e715365 Added debug logs 2020-07-22 17:42:58 +05:30
Francesco Mani
c949170a28 calloc for dci_pdu in ul 2020-07-22 14:01:47 +02:00
Javier Morgade
df58e251d8 fembms: -FIX phy_simulators compiling error
- adding missing dummy functions

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-22 10:35:22 +02:00
Francesco Mani
9bd139246b bugfix in time domain assigment 2020-07-22 09:13:04 +02:00
Javier Morgade
543457f377 fembms: removing debug log
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-22 08:09:51 +02:00
Javier Morgade
dc857e8d76 Merge remote-tracking branch 'origin/develop' into fembms-enb-ue 2020-07-22 07:42:44 +02:00
Javier Morgade
8f8b16a84e embms: Experimental MBMS Couting support added / 3GPP TS 36.44 (*)
(*) The MBMS Counting function allows the MCE to request the eNB(s) to count and
	  report per MBSFN area for one or more MBMS services the number of connected UEs
	  receiving the MBMS Service or interested in receiving it.

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-22 07:40:32 +02:00
Javier Morgade
9e789c84be fembms: - added suppor for FeMBMS RRC sublayer / l2 interface
- added primitives to build asn1 messages for FeMBMS eNB

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-22 07:34:09 +02:00
dong.zhanyi
7233e99143 Fixed the bug that can not send MSG3 2020-07-22 06:59:01 +08:00
hardy
4b48e457ba WIP : yaml config files for multiple eNB or gNB nodes 2020-07-21 23:55:20 +02:00
Javier Morgade
6db9fca1b7 fembms: code cleanup
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 21:07:42 +02:00
laurent
afc93b0f68 add SA messages defintion 2020-07-21 18:50:25 +02:00
Javier Morgade
3aaa152e4e fembms: new FeMBMS/eMBMS MCH eNB/UE scheduler implemented
- MBMS scheduler re-worked to enable dedicated MBMS serving cells
	- added support for multiple eMBMS MCH sessions
	- added support for multiple FeMBMS MCH sessions

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 18:16:46 +02:00
Javier Morgade
9b37dcecdb fembms: handle MBMS in new RLC
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 18:14:44 +02:00
Javier Morgade
e3cf9bcf1f fembms: handle L2 eNB/UE config
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 18:11:51 +02:00
Javier Morgade
1f034ab404 fembms: prototype overload (legacy code for F1AP)
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 18:10:25 +02:00
Javier Morgade
f1d51cc0be fembms: handle L2 eNB config in softmodem
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 18:08:41 +02:00
Remi Hardy
3d365b0d8e WIP fr1 set up 2020-07-21 17:04:23 +02:00
Francesco Mani
e76593f73f bugfixes 2020-07-21 16:25:19 +02:00
Javier Morgade
220ba2ebc8 fembms: new mbmssim target (TOCHECK)
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 15:20:10 +02:00
Javier Morgade
0bef84d0a5 fembms: - FeMBMS 36.213 eNB procedures v14.2
- FeMBMS 36.213 UE procedures v14.2
	- Implementation of OFDM encoding for FeMBMS/eNB v14.2

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 15:16:49 +02:00
Javier Morgade
5eb6dac7db fembms: routines for decoding the UE FeMBMS/PMCH physical/multicast/transport channel 3GPP TS 36.211 version 14.2.0
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 15:09:38 +02:00
Javier Morgade
8eac27b83b fembms: Added support for FeMBMS UE Channel Estimation Procedures for 10 and 20 MHz BWs @ FeMBMS 1.25KHz Carrier Spacing
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-21 15:07:05 +02:00
laurent
e01a98f074 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into main5G 2020-07-21 12:10:02 +02:00
kn.raju
6392059732 fixed run time issue 2020-07-21 15:18:13 +05:30
Remi Hardy
2d1b7f78ad Merge branch 'oai_integration_week29' into 'develop'
Oai integration week29

See merge request oai/openairinterface5g!858
2020-07-21 11:38:00 +02:00
kn.raju
3daaad1385 rrc configuration changes reverted 2020-07-21 14:52:31 +05:30
Francesco Mani
ce846e6f7f fix in fapi function in dci for ul 2020-07-21 10:38:39 +02:00
kn.raju
c036940db7 fixed run time error 2020-07-21 10:47:49 +05:30
hardy
d244ea4b99 slight reformatiing of main.py ; introducing yaml for xml class definition 2020-07-20 22:45:24 +02:00
Francesco Mani
60b82248a1 first version of reworking scheduling function, including UL scheduling 2020-07-20 18:07:54 +02:00
Remi Hardy
dfe6278ee1 fixing issues for CI integration 2020-07-20 18:06:02 +02:00
hardy
87dccea43f integrating cots ue control into CI 2020-07-20 16:44:51 +02:00
Francesco Mani
0f0ede038d removing a printf in pusch scheduling 2020-07-20 16:25:04 +02:00
Remi Hardy
331c74af2a fixing execution issues following recent changes 2020-07-20 14:21:11 +02:00
Javier Morgade
58bd55b9b3 fembms:
-Increase buffer size in PHY_ofdm_mod to accomodate FeMBMS sizes
	-New FFT sizes added (IDFT_12288, IDFT_24576) to enable support for FeMBMS 10MHz and 20MHz channels BWs

Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 11:02:18 +02:00
Javier Morgade
459eff02d1 fembms: Top-level routines for generating DL mbsfn reference signals for FeMBMS (eNB)
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 10:58:57 +02:00
Javier Morgade
3fca8304a4 fembms: FeMBMS top-level routines for generating and decoding the PBCH/BCH physical/transport channel
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 10:54:01 +02:00
Javier Morgade
3d11b3d65d fembms: FeMBMS (eNB) Top-level routines for generating the PDSCH physical channel from 36-211 V14.1
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 10:51:51 +02:00
Javier Morgade
4923ba301a fembms: Addapting top-level routines for implementing Turbo-coded (DLSCH) transport channels from 36-212 with FeMBMS support
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 10:49:58 +02:00
Javier Morgade
da5ae9c8d1 fembms: L1 prototypes for FeMBMS eNB procedures
Signed-off-by: Javier Morgade <javier.morgade@ieee.org>
2020-07-20 10:48:26 +02:00
Javier Morgade
c5799e1cca fembms: missing protype added 2020-07-20 10:42:47 +02:00
Javier Morgade
eb0dacc443 fembms: L1 prototypes and params added 2020-07-20 10:41:56 +02:00
Javier Morgade
43dc75f92f fembms: reference config files re-arranged 2020-07-20 10:39:12 +02:00
Robert Schmidt
6eb00a0895 Enable multi-module support in pdcp_fifo_flush_sdus() 2020-07-20 09:33:35 +02:00
Robert Schmidt
33b860f1b4 FlexRAN: use lock-free ringbuffers for slice conf
Use LFDS 7.0.0 Ringbuffer implementation to handle
* Slice Configuration
* UE slice association
which is then uploaded through MAC scheduling thread
2020-07-20 09:13:19 +02:00
Robert Schmidt
07313fd96d FlexRAN Bugfix: Free Ringbuffer on exit 2020-07-20 09:13:19 +02:00
Robert Schmidt
4901daf759 FlexRAN: New protobuf slice structure + Static Slice handling 2020-07-20 09:13:19 +02:00
Robert Schmidt
872cfc03fe Implement Static Slicing 2020-07-20 09:13:19 +02:00
Robert Schmidt
9956b96049 Use fptr for preproc and align UL PP definition 2020-07-20 09:13:19 +02:00
Robert Schmidt
2b4e529068 Simplify add_ue_list(), remove_ue_list(); add init_ue_list() 2020-07-20 09:13:19 +02:00
Robert Schmidt
a74f4c1238 Delete old protobuf slice types flex_slice_{dl,ul} 2020-07-20 09:13:19 +02:00
Robert Schmidt
714a2df097 Remove any slice-related information from OAI 2020-07-20 09:13:19 +02:00
Robert Schmidt
da09d63acd Default pre-processor: efficiently build UE list 2020-07-20 09:13:19 +02:00
Robert Schmidt
6fcc4f5970 Format to dynamically handle UL SCHED 2020-07-20 09:13:19 +02:00
Robert Schmidt
af89a6b780 Configurable Default Scheduler DL Algo 2020-07-20 09:13:19 +02:00
Robert Schmidt
fe7236d9c4 Add Maximum Throughput scheduler, wbCqi
Selects the UE with the highest CQI. If two UEs have the same CQI,
choses the one with highest number of bytes in RLC queue. Allocates as
many RBGs as possible, and potentially continues with the next UE.
2020-07-20 09:13:19 +02:00
Robert Schmidt
2de57fbc36 Add Proportional Fair scheduler, wbCqi
Selects UE with highest coefficient. Allocates until there are no more
RBGs to allocate, or UE has no more data. In the latter case, continues
with the next UE (second-highest coefficient).
2020-07-20 09:13:19 +02:00
Robert Schmidt
18a6961fcd Format to dynamically handle default DL SCHED algo 2020-07-20 09:13:19 +02:00
Robert Schmidt
8c7d94133f Bugfix RR DL: a retx UE might not be allocated again 2020-07-20 09:13:19 +02:00
Robert Schmidt
864fa84ba8 Default SCHED RR algo: optimize algo and defer RB calc.
- Loop only to next UE instead of jumping multiple

- mark used RBGs in rbg_mask

- Only calculate number of RBs based on CQI when UE is selected, instead
of calculating for all UEs which might be unnecessary.

- When looping the list of UEs for RB allocation, remove UEs that have
no data anymore instead of skipping them.
2020-07-20 09:13:19 +02:00
Robert Schmidt
82194319cf Bugfix DLSCH: only warn when retx with less RB
The preprocessor pre-allocates a CCE. Thus, when arriving at the check
for the number of RBs for retransmission, it is too late to skip the UE.
Therefore, only print a warning.

The default schedulers allocate a correct amount of RBs for
retransmissions, therefore it is ok.
2020-07-20 09:13:19 +02:00
Robert Schmidt
d0baab6ed3 DLSCH: limit LC bytes according to preprocessor 2020-07-20 09:13:19 +02:00
Robert Schmidt
a96c3761cc Log TBS in every window 2020-07-20 09:13:19 +02:00
Robert Schmidt
19c2856bbe UE: Set correct selected PLMN Identity 2020-07-20 09:13:19 +02:00
Robert Schmidt
332dec605a UE: Print all SIB1 decoded PLMNs 2020-07-20 09:13:19 +02:00
Robert Schmidt
a1f77198f7 FlexRAN: Manage PLMNs 2020-07-20 09:13:18 +02:00
Robert Schmidt
e4eea33de6 FlexRAN: Enable MME adding/removing 2020-07-20 09:13:18 +02:00
Robert Schmidt
d47c539dda S1AP: Only register MME if we do not know it yet 2020-07-20 09:13:18 +02:00
Robert Schmidt
64f0b7e0e5 Do not check for register_enb_pending
The test seemingly ensures that this code block is hit only once.
However, if we enable later activation of MMEs, it will be hit a second
(and third, ...) time. The only thing in guards against, though, is an
INIT message to the L1L2 thread, when register_enb_pending == 0, which
should only be sent once.  Therefore, functionality won't be changed if
register_enb_pending becomes negative, and the assert can be removed.
2020-07-20 09:13:18 +02:00
Robert Schmidt
40fdd53adc Correctly decode IMSI also when not integrity protected 2020-07-20 09:13:18 +02:00
Robert Schmidt
bbca88ad78 Bugfix FlexRAN: if a UE is in RRC but not S1AP, treat as no bug 2020-07-20 09:13:18 +02:00
hardy
dc9211ae20 removed all Getters and Setters from EPC, HTML classes (as all attributes are public) 2020-07-19 17:56:00 +02:00
hardy
d0805bd8ab Merge remote-tracking branch 'origin/bugfix-minor-remove-wrong-log' into oai_integration_week29 2020-07-17 16:00:20 +02:00
frtabu
8b4498cd11 nr scope as a dynamically loaded shared lib 2020-07-17 15:59:38 +02:00
Remi Hardy
d273ae84f3 added a class function to check adb returned values from a list 2020-07-17 15:28:34 +02:00
laurent
cf18c0d7e0 ocp-gnb regression fixed on rfsimulator 2020-07-17 15:12:20 +02:00
laurent
3772d7e56a merge develop, other modifs, not working 2020-07-17 13:57:56 +02:00
kn.raju
907860a228 Debug logs added 2020-07-17 11:23:21 +05:30
cig
fe724b555d Cleanup RA procedure 2020-07-16 18:03:22 +02:00
cig
68391d7243 Bugfix in RA window computation 2020-07-16 17:55:52 +02:00
kn.raju
7588dc50fa Scheduling and handling of SSB-RO 2020-07-16 16:26:00 +05:30
Sakthivel Velumani
e325d007a6 Merge branch 'develop' into improve_ue_stability 2020-07-15 15:00:02 +02:00
Cedric Roux
0b8d5a8fd2 Merge remote-tracking branch 'origin/develop' into NR_RRC_PDCP
Conflicts:
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
2020-07-15 12:06:41 +02:00
hardy
2e5d0db742 removed getter/setter from RAM class 2020-07-13 16:45:32 +02:00
Remi Hardy
91480dccce support for ocp enb build and test (unit test ok) 2020-07-13 15:17:54 +02:00
Thomas Schlichter
c8a23e2d74 Merge remote-tracking branch 'develop' 2020-07-13 11:45:47 +02:00
Thomas Schlichter
e736b9410a Apply rx_offset in rfsimulator, too 2020-07-13 11:39:32 +02:00
laurent
5e4d1f61ff small bug 2020-07-11 11:52:49 +02:00
Francesco Mani
079456d07a Merge remote-tracking branch 'origin/develop' into NR_DCI_01 2020-07-10 16:57:35 +02:00
Raphael Defosseux
2bf5758418 Merge branch 'develop_integration_2020_w27' into 'develop'
Develop integration 2020 weeks 27/28

The following Merge Requests have been included:

* MR 842 : NR RRC HARQ hacks
* MR 843 : hack for RLC AM ACK reporting
* MR 844 : gcc warnings
* MR 846 : nr-rlc: small bugfix
* MR 848 : NR VCD
* MR 852 : bugfix: uplink ACK/NACK reporting through T was gone
* Documentation update
* Some CI improvements
2020-07-10 16:49:26 +02:00
Cedric Roux
96b5380b02 minor: remove a LOG_E that should not be here anymore
When running the softmodem, we get the error:

    fill_ulsch UE_id 0 nb_rb = 0

The code has changed some time ago and this log was left but is not
meaningful anymore.
2020-07-10 12:44:59 +02:00
Thomas Schlichter
91149a7bf5 Merge remote-tracking branch 'NR_ue_dlsch_dmrs_cdm' 2020-07-10 11:55:17 +02:00
Francesco Mani
5caf5a4d1c dlsch ue n_dmrs_cdm_groups 2020-07-10 11:46:52 +02:00
Raphael Defosseux
c38e542f89 Merge remote-tracking branch 'origin/bugfix-T-uplink-ack-nack' into develop_integration_2020_w27 2020-07-10 09:35:17 +02:00
Raphael Defosseux
d7ffd70bbd Merge remote-tracking branch 'origin/nr_vcd' into develop_integration_2020_w27 2020-07-10 09:34:16 +02:00
Remi Hardy
42ab797a2d Merge branch 'rh_ci_next' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_ci_next 2020-07-10 09:31:00 +02:00
Raphael Defosseux
91104cb648 Merge remote-tracking branch 'origin/nr-rlc-bugfix-2020-w28' into develop_integration_2020_w27 2020-07-10 09:30:14 +02:00
Raphael Defosseux
4ddebabe7f Merge remote-tracking branch 'origin/gcc-warnings-20200702' into develop_integration_2020_w27 2020-07-10 09:29:47 +02:00
Raphael Defosseux
da4f395a04 Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into develop_integration_2020_w27 2020-07-10 09:29:18 +02:00
Francesco Mani
e9f370ed02 Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into NR_DCI_01 2020-07-10 09:16:28 +02:00
Francesco Mani
5651b9073c pusch config in mac gnb from rrc 2020-07-10 09:16:11 +02:00
Francesco Mani
d66aea3fe6 bugfixes in dci size 2020-07-09 17:57:39 +02:00
Sakthivel Velumani
b0b03700ca bugfix in pucch tx 2020-07-09 16:16:44 +02:00
Cedric Roux
d32b45dd1a bugfix: uplink ACK/NACK reporting through T was gone
Let's get it back!
2020-07-09 15:50:14 +02:00
Raphael Defosseux
f157d41e2f BUILD: missing dependency for NR_GTPV1U lib
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-09 15:40:11 +02:00
hardy
8d75cb61bc to support OCP eNB build and test 2020-07-09 14:37:18 +02:00
Raphael Defosseux
f6999282f2 DOC: update on the 5G Rf simulator
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-09 13:36:47 +02:00
Raphael Defosseux
7921071518 CI: fix when retrieving the DL Carrier Frequency in UE Run log
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-09 12:32:21 +02:00
Francesco Mani
0f9519925d fill dci pdu 2020-07-09 11:58:15 +02:00
Thomas Schlichter
c5357e6a59 Merge remote-tracking branch 'NR_RRC_harq_hacks' 2020-07-09 11:43:16 +02:00
Sakthivel Velumani
b22b71536a Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-09 11:37:29 +02:00
Sakthivel Velumani
94905c0f43 fixing warnings 2020-07-09 11:37:03 +02:00
Francesco Mani
d474f4a1b8 fix some warnings 2020-07-09 10:55:41 +02:00
Cedric Roux
1fa7a61b2b nr: fix compilation warning 2020-07-09 10:50:17 +02:00
Thomas Schlichter
aea3bc2d42 Merge remote-tracking branch 'NR_RRC_harq_hacks'
Conflicts:
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
	openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
2020-07-09 10:27:27 +02:00
Florian Kaltenberger
e0231398ca update from Walter Maguire 2020-07-08 21:02:33 +02:00
Francesco Mani
5fc3a991c9 dci size for 0_1 and some other modifications 2020-07-08 18:44:34 +02:00
Raymond Knopp
614af99745 Remove hardcoding of DRB id to be added for NSA 2020-07-07 18:36:58 +02:00
Rakesh
24bdbde2a1 bugfix 2020-07-07 16:53:13 +02:00
Rakesh
e6713b7467 Merge remote-tracking branch 'origin/develop' into nr_vcd 2020-07-07 15:29:30 +02:00
Raymond Knopp
cc7c66feea Introduce new UE context status state at the eNB for the NSA procedure
- UE context status enters RRC_NR_NSA_RECONFIGURED state, after the eNB receives an RRCConnectionReconfigurationComplete message including the
scg_ConfigResponseNR_r15 container.
- Use this state to avoid triggering sGNB Addition Request multiple times
2020-07-07 15:22:01 +02:00
laurent
46adeaa7c4 merge branch NR_RRC_harq_hacks 2020-07-07 12:56:37 +02:00
laurent
4bc36627be fix some used but not initialized variables 2020-07-07 12:53:04 +02:00
Raymond Knopp
027853ba8e Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-06 16:26:38 +02:00
Raymond Knopp
9a662fbcb3 fixed ulsim performance issues 2020-07-06 15:36:20 +02:00
Francesco Mani
64e9629b8c patch for pucch in ulsim 2020-07-06 14:37:31 +02:00
laurent
4d6e647aaa fixes pushed also in develop 2020-07-06 14:07:46 +02:00
Cedric Roux
62df572aed nr-rlc: small bugfix 2020-07-06 11:24:55 +02:00
Raymond Knopp
4761cbdc3d Modifications wrt the NR LCIDs used for DTCH 2020-07-06 10:48:41 +02:00
Francesco Mani
1fee40a590 fix in pucchsim 2020-07-06 10:38:36 +02:00
Raymond Knopp
bea3385f28 changes for ulsim to get functionality back. simulation behaviour for PUSCH is not good (BLER waterfall is way too steep even if SNR threshold is ok). Note develop does more or less the same thing but SNR threshold is lower. 2020-07-06 01:53:46 +02:00
Raymond Knopp
afb95b106f Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-04 12:59:40 +02:00
Raymond Knopp
2ca4137c1c forgot one line in autotest xml file 2020-07-04 12:59:08 +02:00
Raymond Knopp
3f38b447c6 prachsim functional for format A2 and 0. added format 0 test to CI autotests 2020-07-04 12:58:18 +02:00
matzakos
895cf14973 Merge NR_RRC_harq_hacks branch into NR_RRC_PDCP 2020-07-03 17:10:40 +02:00
Raphael Defosseux
f5b81b4eb0 CI: fix html tab name
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-03 15:06:31 +02:00
laurent
cabff5b73b fix itti issue in memory management 2020-07-03 14:57:27 +02:00
Francesco Mani
12354bb6c6 bugfixes in dlschsim 2020-07-03 13:57:46 +02:00
Sakthivel Velumani
d11cbab95b Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-03 13:45:00 +02:00
Sakthivel Velumani
a7dae03d73 set txdataF to 0 at beginning of slots 2020-07-03 13:43:43 +02:00
Sakthivel Velumani
f13398e17b fixed pucch config in ue 2020-07-03 13:42:10 +02:00
Francesco Mani
67a8f8dab4 minor fixes 2020-07-03 11:10:56 +02:00
Raphael Defosseux
a1e293a164 Merge remote-tracking branch 'origin/ci-rd-july-improvements' into develop_integration_2020_w27 2020-07-03 10:37:34 +02:00
Raphael Defosseux
c5d1228143 Merge remote-tracking branch 'origin/rh_doc_update_3' into develop_integration_2020_w27 2020-07-03 10:36:58 +02:00
laurent
9205b4d004 fix gaussain noise seed in rfsimulator 2020-07-02 22:29:44 +02:00
Raphael Defosseux
b0d65fd6cb CI: adding test on caracal with TX Write Thread enabled
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-07-02 17:06:43 +02:00
laurent
4b58b9d38a gcc warnings 2020-07-02 16:32:07 +02:00
cig
52e49fd8ec Fixed some warnings + cleanup
- replaced nr_slot_t with int as it was barely used in the code (also is defined after an lte struct)
- removed use of phy_frame_config_nr from the UE (another file was created in SCHED_NR_UE, still the
  gNB file is used in some tests file at UE side)
2020-07-02 12:44:48 +02:00
cig
e054b5e247 RA Msg2 reception according to 8.2 of TS 38.213
- Msg2 scheduler used for testing purposes was removed
- Now the UE tries to DCI 1_0 scrambled with RA_RNTI in the RA window
- If no RAPID is found within the RA window, instructs PHY to TX PRACH
2020-07-02 12:44:48 +02:00
cig
6737d27346 PUSCH data filling from PHY to MAC:
- IP data were fetched and passed to MAC directly at the PHY layer
- random data was generated whenever there's no upcoming data.
- Therefore these functionalities are now moved to MAC and FAPI interfaces
- are used instead.
2020-07-02 12:44:38 +02:00
cig
8e271ce945 Fixes for reception of Msg2:
- ceiling computation num of segments (cod/dec)
- fixes demodulation
- initialisation CW for PDSCH RA
- memcpy dl_ch_estimates to pdsch_vars_ra (hotfix)
- correct N_RB for DCI 1_0 and RNTI_RA
2020-07-02 12:32:33 +02:00
cig
79a655d47e Use MCS 9 for Msg2 to avoid issues with the LDPC decoder
- LDPC decoder does not support lower MCS, therefore MCS 9 has been selected
  for the Msg2 configuration.
- This is done only in do-ra mode, in order to prevent any fallout on the
  current the configuration used for the operation with the commercial UE
2020-07-02 12:30:57 +02:00
laurent
35bf936351 merge develop, phy-test mode in 5G testing ok 2020-07-02 12:02:21 +02:00
Francesco Mani
7176bb4607 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-02 11:01:34 +02:00
Florian Kaltenberger
f73ecda995 nr_prachsim -F now reads full subframe 2020-07-02 10:49:18 +02:00
matzakos
e7d2b8eeb1 Resolve remaining conflicts after merge of develop into NR_RRC_harq_hacks 2020-07-02 10:17:47 +02:00
Francesco Mani
cd61f38eca Merge remote-tracking branch 'origin/develop' into NR_RRC_harq_hacks 2020-07-02 10:16:57 +02:00
Francesco Mani
20635bb00a Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-07-02 10:02:17 +02:00
Cedric Roux
71f75a3d88 hack for RLC AM ACK reporting
hack: in schedule_ue_spec, 3 bytes are "reserved" (this should be
done better). An RLC AM entity may ask for only 2 bytes for
ACKing and get a TBS of 32 bits and due to these 3 reserved bytes we may
end up with only 1 byte left for RLC, which is not enough. This hack
prevents the problem. To be done better at some point. If the function
schedule_ue_spec is (has been) reworked, this hack can be removed.
Dig for "TBS - ta_len - header_length_total - sdu_length_total - 3"
in schedule_ue_spec.

This should be done better at some point.
2020-07-02 09:13:45 +02:00
laurent
0f032447c0 fix bugs in main OAI, begining of PRACH test+fxi 2020-07-01 17:44:36 +02:00
Florian Kaltenberger
fa5213dfed removing some of the s1ap and x2ap xer prints 2020-07-01 14:43:44 +02:00
Francesco Mani
548e8f8797 fix ulsim compilation 2020-07-01 10:16:48 +02:00
Robert Schmidt
dcd43c1526 FlexRAN: use lock-free ringbuffers for slice conf
Use LFDS 7.0.0 Ringbuffer implementation to handle
* Slice Configuration
* UE slice association
which is then uploaded through MAC scheduling thread
2020-07-01 10:10:48 +02:00
Robert Schmidt
05c10662da FlexRAN Bugfix: Free Ringbuffer on exit 2020-07-01 10:10:48 +02:00
Robert Schmidt
d926a9a9c8 FlexRAN: New protobuf slice structure + Static Slice handling 2020-07-01 10:10:48 +02:00
Robert Schmidt
d2fe5af67a Implement Static Slicing 2020-07-01 10:10:48 +02:00
Robert Schmidt
115c1f38f6 Use fptr for preproc and align UL PP definition 2020-07-01 10:10:48 +02:00
Robert Schmidt
a21e9aa6ef Simplify add_ue_list(), remove_ue_list(); add init_ue_list() 2020-07-01 10:10:48 +02:00
Robert Schmidt
8c76d6ab57 Delete old protobuf slice types flex_slice_{dl,ul} 2020-07-01 10:10:48 +02:00
Robert Schmidt
198822aa17 Remove any slice-related information from OAI 2020-07-01 10:10:48 +02:00
Robert Schmidt
9f26028ded Default pre-processor: efficiently build UE list 2020-07-01 10:10:48 +02:00
Robert Schmidt
41de51b187 Format to dynamically handle UL SCHED 2020-07-01 10:10:48 +02:00
Robert Schmidt
5d1d2bcd1c Configurable Default Scheduler DL Algo 2020-07-01 10:10:48 +02:00
Robert Schmidt
36cd697b62 Add Maximum Throughput scheduler, wbCqi
Selects the UE with the highest CQI. If two UEs have the same CQI,
choses the one with highest number of bytes in RLC queue. Allocates as
many RBGs as possible, and potentially continues with the next UE.
2020-07-01 10:10:48 +02:00
Robert Schmidt
a0b331415f Add Proportional Fair scheduler, wbCqi
Selects UE with highest coefficient. Allocates until there are no more
RBGs to allocate, or UE has no more data. In the latter case, continues
with the next UE (second-highest coefficient).
2020-07-01 10:10:48 +02:00
Robert Schmidt
dc5357ca13 Format to dynamically handle default DL SCHED algo 2020-07-01 10:10:48 +02:00
Robert Schmidt
31ad66e146 Bugfix RR DL: a retx UE might not be allocated again 2020-07-01 10:10:48 +02:00
Robert Schmidt
1401d21081 Default SCHED RR algo: optimize algo and defer RB calc.
- Loop only to next UE instead of jumping multiple

- mark used RBGs in rbg_mask

- Only calculate number of RBs based on CQI when UE is selected, instead
of calculating for all UEs which might be unnecessary.

- When looping the list of UEs for RB allocation, remove UEs that have
no data anymore instead of skipping them.
2020-07-01 10:10:48 +02:00
Robert Schmidt
b06dadbdb0 Bugfix DLSCH: only warn when retx with less RB
The preprocessor pre-allocates a CCE. Thus, when arriving at the check
for the number of RBs for retransmission, it is too late to skip the UE.
Therefore, only print a warning.

The default schedulers allocate a correct amount of RBs for
retransmissions, therefore it is ok.
2020-07-01 10:10:48 +02:00
Robert Schmidt
71647eb4ef DLSCH: limit LC bytes according to preprocessor 2020-07-01 10:10:48 +02:00
Robert Schmidt
476d58a8de Log TBS in every window 2020-07-01 10:10:48 +02:00
Robert Schmidt
9d5a46dcfa UE: Set correct selected PLMN Identity 2020-07-01 10:10:48 +02:00
Robert Schmidt
d2cc43b4e7 UE: Print all SIB1 decoded PLMNs 2020-07-01 10:10:48 +02:00
Robert Schmidt
f895a28645 FlexRAN: Manage PLMNs 2020-07-01 10:10:48 +02:00
Robert Schmidt
df3f7e1ecf FlexRAN: Enable MME adding/removing 2020-07-01 10:10:48 +02:00
Robert Schmidt
1363a53dd0 S1AP: Only register MME if we do not know it yet 2020-07-01 10:10:48 +02:00
Robert Schmidt
b01d63ba4e Do not check for register_enb_pending
The test seemingly ensures that this code block is hit only once.
However, if we enable later activation of MMEs, it will be hit a second
(and third, ...) time. The only thing in guards against, though, is an
INIT message to the L1L2 thread, when register_enb_pending == 0, which
should only be sent once.  Therefore, functionality won't be changed if
register_enb_pending becomes negative, and the assert can be removed.
2020-07-01 10:10:48 +02:00
Robert Schmidt
9072101a1a Correctly decode IMSI also when not integrity protected 2020-07-01 10:10:48 +02:00
Robert Schmidt
c5fdcd85cc Bugfix FlexRAN: if a UE is in RRC but not S1AP, treat as no bug 2020-07-01 10:10:48 +02:00
Raphael Defosseux
12e5fe3399 Merge branch 'develop_integration_2020_w26' into 'develop'
Develop integration 2020 week 26

See merge request oai/openairinterface5g!841
2020-07-01 07:34:38 +02:00
Raphael Defosseux
6edff47db2 CI: fix cppcheck error
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-30 21:45:53 +02:00
Francesco Mani
406ae17d11 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-30 18:05:04 +02:00
Francesco Mani
a40f119a80 revert to dl only in slot 1 before merge 2020-06-30 18:04:32 +02:00
Raymond Knopp
c301b62d8a Add printing contents of NR scgFailureInformation message at rrc eNB 2020-06-30 16:58:38 +02:00
Raymond Knopp
7ddfa636f8 Add detection of NR scgFailureInformation message at rrc eNB 2020-06-30 16:58:18 +02:00
Sakthivel Velumani
b5cce24e83 fixed rv in phy-test mode 2020-06-30 15:07:43 +02:00
Remi Hardy
56f8827bde Update TESTING_GNB_W_COTS_UE.md 2020-06-30 14:42:22 +02:00
Raphael Defosseux
0516a452c1 BUILD: explicitely stop build when compilation/linking issues
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-30 12:37:00 +02:00
Raphael Defosseux
dde8ba2d51 Merge remote-tracking branch 'origin/trx_thread_param' into develop_integration_2020_w26 2020-06-30 09:57:51 +02:00
Francesco Mani
f4ccaf0dc0 Merge remote-tracking branch 'origin/develop' into NR_RRC_harq_hacks 2020-06-29 19:27:33 +02:00
WANG Tsu-Han
099169831e adding parameter in nr uesoftmodem for usrp trx thread 2020-06-29 16:23:10 +02:00
Remi Hardy
e7ab8f83c6 Update TESTING_GNB_W_COTS_UE.md 2020-06-29 13:57:23 +02:00
hardy
fa66f18c75 uploading conf and log example files 2020-06-29 13:53:41 +02:00
Remi Hardy
e5ab435173 Update TESTING_GNB_W_COTS_UE.md 2020-06-29 12:21:55 +02:00
Thomas Schlichter
a5a1d7b918 Improve stability by replacing AssertFatal() with LOG_E() in nr_rx_pdsch() 2020-06-29 12:13:27 +02:00
Raphael Defosseux
8d2f7a5491 Merge remote-tracking branch 'origin/NR_MAC_CE_GlobalEdge' into develop_integration_2020_w26 2020-06-29 12:09:52 +02:00
Raphael Defosseux
42057bccde Merge remote-tracking branch 'origin/NR_RRC_X2AP_RemoveHardcodings_GlobalEdge' into develop_integration_2020_w26 2020-06-29 12:09:33 +02:00
Thomas Schlichter
b90e57549c ignore inconsistent DCI instead of exiting 2020-06-29 12:04:34 +02:00
Francesco Mani
d8b7637981 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-29 10:37:18 +02:00
WANG Tsu-Han
5884838ad5 Merge branch 'develop' into trx_thread_param 2020-06-29 10:30:55 +02:00
WANG Tsu-Han
3f461d680d adding parameter in uesoftmodem for uhd trx thread 2020-06-29 10:29:40 +02:00
Sakthivel Velumani
150ef017f2 fixed rv for phy-test mode 2020-06-29 10:17:52 +02:00
Raphael Defosseux
5a8fe59c68 Merge remote-tracking branch 'origin/nfapi-bugfix' into develop_integration_2020_w26 2020-06-26 17:19:25 +02:00
Raphael Defosseux
0af8f618cd Merge remote-tracking branch 'origin/enable_ta_for_phytest' into develop_integration_2020_w26 2020-06-26 17:03:32 +02:00
Raphael Defosseux
233f51957c CI: add phy-sim runs to eNB logCollector. this is temporary
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-26 17:01:59 +02:00
Raphael Defosseux
e1888940b6 CI: retry on typical unstable scenarios
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-26 16:59:05 +02:00
Raphael Defosseux
27080aa607 DOC: remove obsolete pipeline reference
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-26 16:55:47 +02:00
Raphael Defosseux
bc6f6a6067 CI: no workspace clean when running phy-sim
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-26 16:54:56 +02:00
Raphael Defosseux
de0f46466c Merge remote-tracking branch 'origin/ci_update' into develop_integration_2020_w26 2020-06-26 16:54:21 +02:00
Remi Hardy
0d914eecae Update CONTRIBUTING.md 2020-06-26 11:43:04 +02:00
Remi Hardy
c3ccb6cc1d Update TESTING_GNB_W_COTS_UE.md 2020-06-26 11:32:43 +02:00
Remi Hardy
f9a2829b44 Update TESTING_GNB_W_COTS_UE.md 2020-06-26 11:17:36 +02:00
hardy
c84e8a2b3a Merge branch 'rh_doc_update_3' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_doc_update_3 2020-06-26 10:07:08 +02:00
hardy
9ef54616fe upload signaling scheme 2020-06-26 10:05:45 +02:00
Remi Hardy
02dadedb47 Update TESTING_GNB_W_COTS_UE.md 2020-06-26 10:03:28 +02:00
hardy
e42cf3db9c Merge branch 'rh_doc_update_3' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_doc_update_3 2020-06-26 09:07:23 +02:00
hardy
0bb67fffd1 setup visio sheme update 2020-06-26 09:06:24 +02:00
Raymond Knopp
7c116c7981 small bugfix in pullarray8 in nfapi.c 2020-06-26 04:23:24 +02:00
matzakos
0553332b26 Bring back default RB configuration as it is required for phytest mode 2020-06-25 18:47:10 +02:00
Remi Hardy
55828cbbab Update TESTING_GNB_W_COTS_UE.md 2020-06-25 12:16:48 +02:00
hardy
8048f6b838 update 2020-06-25 12:15:54 +02:00
Remi Hardy
ff111e0797 Update TESTING_GNB_W_COTS_UE.md 2020-06-25 12:13:51 +02:00
hardy
ca91b8da3c qMerge branch 'rh_doc_update_3' of https://gitlab.eurecom.fr/oai/openairinterface5g into rh_doc_update_3 2020-06-25 10:03:34 +02:00
hardy
f79f6351d8 uploading fr1 setup lab photo 2020-06-25 09:58:08 +02:00
laurent
ada39bb238 scope round 2, merge develop branch 2020-06-24 17:04:46 +02:00
Remi Hardy
03d9bca101 Update TESTING_GNB_W_COTS_UE.md 2020-06-24 16:45:08 +02:00
Thomas Schlichter
72aa2963ea Merge branch 'develop' into enable_ta_for_phytest
Conflicts:
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
2020-06-24 12:16:03 +02:00
Remi Hardy
ebbff46cde update 3 after review 2020-06-24 11:58:41 +02:00
laurent
aad868d8fa 5G scope cleaning round 2 2020-06-24 09:48:35 +02:00
Remi Hardy
03ff1ef304 update 2 after review 2020-06-23 22:29:23 +02:00
matzakos
c06e734eb5 Merge remote-tracking branch 'origin/develop' into NR_RRC_X2AP_RemoveHardcodings_GlobalEdge 2020-06-23 17:15:43 +02:00
Remi Hardy
16d9e27d5d Update TESTING_GNB_W_COTS_UE.md 2020-06-23 10:43:53 +02:00
Remi Hardy
b33993f542 Update TESTING_GNB_W_COTS_UE.md 2020-06-23 10:42:43 +02:00
hardy
ec7d26d30d scheme fix 2020-06-23 09:51:54 +02:00
Raphael Defosseux
e68e72cd74 Merge branch 'develop_integration_2020_w25' into 'develop'
Develop integration 2020 week 25

The following Merge Requests have been included:

* MR 799 : NR RRC PRACH procedures
* MR 831 : NR PUCCH2 polar implementation
* MR 832 : coarse scope cleanup
* MR 835 : fix NR UE transport on PBCH
* MR 836 : NR fix phytest packet corruption DLSCH
2020-06-23 09:47:59 +02:00
Raphael Defosseux
5503073f9b Merge remote-tracking branch 'origin/NR_RRC_PRACH_procedures' into develop_integration_2020_w25 2020-06-23 09:43:14 +02:00
Remi Hardy
9833c0a123 Delete oppo.jpg 2020-06-22 23:38:47 +02:00
Remi Hardy
3a8d361b7c Update TESTING_GNB_W_COTS_UE.md 2020-06-22 23:35:20 +02:00
hardy
779b7537cc uploading fr1 setup scheme 2020-06-22 23:34:34 +02:00
Remi Hardy
dbbe79ad85 Update TESTING_GNB_W_COTS_UE.md 2020-06-22 21:35:38 +02:00
Florian Kaltenberger
b31861bac3 Update RUNMODEM.md 2020-06-22 17:08:32 +02:00
Florian Kaltenberger
8517f1314a Update RUNMODEM.md 2020-06-22 17:07:59 +02:00
Remi Hardy
497c611080 update 1 after review 2020-06-22 16:59:15 +02:00
Remi Hardy
2e3e862c6a Update TESTING_GNB_W_COTS_UE.md 2020-06-22 15:49:21 +02:00
hardy
6cb01bd58d folder for .md resources 2020-06-22 15:21:03 +02:00
hardy
bc9ee1071c creation, empty file 2020-06-22 15:20:50 +02:00
hardy
6d65930fd0 initial push to make branch visible 2020-06-22 15:20:38 +02:00
laurent
a456054d9b continue scope 2020-06-22 12:02:58 +02:00
Raphael Defosseux
75b271a809 CI: adding more error messages to HTML report
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-22 11:56:55 +02:00
Raphael Defosseux
ce06872722 Merge remote-tracking branch 'origin/nr_fix_phytest_packet_corruption_dlsch' into develop_integration_2020_w25 2020-06-22 11:54:54 +02:00
Raphael Defosseux
96034a3dca Merge remote-tracking branch 'origin/nr_ue_fix_pbch' into develop_integration_2020_w25 2020-06-22 11:54:46 +02:00
Raphael Defosseux
41fcabc69b Merge remote-tracking branch 'origin/rework-5G-scope' into develop_integration_2020_w25 2020-06-22 11:54:41 +02:00
laurent
e4b2689e29 continue scope rebuild 2020-06-19 20:35:32 +02:00
matzakos
860742a134 Fix DLSCH PDU corruption issue for phytest mode (random traffic generation)
- Payload was filled with zeros instead of random bytes
2020-06-19 18:19:34 +02:00
Francesco Mani
94fa9c5f1f fix in function to check data in dmrs symbol 2020-06-19 18:16:53 +02:00
Francesco Mani
0ce23beef8 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-19 17:36:40 +02:00
Sakthivel Velumani
2e9cd58d48 nb_re_dmrs fixed in one more place
this fixed dlsch crc fails
2020-06-19 17:18:15 +02:00
Raymond Knopp
fbb6ba16c3 Merge branch 'NR_fix_nrarfcn' into NR_RRCConfiguration_FR2 2020-06-19 16:41:07 +02:00
Florian Kaltenberger
2634d57282 changing RRC measurement config to FR2 2020-06-19 16:39:56 +02:00
Florian Kaltenberger
794f9dac71 fixing NR_arfcn calculation 2020-06-19 16:24:50 +02:00
Florian Kaltenberger
8a3feeb5f6 fix from Walter Maguire 2020-06-19 16:11:19 +02:00
Francesco Mani
e189e06a16 Yet another bugfix in nr_ulsch_ue.c 2020-06-19 15:25:28 +02:00
Florian Kaltenberger
9411438dd0 small fix 2020-06-19 15:00:00 +02:00
Francesco Mani
0354a7399b bugfix nr_ulsch_ue.c 2020-06-19 14:32:26 +02:00
matzakos
7e33d11c3d Change NR PDCP SN field to 18 instead of 12 bits length
-Required because the 12 bits SN is not accepted from the phone
2020-06-19 14:19:12 +02:00
Raphael Defosseux
a9dbcf6b93 added in-code comments and changed attr to private 2020-06-19 14:18:13 +02:00
Raymond Knopp
c3e871257b Add printing contents of NR scgFailureInformation message at rrc eNB 2020-06-19 14:00:34 +02:00
hardy
dcadc24ad6 complete and working version supporting phy-simulators 2020-06-19 13:38:17 +02:00
matzakos
9c4bb6bf4b Fix DLSCH PDU corruption issue for phytest mode (random traffic generation)
- Payload was filled with zeros instead of random bytes
2020-06-19 13:01:50 +02:00
Raphael Defosseux
1ff1f3dda9 fix a bunch of compilation warnings 2020-06-19 11:41:36 +02:00
Raphael Defosseux
efb7bd8417 CPPCHECK: fixes
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-19 11:41:03 +02:00
Thomas Schlichter
f47dcb199a enable TA update in phy-test mode 2020-06-19 11:28:29 +02:00
Thomas Schlichter
2029cb93c9 update configuration file gnb.band78.tm1.106PRB.usrpx300.conf based on gnb.band78.tm1.106PRB.usrpn300.conf 2020-06-19 11:27:07 +02:00
WANG Tsu-Han
3217b51256 simulation fix 2020-06-18 16:55:02 +02:00
laurent
2eb799c3b6 fix pdcp race condition 2020-06-18 15:52:54 +02:00
laurent
bc480ad9bf Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into main5G 2020-06-18 15:41:47 +02:00
laurent
36fab59e1c fix pdcp race condition 2020-06-18 15:41:10 +02:00
k.ramya
0cbe7e40db fixed merge conflicts 2020-06-18 18:32:43 +05:30
Rangaswami
8642d3e779 Corrected indentation and removed GES macro 2020-06-18 18:27:47 +05:30
vr.devendra
06fa1f8e0f GlobalEdge: CSI and TCI related MAC CE intial commit 2020-06-18 18:26:06 +05:30
Rangaswami
e08878ed1c Corrected indentation and removed GES macro 2020-06-18 18:01:13 +05:30
Francesco Mani
2b1f3891de Merge remote-tracking branch 'origin/develop' into NR_RRC_harq_hacks 2020-06-18 14:25:00 +02:00
vr.devendra
8533610e2a GlobalEdge: CSI and TCI related MAC CE intial commit 2020-06-18 17:51:44 +05:30
Francesco Mani
c5f82f6d9f Merge remote-tracking branch 'origin/NR_RRC_PRACH_procedures' into NR_RRC_harq_hacks 2020-06-18 12:31:07 +02:00
Francesco Mani
338c0dbd63 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-18 12:30:01 +02:00
Francesco Mani
795b6e02c4 fix for pusch num_dmrs_cdm_grps_no_data 2020-06-18 12:29:36 +02:00
Raphael Defosseux
4747f287d1 Merge remote-tracking branch 'origin/nr_pucch2_polar' into develop_integration_2020_w25 2020-06-18 11:35:12 +02:00
Raphael Defosseux
cc16b290b9 Merge remote-tracking branch 'origin/rework-5G-scope' into develop_integration_2020_w25 2020-06-18 11:33:12 +02:00
Raphael Defosseux
3f897adfb6 Merge remote-tracking branch 'origin/NR_RRC_PRACH_procedures' into develop_integration_2020_w25 2020-06-18 11:30:24 +02:00
laurent
d21a40066d scope for 5G 2020-06-18 10:19:52 +02:00
Raphael Defosseux
5df0326946 Merge branch 'develop_integration_2020_w24' into 'develop'
Develop integration 2020 week 24

The following Merge Requests are included:

* MR 822 : GPU implementation in `ldpctest` unitary test (NCTU)
* A few CI python fixes and to enable back parallel build on RRU
* Documentation update on the supported feature list
2020-06-17 21:17:50 +02:00
Raphael Defosseux
3bce9a7b85 CI: increase gNB VM RAM size; display memory usage during modems runs
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-17 14:19:40 +02:00
Raphael Defosseux
c540dd6120 Merge remote-tracking branch 'origin/rh_doc_update' into develop_integration_2020_w24 2020-06-17 10:14:03 +02:00
Raphael Defosseux
ebb225dc6e CI: adding ping operations in HTML report for 5G RF Sim Test
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-17 10:13:30 +02:00
matzakos
65b5a48ed1 Minor logs modifications at gNB ulsch scheduler 2020-06-16 17:41:34 +02:00
matzakos
456e6c9207 Change return type of nr_generate_ulsch_pdu() to avoid overflow on the offset variable 2020-06-16 17:40:03 +02:00
Sakthivel Velumani
eb7e15dd69 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-16 17:05:41 +02:00
Sakthivel Velumani
2bee4f4974 partial fix for pdsch dmrs issue
decoding performance degraded. still some issue to be solved.
2020-06-16 17:03:47 +02:00
Raphael Defosseux
f4274b2b2c Merge remote-tracking branch 'origin/NCTU_GPU_ldpctest' into develop_integration_2020_w24 2020-06-16 13:03:08 +02:00
WANG Tsu-Han
c68c6153ed code clean up 2020-06-16 11:02:15 +02:00
Francesco Mani
619f82cbb7 external clock in config files and padding lcid 2020-06-16 10:32:12 +02:00
Francesco Mani
fd1388b61e power values in testing gnb file 2020-06-16 10:18:36 +02:00
Florian Kaltenberger
377cfc6f0c fixing an issue with libconfig 2020-06-16 09:11:19 +02:00
Raymond Knopp
a0f8e5ac25 removed LOG functions from nr_polar_init, they make polartest segfault. polartest to be fixed ... 2020-06-15 21:20:03 +02:00
WANG Tsu-Han
98353b37d1 code cleanup 2020-06-15 17:14:11 +02:00
WANG Tsu-Han
37bb310a36 redefine conflict resolve 2020-06-15 16:51:04 +02:00
Thomas Schlichter
45ed1e8066 revert the number of DRB from 4 back to 5 2020-06-15 14:44:32 +02:00
laurent
1f95ec0888 coarse scope cleanup 2020-06-15 14:14:38 +02:00
Raphael Defosseux
527c3bcdd5 FORMAT: fix circular-depencendy-protection check on include files
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-15 14:02:18 +02:00
Raymond Knopp
09efbc0272 Merge remote-tracking branch 'origin/develop' into nr_pucch2_polar
Conflicts:
	openair1/PHY/NR_TRANSPORT/pucch_rx.c
2020-06-15 11:30:07 +02:00
matzakos
9a177fd368 Bring back mapping check between drb_id and channel_id 2020-06-15 10:42:04 +02:00
laurent
a9ba117ac7 first version scope reworked 2020-06-15 10:32:14 +02:00
Sakthivel Velumani
9add099c2b Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-15 10:23:21 +02:00
Raymond Knopp
417bc7e567 added tests to CI for PUCCH2 with polar code 2020-06-14 23:35:01 +02:00
Raymond Knopp
0e3d87b44c format 2 up to 64 bits tested for 8 and 16 PRBs PUCCH format 2020-06-14 23:10:12 +02:00
Rigiel Antony
a44d5fdcb9 fixed mergee conflicts 2020-06-14 16:57:07 +05:30
Rangaswami
7964fed747 Corrected indentation and removed GES macro 2020-06-14 16:40:37 +05:30
vr.devendra
f9b49d1a24 GlobalEdge: CSI and TCI related MAC CE intial commit 2020-06-14 16:37:28 +05:30
Raymond Knopp
a2f448aa1c Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-13 11:49:36 +02:00
Raymond Knopp
14a0b772f3 fix for 36864 size dfts (missing initialization) 2020-06-13 11:48:50 +02:00
Raymond Knopp
2381bd91d2 Add detection of NR scgFailureInformation message at rrc eNB 2020-06-12 19:30:17 +02:00
Francesco Mani
2b976aa711 Merge branch 'NR_RRC_PRACH_procedures' into NR_RRC_harq_hacks 2020-06-12 19:14:25 +02:00
WANG Tsu-Han
860d406974 debug print remove 2020-06-12 15:58:56 +02:00
WANG Tsu-Han
89bb495799 fixes for emulate-rf in lte-softmodem 2020-06-12 15:18:43 +02:00
matzakos
45daaedbda Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-06-12 14:46:20 +02:00
matzakos
928c189ef0 Modify starting LCID for DTCH to start from 4 instead of 3 for both UL and DL
- Make required adaptations in RLC and default DRB configuration
2020-06-12 14:44:52 +02:00
WANG Tsu-Han
702192148e fixes for PARALLEL_RU_L1_TRX_SPLIT from Laurent 2020-06-12 14:42:51 +02:00
matzakos
1552be348c Fix ULSCH slot scheduling inconsistency between nrUE and gNB 2020-06-12 14:33:08 +02:00
Sakthivel Velumani
186dde7073 changes to dlsim 2020-06-12 14:07:15 +02:00
Raphael Defosseux
128aa79773 CI: no need for daemon install/usage in EPC VM
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-12 13:52:26 +02:00
Raphael Defosseux
938aa0f645 FORMAT: fix circular-depencendy-protection check on include files
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-12 13:51:50 +02:00
Florian Kaltenberger
b9f9d69bfd doc update 2020-06-12 11:31:00 +02:00
Remi Hardy
981d35a778 restructuring the 5G part
update of the 5G feature set (gNB and UE)
ref : Florian K ppt
2020-06-12 11:28:17 +02:00
Remi Hardy
e40835f96d Update:
eNB RRC version
eNB X2AP section
2020-06-12 11:28:17 +02:00
hardy
9be3e9f451 4G scheduler update 2020-06-12 11:28:17 +02:00
Florian Kaltenberger
f46e3d4c76 fixing an issue with libconfig 2020-06-12 11:13:18 +02:00
Sakthivel Velumani
28da25f420 more dummy functions for physims 2020-06-12 10:50:06 +02:00
Florian Kaltenberger
21a775817d Update RUNMODEM.md 2020-06-12 10:41:35 +02:00
Francesco Mani
cec29bb240 bugfix nr_initial_sync.c 2020-06-12 09:57:23 +02:00
Francesco Mani
5f87b73451 small fixes 2020-06-12 08:43:17 +02:00
WANG Tsu-Han
68366cb686 adding executional option for usrp trx thread and adding null device function for device other than usrp 2020-06-11 18:03:05 +02:00
Raphael Defosseux
edca3646c0 CI: fix typo
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-11 16:33:11 +02:00
Remi Hardy
24598a64d0 restructuring the 5G part
update of the 5G feature set (gNB and UE)
ref : Florian K ppt
2020-06-11 16:29:06 +02:00
Raphael Defosseux
90c8dfd76b Merge remote-tracking branch 'origin/ci_june_improvements' into develop_integration_2020_w24 2020-06-11 16:25:53 +02:00
Raphael Defosseux
d685023344 Merge remote-tracking branch 'origin/NCTU_GPU_ldpctest' into develop_integration_2020_w24 2020-06-11 16:25:41 +02:00
Raphael Defosseux
4893729e58 CI: re-enabling multi-RRU build w/ ninja build
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-11 16:22:54 +02:00
Raphael Defosseux
efee127a99 CI: added error output if in MBMS-case, the UE does not show MBMS messages
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-11 16:20:36 +02:00
Remi Hardy
8b0d4e15d7 Update:
eNB RRC version
eNB X2AP section
2020-06-11 14:43:34 +02:00
hardy
2c8e2a30f9 4G scheduler update 2020-06-11 14:24:12 +02:00
Raymond Knopp
613d1e8cf0 intermediate commit 2020-06-11 14:24:03 +02:00
WANG Tsu-Han
cdc60bd9ae fixes for compilation error in CUDA machine 2020-06-11 11:53:26 +02:00
Sakthivel Velumani
a4fb2e21c9 linking error fix in pbchsim 2020-06-11 09:53:10 +02:00
Sakthivel Velumani
3e47e26cd1 bugfix in dl harq ue 2020-06-10 17:12:36 +02:00
Anes Rose Rigiel Antony
3ac51d2115 Removed the compilation error 2020-06-10 19:47:32 +05:30
Francesco Mani
ae00c77c5c Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-09 20:33:21 +02:00
Francesco Mani
bedb295dfd Merge branch 'develop' into NR_RRC_harq_hacks 2020-06-09 20:32:35 +02:00
Ahmed Hussein
dae91c60b8 Fixing ulsim and rf simulator
- no_data_in_dmrs was being used at gNB side, and not handled at UE side
- nr_schedule_response wasn't being called in ulsim
2020-06-09 15:49:53 +02:00
Sakthivel Velumani
132b48ea36 Fixed bugs in pucch UE
UE now sends ack/nack in format0
2020-06-09 15:44:09 +02:00
Rigiel
e4335ef412 After rebasing the NR RRC PRACH procedure 2020-06-09 18:58:53 +05:45
s.rampalli
b4651f2449 modified the rrc_add_nsa_user api 2020-06-09 18:50:04 +05:45
s.rampalli
9cbe078ed0 indentations fixed 2020-06-09 18:50:04 +05:45
s.rampalli
defea03ab9 Required changes/modifications are done at both eNB and gNB side 2020-06-09 18:50:04 +05:45
Raymond Knopp
c7a8c6f60a Merge branch 'NR_RRC_PDCP' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PDCP 2020-06-09 15:03:16 +02:00
s.rampalli
2f48b92501 compilation done need to verify with GES endc setup 2020-06-09 17:47:08 +05:45
s.rampalli
63bc9a9ba3 coding done need to verify testing part 2020-06-09 17:47:08 +05:45
s.rampalli
9747773f16 changed the encoded buffer size to 4096 2020-06-09 17:47:08 +05:45
s.rampalli
38a39ec0be fixed rrc x2ap runtime issues 2020-06-09 17:47:08 +05:45
s.rampalli
e7c20bc081 mistake 2020-06-09 17:47:08 +05:45
s.rampalli
a07cfa3dd3 rrc changes 2020-06-09 17:47:08 +05:45
s.rampalli
69455512c8 fixed rrc issues 2020-06-09 17:47:08 +05:45
s.rampalli
eac285d405 rrc runtime errors fixed 2020-06-09 17:47:08 +05:45
s.rampalli
b8e43ff2da fixed encoding failed issue 2020-06-09 17:47:08 +05:45
s.rampalli
d988eb82fc Removed temporary values in x2ap and rrc 2020-06-09 17:47:08 +05:45
cig
f4d47b1ea7 Checking in dl_indication if scheduling is needed or any DL PDU was received:
- scheduling is needed only when whe it doesn´t fall in dci_ind or rx_ind cases
- cleaned up some old commented out code
2020-06-09 13:53:27 +02:00
Thomas Schlichter
36f5e80ea3 cleaning up the UE MAC/PHY interface 2020-06-09 13:53:27 +02:00
Thomas Schlichter
614083f03f Merge branch 'develop' into NR_RRC_PRACH_procedures
Conflicts:
	cmake_targets/CMakeLists.txt
	openair2/GNB_APP/gnb_app.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
	openair2/RRC/NR/rrc_gNB_nsa.c
2020-06-09 13:03:28 +02:00
Thomas Schlichter
96dc4a888d fix broken merge from develop in ulsim 2020-06-09 12:38:54 +02:00
laurent
64e3e97158 more cleanup, start scope vizualisation rework 2020-06-09 09:00:03 +02:00
Raymond Knopp
6a9d606255 Temporarily consider single LCID for DL traffic scheduling 2020-06-08 19:09:03 +02:00
Francesco Mani
2e8092540f moving function to prepare pucch scheduling inside dlsch_phytest 2020-06-08 16:31:30 +02:00
Raphael Defosseux
90b102687f Merge branch 'develop_integration_2020_w23' into 'develop'
Develop Integration 2020 week 23

The following merge requests have been included:

* MR 823 : NR-UE Init sync bugfix
* MR 824 : code cleanup
2020-06-08 15:17:34 +02:00
Raymond Knopp
072836d7b9 NR-IP traffic: Make fapi dl pdu configuration be triggered only when there is data from the upper layers to be scheduled
- To be used for NSA and noS1 modes
2020-06-08 14:38:54 +02:00
Raymond Knopp
ad1e47f7f4 Merge branch NR_RRC_harq_hacks into NR_RRC_PDCP 2020-06-08 14:30:38 +02:00
Raphael Defosseux
d0ca8f12e8 CI: handling of new compilation warnings
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-08 11:04:27 +02:00
Raphael Defosseux
5cb573fcab Merge remote-tracking branch 'origin/cleanup-20200604' into develop_integration_2020_w23 2020-06-08 10:34:21 +02:00
Florian Kaltenberger
0124e5378c adding possibility to read rx signal from file 2020-06-06 22:55:13 +02:00
laurent
1ff806d519 fix shared lib dependency error 2020-06-05 18:26:47 +02:00
Sakthivel Velumani
06ee95f40e UE sync fix 2020-06-05 17:35:46 +02:00
Sakthivel Velumani
91fd14bf99 UE harq bugfixes 2020-06-05 17:35:25 +02:00
Thomas Schlichter
84dfeff40a fix broken merge from develop in phy_procedures_gNB_common_RX() 2020-06-05 10:09:57 +02:00
Raphael Defosseux
89acc09420 CI: fix the RAW files usage by NR-UE
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-04 14:32:41 +02:00
laurent
d1e8c23529 cleanup 2020-06-04 10:48:29 +02:00
Rangaswami
884cbc7c8c Corrected indentation and removed GES macro 2020-06-04 11:04:43 +05:30
Thomas Schlichter
1a91c25d07 Merge branch 'init_sync_bugfix' into NR_RRC_PRACH_procedures
Conflicts:
	executables/nr-ue.c
2020-06-03 21:50:01 +02:00
Thomas Schlichter
225a500b3e Merge branch 'develop' into NR_RRC_PRACH_procedures
Conflicts:
	executables/nr-ue.c
	openair1/PHY/NR_REFSIG/dmrs_nr.c
	openair1/PHY/NR_TRANSPORT/nr_prach.c
	openair1/PHY/NR_TRANSPORT/nr_transport_common_proto.h
	openair1/PHY/NR_TRANSPORT/nr_transport_proto_common.h
	openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
	openair1/PHY/NR_UE_TRANSPORT/nr_transport_ue.h
	openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
	openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
	openair1/SIMULATION/NR_PHY/prachsim.c
	openair1/SIMULATION/NR_PHY/ulsim.c
	openair2/LAYER2/NR_MAC_COMMON/nr_mac_extern.h
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
2020-06-03 19:50:54 +02:00
Raymond Knopp
376baa3247 fixes for machine without CUDA 2020-06-03 17:02:03 +02:00
Francesco Mani
7948d26f8c Revert "scheduling dl in both half frames"
This reverts commit cf5bc231ec.
2020-06-03 15:45:00 +02:00
Francesco Mani
62b154e8d6 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-06-03 15:42:31 +02:00
Raphael Defosseux
a2ffa29f3b Making CUDA additions conditional on CUDA installation
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-06-03 15:32:51 +02:00
Sakthivel Velumani
5bfbb00d2c bugfix for UE init sync 2020-06-03 14:49:26 +02:00
Florian Kaltenberger
f6b83fd925 adding frequency offset to prachsim 2020-06-03 11:52:20 +02:00
WANG Tsu-Han
79899c8a6f adding CUDA in LDPC test 2020-06-03 09:55:33 +02:00
Francesco Mani
c359a05351 Revert "separation of dl and ul clear fapi information"
This reverts commit 17a1a554b7.
2020-06-02 18:31:09 +02:00
Francesco Mani
17a1a554b7 separation of dl and ul clear fapi information 2020-06-02 16:14:49 +02:00
laurent
0169c05c74 merge develop, some tests in 5g: no regression 2020-06-02 11:26:11 +02:00
laurent
62f9e7b5e7 remove all usage of RC.ru global var in ocp-gnb and nr-uesoftmodem 2020-06-02 10:35:17 +02:00
Raymond Knopp
e6d03868cb Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into NR_RRC_PDCP 2020-06-02 10:17:26 +02:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
579cfad82d git add for merge 2020-06-01 19:51:25 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
03d354efce merge to develop 2020-06-01 19:27:44 +08:00
Raymond Knopp
65cf9da7d2 Merge branch NR_RRC_harq_hacks into NR_RRC_PDCP 2020-05-29 16:57:34 +02:00
Francesco Mani
cf5bc231ec scheduling dl in both half frames 2020-05-29 16:44:26 +02:00
s.rampalli
19a44bd092 modified the rrc_add_nsa_user api 2020-05-29 12:57:29 +05:30
Francesco Mani
4e12c39471 static bitmap to schedule dl slots (also to test phone) 2020-05-28 17:56:42 +02:00
Raymond Knopp
dad2d8bce7 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks
Conflicts:
	openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c
2020-05-26 16:39:50 +02:00
Raymond Knopp
0a45909bd1 minor changes 2020-05-26 15:37:10 +02:00
Raymond Knopp
c042f7c26a fixed issue related to scheduing of PRACH for long sequence (only gets done in last slot of subframe now, not both) and start point of DFT in RU processing for long-sequence. Removes fatal segfault. 2020-05-26 11:40:54 +02:00
Sakthivel Velumani
d37f077082 handling failed ack/nack reception 2020-05-26 00:22:48 +02:00
Raymond Knopp
539ff7bf85 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-26 00:05:40 +02:00
Raymond Knopp
fe5cd3d28d fixed bug for long PRACH sequence configuration, flipped HARQ bits for 2-bit PUCCH0 UCI report 2020-05-26 00:04:49 +02:00
Raymond Knopp
69b4211aba Change default NR DRB configuration to RLC UM 2020-05-25 21:13:19 +02:00
Raymond Knopp
72f1b2cb09 Remove hack restriction for single time DL scheduling 2020-05-25 20:55:12 +02:00
Raymond Knopp
fd5f7bec0d Merge branch NR_PDCP_noS1 back to NR_RRC_PDCP 2020-05-25 20:13:22 +02:00
matzakos
47713f2a08 NR RB configuration: Remove dependencies from LTE structures
-Remaining LTE dependency in RLC add_srb function (not used for NSA setup)
-Rename function for DRB static preconfiguration used in noS1 mode
2020-05-25 15:46:00 +02:00
vr.devendra
02be147d17 GlobalEdge: CSI and TCI related MAC CE intial commit 2020-05-22 20:15:12 +05:30
Francesco Mani
6fa5a6cf89 bugfix 2020-05-22 15:35:31 +02:00
Francesco Mani
03b38ca871 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-22 15:02:03 +02:00
Francesco Mani
17e52131d3 scheduling continuous dl transmission in first half frame 2020-05-22 15:00:37 +02:00
Sakthivel Velumani
94b88cf2cf bug fixes 2020-05-22 13:16:30 +02:00
Sakthivel Velumani
453e257d8d Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-22 12:47:03 +02:00
Sakthivel Velumani
eb5a7a9ab1 added harq handling in gnb mac 2020-05-22 12:41:28 +02:00
Raymond Knopp
8f8894d764 suppressed some LOG_M that were killing real-time. 2020-05-21 23:02:08 +02:00
Thomas Schlichter
ce105df4e7 Merge branch 'develop' into NR_RRC_PRACH_procedures
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_transport.h
	openair1/PHY/NR_TRANSPORT/nr_transport_common_proto.h
	openair1/PHY/NR_TRANSPORT/nr_transport_proto_common.h
	openair1/SCHED_NR/phy_procedures_nr_gNB.c
	openair1/SIMULATION/NR_PHY/prachsim.c
	openair2/GNB_APP/RRC_nr_paramsvalues.h
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_phytest.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
	openair2/LAYER2/NR_MAC_gNB/mac_proto.h
	openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
2020-05-20 19:26:16 +02:00
Francesco Mani
2f4f90ba24 bugfix 2020-05-20 15:49:43 +02:00
Francesco Mani
3284e42e51 Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-20 15:06:03 +02:00
Francesco Mani
b0ff2cef54 rearranged function to prepare pucch scheduling 2020-05-20 15:05:33 +02:00
cig
928dd902e3 Code cleanup 2020-05-20 12:41:06 +02:00
cig
783470905d Bugfix: missing deactivation dlsch after processing is done:
- the issue popped up with the new rx/tx implementation  at the UE
- this was causing false processing of DLSCH PDU and reception of false
  TA commands
2020-05-20 12:41:05 +02:00
s.rampalli
04e903a39b indentations fixed 2020-05-20 15:47:03 +05:30
s.rampalli
729890a133 Required changes/modifications are done at both eNB and gNB side 2020-05-20 15:26:37 +05:30
Raymond Knopp
6fb195867b Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-19 23:59:31 +02:00
Raymond Knopp
dd8cb98443 added support in gNB and UE for long PRACH sequences. Tested format 0 with unitary simulation only. 2020-05-19 23:58:28 +02:00
laurent
cbd801b6e5 some cleanup and checks 2020-05-19 21:29:13 +02:00
Francesco Mani
49991e100b bugfix for 2 acknacks in pucch0 2020-05-19 19:09:29 +02:00
matzakos
58bc9e5395 Fix ULSCH slot scheduling mismatch between gNB and OAI UE 2020-05-19 15:27:08 +02:00
matzakos
0c287d9f51 Adaptation at DLSCH scheduling function to support EPC mode 2020-05-19 15:23:12 +02:00
matzakos
c2e65b0639 Correct pseudo-subheader byte of random ULSCH PDU (phytest) to an appropriate value 2020-05-19 15:08:02 +02:00
matzakos
9e8e9c8ff0 noS1: Introduce NR DRB preconfiguration and PDCP RLC configuration triggering 2020-05-19 14:57:38 +02:00
laurent
9112ee01f5 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into main5G 2020-05-18 22:17:16 +02:00
laurent
026924244a merge develop, ocp-gnb working on rf sim and phy-test mode: DL and UL user traffic 2020-05-18 22:16:54 +02:00
Francesco Mani
03ce05571a Merge branch 'NR_RRC_harq_b' into NR_RRC_harq_hacks 2020-05-18 19:00:58 +02:00
Sakthivel Velumani
5a5f503997 Merge branch 'develop' into NR_RRC_harq_b 2020-05-18 12:57:51 +02:00
Sakthivel Velumani
54ca9ea5ab fixed pucch procedures to use rrc struct in UE 2020-05-18 12:57:24 +02:00
matzakos
6d71096637 Change pseudo-subheader byte of random ULSCH PDU (phytest) to an appropriate value
- Apply a value which cannot be interpreted as any valid LCID at the MAC layer of the receiver gNB (as per 38.321 Table 6.2.1-2),
to avoid forwarding the random PDU to the upper layers in noS1 mode.
2020-05-17 13:03:24 +02:00
Raymond Knopp
4e50e36ede intermediate commit, pucch2 RX with polar still not complete 2020-05-17 10:43:15 +02:00
Francesco Mani
b5b78125c9 test scheduling of pucch reception 2020-05-15 18:47:06 +02:00
Francesco Mani
d268c320ca Merge branch 'develop' into NR_RRC_harq_hacks 2020-05-15 16:26:33 +02:00
Francesco Mani
0add4fdb55 bugfix in pucch timing indicator selection 2020-05-15 09:14:30 +02:00
s.rampalli
2792f8ce4a compilation done need to verify with GES endc setup 2020-05-14 15:36:45 +05:30
s.rampalli
62bb979b49 coding done need to verify testing part 2020-05-14 12:22:44 +05:30
Raymond Knopp
f043c63a34 added 2 UCI tests to CI for polartest 2020-05-14 00:45:58 +02:00
Raymond Knopp
100f75ba45 polar coding for UCI (PUCCH) integrated into polartest for lengths 12...64 2020-05-14 00:41:15 +02:00
Francesco Mani
1c7ee3caba using num_dmrs_cdm_grps_no_data for PUSCH in PHY 2020-05-13 18:05:15 +02:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
a102405896 LDPC cuda support BG1 all length 2020-05-13 22:31:30 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
02dc4ba8ce configured LDPC on CPU and GPU 2020-05-13 22:27:36 +08:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
da62b92f6e Merge remote-tracking branch 'origin/develop' into NCTU_OpinConnect_LDPC 2020-05-13 22:24:40 +08:00
Francesco Mani
6f0e4fe149 using numDmrsCdmGrpsNoData for PDSCH in PHY 2020-05-13 16:22:05 +02:00
NCTU OpinConnect Terng-Yin Hsu/WEI-YING,LIN
5c7e4c21db LDPC implementation on Quadro p5000 by NCTU OpinCommect 2020-05-13 22:21:49 +08:00
matzakos
97d1f98f67 Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into NR_RRC_PDCP 2020-05-13 13:56:18 +02:00
cig
268a35419e Hotfix scrambling rnti
- this is needed because in the current implementation of the gNB
  the scrambling rnti is 0 for the RA and dci rnti otherwise
2020-05-12 17:38:47 +02:00
cig
4522cd4eb9 Changes to RA procedures:
- monitoring RA window
- taking RA_offset into account
- workaround to generate PRACH only when the RAR has not been received yet (RA is idle)
2020-05-12 17:33:28 +02:00
cig
66395ff7b7 Set RA offset at UE to compensate for 2 frames offset introduced by gNB 2020-05-12 17:28:35 +02:00
cig
8394ee82f5 More dynamic DCI configuration 2020-05-12 17:28:11 +02:00
cig
08b6211956 Scheduling of Msg2 2020-05-12 17:23:50 +02:00
cig
12b585a190 Fixes to RA procedure 2020-05-12 17:19:10 +02:00
cig
58dbf7d4b9 New design UE scheduler 2020-05-12 17:19:00 +02:00
Raymond Knopp
704e167b86 Merge branch 'NR_RRC_PDCP' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PDCP 2020-05-12 15:31:12 +02:00
Raymond Knopp
06d4ef6177 Modification of an input parameter type for nr_rrc_rlc_config_asn1_req 2020-05-12 14:58:44 +02:00
Francesco Mani
ad246f961b reset rnti and harq_mask in dlsch structure 2020-05-12 14:14:41 +02:00
cig
96b5755753 Cleanup NR UE DCI configuration 2020-05-11 11:09:36 +02:00
cig
785ffa4def Minor fixes 2020-05-11 11:09:36 +02:00
cig
4dc0e7f235 Enabled UE to process RX and TX in every DL or UL (or mixed) slot respectivey
- the commit fixes also the selection of the thread_id in TX procedures
- DCI configuration is currently limited to slot 1 and 7
2020-05-11 11:09:36 +02:00
cig
e3ba90b055 Fixes for polar and scrambling RNTI at UE
- including temporary hotfix for the polar rnti
2020-05-11 11:09:36 +02:00
Francesco Mani
cdead06962 fix for scrambling rnti and dci format 2020-05-11 11:09:36 +02:00
Francesco Mani
88e5203dfa bugfix in dci1_1 size 2020-05-08 17:19:31 +02:00
Francesco Mani
185477dc9f fix for ULSCH ok when PRBs are empty 2020-05-08 15:29:28 +02:00
Francesco Mani
927d97fa3f Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-08 15:27:10 +02:00
Raymond Knopp
160fef9a2d fix after merge 2020-05-08 10:25:06 +02:00
Raymond Knopp
afa7ef9afe Merge branch 'NR_RRC_harq_hacks' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq_hacks 2020-05-08 10:17:18 +02:00
Raymond Knopp
70dff719e2 pusch dmrs rx fix, added comp file dump to ulsim 2020-05-08 10:16:30 +02:00
Ahmed Hussein
6a32e60a4f Fixed bug regarding TBS calculation and G calculation
- The number of nb_dmrs_re at gNB side was set to 6, but here it is assumed
    that there will be no data allocation in OFDM symbols that carry DMRS
  - nb_dmrs_re that is being given as an input to the TBS calculation,
    should be multiplied by the number of DMRS symbols in order to get the total
    number of DMRS REs per RB
  - In the calculation of G, only the number of DMRS per RB in 1 OFDM symbol should
    be given as an input, because inside the function of the G calculation, this
    number is being multiplied by the number of OFDM symbols that carry DMRS
2020-05-07 14:41:19 +02:00
Ahmed Hussein
589801f620 Fixed bug related to N_TA_offset not being applied at UE
- By default this value is equal to 0 at gNB in case of ulsim, but
    has a value in case of RF simulator
  - The N_TA_offset was calculated but not used at UE side
2020-05-07 14:39:28 +02:00
Thomas Schlichter
25c4cea36f remove now unnecessary frame_gap completely 2020-05-07 10:02:11 +02:00
Thomas Schlichter
aa7e10c405 also use the high 6 bits from MIB when calculating decoded_frame_rx after the initial synchronization 2020-05-07 10:02:11 +02:00
Thomas Schlichter
fa18a88fdb fix updating UE->frame_gap and calculation if proc->frame_rx > dcireq.dl_config_req.sfn 2020-05-07 10:02:11 +02:00
Francesco Mani
d4929cc21e bugfix in dmrs offset for pusch 2020-05-07 09:52:48 +02:00
Francesco Mani
014e045ba6 bugfix in dmrs offset for pusch 2020-05-07 09:44:07 +02:00
s.rampalli
cf844cef14 changed the encoded buffer size to 4096 2020-05-06 22:31:08 +05:30
Sakthivel Velumani
87ecb91885 updated cmakelist 2020-05-06 13:45:14 +02:00
Raymond Knopp
bd1c4dd00b Add default NR RLC UM bearer configuration 2020-05-05 20:30:19 +02:00
s.rampalli
37dcfb1a9d fixed rrc x2ap runtime issues 2020-05-05 21:36:07 +05:30
Sakthivel Velumani
7746421192 Merge branch 'develop' into NR_RRC_harq_b 2020-05-05 16:32:37 +02:00
s.rampalli
cfd402a03a mistake 2020-05-05 19:53:13 +05:30
s.rampalli
509fb16705 rrc changes 2020-05-05 17:22:17 +05:30
s.rampalli
c52c9b7ba4 fixed rrc issues 2020-05-05 14:03:05 +05:30
s.rampalli
85cfa10961 rrc runtime errors fixed 2020-05-05 13:55:49 +05:30
s.rampalli
bdc7943b8f fixed encoding failed issue 2020-05-05 09:09:27 +05:30
Raymond Knopp
632ef048c8 Introduce triggering of PDCP and RLC configuration for the list of added DRBs
-Upon reception of SgNB Addition Request from the eNB, the gNB configures pdcp and rlc entities for the list of DRBs provided from the eNB
2020-05-04 18:12:20 +02:00
Raymond Knopp
017a6ef141 Introduce NR RRC->RLC configuration
-Create nr_rrc_rlc_config_asn1_req function
-Update RLC DRB addition functions with NR structures instead of LTE
2020-05-04 17:58:36 +02:00
Raymond Knopp
eb51e39f39 Introduce NR RRC->PDCP configuration
-Create nr_rrc_pdcp_config_asn1_req function
-Update PDCP DRB addition functions with NR structures instead of LTE
2020-05-04 17:48:18 +02:00
Sakthivel Velumani
64808859b9 updated CI test list with harq test 2020-05-04 15:42:15 +02:00
Raymond Knopp
042aac3d4f reverted handling of transform_precoding variable in NR FAPI. Added correct handling of this in ulsim.c 2020-05-04 09:49:18 +02:00
Sakthivel Velumani
7655123997 included throughput print 2020-05-04 09:29:36 +02:00
Raymond Knopp
2f9bf0d84c added file reading for ulsim 2020-05-04 08:19:48 +02:00
laurent
7aa9a7bd49 work in progress, re-merge before continuing 2020-05-03 18:30:26 +02:00
Thomas Schlichter
79471f2f6d Merge branch 'develop' into NR_RRC_PRACH_procedures
Conflicts:
	executables/nr-ue.c
	openair1/PHY/NR_TRANSPORT/nr_dci_tools.c
	openair1/PHY/NR_UE_TRANSPORT/nr_prach.c
	openair1/PHY/defs_RU.h
	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
	openair2/RRC/NR/rrc_gNB_nsa.c
	openair2/X2AP/x2ap_eNB_handler.c
2020-04-30 18:54:37 +02:00
Raymond Knopp
84b1df4b87 Merge remote-tracking branch 'origin/develop' into nr_pucch2 2020-04-30 16:12:18 +02:00
Francesco Mani
86bc794518 bugfix in dmrs reception for pusch 2020-04-29 14:00:32 +02:00
Ahmed Hussein
fcf6439040 Fixed bug related to N_TA_offset not being applied at UE
- By default this value is equal to 0 at gNB in case of ulsim, but
    has a value in case of RF simulator
  - The N_TA_offset was calculated but not used at UE side
2020-04-29 12:08:22 +02:00
Sakthivel Velumani
4eb78faaa1 added harq stats in dlsim 2020-04-28 21:59:34 +02:00
Ahmed Hussein
eeef6da2aa Fixed bug regarding TBS calculation and G calculation
- The number of nb_dmrs_re at gNB side was set to 6, but here it is assumed
    that there will be no data allocation in OFDM symbols that carry DMRS
  - nb_dmrs_re that is being given as an input to the TBS calculation,
    should be multiplied by the number of DMRS symbols in order to get the total
    number of DMRS REs per RB
  - In the calculation of G, only the number of DMRS per RB in 1 OFDM symbol should
    be given as an input, because inside the function of the G calculation, this
    number is being multiplied by the number of OFDM symbols that carry DMRS
2020-04-28 18:05:14 +02:00
Francesco Mani
5cbb380efb almost empty function to handle uci indication 2020-04-28 14:08:19 +02:00
Raymond Knopp
dc5149e854 Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into NR_RRC_PDCP 2020-04-27 19:28:39 +02:00
Raymond Knopp
2723d095b6 Merge remote-tracking branch 'origin/NR_RRC_harq_hacks' into NR_RRC_PDCP 2020-04-27 19:26:53 +02:00
Francesco Mani
46a7b6c742 bugfix in dci size for RA 2020-04-24 18:59:59 +02:00
cig
bfe580bd41 UE RA procedures changes to preamble selection:
- get preamble from rach_ConfigDedicated in contention free mode
- do preamble selection only in prach slot
2020-04-24 13:31:52 +02:00
laurent
07c8d00011 Merge branch 'develop' of https://gitlab.eurecom.fr/oai/openairinterface5g into main5G 2020-04-24 11:45:29 +02:00
laurent
151bde05c8 merge develop, compile only 2020-04-24 11:45:22 +02:00
Francesco Mani
111ea68f63 fix for scrambling rnti and dci format 2020-04-24 11:42:50 +02:00
Sakthivel Velumani
fd50f1b5bd fixed round update in UE 2020-04-24 01:44:47 +02:00
Sakthivel Velumani
93e745b8ec updated dlsim to test harq 2020-04-23 19:45:00 +02:00
Sakthivel Velumani
6b307e8123 bugfix in ratematching for higher rv 2020-04-23 19:44:04 +02:00
cig
5eacaddd0e Code cleanup 2020-04-23 09:55:04 +02:00
cig
32af60bcf5 UE RA procedures changes to preamble selection:
- get preamble from rach_ConfigDedicated in contention free mode
- do preamble selection only in prach slot
2020-04-23 09:55:04 +02:00
cig
f276494317 Completed dlsch demodulation for RA PDSCH 2020-04-23 09:55:04 +02:00
cig
c56854afe4 Set proper polar rnti and scrambling rnti for the phy-test and do-ra running modes:
- in phy-test both rnti are set to same rnti
- in do-ra the scrambling rnti is set to 0 while the polar rnti is the RA_rnti (computed as per
  TS 38.321)
2020-04-23 09:55:04 +02:00
cig
acfad36f1a Code cleanup:
- restructured nr_pdcch_unscrambling function
- minor cleanups
- formatting
2020-04-23 09:55:04 +02:00
cig
220685e320 UE RAR DCI reception
- NR UE scheduled response for RA PDSCH case
- UE processing of RAR DCI
- some cleanup and formatting
2020-04-23 09:54:34 +02:00
Francesco Mani
b6ba07af14 fix in dlsim 2020-04-23 09:43:25 +02:00
cig
0546bcea94 Doing phy procedures RX in slot 7 for RAR DCI 2020-04-22 17:57:24 +02:00
Francesco Mani
a66f6907de bufix in calling phy pucch function 2020-04-22 11:11:22 +02:00
Francesco Mani
80571bb81e fapi functions for pucch 2020-04-22 09:54:56 +02:00
matzakos
6b79403767 NR pdcp: Rebase initial implementation
Initially targeting ENDC setup with commercial UE
- Missing nr_rrc_pdcp and nr_rrc_rlc configuration wrt the established DRB
- Remaining to test with user plane data traffic (Downlink and Uplink)
2020-04-21 15:20:22 +02:00
Francesco Mani
48325d58e5 some logs for phytest scheduling DL with phone 2020-04-21 09:58:53 +02:00
Francesco Mani
3c5b6368f1 bugfix for numdldci for RA 2020-04-20 13:19:10 +02:00
s.rampalli
939a28ba07 Removed temporary values in x2ap and rrc 2020-04-20 11:27:56 +05:30
Francesco Mani
4b0ddb81d5 scheduling one pdcch+pdsch after RA procedure 2020-04-18 10:52:49 +02:00
Francesco Mani
ddf4ca87d2 [gNB] taking into account preamble set at RRC and finalization of RA procedures 2020-04-17 19:07:47 +02:00
Francesco Mani
b51beff901 Merge branch 'NR_gNB_SCF_Indication' into NR_RRC_harq_hacks 2020-04-17 11:13:27 +02:00
Francesco Mani
9deb0ed08c Merge branch 'develop' into NR_RRC_PRACH_procedures 2020-04-16 18:58:53 +02:00
Francesco Mani
c4e284a3e1 fix in CCEs function 2020-04-16 15:54:27 +02:00
Francesco Mani
2ae14a66d8 adding conf file to test with phone 2020-04-16 12:54:00 +02:00
Francesco Mani
fd237596cf uncommenting in cce function 2020-04-16 12:08:16 +02:00
Cedric Roux
7f196b11f6 5g nsa: hacks for eurecom testing 2020-04-15 17:06:59 +02:00
cig
6f87d474b7 Fixed wrong printing in nr_process_timing_advance 2020-04-15 16:59:09 +02:00
laurent
497595ba0c merge again develop 2020-04-14 21:16:23 +02:00
laurent
b0b5a1012a cosmetic 2020-04-14 19:53:43 +02:00
Sakthivel Velumani
ccb7d693f4 Merge branch 'NR_RRC_harq' of remote into NR_RRC_harq 2020-04-14 15:03:52 +02:00
cig
ec422f7050 Introduced a delay after a completed sync before starting msg1 generation:
- this was necessary because as soon as the gNB starts, it tries detecting
  the prach preambles and it mesaures the background noise. However, there is
  a delay of several dozens of frames before it considers the preables as
  detected.
- the solution at the UE consists in avoiding sending preamble as soon as the
  UE syncs by introducing an offset, this keeps the power measurements low at
  gNB side as long as the preamble detection counter is under threshold
2020-04-14 14:28:01 +02:00
cig
19530c5ab9 Cleanup nr transport header file 2020-04-14 14:28:01 +02:00
cig
8dd88bcb0e Deleted duplicated transport common proto header file 2020-04-14 14:28:01 +02:00
cig
c0029473dc Fixed some warnings 2020-04-14 14:28:01 +02:00
cig
3e70405b58 Cleanup transport_proto header 2020-04-14 14:28:00 +02:00
Francesco Mani
3dc9ad0567 Merge branch 'develop' into NR_RRC_PRACH_procedures 2020-04-14 14:17:34 +02:00
Sakthivel Velumani
745d8a3876 setting dmrs type for 1_1 dci 2020-04-14 01:30:35 +02:00
Francesco Mani
478a3f73e2 bugfix for coreset id 2020-04-13 15:29:40 +02:00
Francesco Mani
ecb81ef995 Merge branch 'NR_RRC_PRACH_procedures' into NR_RRC_harq 2020-04-13 15:15:48 +02:00
Francesco Mani
042e4e5c77 reworking of nr_configure_pdcch 2020-04-13 09:18:48 +02:00
laurent
a9ec7a1d7c merge develop, updates related 2020-04-10 20:55:50 +02:00
laurent
b90e8ea7db merge, compile ok, regular exe ok, ocp-gnb not 2020-04-10 18:21:37 +02:00
Sakthivel Velumani
181e59db96 fixing bugs in 1_1 dci 2020-04-10 17:54:23 +02:00
Florian Kaltenberger
6ae7548291 updating doc/RUNMODEM.md 2020-04-10 14:21:03 +02:00
Raymond Knopp
b6ce8ed962 ENDC S1-U gNB support: Separate some GTP functions between eNB and gNB. Downlink traffic from SGW arrives properly at gNB now after path switch 2020-04-10 12:15:52 +02:00
Francesco Mani
221e152653 one file left behind 2020-04-10 10:43:44 +02:00
Francesco Mani
ffc0dc377e Merge branch 'NR_RRC_harq' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq 2020-04-10 10:02:38 +02:00
Francesco Mani
6237ba3735 Merge branch 'nr_pucch' into NR_RRC_harq 2020-04-10 10:02:21 +02:00
Sakthivel Velumani
1c3c5c772f allocating memory to UL_INFO pdus 2020-04-09 19:22:26 +02:00
Francesco Mani
9296949906 fix for dlschsim for no data in dmrs symbol 2020-04-09 17:25:24 +02:00
Sakthivel Velumani
9e8e7de10a using same dci_pdu_rel15 for UE also 2020-04-08 22:24:08 +02:00
Sakthivel Velumani
e0acce65c4 dci 1_1 bit decoding 2020-04-08 22:22:52 +02:00
Francesco Mani
def0450b4a Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-04-08 17:57:45 +02:00
Francesco Mani
b9d80576aa patch for no data in dmrs symbol for pusch tx 2020-04-08 17:32:19 +02:00
matzakos
732081dd22 ENDC testing: Remove some remaining modifications used only for testing 2020-04-08 11:17:44 +02:00
Francesco Mani
2de42fcf0c increasing snr in ulsim mcs9 2020-04-08 09:02:32 +02:00
Francesco Mani
17e3f2857c possible fix for ghost dlsim in ci? 2020-04-08 09:02:19 +02:00
Sakthivel Velumani
6f3934acc0 moved dci_pdu_rel15_t to mac_common 2020-04-07 18:09:07 +02:00
Sakthivel Velumani
3053f37dec added NR_CellGroupConfig to mac in UE 2020-04-07 18:08:22 +02:00
Francesco Mani
ac2d1d79d7 minor fixes 2020-04-07 17:38:31 +02:00
Francesco Mani
20f5e27e50 filling dci pdu 2020-04-07 17:24:55 +02:00
Thomas Schlichter
690176821d make mac_sdus an array instead of a pointer 2020-04-07 13:31:14 +02:00
cig
1e63219bbf Fixed bugs in UE RA procedures:
- number or RA preambles unitialised
- power ramp counter not incrementing
- segmentation fault due to wrong pointer initialisation
2020-04-07 11:07:41 +02:00
matzakos
c8f2b4e035 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-04-06 19:07:12 +02:00
matzakos
3b6b6d0671 Fix ULSCH traffic generation at UE side. Still not received at gNB 2020-04-06 19:06:58 +02:00
Francesco Mani
b29d270708 Merge branch 'NR_RRC_harq_newdcipdu' into NR_RRC_harq 2020-04-06 15:30:10 +02:00
Thomas Schlichter
40bd00aa4b Add nr_prachsim to CI 2020-04-06 12:47:37 +02:00
Francesco Mani
bfaa037e83 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-04-06 11:05:27 +02:00
Francesco Mani
614c4ab6bd adding do_ra flag into new statement 2020-04-06 10:53:48 +02:00
Francesco Mani
c9d1fe85fe Merge branch 'NR_RRC_PRACH_procedures_todevelop' into NR_RRC_PRACH_procedures 2020-04-06 09:21:01 +02:00
matzakos
374610dbe2 ENDC path switch procedures: Small correction 2020-04-06 09:20:25 +02:00
matzakos
cd843860a8 Fix RFSIMULATOR issues (gNB side) after merge of NR_test_S1U_RRC_PRACH_procedures into NR_RRC_PRACH_procedures 2020-04-04 11:56:06 +02:00
Francesco Mani
8892d00693 flag do_ra alternative to phy_test to perform RA procedures 2020-04-04 10:32:07 +02:00
Sakthivel Velumani
7846132e1c updated dci_pdu_rel15_t
moved nr_dci_size out of scheduler_phytest
2020-04-03 19:12:06 +02:00
Francesco Mani
f72259de8e reactivating phytest schedulers 2020-04-03 16:58:08 +02:00
Francesco Mani
f73dd0742e Revert "ENDC path switch S1-U: Bugfixes at eNB side. Problem at S1AP E-RAB-Modification-Indication message encoding to be resolved"
This reverts commit f895c4d929.
2020-04-03 14:19:28 +02:00
Francesco Mani
448cae257d Revert "ENDC path switch S1-U: Bugfixes at gNB side"
This reverts commit 1462f0e659.
2020-04-03 13:41:23 +02:00
Francesco Mani
fbf74bc395 setting type 1 dl freq resource allocation in rrc 2020-04-02 18:48:02 +02:00
Raymond Knopp
f9fc712a9b Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-04-02 17:44:08 +02:00
cig
6e404180f7 Fixed compilation warnings 2020-04-02 17:24:33 +02:00
cig
0366be797f Prach_start adjustment for both HW and simulation 2020-04-02 16:09:15 +02:00
cig
cf47f059eb Restored preamble index configuration in PRACH UE 2020-04-02 16:09:15 +02:00
cig
8c68f37450 Prachsim compilation and NR PRACH UE fixes 2020-04-02 16:09:07 +02:00
Sakthivel Velumani
684dec16c1 Merge branch 'NR_RRC_harq' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_harq 2020-04-02 03:00:12 +02:00
Sakthivel Velumani
bf819df6e3 changed dci_pdu_rel15 struct to hold bitwidth for each dci field 2020-04-02 02:54:29 +02:00
Sakthivel Velumani
b4d273d63b added remaining fields in 1_1 DCI pdu fill 2020-04-01 21:30:34 +02:00
Francesco Mani
cff21926e8 Merge branch 'nr_pucch' into NR_RRC_harq 2020-04-01 17:22:44 +02:00
Sakthivel Velumani
bb3883bff0 1_1 DCI encoding - added checks from RRC IEs 2020-04-01 01:26:02 +02:00
Sakthivel Velumani
f404f29e2f added some fields in 1_1 DCI bit encoder 2020-03-31 15:27:41 +02:00
Raymond Knopp
e9ff6bad2e Merge with branch NR_RRC_PRACH_procedures 2020-03-31 15:25:42 +02:00
Raymond Knopp
2378b73b1e ENDC path switch procedures: E-RAB Modification Confirm message successfully received at the eNB from the MME now 2020-03-30 14:38:42 +02:00
cig
7f00dbc53c Const prachfmt in nr_mac_common 2020-03-30 12:03:31 +02:00
cig
2b3446ed15 Hardcoded PRACH tx_amp to AMP 2020-03-27 17:09:50 +01:00
cig
cca28a0abd Moved PRACH PDU struct to NR_UE_PRACH in PHY_VARS_NR_UE:
- now the FAPI interface copies the struct directly to NR_UE_PRACH
- NR_PRACH_CONFIG_COMMON and NR_PRACH_CONFIG_INFO have been removed from FP
2020-03-27 17:09:50 +01:00
cig
6d413e2c57 Bugfix returning null pointer to prach resources 2020-03-27 17:09:50 +01:00
cig
3bb1407e54 NR PRACH generation fixes for correct reception of msg1 2020-03-27 17:09:43 +01:00
cig
6982e6f443 Code cleanup and formatting 2020-03-26 18:54:58 +01:00
cig
2c6e49c0da Enabled timing offset compensation in RFSIM 2020-03-26 18:54:58 +01:00
cig
453d574433 Temporary set condition on slot 19 to enter PHY PRACH procedures 2020-03-26 18:54:57 +01:00
cig
ae5f30ec8d Set flag to generate PRACH only on PRACH slot 2020-03-26 18:54:57 +01:00
cig
3bb82a02ee UE: N_TA_offset configuration depending on SCS and N_RB_DL 2020-03-26 18:54:57 +01:00
cig
04a9c72de3 Bugfix in selection of dual format A3/B3 2020-03-26 18:54:57 +01:00
cig
01b3038d77 Check on dlsch0_harq to avoid segmentation fault 2020-03-26 18:54:57 +01:00
cig
63d6b59f9d Enabled check on UE mode to start either ULSCH and PRACH procedures:
- ULSCH is temporary disabled
2020-03-26 18:54:50 +01:00
cig
d6f597cefe Commented out code for contention resolution at UE side 2020-03-26 18:27:13 +01:00
cig
eb7f3193aa Enabled compute_nr_prach_seq to be used at both gNB and UE side:
- now the function gets more input arguments but can be used from both UE and gNB
- this change was needed because the prach fapi of UE differs from the gNB one
2020-03-26 18:27:13 +01:00
cig
4e38ea2367 Set UE mode to NOT_SYNCHED by default 2020-03-26 18:27:13 +01:00
cig
ae9303bd52 Implemented dft/idft 36864 2020-03-26 18:27:13 +01:00
cig
924d361ded Enabled NR UE PRACH scheduler 2020-03-26 18:27:13 +01:00
Raymond Knopp
fa3f461783 ENDC path switch procedures: Remove some IEs from E-RAB Modification Indication message which finally appear to be not mandatory 2020-03-26 18:20:05 +01:00
Francesco Mani
076e7c8e53 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-03-26 12:50:46 +01:00
Francesco Mani
666adcc37e Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-03-26 12:50:17 +01:00
Francesco Mani
4c30e6d3a5 new file for prach dummy functions to avoid compilation failures on physim 2020-03-26 12:29:20 +01:00
Thomas Schlichter
ce923e59ed fix critical "assignment from incompatible pointer type" warnings 2020-03-26 09:55:22 +01:00
Francesco Mani
e451ff54ef fixing compilation errors and one file left behind 2020-03-26 09:34:07 +01:00
Francesco Mani
d320fa13b3 Merge branch 'develop' into NR_RRC_PRACH_procedures 2020-03-25 18:45:00 +01:00
Raymond Knopp
48a61ab598 ENDC path switch procedures: Small modification at generation of E-RAB Modification Indication message 2020-03-25 16:03:43 +01:00
Francesco Mani
817afd999b fixing reference point for k in pusch dmrs 2020-03-24 16:00:52 +01:00
Raymond Knopp
39ab08b6b3 Merge branch 'NR_test_S1U_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_test_S1U_RRC_PRACH_procedures 2020-03-20 22:55:22 +01:00
Raymond Knopp
1462f0e659 ENDC path switch S1-U: Bugfixes at gNB side 2020-03-20 22:55:17 +01:00
Raymond Knopp
f895c4d929 ENDC path switch S1-U: Bugfixes at eNB side. Problem at S1AP E-RAB-Modification-Indication message encoding to be resolved 2020-03-20 22:48:09 +01:00
Francesco Mani
f508f310cc fix in rbs extract for dmrs 2020-03-20 14:24:40 +01:00
Francesco Mani
5ef2af1cce minor changes 2020-03-17 16:27:08 +01:00
matzakos
cbba3da30b ENDC path switch S1-U: Remove warnings 2020-03-16 21:20:00 +01:00
Cedric Roux
9bbb12f7ae nr-gnb: configure contention-free random access for the UE 2020-03-16 09:37:40 +01:00
matzakos
cb0b736993 ENDC path switch S1-U: Modifications to avoid linking errors for lte-softmodem 2020-03-15 16:23:18 +01:00
Francesco Mani
abddce1dc7 bugfix in computation of B 2020-03-13 18:23:27 +01:00
matzakos
7408ddb2c3 ENDC path switch S1-U: Adding GTP-U tunnel related functionality at gNB 2020-03-13 12:55:49 +01:00
Francesco Mani
ab39b74ca1 bugfix in pusch dmrs reception 2020-03-13 10:19:24 +01:00
matzakos
c56075928a ENDC path switch S1-U: Bugfixes 2020-03-12 19:56:15 +01:00
Cedric Roux
143fd5ea5a bugfix 2020-03-12 14:50:02 +01:00
Cedric Roux
86dc600cd9 bugfix 2020-03-12 14:33:47 +01:00
Francesco Mani
18c8a4a4e6 taking into account n_ta_offset in slot fep ul 2020-03-12 14:09:41 +01:00
matzakos
b7524052e8 Merge branch 'NR_test_S1U_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_test_S1U_RRC_PRACH_procedures 2020-03-11 16:08:19 +01:00
matzakos
0564357e33 ENDC path switch S1-U: Minor correction 2020-03-11 16:07:02 +01:00
adk
c15fb8c7a4 PUSCH DMRS mapping type B start symbol fix 2020-03-11 14:45:14 +01:00
NCTU CS ISIP
689426e8c1 LDPC implement on Quadro p5000 2020-03-11 20:02:20 +08:00
Raymond Knopp
de34a2ff28 Update gNB configuration file used for ENDC 2020-03-11 12:02:55 +01:00
matzakos
07a2a095d3 ENDC path switch S1-U: Integrated S1AP E-RAB-Modification indication message at eNB, interfacing with RRC and X2AP to get proper configuration of E-RABs to be modified and GTP-U configuration at gNB 2020-03-11 10:37:48 +01:00
Raymond Knopp
e7c5bc55c4 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures
Conflicts:
	openair1/SCHED_NR/phy_procedures_nr_gNB.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
2020-03-10 08:24:45 +01:00
Raymond Knopp
47e0d056be Merge branch 'NR_RRCConfiguration' into NR_RRC_PRACH_procedures
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_dci.c
	openair1/PHY/NR_TRANSPORT/nr_prach.c
	openair1/PHY/NR_UE_TRANSPORT/nr_prach.c
	openair1/PHY/defs_nr_common.h
	openair1/SIMULATION/NR_PHY/nr_unitary_defs.h
	openair1/SIMULATION/NR_PHY/prachsim.c
	openair2/LAYER2/NR_MAC_UE/main_ue_nr.c
	openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
2020-03-09 21:14:32 +01:00
Francesco Mani
2ada0eddc5 fix for no data in dmrs in ulsch procedures 2020-03-09 17:35:30 +01:00
Francesco Mani
f9ca54e9a1 crc and tbs fixes in ulsch 2020-03-09 12:05:45 +01:00
Francesco Mani
631d345df8 fix indentation and removing an if in scheduler 2020-03-09 10:03:54 +01:00
Raymond Knopp
2b944d175a commit before merge 2020-03-07 15:24:51 +01:00
laurent
99729391a3 merge develop, first version of 5g simple main() 2020-03-06 21:45:26 +01:00
Francesco Mani
98714f3138 using SCF fapi structure for PUSCH and initialization of pusch dmrs sequences at nr_init 2020-03-06 18:05:12 +01:00
NCTU CS ISIP
1f6dbb20fe LDPC implementation on GPU
Signed-off-by: NCTU CS ISIP <tyhsu@cs.nctu.edu.tw>
2020-03-06 19:12:31 +08:00
NCTU CS ISIP
fb30fc6aa5 GPU branch
Signed-off-by: NCTU CS ISIP <tyhsu@cs.nctu.edu.tw>
2020-03-06 18:36:33 +08:00
NCTU CS ISIP
0f011679c0 NCTU_CS_ISIP
Signed-off-by: NCTU CS ISIP <tyhsu@cs.nctu.edu.tw>
2020-03-06 17:42:52 +08:00
Francesco Mani
e33dea5f38 fix prb mapping according to bwps 2020-03-05 12:19:15 +01:00
Cedric Roux
0ecc3149ba bugfix: ul grant is 27 bits, does not fit into uint16_t 2020-03-05 11:16:46 +01:00
Francesco Mani
f62d94c76f correct scheduling of msg3 reception 2020-03-05 09:59:59 +01:00
Francesco Mani
94b7d132c5 fix for tpc command 2020-03-04 17:56:37 +01:00
Francesco Mani
444442d3e3 mac scheduling of msg3 at gnb 2020-03-04 16:58:49 +01:00
Francesco Mani
cbbfbca5fb another fix in RE computation for no data in dmrs symbol in phy 2020-03-03 15:22:03 +01:00
Francesco Mani
595e9c6f74 RE computation for no data in dmrs symbol in phy fixed 2020-03-03 14:28:45 +01:00
Francesco Mani
e21900bb0a no data in dmrs symbol (hardcoded) 2020-03-02 15:31:30 +01:00
Raymond Knopp
7994fc2703 compilation errors after merge resolved 2020-03-01 19:46:27 +01:00
Raymond Knopp
02c9e83108 Merge remote-tracking branch 'origin/develop' into develop-oriecpriupdates
Conflicts:
	openair1/PHY/LTE_TRANSPORT/if5_tools.c
	openair1/PHY/LTE_TRANSPORT/prach.c
	openair1/PHY/defs_eNB.h
	targets/ARCH/COMMON/common_lib.c
	targets/ARCH/ETHERNET/USERSPACE/LIB/ethernet_lib.c
	targets/RT/USER/lte-ru.c
2020-03-01 16:14:58 +01:00
Francesco Mani
19a1affc68 some change in pdsch configuration for msg2 2020-02-28 17:49:00 +01:00
cig
22d43925e0 Changes to the logic in nr_ue_dl_indication and nr_ue_prach_scheduler 2020-02-27 15:23:40 +01:00
cig
0d6e8ea0fb Interface MAC-PHY for RA: passing FAPI PRACH PDU params to PHY 2020-02-27 15:23:40 +01:00
cig
8ed99c28cf Fixes UE RA procedures:
- using NR RACH config common from scc
- fixed return type RA preamble target power functions
- retrieving PRACH format from PRACH resources
2020-02-27 15:23:40 +01:00
cig
b5bb01d4a6 Cleanup and formatting nr_ue_scheduled_response 2020-02-27 15:23:39 +01:00
cig
3c16ad5643 NR UE PRACH scheduler to fill up UL config request with PRACH PDU
- takes in input configuration index and TS 38.211 PRACH tables (6.3.3.2.x)
- using FAPI NR UL config request struct, derived from SCF standard for gNB
2020-02-27 15:23:39 +01:00
cig
f1e6a34f76 Add common mac functions declarations to nr_mac_common.h 2020-02-27 15:23:39 +01:00
Francesco Mani
80d286b637 removing 6db power boost of pdcch dmrs 2020-02-27 10:19:34 +01:00
Francesco Mani
5a9329d1d9 bugfix in filling dci for rar 2020-02-26 14:10:57 +01:00
Francesco Mani
63cf2ffa9a fixing the fix 2020-02-24 17:51:33 +01:00
Francesco Mani
d113daeb3a scrambling rnti fix in nr_dci 2020-02-24 17:46:19 +01:00
Raymond Knopp
e2ee13e9ce modifications for DCI size of format 1_0 for RAR and filling of FAPI for RAR according to special RAR-related configuration 2020-02-24 11:25:07 +01:00
Francesco Mani
edeb9ea77c Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-02-21 16:40:37 +01:00
Francesco Mani
6ff42815eb scheduling of msg2 and filling of fapi structures 2020-02-21 16:40:15 +01:00
Cedric Roux
eb18a90b7f bugfix: correct X_u computation for both 839 and 139 cases 2020-02-19 14:37:07 +01:00
Cedric Roux
669ba2fafe minor typo fix 2020-02-19 14:29:42 +01:00
Raymond Knopp
3520166644 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-02-19 08:35:52 +01:00
Raymond Knopp
dd2cefa457 added longer prefix in PRACH symbol zero period for 15/30 kHz SCS. Both gNB and UE processing is modified. prachsim is functional again with new FAPI interfaces. 2020-02-19 08:34:03 +01:00
cig
398a5e9063 Bugfix in RAR MAC PDU: set correct fields order for little endian machine 2020-02-18 16:13:56 +01:00
cig
6cd7e61163 UL grant tx and rx in RAR PDU. TS 38.213 ch 8.2, TS 38.321 ch 6.2.3 2020-02-18 15:17:50 +01:00
Francesco Mani
7bd76fda53 prach config common in UE 2020-02-18 14:57:14 +01:00
Cedric Roux
ac28136a78 fix: use dftlen instead of N_ZC 2020-02-18 10:26:51 +01:00
Raymond Knopp
46c2c11952 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-02-17 18:10:40 +01:00
Raymond Knopp
5fa07571ec N_ZC -> dftlen in nr_prach.c:nr_rx_prach_ru() 2020-02-17 18:09:47 +01:00
Cedric Roux
c46615dc8d fix: add cast to int32_t before mul for prach_ifft_tmp 2020-02-17 17:47:10 +01:00
Raymond Knopp
87a019a114 bug fixing in nr_rx_prach_ru 2020-02-17 16:09:41 +01:00
Raymond Knopp
fe20c53ee1 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-02-17 14:20:49 +01:00
Raymond Knopp
844da79531 added handling for N_TA_OFFSET computation and changed some use of FAPI configuration in RU (used ru->config instead of ru->gNB_list[0]->config) 2020-02-17 14:19:42 +01:00
Cedric Roux
b12ca2eba1 fix prach2 value 2020-02-17 12:43:11 +01:00
Cedric Roux
bb3bee9f23 fix dftlen computation 2020-02-17 12:22:19 +01:00
Cedric Roux
fd81b1ec89 fix 2020-02-17 12:02:28 +01:00
Francesco Mani
3c4ac034a5 small fixes 2020-02-17 09:24:25 +01:00
Raymond Knopp
456d1f9df9 added scheduling of PRACH RX procedures in gNB and RU entities. Initialization of prach sequences added to nr_init.c 2020-02-16 22:48:53 +01:00
Francesco Mani
a248c44d31 computation nb of root sequences in mac (plus some clean up in prach_common.c 2020-02-14 18:57:04 +01:00
Raymond Knopp
5eeb25e290 integration of remaining FAPI PRACH interfaces in L1 along with list handling for PRACH RX requests 2020-02-14 09:58:36 +01:00
Raymond Knopp
7c9372d761 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures
Conflicts:
	openair1/PHY/NR_TRANSPORT/nr_transport_proto.h
	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
2020-02-14 05:49:06 +01:00
Raymond Knopp
e8834e9620 added FAPI interfaces int gNB prach receiver functions (rx_nr_prach,rx_nr_prach_ru) and in indication to MAC. 2020-02-14 05:44:12 +01:00
Francesco Mani
f8523b6c87 Merge branch 'NR_RRC_PRACH_procedures' of https://gitlab.eurecom.fr/oai/openairinterface5g into NR_RRC_PRACH_procedures 2020-02-13 14:24:33 +01:00
Francesco Mani
a7ab50e874 scheduling PRACH and filling fapi PRACH PDU 2020-02-13 13:50:44 +01:00
Francesco Mani
eda3a76e13 fix in function to read prach tables 2020-02-13 09:12:02 +01:00
Francesco Mani
f7611d12a2 prach tables in mac_common and function to read them 2020-02-12 18:06:30 +01:00
cig
fdaf4ff92c Fixed warnings gNB compilation 2020-02-12 17:32:08 +01:00
cig
3341846d4c Handled uninitialised return value in get_tx_amp_prach 2020-02-12 17:32:08 +01:00
cig
498ce5fede Fixed wanrnings nrUE compilation 2020-02-11 16:41:59 +01:00
cig
794348e0b9 Removed unnecessary return in gnb phytest scheduler (was followed by assert on same condition) 2020-02-11 14:50:22 +01:00
cig
9c79e7e353 Fixed compilation after rebase 2020-02-11 14:45:44 +01:00
cig
7e25d85f5c Cleanup code, comments 2020-02-10 20:02:16 +01:00
cig
98480e7102 RA, Updated nr_ue_get_rach:
- using LTE function mac_rrc_nr_data_req_ue in noS1 mode
- cleanup code, comments
- fixes RA procedure
- Processing UL MAC PDU according to TS 38.321 ch 6.1:
- introduced function for gNB side UL PDU processing
- fixed bug in nr_ue_process_mac_pdu
2020-02-10 20:02:16 +01:00
cig
6c61fef362 Added RA_SUCCEEDED to RA_state_t 2020-02-10 20:01:39 +01:00
cig
99256c24ce MAC CE contention resolution reception 2020-02-10 20:01:39 +01:00
cig
bbc0d1deeb Adapted get_nr_PL to be used in RA MAC procedures 2020-02-10 20:01:39 +01:00
cig
9653b954d3 Contention resolution TS 38.321 ch 5.1.5 2020-02-10 20:01:39 +01:00
cig
6149d825e2 Msg3 transmitted, flush Msg3 buffer when RA is not active 2020-02-10 20:01:39 +01:00
cig
a70fa82ad8 Removed phy vars members from ue mac inst struct 2020-02-10 20:01:39 +01:00
cig
156defcd0b Fixes RAR generation, reception 2020-02-10 20:01:39 +01:00
cig
986b5fb247 Integrated nfapi_nr_dl_dci_pdu_t in DL DCI 2020-02-10 20:01:39 +01:00
cig
ffa5911dc1 RA fixes 2020-02-10 20:01:39 +01:00
cig
903a1ec6a8 Cleanup code, removed gNB headers in UE files 2020-02-10 20:01:39 +01:00
cig
36195ec31a RA fixes and additions:
- RA resource selection and transmission
- MAC header structs for RA
- RA procedure msg1 fixes
- code cleanup
2020-02-10 20:01:39 +01:00
cig
e01dd43b7b Cleanup comments, removed UE files from gNB MAC library 2020-02-10 19:59:36 +01:00
cig
083234133a Hardcoded prach config common parameters 2020-02-10 19:59:36 +01:00
Guido Casati
e0e8bbcfdb RACH MAC procedure (RA initiation and Preamble selection)
- Updated PRACH procedures and general code formatting
- gNB msg1 handling and RAR generation
- general bug fixing
- formatting
- missing headers
- RAR handling.
2020-02-10 19:59:36 +01:00
Bo Zhao
5aec9ab505 Solve the uninitialized conditional jump and invalid read/write errors from the valgrind log 2020-02-10 19:56:39 +01:00
Bo Zhao
7ea608720f Extend the length of the channel processing to 32 bits 2020-02-10 19:56:39 +01:00
Bo Zhao
ac12245252 Bugfix: 1. fix the initial memory allocation; 2. correct the generation of the prach signal according to specs 2020-02-10 19:53:29 +01:00
Bo Zhao
f2eb214156 1. assertion relax for preamble format 3; 2. memset bugfix for RB=106; 3. repetition bugfix for format A3 and B3 2020-02-10 19:53:29 +01:00
Bo Zhao
2cd49c3e24 Bug fix: remove the hardcoded tx preamble index 2020-02-10 19:53:29 +01:00
Bo Zhao
0ae6685dbb Bug fix: use NR prach table init function 2020-02-10 19:53:29 +01:00
Bo Zhao
42c698fd93 Bug fix: preamble energy and delay used in the peak detection should be scalar instead of array 2020-02-10 19:50:23 +01:00
Bo Zhao
21bb011b7a Conversion from the peak detection to the TA value, considering the numerology, N_RB and the sampling rate 2020-02-10 19:50:23 +01:00
Bo Zhao
1996bdaa34 Fix for DFT of different preamble formats according to specifications 2020-02-10 19:50:23 +01:00
Raymond Knopp
9133aeddc4 gtkw file 2019-11-12 20:03:21 +01:00
magounak
5bc28899d3 testing ECPRI receive path (with level adjustment for 12-bit OAI RX dynamic range) 2019-11-06 00:08:34 +01:00
magounak
2b59cdf537 modifactions after testing with R+S FSQ 2019-10-15 15:25:37 +02:00
Rakesh
666db5675d build fail fixes for nrUE 2019-10-14 21:02:22 +02:00
Rakesh
ebb86d437d Merge branch 'nr_fapi_for_push' of https://gitlab.eurecom.fr/oai/openairinterface5g into nr_fapi_for_push 2019-10-14 19:26:24 +02:00
Rakesh
da524268c2 Adding VCD traces in gNB 2019-10-14 19:25:35 +02:00
Raymond Knopp
e7233f8a6d eCPRI fronthaul "flushing" prior to streaming. TX path still not included 2019-10-08 15:02:55 +02:00
Raymond Knopp
0399c14b18 modifications for timestamp interpreation (IF5) 2019-09-17 00:43:10 +02:00
Raymond Knopp
ba24109dae added UDP configuration in ORI data structures 2019-09-14 22:39:24 +02:00
Raymond Knopp
0e419d23d2 modifications for IF5, testing with 3rd party RRU 2019-09-14 11:39:30 +02:00
Raymond Knopp
8722655fdf fixed error in void recv_IF5() 2019-09-13 17:57:55 +02:00
Raymond Knopp
7a60be4dfe modifications for eCPRI framing in IF5 UDP only 2019-09-11 16:47:39 +02:00
Raymond Knopp
8e86edc352 cleanup callback added to thirdparty fronthaul interface 2019-09-07 10:42:57 +02:00
Raymond Knopp
d4da46a249 added third-party driver support for IF5 interface. 2019-09-05 22:32:32 +02:00
779 changed files with 145166 additions and 29925 deletions

8
.dockerignore Normal file
View File

@@ -0,0 +1,8 @@
*.log
cmake_targets/log/
cmake_targets/ran_build/
common/utils/T/T_IDs.h
common/utils/T/T_messages.txt.h
common/utils/T/genids
common/utils/T/genids.o
targets/bin/

6
.gitignore vendored
View File

@@ -12,3 +12,9 @@ targets/bin/
# vscode
.vscode
# Tags for vim/global
GPATH
GRTAGS
GTAGS
tags

View File

@@ -2,13 +2,12 @@
We want to make contributing to this project as easy and transparent as possible.
Please refer to the steps described on our website: [How to contribute to OAI](https://www.openairinterface.org/?page_id=112)
1. Sign and return a Contributor License Agreement to OAI team.
2. Create an account on [Eurecom GitLab Server](https://gitlab.eurecom.fr).
3. Provide the identifiant of this account to the OAI team (mailto:contact@openairinterface.org) so you have developer rights on this repository.
2. We recommend that you provide us with a professional or student email address
2. Register on [Eurecom GitLab Server](https://gitlab.eurecom.fr/users/sign_in)
3. Provide the OAI team with the **username** of this account to (mailto:contact@openairinterface.org) ; we will give you the developer rights on this repository.
4. The policies are described in these wiki pages: [OAI Policies](https://gitlab.eurecom.fr/oai/openairinterface5g/wikis/oai-policies-home)
- PLEASE DO NOT FORK the OAI repository on your own Eurecom GitLab account. It just eats up space on our servers.
- PLEASE DO NOT FORK the OAI repository on your own Eurecom GitLab account. It just eats up space on our servers.
- You can fork onto another hosting system. But we will NOT accept a merge request from a forked repository.
* This decision was made for the license reasons.
* The Continuous Integration will reject your merge request.

View File

@@ -21,3 +21,7 @@ The Regents of the University of California: BSD 3-Clause Licence.
Niels Provos <provos@citi.umich.edu>: BSD 2-Clause Licence.
## Credits for source code openair3/GTPV1-U/nw-gtpv1u: ##
Amit Chawre <http://www.amitchawre.net/contact.html>: BSD 2-Clause Licence.

View File

@@ -1,3 +1,4 @@
r*.raw
enb_*.log
ue_*.log
ping_*.*

View File

@@ -30,12 +30,14 @@ def sendSocialMediaMessage(pipeChannel, pipeColor, pipeMessage) {
}
}
def doRedHatBuild = false
def doFlexranCtrlTest = false
// Location of the executor node
def nodeExecutor = params.nodeExecutor
// VM Lockable resources
def vmResource = params.vmLockableResource
pipeline {
agent {
label nodeExecutor
@@ -66,7 +68,8 @@ pipeline {
"Test-IF4p5-TDD-Band38-Multi-RRU",
"Test-eNB-OAI-UE-FDD-Band7",
"Test-Mono-FDD-Band13-X2-HO",
"Test-TDD-Band78-gNB-NR-UE"
"Test-TDD-Band78-gNB-NR-UE",
"Test-OCP-FDD-Band7"
])
ansiColor('xterm')
}
@@ -84,21 +87,6 @@ pipeline {
echo "Platform is ${env.TESTPLATFORM_OWNER}"
}
if (params.RedHatRemoteServer == null) {
allParametersPresent = false
}
if (params.RedHatRemoteCredentials == null) {
allParametersPresent = false
}
if (params.RedHatWorkingPath == null) {
allParametersPresent = false
}
if (allParametersPresent) {
echo "Performing Red Hat Build"
doRedHatBuild = true
} else {
doRedHatBuild = false
}
if (params.FlexRanRtcGitLabRepository_Credentials != null) {
doFlexranCtrlTest = true
}
@@ -174,65 +162,81 @@ pipeline {
stage ("Start VM -- basic-sim") {
steps {
lock (vmResource) {
timeout (time: 5, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- gnb-usrp") {
steps {
lock (vmResource) {
timeout (time: 5, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant gnb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- nr-ue-usrp") {
steps {
lock (vmResource) {
timeout (time: 5, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant nr-ue-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- enb-usrp") {
steps {
lock (vmResource) {
timeout (time: 5, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- phy-sim") {
steps {
lock (vmResource) {
timeout (time: 5, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- enb-ethernet") {
steps {
timeout (time: 5, unit: 'MINUTES') {
lock (vmResource) {
timeout (time: 7, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant enb-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- ue-ethernet") {
steps {
timeout (time: 5, unit: 'MINUTES') {
lock (vmResource) {
timeout (time: 7, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
stage ("Start VM -- cppcheck") {
steps {
timeout (time: 5, unit: 'MINUTES') {
lock (vmResource) {
timeout (time: 7, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant cppcheck --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
}
}
}
}
@@ -278,7 +282,7 @@ pipeline {
steps {
gitlabCommitStatus(name: "Build eNB-USRP") {
timeout (time: 20, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
}
}
}
@@ -303,33 +307,14 @@ pipeline {
}
stage ("Build UE-ethernet") {
steps {
// This is typically the last one to finish.
lock (vmResource) {
gitlabCommitStatus(name: "Build UE-ethernet") {
timeout (time: 20, unit: 'MINUTES') {
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
}
}
}
}
stage ("Build eNB-USRP on Red Hat") {
when {
expression {doRedHatBuild}
}
steps {
gitlabCommitStatus(name: "Build eNB-USRP-RHE") {
script {
try {
withCredentials([
[$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.RedHatRemoteCredentials}", usernameVariable: 'RH_Username', passwordVariable: 'RH_Password']
]) {
timeout (time: 20, unit: 'MINUTES') {
sh "./ci-scripts/buildOnRH.sh --workspace $WORKSPACE --job-name ${JOB_NAME} --build-id ${BUILD_ID} --remote-host ${params.RedHatRemoteServer} --remote-path ${params.RedHatWorkingPath} --remote-user-name ${RH_Username} --remote-password ${RH_Password}"
}
}
} catch (Exception e) {
echo "Red Hat build failed but we could keep running pipeline if all ubuntu-based build passed"
}
}
}
}
}
}
}
@@ -391,6 +376,7 @@ pipeline {
stages {
stage ("Test physical simulators") {
steps {
lock (vmResource) {
script {
timeout (time: 90, unit: 'MINUTES') {
try {
@@ -402,6 +388,7 @@ pipeline {
}
}
}
}
}
}
stage ("Build Flexran Controller") {
@@ -409,6 +396,7 @@ pipeline {
expression {doFlexranCtrlTest}
}
steps {
lock (vmResource) {
script {
timeout (time: 20, unit: 'MINUTES') {
try {
@@ -418,10 +406,12 @@ pipeline {
}
}
}
}
}
}
stage ("Test basic simulator") {
steps {
lock (vmResource) {
script {
timeout (time: 30, unit: 'MINUTES') {
try {
@@ -433,10 +423,12 @@ pipeline {
}
}
}
}
}
}
stage ("Test L1 simulator") {
steps {
lock (vmResource) {
script {
timeout (time: 30, unit: 'MINUTES') {
try {
@@ -448,12 +440,14 @@ pipeline {
}
}
}
}
}
}
stage ("Test RF simulator") {
steps {
lock (vmResource) {
script {
timeout (time: 30, unit: 'MINUTES') {
timeout (time: 40, unit: 'MINUTES') {
try {
gitlabCommitStatus(name: "Test RF-sim") {
sh "./ci-scripts/oai-ci-vm-tool test --workspace $WORKSPACE --variant rf-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
@@ -463,10 +457,12 @@ pipeline {
}
}
}
}
}
}
stage ("Test L2 simulator") {
steps {
lock (vmResource) {
script {
timeout (time: 30, unit: 'MINUTES') {
try {
@@ -478,11 +474,14 @@ pipeline {
}
}
}
}
}
}
stage ("Destroy all Virtual Machines") {
steps {
lock (vmResource) {
sh "./ci-scripts/oai-ci-vm-tool destroy --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
}
}
}
}
@@ -683,6 +682,25 @@ pipeline {
}
}
}
stage ("Test OAI OCP-eNB - FDD - Band 7 - B210") {
steps {
script {
triggerSlaveJob ('OCPeNB-FDD-Band7-B210', 'Test-OCP-FDD-Band7')
}
}
post {
always {
script {
finalizeSlaveJob('OCPeNB-FDD-Band7-B210')
}
}
failure {
script {
currentBuild.result = 'FAILURE'
}
}
}
}
}
post {
always {

View File

@@ -266,6 +266,42 @@ pipeline {
}
stage('Log Collection') {
parallel {
stage('Log Collection (eNB - Build)') {
steps {
withCredentials([
[$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.eNB_Credentials}", usernameVariable: 'eNB_Username', passwordVariable: 'eNB_Password']
]) {
echo '\u2705 \u001B[32mLog Collection (eNB - Build)\u001B[0m'
sh "python3 ci-scripts/main.py --mode=LogCollectBuild --eNBIPAddress=${params.eNB_IPAddress} --eNBUserName=${eNB_Username} --eNBPassword=${eNB_Password} --eNBSourceCodePath=${params.eNB_SourceCodePath}"
echo '\u2705 \u001B[32mLog Transfer (eNB - Build)\u001B[0m'
sh "sshpass -p \'${eNB_Password}\' scp -o 'StrictHostKeyChecking no' -o 'ConnectTimeout 10' ${eNB_Username}@${params.eNB_IPAddress}:${eNB_SourceCodePath}/cmake_targets/build.log.zip ./build.log.${env.BUILD_ID}.zip || true"
}
script {
if(fileExists("build.log.${env.BUILD_ID}.zip")) {
archiveArtifacts "build.log.${env.BUILD_ID}.zip"
}
}
}
}
stage('Log Collection (OAI UE - Build)') {
steps {
echo '\u2705 \u001B[32mLog Collection (OAI UE - Build)\u001B[0m'
withCredentials([
[$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.UE_Credentials}", usernameVariable: 'UE_Username', passwordVariable: 'UE_Password']
]) {
sh "python3 ci-scripts/main.py --mode=LogCollectBuild --UEIPAddress=${params.UE_IPAddress} --UEUserName=${UE_Username} --UEPassword=${UE_Password} --UESourceCodePath=${params.UE_SourceCodePath}"
echo '\u2705 \u001B[32mLog Transfer (UE - Build)\u001B[0m'
sh "sshpass -p \'${UE_Password}\' scp -o 'StrictHostKeyChecking no' -o 'ConnectTimeout 10' ${UE_Username}@${params.UE_IPAddress}:${UE_SourceCodePath}/cmake_targets/build.log.zip ./build.log.${env.BUILD_ID}.zip || true"
}
script {
if(fileExists("build.log.${env.BUILD_ID}.zip")) {
archiveArtifacts "build.log.${env.BUILD_ID}.zip"
}
}
}
}
stage('Log Collection (eNB - Run)') {
steps {
withCredentials([

229
ci-scripts/args_parse.py Normal file
View File

@@ -0,0 +1,229 @@
# * 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
# */
#---------------------------------------------------------------------
# Python for CI of OAI-eNB + COTS-UE
#
# Required Python Version
# Python 3.x
#
# Required Python Package
# pexpect
#---------------------------------------------------------------------
#-----------------------------------------------------------
# Import Libs
#-----------------------------------------------------------
import sys # arg
import re # reg
import yaml
import constants as CONST
#-----------------------------------------------------------
# Parsing Command Line Arguements
#-----------------------------------------------------------
def ArgsParse(argvs,CiTestObj,RAN,HTML,EPC,ldpc,HELP):
py_param_file_present = False
py_params={}
while len(argvs) > 1:
myArgv = argvs.pop(1) # 0th is this file's name
#--help
if re.match('^\-\-help$', myArgv, re.IGNORECASE):
HELP.GenericHelp(CONST.Version)
sys.exit(0)
#--apply=<filename> as parameters file, to replace inline parameters
elif re.match('^\-\-Apply=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-Apply=(.+)$', myArgv, re.IGNORECASE)
py_params_file = matchReg.group(1)
with open(py_params_file,'r') as file:
# The FullLoader parameter handles the conversion from YAML
# scalar values to Python dictionary format
py_params = yaml.load(file,Loader=yaml.FullLoader)
py_param_file_present = True #to be removed once validated
#AssignParams(py_params) #to be uncommented once validated
#consider inline parameters
elif re.match('^\-\-mode=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-mode=(.+)$', myArgv, re.IGNORECASE)
mode = matchReg.group(1)
elif re.match('^\-\-eNBRepository=(.+)$|^\-\-ranRepository(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBRepository=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBRepository=(.+)$', myArgv, re.IGNORECASE)
else:
matchReg = re.match('^\-\-ranRepository=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.ranRepository = matchReg.group(1)
RAN.ranRepository=matchReg.group(1)
HTML.ranRepository=matchReg.group(1)
ldpc.ranRepository=matchReg.group(1)
elif re.match('^\-\-eNB_AllowMerge=(.+)$|^\-\-ranAllowMerge=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNB_AllowMerge=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB_AllowMerge=(.+)$', myArgv, re.IGNORECASE)
else:
matchReg = re.match('^\-\-ranAllowMerge=(.+)$', myArgv, re.IGNORECASE)
doMerge = matchReg.group(1)
ldpc.ranAllowMerge=matchReg.group(1)
if ((doMerge == 'true') or (doMerge == 'True')):
CiTestObj.ranAllowMerge = True
RAN.ranAllowMerge=True
HTML.ranAllowMerge=True
elif re.match('^\-\-eNBBranch=(.+)$|^\-\-ranBranch=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBBranch=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBBranch=(.+)$', myArgv, re.IGNORECASE)
else:
matchReg = re.match('^\-\-ranBranch=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.ranBranch = matchReg.group(1)
RAN.ranBranch=matchReg.group(1)
HTML.ranBranch=matchReg.group(1)
ldpc.ranBranch=matchReg.group(1)
elif re.match('^\-\-eNBCommitID=(.*)$|^\-\-ranCommitID=(.*)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBCommitID=(.*)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBCommitID=(.*)$', myArgv, re.IGNORECASE)
else:
matchReg = re.match('^\-\-ranCommitID=(.*)$', myArgv, re.IGNORECASE)
CiTestObj.ranCommitID = matchReg.group(1)
RAN.ranCommitID=matchReg.group(1)
HTML.ranCommitID=matchReg.group(1)
ldpc.ranCommitID=matchReg.group(1)
elif re.match('^\-\-eNBTargetBranch=(.*)$|^\-\-ranTargetBranch=(.*)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBTargetBranch=(.*)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBTargetBranch=(.*)$', myArgv, re.IGNORECASE)
else:
matchReg = re.match('^\-\-ranTargetBranch=(.*)$', myArgv, re.IGNORECASE)
CiTestObj.ranTargetBranch = matchReg.group(1)
RAN.ranTargetBranch=matchReg.group(1)
HTML.ranTargetBranch=matchReg.group(1)
ldpc.ranTargetBranch=matchReg.group(1)
elif re.match('^\-\-eNBIPAddress=(.+)$|^\-\-eNB[1-2]IPAddress=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBIPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBIPAddress=(.+)$', myArgv, re.IGNORECASE)
RAN.eNBIPAddress=matchReg.group(1)
ldpc.eNBIpAddr=matchReg.group(1)
elif re.match('^\-\-eNB1IPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB1IPAddress=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB1IPAddress=matchReg.group(1)
elif re.match('^\-\-eNB2IPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB2IPAddress=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB2IPAddress=matchReg.group(1)
elif re.match('^\-\-eNBUserName=(.+)$|^\-\-eNB[1-2]UserName=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBUserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBUserName=(.+)$', myArgv, re.IGNORECASE)
RAN.eNBUserName=matchReg.group(1)
ldpc.eNBUserName=matchReg.group(1)
elif re.match('^\-\-eNB1UserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB1UserName=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB1UserName=matchReg.group(1)
elif re.match('^\-\-eNB2UserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB2UserName=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB2UserName=matchReg.group(1)
elif re.match('^\-\-eNBPassword=(.+)$|^\-\-eNB[1-2]Password=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBPassword=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBPassword=(.+)$', myArgv, re.IGNORECASE)
RAN.eNBPassword=matchReg.group(1)
ldpc.eNBPassWord=matchReg.group(1)
elif re.match('^\-\-eNB1Password=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB1Password=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB1Password=matchReg.group(1)
elif re.match('^\-\-eNB2Password=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB2Password=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB2Password=matchReg.group(1)
elif re.match('^\-\-eNBSourceCodePath=(.+)$|^\-\-eNB[1-2]SourceCodePath=(.+)$', myArgv, re.IGNORECASE):
if re.match('^\-\-eNBSourceCodePath=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNBSourceCodePath=(.+)$', myArgv, re.IGNORECASE)
RAN.eNBSourceCodePath=matchReg.group(1)
ldpc.eNBSourceCodePath=matchReg.group(1)
elif re.match('^\-\-eNB1SourceCodePath=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB1SourceCodePath=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB1SourceCodePath=matchReg.group(1)
elif re.match('^\-\-eNB2SourceCodePath=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-eNB2SourceCodePath=(.+)$', myArgv, re.IGNORECASE)
RAN.eNB2SourceCodePath=matchReg.group(1)
elif re.match('^\-\-EPCIPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCIPAddress=(.+)$', myArgv, re.IGNORECASE)
EPC.IPAddress=matchReg.group(1)
elif re.match('^\-\-EPCUserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCUserName=(.+)$', myArgv, re.IGNORECASE)
EPC.UserName=matchReg.group(1)
elif re.match('^\-\-EPCPassword=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCPassword=(.+)$', myArgv, re.IGNORECASE)
EPC.Password=matchReg.group(1)
elif re.match('^\-\-EPCSourceCodePath=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCSourceCodePath=(.+)$', myArgv, re.IGNORECASE)
EPC.SourceCodePath=matchReg.group(1)
elif re.match('^\-\-EPCType=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCType=(.+)$', myArgv, re.IGNORECASE)
if re.match('OAI', matchReg.group(1), re.IGNORECASE) or re.match('ltebox', matchReg.group(1), re.IGNORECASE) or re.match('OAI-Rel14-CUPS', matchReg.group(1), re.IGNORECASE) or re.match('OAI-Rel14-Docker', matchReg.group(1), re.IGNORECASE):
EPC.Type=matchReg.group(1)
else:
sys.exit('Invalid EPC Type: ' + matchReg.group(1) + ' -- (should be OAI or ltebox or OAI-Rel14-CUPS or OAI-Rel14-Docker)')
elif re.match('^\-\-EPCContainerPrefix=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-EPCContainerPrefix=(.+)$', myArgv, re.IGNORECASE)
EPC.ContainerPrefix=matchReg.group(1)
elif re.match('^\-\-ADBIPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-ADBIPAddress=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.ADBIPAddress = matchReg.group(1)
elif re.match('^\-\-ADBUserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-ADBUserName=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.ADBUserName = matchReg.group(1)
elif re.match('^\-\-ADBType=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-ADBType=(.+)$', myArgv, re.IGNORECASE)
if re.match('centralized', matchReg.group(1), re.IGNORECASE) or re.match('distributed', matchReg.group(1), re.IGNORECASE):
if re.match('distributed', matchReg.group(1), re.IGNORECASE):
CiTestObj.ADBCentralized = False
else:
CiTestObj.ADBCentralized = True
else:
sys.exit('Invalid ADB Type: ' + matchReg.group(1) + ' -- (should be centralized or distributed)')
elif re.match('^\-\-ADBPassword=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-ADBPassword=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.ADBPassword = matchReg.group(1)
elif re.match('^\-\-XMLTestFile=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-XMLTestFile=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.testXMLfiles.append(matchReg.group(1))
HTML.testXMLfiles.append(matchReg.group(1))
HTML.nbTestXMLfiles=HTML.nbTestXMLfiles+1
elif re.match('^\-\-UEIPAddress=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-UEIPAddress=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.UEIPAddress = matchReg.group(1)
elif re.match('^\-\-UEUserName=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-UEUserName=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.UEUserName = matchReg.group(1)
elif re.match('^\-\-UEPassword=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-UEPassword=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.UEPassword = matchReg.group(1)
elif re.match('^\-\-UESourceCodePath=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-UESourceCodePath=(.+)$', myArgv, re.IGNORECASE)
CiTestObj.UESourceCodePath = matchReg.group(1)
elif re.match('^\-\-finalStatus=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-finalStatus=(.+)$', myArgv, re.IGNORECASE)
finalStatus = matchReg.group(1)
if ((finalStatus == 'true') or (finalStatus == 'True')):
CiTestObj.finalStatus = True
else:
HELP.GenericHelp(CONST.Version)
sys.exit('Invalid Parameter: ' + myArgv)
return py_param_file_present, py_params, mode

View File

@@ -110,7 +110,7 @@ MODIFIED_FILES=`git log $TARGET_INIT_COMMIT..$MERGE_COMMMIT --oneline --name-sta
NB_WARNINGS_FILES=0
# Retrieve list of warnings
LIST_WARNING_FILES=`egrep "error:|warning:" archives/*/*.Rel15.txt archives/*/basic_simulator_*txt | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto" | sed -e "s#^.*/home/ubuntu/tmp/##" -e "s#^.*/tmp/CI-eNB/##" -e "s#common/utils/.*/itti#common/utils/itti#" | awk -F ":" '{print $1}' | sort | uniq`
LIST_WARNING_FILES=`egrep "error:|warning:" archives/*/*.Rel15.txt | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto" | sed -e "s#^.*/home/ubuntu/tmp/##" -e "s#^.*/tmp/CI-eNB/##" -e "s#common/utils/.*/itti#common/utils/itti#" | awk -F ":" '{print $1}' | sort | uniq`
echo ""
echo "List of files that have been modified by the Merge Request AND"

View File

@@ -59,7 +59,7 @@ if [ $# -eq 0 ]
then
echo " ---- Checking the whole repository ----"
echo ""
NB_FILES_TO_FORMAT=`astyle --dry-run --options=ci-scripts/astyle-options.txt --recursive *.c *.h | grep -c Formatted `
NB_FILES_TO_FORMAT=`astyle --dry-run --options=ci-scripts/astyle-options.txt --recursive *.c *.h | grep -c Formatted || true`
echo "Nb Files that do NOT follow OAI rules: $NB_FILES_TO_FORMAT"
echo $NB_FILES_TO_FORMAT > ./oai_rules_result.txt
@@ -67,17 +67,17 @@ then
awk '/#[ \t]*ifndef/ { gsub("^.*ifndef *",""); if (names[$1]!="") print "files with same {define ", FILENAME, names[$1]; names[$1]=FILENAME } /#[ \t]*define/ { gsub("^.*define *",""); if(names[$1]!=FILENAME) print "error in declaration", FILENAME, $1, names[$1]; nextfile }' `find openair* common targets executables -name *.h |grep -v LFDS` > header-files-w-incorrect-define.txt
# Testing if explicit GNU GPL license banner
egrep -irl --exclude-dir=.git --include=*.cpp --include=*.c --include=*.h "General Public License" . > files-w-gnu-gpl-license-banner.txt
egrep -irl --exclude-dir=.git --include=*.cpp --include=*.c --include=*.h "General Public License" . | egrep -v "openair3/NAS/COMMON/milenage.h" > files-w-gnu-gpl-license-banner.txt
# Looking at exotic/suspect banner
LIST_OF_FILES_W_BANNER=`egrep -irl --exclude-dir=.git --include=*.cpp --include=*.c --include=*.h "Copyright|copyleft" .`
if [ -f ./files-w-suspect-banner.txt ]; then rm -f ./files-w-suspect-banner.txt; fi
for FILE in $LIST_OF_FILES_W_BANNER
do
IS_NFAPI=`echo $FILE | egrep -c "nfapi/open-nFAPI|nfapi/oai_integration/vendor_ext"`
IS_OAI_LICENCE_PRESENT=`egrep -c "OAI Public License" $FILE`
IS_BSD_LICENCE_PRESENT=`egrep -c "the terms of the BSD Licence" $FILE`
IS_EXCEPTION=`echo $FILE | egrep -c "common/utils/collection/tree.h|common/utils/collection/queue.h|common/utils/itti_analyzer/common/queue.h|openair3/UTILS/tree.h|openair3/UTILS/queue.h"`
IS_NFAPI=`echo $FILE | egrep -c "nfapi/open-nFAPI|nfapi/oai_integration/vendor_ext" || true`
IS_OAI_LICENCE_PRESENT=`egrep -c "OAI Public License" $FILE || true`
IS_BSD_LICENCE_PRESENT=`egrep -c "the terms of the BSD Licence" $FILE || true`
IS_EXCEPTION=`echo $FILE | egrep -c "common/utils/collection/tree.h|common/utils/collection/queue.h|common/utils/itti_analyzer/common/queue.h|openair3/UTILS/tree.h|openair3/UTILS/queue.h|openair3/GTPV1-U/nw-gtpv1u|openair2/UTIL/OPT/ws_|openair3/NAS/COMMON/milenage.h" || true`
if [ $IS_OAI_LICENCE_PRESENT -eq 0 ] && [ $IS_BSD_LICENCE_PRESENT -eq 0 ]
then
if [ $IS_NFAPI -eq 0 ] && [ $IS_EXCEPTION -eq 0 ]
@@ -178,7 +178,7 @@ do
EXT="${filename##*.}"
if [ $EXT = "c" ] || [ $EXT = "h" ] || [ $EXT = "cpp" ] || [ $EXT = "hpp" ]
then
TO_FORMAT=`astyle --dry-run --options=ci-scripts/astyle-options.txt $FULLFILE | grep -c Formatted `
TO_FORMAT=`astyle --dry-run --options=ci-scripts/astyle-options.txt $FULLFILE | grep -c Formatted || true`
NB_TO_FORMAT=$((NB_TO_FORMAT + TO_FORMAT))
if [ $TO_FORMAT -ne 0 ]
then
@@ -186,20 +186,24 @@ do
echo $FULLFILE >> ./oai_rules_result_list.txt
fi
# Testing if explicit GNU GPL license banner
egrep -i "General Public License" $FULLFILE >> files-w-gnu-gpl-license-banner.txt
GNU_EXCEPTION=`echo $FULLFILE | egrep -c "openair3/NAS/COMMON/milenage.h" || true`
if [ $GNU_EXCEPTION -eq 0 ]
then
egrep -il "General Public License" $FULLFILE >> files-w-gnu-gpl-license-banner.txt
fi
# Looking at exotic/suspect banner
IS_BANNER=`egrep -i -c "Copyright|copyleft" $FULLFILE`
IS_BANNER=`egrep -i -c "Copyright|copyleft" $FULLFILE || true`
if [ $IS_BANNER -ne 0 ]
then
IS_NFAPI=`echo $FULLFILE | egrep -c "nfapi/open-nFAPI|nfapi/oai_integration/vendor_ext"`
IS_OAI_LICENCE_PRESENT=`egrep -c "OAI Public License" $FULLFILE`
IS_BSD_LICENCE_PRESENT=`egrep -c "the terms of the BSD Licence" $FULLFILE`
IS_EXCEPTION=`echo $FILE | egrep -c "common/utils/collection/tree.h|common/utils/collection/queue.h|common/utils/itti_analyzer/common/queue.h|openair3/UTILS/tree.h|openair3/UTILS/queue.h"`
IS_NFAPI=`echo $FULLFILE | egrep -c "nfapi/open-nFAPI|nfapi/oai_integration/vendor_ext" || true`
IS_OAI_LICENCE_PRESENT=`egrep -c "OAI Public License" $FULLFILE || true`
IS_BSD_LICENCE_PRESENT=`egrep -c "the terms of the BSD Licence" $FULLFILE || true`
IS_EXCEPTION=`echo $FULLFILE | egrep -c "common/utils/collection/tree.h|common/utils/collection/queue.h|common/utils/itti_analyzer/common/queue.h|openair3/UTILS/tree.h|openair3/UTILS/queue.h|openair3/GTPV1-U/nw-gtpv1u|openair2/UTIL/OPT/ws_|openair3/NAS/COMMON/milenage.h" || true`
if [ $IS_OAI_LICENCE_PRESENT -eq 0 ] && [ $IS_BSD_LICENCE_PRESENT -eq 0 ]
then
if [ $IS_NFAPI -eq 0 ] && [ $IS_EXCEPTION -eq 0 ]
then
echo $FILE >> ./files-w-suspect-banner.txt
echo $FULLFILE >> ./files-w-suspect-banner.txt
fi
fi
fi

138
ci-scripts/cls_cots_ue.py Normal file
View File

@@ -0,0 +1,138 @@
# * 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
# */
#---------------------------------------------------------------------
# Python for CI of OAI-eNB + COTS-UE
#
# Required Python Version
# Python 3.x
#
# Required Python Package
# pexpect
#---------------------------------------------------------------------
#to use isfile
import os
import sys
#to use logging.info()
import logging
#to create a SSH object locally in the methods
import sshconnection
#time.sleep
import time
#to load cots_ue dictionary
import yaml
class CotsUe:
def __init__(self,ADBIPAddr,ADBUserName,ADBPassWord):
self.cots_id = '' #cots id from yaml oppo, s10 etc...
self.ADBIPAddr = ADBIPAddr
self.ADBUserName = ADBUserName
self.ADBPassWord = ADBPassWord
self.cots_run_mode = '' #on of off to toggle airplane mode on/off
self.__cots_cde_dict_file = 'cots_ue_ctl.yaml'
self.__SetAirplaneRetry = 3
#-----------------$
#PUBLIC Methods$
#-----------------$
def Check_Airplane(self):
mySSH = sshconnection.SSHConnection()
mySSH.open(self.ADBIPAddr, self.ADBUserName, self.ADBPassWord)
status=mySSH.cde_check_value('adb shell settings get global airplane_mode_on ', ['0','1'],5)
mySSH.close()
return status
#simply check if the device id exists in the dictionary
#returns true if it exists, false otherwise
def Check_Exists(self,target_id):
#load cots commands dictionary
if (os.path.isfile(self.__cots_cde_dict_file)):
yaml_file=self.__cots_cde_dict_file
elif (os.path.isfile('ci-scripts/'+self.__cots_cde_dict_file)):
yaml_file='ci-scripts/'+self.__cots_cde_dict_file
else:
logging.error("COTS UE dictionary yaml file cannot be found")
sys.exit("COTS UE dictionary yaml file cannot be found")
#load cots commands dictionary
with open(yaml_file,'r') as file:
cots_ue_ctl = yaml.load(file,Loader=yaml.FullLoader)
#check if ue id is in the dictionary
if target_id in cots_ue_ctl:
return True
else:
return False
def Set_Airplane(self, target_id, target_state_str):
#loading cots commands dictionary
if (os.path.isfile(self.__cots_cde_dict_file)):
yaml_file=self.__cots_cde_dict_file
elif (os.path.isfile('ci-scripts/'+self.__cots_cde_dict_file)):
yaml_file='ci-scripts/'+self.__cots_cde_dict_file
else:
logging.error("COTS UE dictionary yaml file cannot be found")
sys.exit("COTS UE dictionary yaml file cannot be found")
#load cots commands dictionary
with open(yaml_file,'r') as file:
cots_ue_ctl = yaml.load(file,Loader=yaml.FullLoader)
#check if ue id is in the dictionary
if target_id in cots_ue_ctl:
mySSH = sshconnection.SSHConnection()
mySSH.open(self.ADBIPAddr, self.ADBUserName, self.ADBPassWord)
logging.info(str(self.ADBIPAddr)+' '+str(self.ADBUserName)+' '+str(self.ADBPassWord))
mySSH.command('adb start-server','\$',5)
mySSH.command('adb devices','\$',5)
logging.info("Toggling COTS UE Airplane mode to : "+target_state_str)
#get current state
current_state = self.Check_Airplane()
if target_state_str.lower()=="on":
target_state=1
else:
target_state=0
if current_state != target_state:
#toggle state
retry = 0
while (current_state!=target_state) and (retry < self.__SetAirplaneRetry):
#loop over the command list from dictionary for the selected ue, to switch to required state
for i in range (0,len(cots_ue_ctl[target_id])):
mySSH.command(cots_ue_ctl[target_id][i], '\$', 5)
time.sleep(1)
current_state = self.Check_Airplane()
retry+=1
#could not toggle despite the retry
if current_state != target_state:
logging.error("ATTENTION : Could not toggle to : "+target_state_str)
logging.error("Current state is : "+ str(current_state))
else:
logging.info("Airplane mode is already "+ target_state_str)
mySSH.command('adb kill-server','\$',5)
mySSH.close()
#ue id is NOT in the dictionary
else:
logging.error("COTS UE Id from XML could not be found in UE YAML dictionary " + self.__cots_cde_dict_file)
sys.exit("COTS UE Id from XML could not be found in UE YAML dictionary " + self.__cots_cde_dict_file)

3188
ci-scripts/cls_oaicitest.py Normal file

File diff suppressed because it is too large Load Diff

191
ci-scripts/cls_physim.py Normal file
View File

@@ -0,0 +1,191 @@
# * 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
# */
#---------------------------------------------------------------------
# Python for CI of OAI-eNB + COTS-UE
#
# Required Python Version
# Python 3.x
#
# Required Python Package
# pexpect
#---------------------------------------------------------------------
#to use logging.info()
import logging
#to create a SSH object locally in the methods
import sshconnection
#to update the HTML object
import html
from multiprocessing import SimpleQueue
#for log folder maintenance
import os
class PhySim:
def __init__(self):
self.buildargs = ""
self.runargs = ""
self.eNBIpAddr = ""
self.eNBUserName = ""
self.eNBPassWord = ""
self.eNBSourceCodePath = ""
self.ranRepository = ""
self.ranBranch = ""
self.ranCommitID= ""
self.ranAllowMerge= ""
self.ranTargetBranch= ""
self.exitStatus=0
self.forced_workspace_cleanup=False
#private attributes
self.__workSpacePath=''
self.__buildLogFile='compile_phy_sim.log'
self.__runLogFile=''
self.__runResults=[]
self.__runLogPath='phy_sim_logs'
#-----------------
#PRIVATE Methods
#-----------------
def __CheckResults_PhySim(self,HTML,CONST,testcase_id):
mySSH = sshconnection.SSHConnection()
mySSH.open(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord)
#retrieve run log file and store it locally$
mySSH.copyin(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord, self.__workSpacePath+self.__runLogFile, '.')
mySSH.close()
#parse results looking for Encoding and Decoding mean values
self.__runResults=[]
with open(self.__runLogFile) as f:
for line in f:
if 'mean' in line:
self.__runResults.append(line)
#the values are appended for each mean value (2), so we take these 2 values from the list
info=self.__runResults[0]+self.__runResults[1]
#once parsed move the local logfile to its folder for tidiness
os.system('mv '+self.__runLogFile+' '+ self.__runLogPath+'/.')
#updating the HTML with results
html_cell = '<pre style="background-color:white">' + info + '</pre>'
html_queue=SimpleQueue()
html_queue.put(html_cell)
HTML.CreateHtmlTestRowQueue(self.runargs, 'OK', 1, html_queue)
return HTML
def __CheckBuild_PhySim(self, HTML, CONST):
self.__workSpacePath=self.eNBSourceCodePath+'/cmake_targets/'
mySSH = sshconnection.SSHConnection()
mySSH.open(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord)
#retrieve compile log file and store it locally
mySSH.copyin(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord, self.__workSpacePath+self.__buildLogFile, '.')
#delete older run log file
mySSH.command('rm ' + self.__workSpacePath+self.__runLogFile, '\$', 5)
mySSH.close()
#check build result from local compile log file
buildStatus=False
with open(self.__buildLogFile) as f:
#nr_prachsim is the last compile step
if 'nr_prachsim compiled' in f.read():
buildStatus=True
#update HTML based on build status
if buildStatus:
HTML.CreateHtmlTestRow(self.buildargs, 'OK', CONST.ALL_PROCESSES_OK, 'LDPC')
self.exitStatus=0
else:
logging.error('\u001B[1m Building Physical Simulators Failed\u001B[0m')
HTML.CreateHtmlTestRow(self.buildargs, 'KO', CONST.ALL_PROCESSES_OK, 'LDPC')
HTML.CreateHtmlTabFooter(False)
#exitStatus=1 will do a sys.exit in main
self.exitStatus=1
return HTML
#-----------------$
#PUBLIC Methods$
#-----------------$
def Build_PhySim(self,htmlObj,constObj):
mySSH = sshconnection.SSHConnection()
mySSH.open(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord)
#create working dir
mySSH.command('mkdir -p ' + self.eNBSourceCodePath, '\$', 5)
mySSH.command('cd ' + self.eNBSourceCodePath, '\$', 5)
if not self.ranRepository.lower().endswith('.git'):
self.ranRepository+='.git'
#git clone
mySSH.command('if [ ! -e .git ]; then stdbuf -o0 git clone ' + self.ranRepository + ' .; else stdbuf -o0 git fetch --prune; fi', '\$', 600)
#git config
mySSH.command('git config user.email "jenkins@openairinterface.org"', '\$', 5)
mySSH.command('git config user.name "OAI Jenkins"', '\$', 5)
#git clean depending on self.forced_workspace_cleanup captured in xml
if self.forced_workspace_cleanup==True:
logging.info('Cleaning workspace ...')
mySSH.command('echo ' + self.eNBPassWord + ' | sudo -S git clean -x -d -ff', '\$', 30)
else:
logging.info('Workspace cleaning was disabled')
# if the commit ID is provided, use it to point to it
if self.ranCommitID != '':
mySSH.command('git checkout -f ' + self.ranCommitID, '\$', 5)
# if the branch is not develop, then it is a merge request and we need to do
# the potential merge. Note that merge conflicts should have already been checked earlier
if (self.ranAllowMerge):
if self.ranTargetBranch == '':
if (self.ranBranch != 'develop') and (self.ranBranch != 'origin/develop'):
mySSH.command('git merge --ff origin/develop -m "Temporary merge for CI"', '\$', 5)
else:
logging.info('Merging with the target branch: ' + self.ranTargetBranch)
mySSH.command('git merge --ff origin/' + self.ranTargetBranch + ' -m "Temporary merge for CI"', '\$', 5)
#build
mySSH.command('source oaienv', '\$', 5)
mySSH.command('cd cmake_targets', '\$', 5)
mySSH.command('mkdir -p log', '\$', 5)
mySSH.command('chmod 777 log', '\$', 5)
mySSH.command('stdbuf -o0 ./build_oai ' + self.buildargs + ' 2>&1 | stdbuf -o0 tee ' + self.__buildLogFile, 'Bypassing the Tests|build have failed', 1500)
mySSH.close()
#check build status and update HTML object
lHTML = html.HTMLManagement()
lHTML=self.__CheckBuild_PhySim(htmlObj,constObj)
return lHTML
def Run_PhySim(self,htmlObj,constObj,testcase_id):
#create run logs folder locally
os.system('mkdir -p ./'+self.__runLogPath)
#log file is tc_<testcase_id>.log remotely
self.__runLogFile='physim_'+str(testcase_id)+'.log'
#open a session for test run
mySSH = sshconnection.SSHConnection()
mySSH.open(self.eNBIpAddr, self.eNBUserName, self.eNBPassWord)
mySSH.command('cd '+self.__workSpacePath,'\$',5)
#run and redirect the results to a log file
mySSH.command(self.__workSpacePath+'phy_simulators/build/ldpctest ' + self.runargs + ' >> '+self.__runLogFile, '\$', 30)
mySSH.close()
#return updated HTML to main
lHTML = html.HTMLManagement()
lHTML=self.__CheckResults_PhySim(htmlObj,constObj,testcase_id)
return lHTML

View File

@@ -181,6 +181,7 @@ eNBs = (
{
ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}

View File

@@ -181,6 +181,7 @@ eNBs = (
{
ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}

View File

@@ -181,6 +181,7 @@ eNBs = (
{
ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}

View File

@@ -175,6 +175,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -184,6 +185,8 @@ eNBs =
enable_x2 = "yes";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -356,6 +356,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -367,6 +368,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -105,6 +105,7 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
mbms_dedicated_serving_cell = "DISABLE"
//Parameters for SIB18
rxPool_sc_CP_Len = "normal";
@@ -176,6 +177,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +189,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -105,6 +105,8 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
mbms_dedicated_serving_cell = "DISABLE"
//Parameters for SIB18
rxPool_sc_CP_Len = "normal";
@@ -176,6 +178,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +190,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
///M2
target_mce_m2_ip_address = ( { ipv4 = "127.0.0.7";
@@ -247,7 +252,6 @@ MCEs = (
);
NETWORK_INTERFACES :
{
MCE_INTERFACE_NAME_FOR_M2_ENB = "lo";
@@ -271,12 +275,12 @@ MCEs = (
mcch_update_time = 10;
mbms_area_config_list = (
{
common_sf_allocation_period = 2; #rf4(0) rf8(1) rf16(2) rf32(3) rf64(4) rf128(5) rf256(6)
common_sf_allocation_period = 1; #rf4(0) rf8(1) rf16(2) rf32(3) rf64(4) rf128(5) rf256(6)
mbms_area_id = 0;
pmch_config_list = (
{
allocated_sf_end=64;
data_mcs=10;
allocated_sf_end=40;
data_mcs=20;
mch_scheduling_period = 0; #rf8(0)
mbms_session_list = (
{
@@ -288,7 +292,7 @@ MCEs = (
mnc_length = 2;
}
service_id=0;
lcid=5; #this must be properly defined lcid:8+service:0 -> rab_id:5
lcid=5; #this must be properly defined lcid:8+service:0 -> rab_id:5 //with new RLC set lcid either 4 or 5
}
);
}
@@ -296,10 +300,10 @@ MCEs = (
mbms_sf_config_list = (
{
radioframe_allocation_period=1; #n1(0) n2(1) n4(2) n8(3) n16(4) n32(5)
radioframe_allocation_period=0; #n1(0) n2(1) n4(2) n8(3) n16(4) n32(5)
radioframe_alloocation_offset=0;
num_frame="oneFrame";
subframe_allocation=57; #xx100000
subframe_allocation=59; #xx111011 #57; #xx111001
//num_frame="fourFrame";
//subframe_allocation=14548987; #
}

View File

@@ -136,6 +136,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -147,6 +148,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -136,6 +136,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -147,6 +148,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -136,6 +136,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -147,6 +148,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -136,6 +136,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -145,6 +146,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -173,6 +173,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -184,6 +185,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
target_enb_x2_ip_address = (
{ ipv4 = "CI_RCC_IP_ADDR";
ipv6 = "192:168:30::17";

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -181,6 +181,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -192,6 +193,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -0,0 +1,289 @@
Active_eNBs = ( "eNB-Eurecom-LTEBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
eNBs =
(
{
# real_time choice in {hard, rt-preempt, no}
real_time = "no";
////////// Identification parameters:
eNB_ID = 0xe01;
cell_type = "CELL_MACRO_ENB";
eNB_name = "eNB-Eurecom-LTEBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = 1;
plmn_list = (
{ mcc = 222; mnc = 01; mnc_length = 2; }
);
tr_s_preference = "local_mac"
////////// Physical parameters:
component_carriers = (
{
node_function = "eNodeB_3GPP";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
nb_antenna_ports = 1;
ue_TransmissionMode = 1;
frame_type = "FDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 7;
downlink_frequency = 2680000000L;
uplink_frequency_offset = -120000000;
Nid_cell = 0;
N_RB_DL = 25;
Nid_cell_mbsfn = 0;
nb_antennas_tx = 1;
nb_antennas_rx = 1;
prach_root = 0;
tx_gain = 90;
rx_gain = 115;
pbch_repetition = "FALSE";
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 = 0;
pdsch_referenceSignalPower = -29;
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 = -96;
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 = -108;
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;
//Parameters for SIB18
rxPool_sc_CP_Len = "normal";
rxPool_sc_Period = "sf40";
rxPool_data_CP_Len = "normal";
rxPool_ResourceConfig_prb_Num = 20;
rxPool_ResourceConfig_prb_Start = 5;
rxPool_ResourceConfig_prb_End = 44;
rxPool_ResourceConfig_offsetIndicator_present = "prSmall";
rxPool_ResourceConfig_offsetIndicator_choice = 0;
rxPool_ResourceConfig_subframeBitmap_present = "prBs40";
rxPool_ResourceConfig_subframeBitmap_choice_bs_buf = "00000000000000000000";
rxPool_ResourceConfig_subframeBitmap_choice_bs_size = 5;
rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused = 0;
/*
rxPool_dataHoppingConfig_hoppingParameter = 0;
rxPool_dataHoppingConfig_numSubbands = "ns1";
rxPool_dataHoppingConfig_rbOffset = 0;
rxPool_commTxResourceUC-ReqAllowed = "TRUE";
*/
// Parameters for SIB19
discRxPool_cp_Len = "normal"
discRxPool_discPeriod = "rf32"
discRxPool_numRetx = 1;
discRxPool_numRepetition = 2;
discRxPool_ResourceConfig_prb_Num = 5;
discRxPool_ResourceConfig_prb_Start = 3;
discRxPool_ResourceConfig_prb_End = 21;
discRxPool_ResourceConfig_offsetIndicator_present = "prSmall";
discRxPool_ResourceConfig_offsetIndicator_choice = 0;
discRxPool_ResourceConfig_subframeBitmap_present = "prBs40";
discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf = "f0ffffffff";
discRxPool_ResourceConfig_subframeBitmap_choice_bs_size = 5;
discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused = 0;
//SSB central frequency of NR secondary cell group (for ENDC NSA)
nr_scg_ssb_freq = 641272;
}
);
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;
};
enable_measurement_reports = "yes";
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
);
///X2
enable_x2 = "yes";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth1";
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
ENB_INTERFACE_NAME_FOR_S1U = "eth1";
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
ENB_PORT_FOR_X2C = 36422; # Spec 36422
};
log_config :
{
global_log_level ="info";
global_log_verbosity ="high";
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 ="debug";
rlc_log_verbosity ="high";
pdcp_log_level ="info";
pdcp_log_verbosity ="high";
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
}
);
MACRLCs = (
{
num_cc = 1;
tr_s_preference = "local_L1";
tr_n_preference = "local_RRC";
phy_test_mode = 0;
puSch10xSnr = 160;
puCch10xSnr = 160;
}
);
THREAD_STRUCT = (
{
parallel_config = "PARALLEL_RU_L1_TRX_SPLIT";
worker_config = "ENABLE";
}
);
L1s = (
{
num_cc = 1;
tr_n_preference = "local_mac";
}
);
RUs = (
{
local_rf = "yes"
nb_tx = 1
nb_rx = 1
att_tx = 0
att_rx = 0;
bands = [7];
max_pdschReferenceSignalPower = -27;
max_rxgain = 118;
eNB_instances = [0];
clock_src = "external";
}
);
log_config :
{
global_log_level ="info";
global_log_verbosity ="high";
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 ="high";
pdcp_log_level ="info";
pdcp_log_verbosity ="high";
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -175,6 +175,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -183,6 +184,8 @@ eNBs =
enable_x2 = "yes";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
target_enb_x2_ip_address = (
{ ipv4 = "CI_RCC_IP_ADDR";
ipv6 = "192:168:30::17";

View File

@@ -45,8 +45,8 @@ gNBs =
dl_carrierBandwidth = 106;
#initialDownlinkBWP
#genericParameters
# this is RBstart=0,L=50 (275*(L-1))+RBstart
initialDLBWPlocationAndBandwidth = 13475;
# this is RBstart=41,L=24 (275*(L-1))+RBstart
initialDLBWPlocationAndBandwidth = 6366;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialDLBWPsubcarrierSpacing = 1;
@@ -59,7 +59,7 @@ gNBs =
#initialULBWPmappingType
#0=typeA,1=typeB
initialDLBWPmappingType_0 = 0;
#this is SS=2,L=3
#this is SS=1,L=13
initialDLBWPstartSymbolAndLength_0 = 40;
initialDLBWPk0_1 = 0;
@@ -71,6 +71,12 @@ gNBs =
initialDLBWPmappingType_2 = 0;
#this is SS=1,L=12
initialDLBWPstartSymbolAndLength_2 = 54;
initialDLBWPk0_3 = 0;
initialDLBWPmappingType_3 = 0;
#this is SS=1,L=5
initialDLBWPstartSymbolAndLength_3 = 57;
#uplinkConfigCommon
#frequencyInfoUL
ul_frequencyBand = 78;
@@ -83,7 +89,7 @@ gNBs =
pMax = 20;
#initialUplinkBWP
#genericParameters
initialULBWPlocationAndBandwidth = 13475;
initialULBWPlocationAndBandwidth = 6366;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialULBWPsubcarrierSpacing = 1;
@@ -105,8 +111,8 @@ gNBs =
#1,2,4,8,10,20,40,80
ra_ResponseWindow = 4;
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
#0=oneeighth,1=onefourth,2=half,3=one,4=two,5=four,6=eight,7=sixteen
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 3;
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 4;
#oneHalf (0..15) 4,8,12,16,...60,64
ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 15;
#ra_ContentionResolutionTimer
@@ -114,27 +120,31 @@ gNBs =
ra_ContentionResolutionTimer = 7;
rsrp_ThresholdSSB = 19;
#prach-RootSequenceIndex_PR
#0 = 839, 1 = 139
prach_RootSequenceIndex_PR = 1;
#1 = 839, 2 = 139
prach_RootSequenceIndex_PR = 2;
prach_RootSequenceIndex = 1;
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
#
msg1_SubcarrierSpacing = 1,
# restrictedSetConfig
# 0=unrestricted, 1=restricted type A, 2=restricted type B
restrictedSetConfig = 0,
# pusch-ConfigCommon (up to 16 elements)
initialULBWPk2_0 = 2;
initialULBWPk2_0 = 6;
initialULBWPmappingType_0 = 1
# this is SS=0 L=11
initialULBWPstartSymbolAndLength_0 = 55;
initialULBWPk2_1 = 2;
initialULBWPk2_1 = 6;
initialULBWPmappingType_1 = 1;
# this is SS=0 L=12
initialULBWPstartSymbolAndLength_1 = 69;
initialULBWPk2_2 = 7;
initialULBWPmappingType_2 = 1;
# this is SS=10 L=4
initialULBWPstartSymbolAndLength_2 = 52;
msg3_DeltaPreamble = 1;
p0_NominalWithGrant =-90;
@@ -194,6 +204,7 @@ gNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.12.26";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -235,9 +246,11 @@ RUs = (
att_rx = 0;
bands = [7];
max_pdschReferenceSignalPower = -27;
max_rxgain = 114;
max_rxgain = 75;
eNB_instances = [0];
sdr_addrs = "addr=192.168.10.2,second_addr=192.168.20.2";
#beamforming 1x4 matrix:
bf_weights = [0x00007fff, 0x0000, 0x0000, 0x0000];
sdr_addrs = "addr=192.168.10.2,mgmt_addr=192.168.10.2,second_addr=192.168.20.2";
clock_src = "external";
}
);

View File

@@ -0,0 +1,297 @@
Active_gNBs = ( "gNB-Eurecom-5GNRBox");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
gNBs =
(
{
////////// Identification parameters:
gNB_ID = 0xe00;
cell_type = "CELL_MACRO_GNB";
gNB_name = "gNB-Eurecom-5GNRBox";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = 1;
plmn_list = ({mcc = 222; mnc = 01; mnc_length = 2;});
tr_s_preference = "local_mac"
////////// Physical parameters:
ssb_SubcarrierOffset = 31; //0;
pdsch_AntennaPorts = 1;
servingCellConfigCommon = (
{
#spCellConfigCommon
physCellId = 0;
# downlinkConfigCommon
#frequencyInfoDL
# this is 3600 MHz + 84 PRBs@30kHz SCS (same as initial BWP)
absoluteFrequencySSB = 641272; //641032; #641968; 641968=start of ssb at 3600MHz + 82 RBs 641032=center of SSB at center of cell
dl_frequencyBand = 78;
# this is 3600 MHz
dl_absoluteFrequencyPointA = 640000;
#scs-SpecificCarrierList
dl_offstToCarrier = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
dl_subcarrierSpacing = 1;
dl_carrierBandwidth = 106;
#initialDownlinkBWP
#genericParameters
# this is RBstart=84,L=13 (275*(L-1))+RBstart
initialDLBWPlocationAndBandwidth = 6366; //28875; //6366; #6407; #3384;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialDLBWPsubcarrierSpacing = 1;
#pdcch-ConfigCommon
initialDLBWPcontrolResourceSetZero = 0;
initialDLBWPsearchSpaceZero = 0;
#pdsch-ConfigCommon
#pdschTimeDomainAllocationList (up to 16 entries)
initialDLBWPk0_0 = 0;
#initialULBWPmappingType
#0=typeA,1=typeB
initialDLBWPmappingType_0 = 0;
#this is SS=1,L=13
initialDLBWPstartSymbolAndLength_0 = 40;
initialDLBWPk0_1 = 0;
initialDLBWPmappingType_1 = 0;
#this is SS=2,L=12
initialDLBWPstartSymbolAndLength_1 = 53;
initialDLBWPk0_2 = 0;
initialDLBWPmappingType_2 = 0;
#this is SS=1,L=12
initialDLBWPstartSymbolAndLength_2 = 54;
initialDLBWPk0_3 = 0;
initialDLBWPmappingType_3 = 0;
#this is SS=1,L=4 //5 (4 is for 43, 5 is for 57)
initialDLBWPstartSymbolAndLength_3 = 57; //43; //57;
#uplinkConfigCommon
#frequencyInfoUL
ul_frequencyBand = 78;
#scs-SpecificCarrierList
ul_offstToCarrier = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
ul_subcarrierSpacing = 1;
ul_carrierBandwidth = 106;
pMax = 20;
#initialUplinkBWP
#genericParameters
initialULBWPlocationAndBandwidth = 6366; //28875; //6366; #6407; #3384;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialULBWPsubcarrierSpacing = 1;
#rach-ConfigCommon
#rach-ConfigGeneric
prach_ConfigurationIndex = 98;
#prach_msg1_FDM
#0 = one, 1=two, 2=four, 3=eight
prach_msg1_FDM = 0;
prach_msg1_FrequencyStart = 0;
zeroCorrelationZoneConfig = 13;
preambleReceivedTargetPower = -100;
#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
preambleTransMax = 6;
#powerRampingStep
# 0=dB0,1=dB2,2=dB4,3=dB6
powerRampingStep = 1;
#ra_ReponseWindow
#1,2,4,8,10,20,40,80
ra_ResponseWindow = 5;
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 4;
#oneHalf (0..15) 4,8,12,16,...60,64
ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 14; //15;
#ra_ContentionResolutionTimer
#(0..7) 8,16,24,32,40,48,56,64
ra_ContentionResolutionTimer = 7;
rsrp_ThresholdSSB = 19;
#prach-RootSequenceIndex_PR
#1 = 839, 2 = 139
prach_RootSequenceIndex_PR = 2;
prach_RootSequenceIndex = 1;
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
#
msg1_SubcarrierSpacing = 1,
# restrictedSetConfig
# 0=unrestricted, 1=restricted type A, 2=restricted type B
restrictedSetConfig = 0,
# pusch-ConfigCommon (up to 16 elements)
initialULBWPk2_0 = 2;
initialULBWPmappingType_0 = 1
# this is SS=0 L=11
initialULBWPstartSymbolAndLength_0 = 55;
initialULBWPk2_1 = 2;
initialULBWPmappingType_1 = 1;
# this is SS=0 L=12
initialULBWPstartSymbolAndLength_1 = 69;
initialULBWPk2_2 = 7;
initialULBWPmappingType_2 = 1;
# this is SS=10 L=4
initialULBWPstartSymbolAndLength_2 = 52;
msg3_DeltaPreamble = 1;
p0_NominalWithGrant =-90;
# pucch-ConfigCommon setup :
# pucchGroupHopping
# 0 = neither, 1= group hopping, 2=sequence hopping
pucchGroupHopping = 0;
hoppingId = 40;
p0_nominal = -90;
# ssb_PositionsInBurs_BitmapPR
# 1=short, 2=medium, 3=long
ssb_PositionsInBurst_PR = 2;
ssb_PositionsInBurst_Bitmap = 1; #0x80;
# ssb_periodicityServingCell
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
ssb_periodicityServingCell = 2;
# dmrs_TypeA_position
# 0 = pos2, 1 = pos3
dmrs_TypeA_Position = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
subcarrierSpacing = 1;
#tdd-UL-DL-ConfigurationCommon
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
referenceSubcarrierSpacing = 1;
# pattern1
# dl_UL_TransmissionPeriodicity
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
dl_UL_TransmissionPeriodicity = 6;
nrofDownlinkSlots = 7; //8; //7;
nrofDownlinkSymbols = 6; //0; //6;
nrofUplinkSlots = 2;
nrofUplinkSymbols = 4; //0; //4;
ssPBCH_BlockPower = -25;
}
);
# ------- SCTP definitions
SCTP :
{
# Number of streams to use in input/output
SCTP_INSTREAMS = 2;
SCTP_OUTSTREAMS = 2;
};
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
);
///X2
enable_x2 = "yes";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
target_enb_x2_ip_address = (
{ ipv4 = "CI_FR1_CTL_ENB_IP_ADDR";
ipv6 = "192:168:30::17";
preference = "ipv4";
}
);
NETWORK_INTERFACES :
{
GNB_INTERFACE_NAME_FOR_S1_MME = "eth0";
GNB_IPV4_ADDRESS_FOR_S1_MME = "CI_GNB_IP_ADDR";
GNB_INTERFACE_NAME_FOR_S1U = "eth0";
GNB_IPV4_ADDRESS_FOR_S1U = "CI_GNB_IP_ADDR";
GNB_PORT_FOR_S1U = 2152; # Spec 2152
GNB_IPV4_ADDRESS_FOR_X2C = "CI_GNB_IP_ADDR";
GNB_PORT_FOR_X2C = 36422; # Spec 36422
};
}
);
MACRLCs = (
{
num_cc = 1;
tr_s_preference = "local_L1";
tr_n_preference = "local_RRC";
}
);
L1s = (
{
num_cc = 1;
tr_n_preference = "local_mac";
}
);
RUs = (
{
local_rf = "yes"
nb_tx = 1
nb_rx = 1
att_tx = 0
att_rx = 0;
bands = [7];
max_pdschReferenceSignalPower = -27;
max_rxgain = 114;
eNB_instances = [0];
clock_src = "external";
}
);
THREAD_STRUCT = (
{
#three config for level of parallelism "PARALLEL_SINGLE_THREAD", "PARALLEL_RU_L1_SPLIT", or "PARALLEL_RU_L1_TRX_SPLIT"
parallel_config = "PARALLEL_RU_L1_TRX_SPLIT";
//parallel_config = "PARALLEL_SINGLE_THREAD";
#two option for worker "WORKER_DISABLE" or "WORKER_ENABLE"
worker_config = "WORKER_ENABLE";
}
);
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";
};
uicc: {
opc = "testopc";
};

View File

@@ -173,6 +173,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -184,6 +185,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -0,0 +1,429 @@
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;
plmn_list = ( { mcc = 208; mnc = 93; mnc_length = 2; } );
tr_s_preference = "local_mac"
////////// Physical parameters:
component_carriers = (
{
node_function = "3GPP_eNODEB";
node_timing = "synch_to_ext_device";
node_synch_ref = 0;
frame_type = "FDD";
tdd_config = 3;
tdd_config_s = 0;
prefix_type = "NORMAL";
eutra_band = 7;
downlink_frequency = 2680000000L;
uplink_frequency_offset = -120000000;
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;
pbch_repetition = "FALSE";
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 = 0;
pdsch_referenceSignalPower = -27;
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 = -96;
pusch_alpha = "AL1";
pucch_p0_Nominal = -104;
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 = -108;
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;
mbms_dedicated_serving_cell = "ENABLE"
//Parameters for SIB18
rxPool_sc_CP_Len = "normal";
rxPool_sc_Period = "sf40";
rxPool_data_CP_Len = "normal";
rxPool_ResourceConfig_prb_Num = 20;
rxPool_ResourceConfig_prb_Start = 5;
rxPool_ResourceConfig_prb_End = 44;
rxPool_ResourceConfig_offsetIndicator_present = "prSmall";
rxPool_ResourceConfig_offsetIndicator_choice = 0;
rxPool_ResourceConfig_subframeBitmap_present = "prBs40";
rxPool_ResourceConfig_subframeBitmap_choice_bs_buf = "00000000000000000000";
rxPool_ResourceConfig_subframeBitmap_choice_bs_size = 5;
rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused = 0;
/* rxPool_dataHoppingConfig_hoppingParameter = 0;
rxPool_dataHoppingConfig_numSubbands = "ns1";
rxPool_dataHoppingConfig_rbOffset = 0;
rxPool_commTxResourceUC-ReqAllowed = "TRUE";
*/
// Parameters for SIB19
discRxPool_cp_Len = "normal"
discRxPool_discPeriod = "rf32"
discRxPool_numRetx = 1;
discRxPool_numRepetition = 2;
discRxPool_ResourceConfig_prb_Num = 5;
discRxPool_ResourceConfig_prb_Start = 3;
discRxPool_ResourceConfig_prb_End = 21;
discRxPool_ResourceConfig_offsetIndicator_present = "prSmall";
discRxPool_ResourceConfig_offsetIndicator_choice = 0;
discRxPool_ResourceConfig_subframeBitmap_present = "prBs40";
discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf = "f0ffffffff";
discRxPool_ResourceConfig_subframeBitmap_choice_bs_size = 5;
discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused = 0;
}
);
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 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
);
enable_measurement_reports = "no";
///X2
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
////////// MCE parameters:
target_mce_m2_ip_address = ( { ipv4 = "127.0.0.7";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
}
);
///M2
enable_enb_m2 = "yes";
mbms_configuration_data_list = (
{
mbsfn_sync_area = 0x0001;
mbms_service_area_list=(
{
mbms_service_area=0x0001;
}
);
}
);
NETWORK_INTERFACES :
{
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
ENB_PORT_FOR_S1U = 2152; # Spec 2152
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
ENB_PORT_FOR_X2C = 36422; # Spec 36422
ENB_IPV4_ADDRESS_FOR_M2C = "127.0.0.2/24";
ENB_PORT_FOR_M2C = 36443; # Spec 36443
};
}
);
MACRLCs = (
{
num_cc = 1;
tr_s_preference = "local_L1";
tr_n_preference = "local_RRC";
phy_test_mode = 0;
puSch10xSnr = 200;
puCch10xSnr = 200;
}
);
L1s = (
{
num_cc = 1;
tr_n_preference = "local_mac";
}
);
MCEs = (
{
MCE_ID = 0xe00;
MCE_name = "MCE-Vicomtech-LTEBox";
//M2
enable_mce_m2 = "yes";
//M3
enable_mce_m3 = "yes";
target_mme_m3_ip_address = ( { ipv4 = "127.0.0.18";
ipv6 = "192:168:30::17";
active = "yes";
preference = "ipv4";
}
);
NETWORK_INTERFACES :
{
MCE_INTERFACE_NAME_FOR_M2_ENB = "lo";
MCE_IPV4_ADDRESS_FOR_M2C = "127.0.0.7/24";
MCE_PORT_FOR_M2C = 36443; # Spec 36443
MCE_INTERFACE_NAME_FOR_M3_MME = "lo";
MCE_IPV4_ADDRESS_FOR_M3C = "127.0.0.3/24";
MCE_PORT_FOR_M3C = 36444; # Spec 36444
};
plnm:
{
mcc = 208;
mnc = 93;
mnc_length = 2;
};
mbms_sched_info :
{
mcch_update_time = 10;
mbms_area_config_list = (
{
common_sf_allocation_period = 1; #rf4(0) rf8(1) rf16(2) rf32(3) rf64(4) rf128(5) rf256(6)
mbms_area_id = 0;
pmch_config_list = (
{
allocated_sf_end=512;
data_mcs=15;
mch_scheduling_period = 0; #rf8(0) rf16(1) rf32(2) rf64(3) rf128(4) rf256(5) rf512(6) rf1024(7)
mbms_session_list = (
{
#plnm + service_id ->tmgi
plnm:
{
mcc = 208;
mnc = 93;
mnc_length = 2;
}
service_id=0; #keep this allways as 0 (workaround for TUN if)
lcid=5; #this must be properly defined lcid:6+service:0 -> rab_id:5 //with new RLC set lcid either 4 or 5
}
);
}
);
mbms_sf_config_list = (
{
radioframe_allocation_period=0; #n1(0) n2(1) n4(2) n8(3) n16(4) n32(5)
radioframe_alloocation_offset=0;
num_frame="oneFrame";
subframe_allocation=57; #xx111001
//num_frame="fourFrame";
//subframe_allocation=14548987; #
}
);
}
);
};
mcch_config_per_mbsfn_area = (
{
mbsfn_area = 0;
pdcch_length = 1; #s1(0), s2(1)
repetition_period = 0; #rf32(0), rf64(1), rf128(2), rf256(3)
offset = 0;
modification_period = 0; #rf512(0; rf1024(1)
subframe_allocation_info = 32; #BITSTRING (6bits -> one frame) xx100000
mcs = 0; #n2(0), n7(1), n13(2), n19(3)
}
);
#); #end mbms_scheduling_info
}
);
MMEs = (
{
MME_ID = 0xe00;
MME_name = "MME-MBMS-Vicomtech-LTEBox";
//M3
enable_mme_m3 = "yes";
NETWORK_INTERFACES :
{
MME_INTERFACE_NAME_FOR_M3_MCE = "lo";
MME_IPV4_ADDRESS_FOR_M3C = "127.0.0.18/24";
MME_PORT_FOR_M3C = 36444; # Spec 36444
};
}
);
RUs = (
{
local_rf = "yes"
nb_tx = 1
nb_rx = 1
att_tx = 0
att_rx = 0;
bands = [7];
max_pdschReferenceSignalPower = -27;
max_rxgain = 125;
eNB_instances = [0];
}
);
THREAD_STRUCT = (
{
#three config for level of parallelism "PARALLEL_SINGLE_THREAD", "PARALLEL_RU_L1_SPLIT", or "PARALLEL_RU_L1_TRX_SPLIT"
parallel_config = "PARALLEL_SINGLE_THREAD";
#two option for worker "WORKER_DISABLE" or "WORKER_ENABLE"
worker_config = "WORKER_ENABLE";
}
);
NETWORK_CONTROLLER :
{
FLEXRAN_ENABLED = "no";
FLEXRAN_INTERFACE_NAME = "ens3";
FLEXRAN_IPV4_ADDRESS = "CI_FLEXRAN_CTL_IP_ADDR";
FLEXRAN_PORT = 2210;
FLEXRAN_CACHE = "/mnt/oai_agent_cache";
FLEXRAN_AWAIT_RECONF = "no";
};
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";
};
//rfsimulator :
//{
//options = ("chanmod");
//modelname = "AWGN";
//};

View File

@@ -102,6 +102,7 @@ eNBs =
ue_TimersAndConstants_n310 = 20;
ue_TimersAndConstants_n311 = 1;
ue_TransmissionMode = 1;
mbms_dedicated_serving_cell = "DISABLE"
//Parameters for SIB18
rxPool_sc_CP_Len = "normal";
@@ -173,6 +174,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -184,6 +186,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
////////// MCE parameters:
target_mce_m2_ip_address = ( { ipv4 = "127.0.0.7";
@@ -295,8 +299,8 @@ MCEs = (
pmch_config_list = (
{
allocated_sf_end=32;
data_mcs=14;
mch_scheduling_period = 0; #rf8(0)
data_mcs=15;
mch_scheduling_period = 0; #rf8(0) rf16(1) rf32(2) rf64(3) rf128(4) rf256(5) rf512(6) rf1024(7)
mbms_session_list = (
{
#plnm + service_id ->tmgi
@@ -337,7 +341,7 @@ MCEs = (
offset = 0;
modification_period = 0; #rf512(0; rf1024(1)
subframe_allocation_info = 32; #BITSTRING (6bits -> one frame) xx100000
mcs = 1; #n2(0), n7(1), n13(2), n19(3)
mcs = 0; #n2(0), n7(1), n13(2), n19(3)
}
);
@@ -416,3 +420,10 @@ NETWORK_CONTROLLER :
rrc_log_level ="info";
rrc_log_verbosity ="medium";
};
//rfsimulator :
//{
//options = ("chanmod");
//modelname = "AWGN";
//};

View File

@@ -136,6 +136,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -147,6 +148,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -141,6 +141,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}

View File

@@ -139,6 +139,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -150,6 +151,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -139,6 +139,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -150,6 +151,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -139,6 +139,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -150,6 +151,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -176,6 +176,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -187,6 +188,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -144,6 +144,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "192.168.15.130";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -155,6 +156,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
////////// MCE parameters:

View File

@@ -144,6 +144,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "127.0.0.3";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -155,6 +156,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
////////// MCE parameters:

View File

@@ -174,6 +174,7 @@ eNBs =
////////// MME parameters:
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
ipv6 = "192:168:30::17";
port = 36412 ;
active = "yes";
preference = "ipv4";
}
@@ -185,6 +186,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -57,6 +57,7 @@ OAI_UE_PROCESS_ASSERTION = -22
OAI_UE_PROCESS_FAILED = -23
OAI_UE_PROCESS_NO_TUNNEL_INTERFACE = -24
OAI_UE_PROCESS_SEG_FAULT = -25
OAI_UE_PROCESS_NO_MBMS_MSGS = -26
OAI_UE_PROCESS_OK = +6
UE_STATUS_DETACHED = 0

View File

@@ -0,0 +1,20 @@
9d690a12: #oppo
- adb shell input keyevent KEYCODE_POWER
- adb shell input swipe 300 700 300 0
- adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
- adb shell input keyevent 20
- adb shell input tap 968 324
002: #s10
- adb shell input keyevent KEYCODE_POWER
- adb shell input swipe 200 900 200 300
- adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
- adb shell input tap 968 324
003: #s20
- adb shell input keyevent KEYCODE_POWER
- adb shell input swipe 200 900 200 300
- adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
- adb shell input tap 968 324
004: #xperia
- tbd
- tbd
- tbd

View File

@@ -37,6 +37,7 @@ memleak:openair2/UTIL/OMG/omg_hashtable.c
// _emm_as_encode function creates the encoded buffer
//
memleak:openair3/NAS/UE/EMM/SAP/emm_as.c
memleak:openair1/PHY/INIT/nr_init_ue.c
//-----------------------------------------------------------------------------
//*****************************************************************************
// section for files not used in oai exec's included in CI.
@@ -82,6 +83,16 @@ nullPointer:common/utils/T/tracer/multi.c:265
// the tests
arrayIndexOutOfBounds:openair2/LAYER2/rlc_v2/tests/test.c:401
//
//-----------------------------------------------------------------------------
// this file is used for testing the NR RLC implementation, this error is
// not a problem, the programmer has to know what she does when writing
// the tests
arrayIndexOutOfBounds:openair2/LAYER2/nr_rlc/tests/test.c:451
//
//-----------------------------------------------------------------------------
// cppcheck does not understand the different lengths of arrays
arrayIndexOutOfBounds:openair1/SIMULATION/TOOLS/random_channel.c:705
arrayIndexOutOfBounds:openair1/SIMULATION/TOOLS/random_channel.c:706
//*****************************************************************************
//
// True problems we don't know how to fix, Suppression is commented out,

View File

@@ -38,7 +38,6 @@ Last point, this documentation is valid for all CI-supported branches:
* `master`
* `develop`
* `develop-nr`
But the feature set may not be aligned. **The principles still apply.**

View File

@@ -65,39 +65,8 @@ class EPCManagement():
self.testCase_id = ''
self.MmeIPAddress = ''
self.containerPrefix = 'prod'
self.mmeConfFile = 'mme.conf'
#-----------------------------------------------------------
# Setter and Getters on Public Members
#-----------------------------------------------------------
def SetIPAddress(self, ipaddress):
self.IPAddress = ipaddress
def GetIPAddress(self):
return self.IPAddress
def SetUserName(self, username):
self.UserName = username
def GetUserName(self):
return self.UserName
def SetPassword(self, password):
self.Password = password
def GetPassword(self):
return self.Password
def SetSourceCodePath(self, sourcecodepath):
self.SourceCodePath = sourcecodepath
def GetSourceCodePath(self):
return self.SourceCodePath
def SetType(self, kind):
self.Type = kind
def GetType(self):
return self.Type
def SetHtmlObj(self, obj):
self.htmlObj = obj
def SetTestCase_id(self, idx):
self.testCase_id = idx
def GetMmeIPAddress(self):
return self.MmeIPAddress
def SetContainerPrefix(self, prefix):
self.containerPrefix = prefix
#-----------------------------------------------------------
# EPC management functions
@@ -159,7 +128,7 @@ class EPCManagement():
logging.debug('Using the OAI EPC Release 14 MME in Docker')
mySSH.command('docker exec -d ' + self.containerPrefix + '-oai-mme /bin/bash -c "nohup tshark -i eth0 -i lo:s10 -w /tmp/mme_check_run.pcap 2>&1 > /dev/null"', '\$', 5)
time.sleep(5)
mySSH.command('docker exec -d ' + self.containerPrefix + '-oai-mme /bin/bash -c "nohup ./bin/oai_mme -c ./etc/mme.conf > mme_check_run.log 2>&1"', '\$', 5)
mySSH.command('docker exec -d ' + self.containerPrefix + '-oai-mme /bin/bash -c "nohup ./bin/oai_mme -c ./etc/' + self.mmeConfFile + ' > mme_check_run.log 2>&1"', '\$', 5)
elif re.match('OAI-Rel14-CUPS', self.Type, re.IGNORECASE):
logging.debug('Using the OAI EPC Release 14 MME')
mySSH.command('cd ' + self.SourceCodePath + '/scripts', '\$', 5)

View File

@@ -64,6 +64,10 @@ class HTMLManagement():
self.htmlTabIcons = []
self.testXMLfiles = []
self.testUnstable = False
self.testMinStableId = '999999'
self.testStabilityPointReached = False
self.htmleNBFailureMsg = ''
self.htmlUEFailureMsg = ''
@@ -82,73 +86,14 @@ class HTMLManagement():
#-----------------------------------------------------------
# Setters and Getters
#-----------------------------------------------------------
def SethtmlUEFailureMsg(self,huefa):
self.htmlUEFailureMsg = huefa
def GethtmlUEFailureMsg(self):
return self.htmlUEFailureMsg
def SetHmleNBFailureMsg(self, msg):
self.htmleNBFailureMsg = msg
def Setdesc(self, dsc):
self.desc = dsc
def SetstartTime(self, sttime):
self.startTime = sttime
def SettestCase_id(self, tcid):
self.testCase_id = tcid
def GettestCase_id(self):
return self.testCase_id
def SetranRepository(self, repository):
self.ranRepository = repository
def SetranAllowMerge(self, merge):
self.ranAllowMerge = merge
def SetranBranch(self, branch):
self.ranBranch = branch
def SetranCommitID(self, commitid):
self.ranCommitID = commitid
def SetranTargetBranch(self, tbranch):
self.ranTargetBranch = tbranch
def SethtmlUEConnected(self, nbUEs):
if nbUEs > 0:
self.htmlUEConnected = nbUEs
else:
self.htmlUEConnected = 1
def SethtmlNb_Smartphones(self, nbUEs):
self.htmlNb_Smartphones = nbUEs
def SethtmlNb_CATM_Modules(self, nbUEs):
self.htmlNb_CATM_Modules = nbUEs
def SetnbTestXMLfiles(self, nb):
self.nbTestXMLfiles = nb
def GetnbTestXMLfiles(self):
return self.nbTestXMLfiles
def SettestXMLfiles(self, xmlFile):
self.testXMLfiles.append(xmlFile)
def SethtmlTabRefs(self, tabRef):
self.htmlTabRefs.append(tabRef)
def SethtmlTabNames(self, tabName):
self.htmlTabNames.append(tabName)
def SethtmlTabIcons(self, tabIcon):
self.htmlTabIcons.append(tabIcon)
def SetOsVersion(self, version, idx):
self.OsVersion[idx] = version
def SetKernelVersion(self, version, idx):
self.KernelVersion[idx] = version
def SetUhdVersion(self, version, idx):
self.UhdVersion[idx] = version
def SetUsrpBoard(self, version, idx):
self.UsrpBoard[idx] = version
def SetCpuNb(self, nb, idx):
self.CpuNb[idx] = nb
def SetCpuModel(self, model, idx):
self.CpuModel[idx] = model
def SetCpuMHz(self, freq, idx):
self.CpuMHz[idx] = freq
#-----------------------------------------------------------
# HTML structure creation functions
@@ -289,13 +234,20 @@ class HTMLManagement():
def CreateHtmlTabFooter(self, passStatus):
if ((not self.htmlFooterCreated) and (self.htmlHeaderCreated)):
testOkEvenIfUnstable = False
if self.testUnstable and not passStatus:
if self.testStabilityPointReached or self.testMinStableId == '999999':
testOkEvenIfUnstable = True
self.htmlFile = open('test_results.html', 'a')
self.htmlFile.write(' <tr>\n')
self.htmlFile.write(' <th bgcolor = "#33CCFF" colspan=3>Final Tab Status</th>\n')
if passStatus:
self.htmlFile.write(' <th bgcolor = "green" colspan=' + str(2 + self.htmlUEConnected) + '><font color="white">PASS <span class="glyphicon glyphicon-ok"></span> </font></th>\n')
else:
self.htmlFile.write(' <th bgcolor = "red" colspan=' + str(2 + self.htmlUEConnected) + '><font color="white">FAIL <span class="glyphicon glyphicon-remove"></span> </font></th>\n')
if testOkEvenIfUnstable:
self.htmlFile.write(' <th bgcolor = "orange" colspan=' + str(2 + self.htmlUEConnected) + '><font color="white">KNOWN UNSTABLE SCENARIO <span class="glyphicon glyphicon-exclamation-sign"></span> </font></th>\n')
else:
self.htmlFile.write(' <th bgcolor = "red" colspan=' + str(2 + self.htmlUEConnected) + '><font color="white">FAIL <span class="glyphicon glyphicon-remove"></span> </font></th>\n')
self.htmlFile.write(' </tr>\n')
self.htmlFile.write(' </table>\n')
self.htmlFile.write(' </div>\n')
@@ -305,7 +257,10 @@ class HTMLManagement():
cmd = "sed -i -e 's/__STATE_" + self.htmlTabNames[0] + "__//' test_results.html"
subprocess.run(cmd, shell=True)
else:
cmd = "sed -i -e 's/__STATE_" + self.htmlTabNames[0] + "__/<span class=\"glyphicon glyphicon-remove\"><\/span>/' test_results.html"
if testOkEvenIfUnstable:
cmd = "sed -i -e 's/__STATE_" + self.htmlTabNames[0] + "__/<span class=\"glyphicon glyphicon-exclamation-sign\"><\/span>/' test_results.html"
else:
cmd = "sed -i -e 's/__STATE_" + self.htmlTabNames[0] + "__/<span class=\"glyphicon glyphicon-remove\"><\/span>/' test_results.html"
subprocess.run(cmd, shell=True)
self.htmlFooterCreated = False
@@ -326,7 +281,7 @@ class HTMLManagement():
continue
self.htmlFile.write(' <tr>\n')
self.htmlFile.write(' <th colspan=8>' + str('eNB') + ' Server Characteristics</th>\n')
self.htmlFile.write(' <th colspan=8>' + str(machine) + ' Server Characteristics</th>\n')
self.htmlFile.write(' </tr>\n')
self.htmlFile.write(' <tr>\n')
self.htmlFile.write(' <td>OS Version</td>\n')

File diff suppressed because it is too large Load Diff

View File

@@ -186,7 +186,7 @@ function variant__v3__phy_sim {
BUILD_OPTIONS="--phy_simulators"
VM_MEMORY=8192
VM_DISK=20
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510* 015111\" -q -np -b"
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510* 015111 015112\" -q -np -b"
}
function variant__v4__cppcheck {
@@ -197,7 +197,7 @@ function variant__v4__cppcheck {
}
function variant__v5__gnb_usrp {
VM_MEMORY=8192
VM_MEMORY=10240
VM_CPU=8
NB_PATTERN_FILES=9
BUILD_OPTIONS="--gNB -w USRP"

53
ci-scripts/py_params.yaml Normal file
View File

@@ -0,0 +1,53 @@
eNBRepository : b
ranRepository : c
eNB_AllowMerge :
ranAllowMerge :
eNBBranch : f
ranBranch : g
eNBCommitID :
ranCommitID : i
eNBTargetBranch : j
ranTargetBranch : k
nodes :
- type : eNB
IPAddress : 001.1.1
UserName : toto
Password : qwe
SourceCodePath : l
- type : gNB
IPAddress : 002.2.2
UserName : tata
Password : asd
SourceCodePath : m
- type : eNB
IPAddress : 003.3.3
UserName : titi
Password : zxc
SourceCodePath : n
- type : gNB
IPAddress : 004.4.4
UserName : caca
Password : pepe
SourceCodePath : o
EPCIPAddress : p
EPCUserName : q
EPCPassword : r
EPCSourceCodePath : s
EPCType : t
EPCContainerPrefix : u
ADBIPAddress : v
ADBUserName : w
ADBType : x
ADBPassword : y
XMLTestFile : z
UEIPAddress : qqq
UEUserName : www
UEPassword : eee
UESourceCodePath : yyy
finalStatus : bbb

View File

@@ -0,0 +1,97 @@
eNBRepository : b
ranRepository : c
eNB_AllowMerge :
ranAllowMerge :
eNBBranch : f
ranBranch : g
eNBCommitID :
ranCommitID : i
eNBTargetBranch : j
ranTargetBranch : k
RAN:
RAN_inst_0:
name : RAN_1
nodes :
- type : eNB
IPAddress : 001.1.1
UserName : toto
Password : qwe
SourceCodePath : l
- type : gNB
IPAddress : 002.2.2
UserName : tata
Password : asd
SourceCodePath : m
- type : eNB
IPAddress : 003.3.3
UserName : titi
Password : zxc
SourceCodePath : n
- type : gNB
IPAddress : 004.4.4
UserName : caca
Password : pepe
SourceCodePath : o
RAN_inst_1:
name : RAN_2
nodes :
- type : eNB
IPAddress : 101.1.1
UserName : toto
Password : qwe
SourceCodePath : l
- type : gNB
IPAddress : 102.2.2
UserName : zaza
Password : asd
SourceCodePath : m
- type : eNB
IPAddress : 103.3.3
UserName : zizi
Password : zxc
SourceCodePath : n
- type : gNB
IPAddress : 104.4.4
UserName : aaaa
Password : pepe
SourceCodePath : o
EPC:
EPC_inst_0:
EPCIPAddress : p
EPCUserName : q
EPCPassword : r
EPCSourceCodePath : s
EPCType : t
EPCContainerPrefix : u
ADB:
ADBIPAddress : v
ADBUserName : w
ADBType : x
ADBPassword : y
UE:
UE_inst_0:
name : UE_1
type :
UEIPAddress : qqq
UEUserName : www
UEPassword : eee
UESourceCodePath : yyy
UE_inst_1:
name : UE_2
type :
UEIPAddress : bloblob
UEUserName : gwou
UEPassword : zebu
UESourceCodePath : pop
XMLTestFile : z
finalStatus : bbb

View File

@@ -77,8 +77,8 @@ class RANManagement():
self.backgroundBuildTestId = ['', '', '']
self.Build_eNB_forced_workspace_cleanup = False
self.Initialize_eNB_args = ''
self.air_interface = 'lte'
self.eNB_instance = ''
self.air_interface = ['', '', ''] #changed from 'lte' to '' may lead to side effects in main
self.eNB_instance = 0
self.eNB_serverId = ''
self.eNBLogFiles = ['', '', '']
self.eNBOptions = ['', '', '']
@@ -90,141 +90,9 @@ class RANManagement():
self.epcPcapFile = ''
self.htmlObj = None
self.epcObj = None
self.runtime_stats= ''
#-----------------------------------------------------------
# Setters and Getters on Public members
#-----------------------------------------------------------
def SetHtmlObj(self, obj):
self.htmlObj = obj
def SetEpcObj(self, obj):
self.epcObj = obj
def SetflexranCtrlInstalled(self,fxrctin):
self.flexranCtrlInstalled = fxrctin
def GetflexranCtrlInstalled(self):
return self.flexranCtrlInstalled
def SetflexranCtrlStarted(self,fxrctst):
self.flexranCtrlStarted = fxrctst
def GetflexranCtrlStarted(self):
return self.flexranCtrlStarted
def SetpStatus(self, pSt):
self.pStatus = pSt
def SetranRepository(self, repository):
self.ranRepository = repository
def GetranRepository(self):
return self.ranRepository
def SetranBranch(self, branch):
self.ranBranch = branch
def GetranBranch(self):
return self.ranBranch
def SetranCommitID(self, commitid):
self.ranCommitID = commitid
def GetranCommitID(self):
return self.ranCommitID
def SeteNB_serverId(self, enbsrvid):
self.eNB_serverId = enbsrvid
def GeteNB_serverId(self):
return self.eNB_serverId
def SeteNBIPAddress(self, enbip):
self.eNBIPAddress = enbip
def GeteNBIPAddress(self):
return self.eNBIPAddress
def SeteNBUserName(self, enbusr):
self.eNBUserName = enbusr
def GeteNBUserName(self):
return self.eNBUserName
def SeteNBPassword(self, enbpw):
self.eNBPassword = enbpw
def GeteNBPassword(self):
return self.eNBPassword
def SeteNBSourceCodePath(self, enbcodepath):
self.eNBSourceCodePath = enbcodepath
def GeteNBSourceCodePath(self):
return self.eNBSourceCodePath
def SetranAllowMerge(self, merge):
self.ranAllowMerge = merge
def GetranAllowMerge(self):
return self.ranAllowMerge
def SetranTargetBranch(self, tbranch):
self.ranTargetBranch = tbranch
def GetranTargetBranch(self):
return self.ranTargetBranch
def SetBuild_eNB_args(self, enbbuildarg):
self.Build_eNB_args = enbbuildarg
def GetBuild_eNB_args(self):
return self.Build_eNB_args
def SetInitialize_eNB_args(self, initenbarg):
self.Initialize_eNB_args = initenbarg
def GetInitialize_eNB_args(self):
return self.Initialize_eNB_args
def SetbackgroundBuild(self, bkbuild):
self.backgroundBuild = bkbuild
def GetbackgroundBuild(self):
return self.backgroundBuild
def SetbackgroundBuildTestId(self, bkbuildid):
self.backgroundBuildTestId = bkbuildid
def GetbackgroundBuildTestId(self):
return self.backgroundBuildTestId
def SetBuild_eNB_forced_workspace_cleanup(self, fcdwspclean):
self.Build_eNB_forced_workspace_cleanup = fcdwspclean
def GetBuild_eNB_forced_workspace_cleanup(self):
return self.Build_eNB_forced_workspace_cleanup
def Setair_interface(self, airif):
self.air_interface = airif
def Getair_interface(self):
return self.air_interface
def SeteNB_instance(self, enbinst):
self.eNB_instance = enbinst
def GeteNB_instance(self):
return self.eNB_instance
def SeteNBLogFile(self, enblog, idx):
self.eNBLogFiles[idx] = enblog
def GeteNBLogFile(self, idx):
return self.eNBLogFiles[idx]
def GeteNBmbmsEnable(self, idx):
return self.eNBmbmsEnables[idx]
def SeteNB1IPAddress(self,enb1ip):
self.eNB1IPAddress = enb1ip
def GeteNB1IPAddress(self):
return self.eNB1IPAddress
def SeteNB1UserName(self, enb1usr):
self.eNB1UserName = enb1usr
def GeteNB1UserName(self):
return self.eNB1UserName
def SeteNB1Password(self, enb1pw):
self.eNB1Password = enb1pw
def GeteNB1Password(self):
return self.eNB1Password
def SeteNB1SourceCodePath(self, enb1codepath):
self.eNB1SourceCodePath = enb1codepath
def GeteNB1SourceCodePath(self):
return self.eNB1SourceCodePath
def SeteNB2IPAddress(self, enb2ip):
self.eNB2IPAddress = enb2ip
def GeteNB2IPAddress(self):
return self.eNB2IPAddress
def SeteNB2UserName(self, enb2usr):
self.eNB2UserName = enb2usr
def GeteNB2UserName(self):
return self.eNB2UserName
def SeteNB2Password(self, enb2pw):
self.eNB2Password = enb2pw
def GeteNB2Password(self):
return self.eNB2Password
def SeteNB2SourceCodePath(self, enb2codepath):
self.eNB2SourceCodePath = enb2codepath
def GeteNB2SourceCodePath(self):
return self.eNB2SourceCodePath
def SetprematureExit(self, premex):
self.prematureExit = premex
def GetprematureExit(self):
return self.prematureExit
#-----------------------------------------------------------
# RAN management functions
@@ -254,17 +122,23 @@ class RANManagement():
sys.exit('Insufficient Parameter')
mySSH = SSH.SSHConnection()
mySSH.open(lIpAddr, lUserName, lPassWord)
# Check if we build an 5G-NR gNB or an LTE eNB
result = re.search('--gNB', self.Build_eNB_args)
# Check if we build an 5G-NR gNB or an LTE eNB or an OCP eNB
result = re.search('--eNBocp', self.Build_eNB_args)
if result is not None:
self.air_interface = 'nr'
else:
self.air_interface = 'lte'
self.air_interface[self.eNB_instance] = 'ocp-enb'
else:
result = re.search('--gNB', self.Build_eNB_args)
if result is not None:
self.air_interface[self.eNB_instance] = 'nr-softmodem'
else:
self.air_interface[self.eNB_instance] = 'lte-softmodem'
# Worakround for some servers, we need to erase completely the workspace
if self.Build_eNB_forced_workspace_cleanup:
mySSH.command('echo ' + lPassWord + ' | sudo -S rm -Rf ' + lSourcePath, '\$', 15)
if self.htmlObj is not None:
self.testCase_id = self.htmlObj.GettestCase_id()
self.testCase_id = self.htmlObj.testCase_id
else:
self.testCase_id = '000000'
# on RedHat/CentOS .git extension is mandatory
@@ -332,7 +206,8 @@ class RANManagement():
if self.backgroundBuild:
mySSH.command('echo "./build_oai ' + self.Build_eNB_args + '" > ./my-lte-softmodem-build.sh', '\$', 5)
mySSH.command('chmod 775 ./my-lte-softmodem-build.sh', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S -E daemon --inherit --unsafe --name=build_enb_daemon --chdir=' + lSourcePath + '/cmake_targets -o ' + lSourcePath + '/cmake_targets/compile_oai_enb.log ./my-lte-softmodem-build.sh', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S ls', '\$', 5)
mySSH.command('echo $USER; nohup sudo -E ./my-lte-softmodem-build.sh' + ' > ' + lSourcePath + '/cmake_targets/compile_oai_enb.log ' + ' 2>&1 &', lUserName, 5)
mySSH.close()
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow(self.Build_eNB_args, 'OK', CONST.ALL_PROCESSES_OK)
@@ -366,7 +241,7 @@ class RANManagement():
count = 40
buildOAIprocess = True
while (count > 0) and buildOAIprocess:
mySSH.command('ps aux | grep --color=never build_ | grep -v grep', '\$', 3)
mySSH.command('ps aux | grep --color=never build_ | grep -v grep', '\$', 6)
result = re.search('build_oai', mySSH.getBefore())
if result is None:
buildOAIprocess = False
@@ -378,21 +253,21 @@ class RANManagement():
def checkBuildeNB(self, lIpAddr, lUserName, lPassWord, lSourcePath, testcaseId):
if self.htmlObj is not None:
self.htmlObj.SettestCase_id(testcaseId)
self.htmlObj.testCase_id=testcaseId
mySSH = SSH.SSHConnection()
mySSH.open(lIpAddr, lUserName, lPassWord)
mySSH.command('cd ' + lSourcePath + '/cmake_targets', '\$', 3)
mySSH.command('ls ran_build/build', '\$', 3)
mySSH.command('ls ran_build/build', '\$', 3)
if self.air_interface == 'nr':
nodeB_prefix = 'g'
else:
nodeB_prefix = 'e'
buildStatus = True
result = re.search(self.air_interface + '-softmodem', mySSH.getBefore())
#check if we have the build corresponding to the air interface keywords (nr-softmode, lte-softmodem, ocp-enb)
logging.info('CHECK Build with IP='+lIpAddr+' SourcePath='+lSourcePath)
result = re.search(self.air_interface[self.eNB_instance], mySSH.getBefore())
if result is None:
buildStatus = False
buildStatus = False #if not, build failed
else:
buildStatus = True
# Generating a BUILD INFO file
mySSH.command('echo "SRC_BRANCH: ' + self.ranBranch + '" > ../LAST_BUILD_INFO.txt', '\$', 2)
mySSH.command('echo "SRC_COMMIT: ' + self.ranCommitID + '" >> ../LAST_BUILD_INFO.txt', '\$', 2)
@@ -404,6 +279,8 @@ class RANManagement():
mySSH.command('echo "TGT_BRANCH: ' + self.ranTargetBranch + '" >> ../LAST_BUILD_INFO.txt', '\$', 2)
else:
mySSH.command('echo "MERGED_W_TGT_BRANCH: NO" >> ../LAST_BUILD_INFO.txt', '\$', 2)
mySSH.command('mkdir -p build_log_' + testcaseId, '\$', 5)
mySSH.command('mv log/* ' + 'build_log_' + testcaseId, '\$', 5)
mySSH.command('mv compile_oai_enb.log ' + 'build_log_' + testcaseId, '\$', 5)
@@ -420,18 +297,20 @@ class RANManagement():
os.remove('./tmp_build' + testcaseId + '.zip')
mySSH.open(self.eNBIPAddress, self.eNBUserName, self.eNBPassword)
mySSH.command('cd ' + self.eNBSourceCodePath + '/cmake_targets', '\$', 5)
mySSH.command('unzip -qq -DD tmp_build' + testcaseId + '.zip', '\$', 5)
#-qq quiet / -u update orcreate files
mySSH.command('unzip -u -qq -DD tmp_build' + testcaseId + '.zip', '\$', 5)
mySSH.command('rm -f tmp_build' + testcaseId + '.zip', '\$', 5)
mySSH.close()
else:
mySSH.close()
#generate logging info depending on buildStatus and air interface
if buildStatus:
logging.info('\u001B[1m Building OAI ' + nodeB_prefix + 'NB Pass\u001B[0m')
logging.info('\u001B[1m Building OAI ' + self.air_interface[self.eNB_instance] + ' Pass\u001B[0m')
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow(self.Build_eNB_args, 'OK', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTestRow(self.Build_eNB_args, 'OK', CONST.ALL_PROCESSES_OK)
else:
logging.error('\u001B[1m Building OAI ' + nodeB_prefix + 'NB Failed\u001B[0m')
logging.error('\u001B[1m Building OAI ' + self.air_interface[self.eNB_instance] + ' Failed\u001B[0m')
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow(self.Build_eNB_args, 'KO', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTabFooter(False)
@@ -458,22 +337,22 @@ class RANManagement():
sys.exit('Insufficient Parameter')
if self.htmlObj is not None:
self.testCase_id = self.htmlObj.GettestCase_id()
self.testCase_id = self.htmlObj.testCase_id
else:
self.testCase_id = '000000'
mySSH = SSH.SSHConnection()
if (self.pStatus < 0):
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow(self.Initialize_eNB_args, 'KO', self.pStatus)
self.htmlObj.CreateHtmlTestRow(self.air_interface[self.eNB_instance] + ' ' + self.Initialize_eNB_args, 'KO', self.pStatus)
self.htmlObj.CreateHtmlTabFooter(False)
sys.exit(1)
# If tracer options is on, running tshark on EPC side and capture traffic b/ EPC and eNB
result = re.search('T_stdout', str(self.Initialize_eNB_args))
if (result is not None) and (self.epcObj is not None):
localEpcIpAddr = self.epcObj.GetIPAddress()
localEpcUserName = self.epcObj.GetUserName()
localEpcPassword = self.epcObj.GetPassword()
localEpcIpAddr = self.epcObj.IPAddress
localEpcUserName = self.epcObj.UserName
localEpcPassword = self.epcObj.Password
mySSH.open(localEpcIpAddr, localEpcUserName, localEpcPassword)
mySSH.command('ip addr show | awk -f /tmp/active_net_interfaces.awk | egrep -v "lo|tun"', '\$', 5)
result = re.search('interfaceToUse=(?P<eth_interface>[a-zA-Z0-9\-\_]+)done', mySSH.getBefore())
@@ -522,12 +401,14 @@ class RANManagement():
# Make a copy and adapt to EPC / eNB IP addresses
mySSH.command('cp ' + full_config_file + ' ' + ci_full_config_file, '\$', 5)
if self.epcObj is not None:
localMmeIpAddr = self.epcObj.GetMmeIPAddress()
localMmeIpAddr = self.epcObj.MmeIPAddress
mySSH.command('sed -i -e \'s/CI_MME_IP_ADDR/' + localMmeIpAddr + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_ENB_IP_ADDR/' + lIpAddr + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_GNB_IP_ADDR/' + lIpAddr + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_RCC_IP_ADDR/' + self.eNBIPAddress + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_RRU1_IP_ADDR/' + self.eNB1IPAddress + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_RRU2_IP_ADDR/' + self.eNB2IPAddress + '/\' ' + ci_full_config_file, '\$', 2);
mySSH.command('sed -i -e \'s/CI_FR1_CTL_ENB_IP_ADDR/' + self.eNBIPAddress + '/\' ' + ci_full_config_file, '\$', 2);
if self.flexranCtrlInstalled and self.flexranCtrlStarted:
mySSH.command('sed -i -e \'s/FLEXRAN_ENABLED.*;/FLEXRAN_ENABLED = "yes";/\' ' + ci_full_config_file, '\$', 2);
else:
@@ -546,15 +427,14 @@ class RANManagement():
# Launch eNB with the modified config file
mySSH.command('source oaienv', '\$', 5)
mySSH.command('cd cmake_targets', '\$', 5)
mySSH.command('echo "ulimit -c unlimited && ./ran_build/build/' + self.air_interface + '-softmodem -O ' + lSourcePath + '/' + ci_full_config_file + extra_options + '" > ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh', '\$', 5)
if self.air_interface[self.eNB_instance] == 'nr-softmodem':
mySSH.command('if [ -e rbconfig.raw ]; then echo ' + lPassWord + ' | sudo -S rm rbconfig.raw; fi', '\$', 5)
mySSH.command('if [ -e reconfig.raw ]; then echo ' + lPassWord + ' | sudo -S rm reconfig.raw; fi', '\$', 5)
# NOTE: WE SHALL do a check if the executable is present (in case build went wrong)
mySSH.command('echo "ulimit -c unlimited && ./ran_build/build/' + self.air_interface[self.eNB_instance] + ' -O ' + lSourcePath + '/' + ci_full_config_file + extra_options + '" > ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh', '\$', 5)
mySSH.command('chmod 775 ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S rm -Rf enb_' + self.testCase_id + '.log', '\$', 5)
mySSH.command('hostnamectl','\$', 5)
result = re.search('CentOS Linux 7', mySSH.getBefore())
if result is not None:
mySSH.command('echo $USER; nohup sudo ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh > ' + lSourcePath + '/cmake_targets/enb_' + self.testCase_id + '.log 2>&1 &', lUserName, 10)
else:
mySSH.command('echo ' + lPassWord + ' | sudo -S -E daemon --inherit --unsafe --name=enb' + str(self.eNB_instance) + '_daemon --chdir=' + lSourcePath + '/cmake_targets -o ' + lSourcePath + '/cmake_targets/enb_' + self.testCase_id + '.log ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh', '\$', 5)
mySSH.command('echo $USER; nohup sudo -E ./my-lte-softmodem-run' + str(self.eNB_instance) + '.sh > ' + lSourcePath + '/cmake_targets/enb_' + self.testCase_id + '.log 2>&1 &', lUserName, 10)
self.eNBLogFiles[int(self.eNB_instance)] = 'enb_' + self.testCase_id + '.log'
if extra_options != '':
self.eNBOptions[int(self.eNB_instance)] = extra_options
@@ -571,15 +451,15 @@ class RANManagement():
mySSH.command('killall --signal SIGKILL record', '\$', 5)
mySSH.close()
doLoop = False
logging.error('\u001B[1;37;41m eNB logging system did not show got sync! \u001B[0m')
logging.error('\u001B[1;37;41m eNB/gNB/ocp-eNB logging system did not show got sync! \u001B[0m')
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow('-O ' + config_file + extra_options, 'KO', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTestRow(self.air_interface[self.eNB_instance] + ' -O ' + config_file + extra_options, 'KO', CONST.ALL_PROCESSES_OK)
# In case of T tracer recording, we need to kill tshark on EPC side
result = re.search('T_stdout', str(self.Initialize_eNB_args))
if (result is not None) and (self.epcObj is not None):
localEpcIpAddr = self.epcObj.GetIPAddress()
localEpcUserName = self.epcObj.GetUserName()
localEpcPassword = self.epcObj.GetPassword()
localEpcIpAddr = self.epcObj.IPAddress
localEpcUserName = self.epcObj.UserName
localEpcPassword = self.epcObj.Password
mySSH.open(localEpcIpAddr, localEpcUserName, localEpcPassword)
logging.debug('\u001B[1m Stopping tshark \u001B[0m')
mySSH.command('echo ' + localEpcPassword + ' | sudo -S killall --signal SIGKILL tshark', '\$', 5)
@@ -607,7 +487,11 @@ class RANManagement():
enbDidSync = True
time.sleep(10)
if enbDidSync and eNBinNoS1:
rruCheck = False
result = re.search('^rru|^du.band', str(config_file))
if result is not None:
rruCheck = True
if enbDidSync and eNBinNoS1 and not rruCheck:
mySSH.command('ifconfig oaitun_enb1', '\$', 4)
mySSH.command('ifconfig oaitun_enb1', '\$', 4)
result = re.search('inet addr:1|inet 1', mySSH.getBefore())
@@ -627,8 +511,8 @@ class RANManagement():
mySSH.close()
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow('-O ' + config_file + extra_options, 'OK', CONST.ALL_PROCESSES_OK)
logging.debug('\u001B[1m Initialize eNB Completed\u001B[0m')
self.htmlObj.CreateHtmlTestRow(self.air_interface[self.eNB_instance] + ' -O ' + config_file + extra_options, 'OK', CONST.ALL_PROCESSES_OK)
logging.debug('\u001B[1m Initialize eNB/gNB/ocp-eNB Completed\u001B[0m')
def CheckeNBProcess(self, status_queue):
try:
@@ -651,8 +535,8 @@ class RANManagement():
lPassWord = self.eNBPassword
mySSH = SSH.SSHConnection()
mySSH.open(lIpAddr, lUserName, lPassWord)
mySSH.command('stdbuf -o0 ps -aux | grep --color=never ' + self.air_interface + '-softmodem | grep -v grep', '\$', 5)
result = re.search(self.air_interface + '-softmodem', mySSH.getBefore())
mySSH.command('stdbuf -o0 ps -aux | grep --color=never ' + self.air_interface[self.eNB_instance] + ' | grep -v grep', '\$', 5)
result = re.search(self.air_interface[self.eNB_instance], mySSH.getBefore())
if result is None:
logging.debug('\u001B[1;37;41m eNB Process Not Found! \u001B[0m')
status_queue.put(CONST.ENB_PROCESS_FAILED)
@@ -684,29 +568,28 @@ class RANManagement():
mySSH = SSH.SSHConnection()
mySSH.open(lIpAddr, lUserName, lPassWord)
mySSH.command('cd ' + lSourcePath + '/cmake_targets', '\$', 5)
if self.air_interface == 'lte':
if (self.air_interface[self.eNB_instance] == 'lte-softmodem') or (self.air_interface[self.eNB_instance] == 'ocp-enb'):
nodeB_prefix = 'e'
else:
nodeB_prefix = 'g'
mySSH.command('stdbuf -o0 ps -aux | grep --color=never softmodem | grep -v grep', '\$', 5)
result = re.search('-softmodem', mySSH.getBefore())
mySSH.command('stdbuf -o0 ps -aux | grep --color=never -e softmodem -e ocp-enb | grep -v grep', '\$', 5)
result = re.search('(-softmodem|ocp)', mySSH.getBefore())
if result is not None:
mySSH.command('echo ' + lPassWord + ' | sudo -S daemon --name=enb' + str(self.eNB_instance) + '_daemon --stop', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S killall --signal SIGINT -r .*-softmodem || true', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S killall --signal SIGINT -r .*-softmodem ocp-enb || true', '\$', 5)
time.sleep(10)
mySSH.command('stdbuf -o0 ps -aux | grep --color=never softmodem | grep -v grep', '\$', 5)
result = re.search('-softmodem', mySSH.getBefore())
mySSH.command('stdbuf -o0 ps -aux | grep --color=never -e softmodem -e ocp-enb | grep -v grep', '\$', 5)
result = re.search('(-softmodem|ocp)', mySSH.getBefore())
if result is not None:
mySSH.command('echo ' + lPassWord + ' | sudo -S killall --signal SIGKILL -r .*-softmodem || true', '\$', 5)
mySSH.command('echo ' + lPassWord + ' | sudo -S killall --signal SIGKILL -r .*-softmodem ocp-enb || true', '\$', 5)
time.sleep(5)
mySSH.command('rm -f my-lte-softmodem-run' + str(self.eNB_instance) + '.sh', '\$', 5)
mySSH.close()
# If tracer options is on, stopping tshark on EPC side
result = re.search('T_stdout', str(self.Initialize_eNB_args))
if (result is not None) and (self.epcObj is not None):
localEpcIpAddr = self.epcObj.GetIPAddress()
localEpcUserName = self.epcObj.GetUserName()
localEpcPassword = self.epcObj.GetPassword()
localEpcIpAddr = self.epcObj.IPAddress
localEpcUserName = self.epcObj.UserName
localEpcPassword = self.epcObj.Password
mySSH.open(localEpcIpAddr, localEpcUserName, localEpcPassword)
logging.debug('\u001B[1m Stopping tshark \u001B[0m')
mySSH.command('echo ' + localEpcPassword + ' | sudo -S killall --signal SIGKILL tshark', '\$', 5)
@@ -732,7 +615,7 @@ class RANManagement():
logging.debug('\u001B[1m Analyzing eNB replay logfile \u001B[0m')
logStatus = self.AnalyzeLogFile_eNB(extracted_log_file)
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTestRow(self.runtime_stats, 'OK', CONST.ALL_PROCESSES_OK)
self.eNBLogFiles[int(self.eNB_instance)] = ''
else:
analyzeFile = False
@@ -745,7 +628,7 @@ class RANManagement():
if (copyin_res == -1):
logging.debug('\u001B[1;37;41m Could not copy ' + nodeB_prefix + 'NB logfile to analyze it! \u001B[0m')
if self.htmlObj is not None:
self.htmlObj.SetHmleNBFailureMsg('Could not copy ' + nodeB_prefix + 'NB logfile to analyze it!')
self.htmlObj.htmleNBFailureMsg='Could not copy ' + nodeB_prefix + 'NB logfile to analyze it!'
self.htmlObj.CreateHtmlTestRow('N/A', 'KO', CONST.ENB_PROCESS_NOLOGFILE_TO_ANALYZE)
self.eNBmbmsEnables[int(self.eNB_instance)] = False
return
@@ -761,10 +644,10 @@ class RANManagement():
return
else:
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTestRow(self.runtime_stats, 'OK', CONST.ALL_PROCESSES_OK)
else:
if self.htmlObj is not None:
self.htmlObj.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK)
self.htmlObj.CreateHtmlTestRow(self.runtime_stats, 'OK', CONST.ALL_PROCESSES_OK)
self.eNBmbmsEnables[int(self.eNB_instance)] = False
self.eNBstatuses[int(self.eNB_instance)] = -1
@@ -774,7 +657,7 @@ class RANManagement():
mySSH.command('cd ' + self.eNBSourceCodePath, '\$', 5)
mySSH.command('cd cmake_targets', '\$', 5)
mySSH.command('echo ' + self.eNBPassword + ' | sudo -S rm -f enb.log.zip', '\$', 5)
mySSH.command('echo ' + self.eNBPassword + ' | sudo -S zip enb.log.zip enb*.log core* enb_*record.raw enb_*.pcap enb_*txt', '\$', 60)
mySSH.command('echo ' + self.eNBPassword + ' | sudo -S zip enb.log.zip enb*.log core* enb_*record.raw enb_*.pcap enb_*txt physim_*.log', '\$', 60)
mySSH.command('echo ' + self.eNBPassword + ' | sudo -S rm enb*.log core* enb_*record.raw enb_*.pcap enb_*txt', '\$', 5)
mySSH.close()
@@ -800,8 +683,11 @@ class RANManagement():
uciStatMsgCount = 0
pdcpFailure = 0
ulschFailure = 0
ulschAllocateCCEerror = 0
uplinkSegmentsAborted = 0
ulschReceiveOK = 0
gnbRxTxWakeUpFailure = 0
gnbTxWriteThreadEnabled = False
cdrxActivationMessageCount = 0
dropNotEnoughRBs = 0
mbmsRequestMsg = 0
@@ -812,7 +698,40 @@ class RANManagement():
X2HO_state = CONST.X2_HO_REQ_STATE__IDLE
X2HO_inNbProcedures = 0
X2HO_outNbProcedures = 0
global_status = CONST.ALL_PROCESSES_OK
# Runtime statistics
runTime = ''
userTime = ''
systemTime = ''
maxPhyMemUsage = ''
nbContextSwitches = ''
#NSA FR1 check
NSA_RAPROC_PUSCH_check = 0
#dlsch and ulsch statistics (dictionary)
dlsch_ulsch_stats = {}
for line in enb_log_file.readlines():
# Runtime statistics
result = re.search('Run time:' ,str(line))
if result is not None:
runTime = str(line).strip()
if runTime != '':
result = re.search('Time executing user inst', str(line))
if result is not None:
fields=line.split(':')
userTime = 'userTime : ' + fields[1].replace('\n','')
result = re.search('Time executing system inst', str(line))
if result is not None:
fields=line.split(':')
systemTime = 'systemTime : ' + fields[1].replace('\n','')
result = re.search('Max. Phy. memory usage:', str(line))
if result is not None:
fields=line.split(':')
maxPhyMemUsage = 'maxPhyMemUsage : ' + fields[1].replace('\n','')
result = re.search('Number of context switch.*process origin', str(line))
if result is not None:
fields=line.split(':')
nbContextSwitches = 'nbContextSwitches : ' + fields[1].replace('\n','')
if X2HO_state == CONST.X2_HO_REQ_STATE__IDLE:
result = re.search('target eNB Receives X2 HO Req X2AP_HANDOVER_REQ', str(line))
if result is not None:
@@ -885,8 +804,7 @@ class RANManagement():
if result is not None:
rrcSetupComplete += 1
result = re.search('Generate LTE_RRCConnectionRelease|Generate RRCConnectionRelease', str(line))
if result is not None:
rrcReleaseRequest += 1
if result is not None: rrcReleaseRequest += 1
result = re.search('Generate LTE_RRCConnectionReconfiguration', str(line))
if result is not None:
rrcReconfigRequest += 1
@@ -914,9 +832,18 @@ class RANManagement():
result = re.search('could not wakeup gNB rxtx process', str(line))
if result is not None:
gnbRxTxWakeUpFailure += 1
result = re.search('tx write thread ready', str(line))
if result is not None:
gnbTxWriteThreadEnabled = True
result = re.search('ULSCH in error in round|ULSCH 0 in error', str(line))
if result is not None:
ulschFailure += 1
result = re.search('ERROR ALLOCATING CCEs', str(line))
if result is not None:
ulschAllocateCCEerror += 1
result = re.search('uplink segment error.*aborted [1-9] segments', str(line))
if result is not None:
uplinkSegmentsAborted += 1
result = re.search('ULSCH received ok', str(line))
if result is not None:
ulschReceiveOK += 1
@@ -933,13 +860,28 @@ class RANManagement():
result = re.search('MBMS USER-PLANE.*Requesting.*bytes from RLC', str(line))
if result is not None:
mbmsRequestMsg += 1
#FR1 NSA test : add new markers to make sure gNB is used
result = re.search('\[gNB [0-9]+\]\[RAPROC\] PUSCH with TC_RNTI [0-9a-fA-F]+ received correctly, adding UE MAC Context UE_id [0-9]+\/RNTI [0-9a-fA-F]+', str(line))
if result is not None:
NSA_RAPROC_PUSCH_check = 1
#dlsch and ulsch statistics
#keys below are the markers we are loooking for, loop over this keys list
#everytime these markers are found in the log file, the previous ones are overwritten in the dict
#eventually we record and print only the last occurence
keys = {'dlsch_rounds','dlsch_total_bytes','ulsch_rounds','ulsch_total_bytes_scheduled'}
for k in keys:
result = re.search(k, line)
if result is not None:
#remove 1- all useless char before relevant info (ulsch or dlsch) 2- trailing char
dlsch_ulsch_stats[k]=re.sub(r'^.*\]\s+', r'' , line.rstrip())
enb_log_file.close()
logging.debug(' File analysis completed')
if self.air_interface == 'lte':
if (self.air_interface[self.eNB_instance] == 'lte-softmodem') or (self.air_interface[self.eNB_instance] == 'ocp-enb'):
nodeB_prefix = 'e'
else:
nodeB_prefix = 'g'
if self.air_interface == 'nr':
if self.air_interface[self.eNB_instance] == 'nr-softmodem':
if ulschReceiveOK > 0:
statMsg = nodeB_prefix + 'NB showed ' + str(ulschReceiveOK) + ' "ULSCH received ok" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
@@ -948,6 +890,27 @@ class RANManagement():
statMsg = nodeB_prefix + 'NB showed ' + str(gnbRxTxWakeUpFailure) + ' "could not wakeup gNB rxtx process" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
if gnbTxWriteThreadEnabled:
statMsg = nodeB_prefix + 'NB ran with TX Write thread enabled'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
#FR1 NSA test : add new markers to make sure gNB is used
if NSA_RAPROC_PUSCH_check:
statMsg = '[RAPROC] PUSCH with TC_RNTI message check for ' + nodeB_prefix + 'NB : PASS '
htmlMsg = statMsg+'\n'
else:
statMsg = '[RAPROC] PUSCH with TC_RNTI message check for ' + nodeB_prefix + 'NB : FAIL '
htmlMsg = statMsg+'\n'
logging.debug(statMsg)
htmleNBFailureMsg += htmlMsg
#ulsch and dlsch statistics
if len(dlsch_ulsch_stats)!=0: #check if dictionary is not empty
statMsg=''
for key in dlsch_ulsch_stats: #for each dictionary key
statMsg += dlsch_ulsch_stats[key] + '\n'
logging.debug(dlsch_ulsch_stats[key])
htmleNBFailureMsg += statMsg
if uciStatMsgCount > 0:
statMsg = nodeB_prefix + 'NB showed ' + str(uciStatMsgCount) + ' "uci->stat" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
@@ -960,6 +923,14 @@ class RANManagement():
statMsg = nodeB_prefix + 'NB showed ' + str(ulschFailure) + ' "ULSCH in error in round" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
if ulschAllocateCCEerror > 0:
statMsg = nodeB_prefix + 'NB showed ' + str(ulschAllocateCCEerror) + ' "eNB_dlsch_ulsch_scheduler(); ERROR ALLOCATING CCEs" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
if uplinkSegmentsAborted > 0:
statMsg = nodeB_prefix + 'NB showed ' + str(uplinkSegmentsAborted) + ' "uplink segment error 0/2, aborted * segments" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
if dropNotEnoughRBs > 0:
statMsg = 'eNB showed ' + str(dropNotEnoughRBs) + ' "dropping, not enough RBs" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
@@ -1030,30 +1001,31 @@ class RANManagement():
rruMsg = 'Slave RRU DID NOT receive the RRU_frame_resynch command from RAU'
logging.debug('\u001B[1;37;41m ' + rruMsg + ' \u001B[0m')
htmleNBFailureMsg += rruMsg + '\n'
self.prematureExit(True)
return CONST.ENB_PROCESS_SLAVE_RRU_NOT_SYNCED
self.prematureExit = True
global_status = CONST.ENB_PROCESS_SLAVE_RRU_NOT_SYNCED
if foundSegFault:
logging.debug('\u001B[1;37;41m ' + nodeB_prefix + 'NB ended with a Segmentation Fault! \u001B[0m')
if self.htmlObj is not None:
self.htmlObj.SetHmleNBFailureMsg(htmleNBFailureMsg)
return CONST.ENB_PROCESS_SEG_FAULT
global_status = CONST.ENB_PROCESS_SEG_FAULT
if foundAssertion:
logging.debug('\u001B[1;37;41m ' + nodeB_prefix + 'NB ended with an assertion! \u001B[0m')
htmleNBFailureMsg += msgAssertion
if self.htmlObj is not None:
self.htmlObj.SetHmleNBFailureMsg(htmleNBFailureMsg)
return CONST.ENB_PROCESS_ASSERTION
global_status = CONST.ENB_PROCESS_ASSERTION
if foundRealTimeIssue:
logging.debug('\u001B[1;37;41m ' + nodeB_prefix + 'NB faced real time issues! \u001B[0m')
htmleNBFailureMsg += nodeB_prefix + 'NB faced real time issues!\n'
#return CONST.ENB_PROCESS_REALTIME_ISSUE
if rlcDiscardBuffer > 0:
rlcMsg = nodeB_prefix + 'NB RLC discarded ' + str(rlcDiscardBuffer) + ' buffer(s)'
logging.debug('\u001B[1;37;41m ' + rlcMsg + ' \u001B[0m')
htmleNBFailureMsg += rlcMsg + '\n'
if self.htmlObj is not None:
self.htmlObj.SetHmleNBFailureMsg(htmleNBFailureMsg)
return CONST.ENB_PROCESS_REALTIME_ISSUE
global_status = CONST.ENB_PROCESS_REALTIME_ISSUE
if self.htmlObj is not None:
self.htmlObj.SetHmleNBFailureMsg(htmleNBFailureMsg)
return 0
self.htmlObj.htmleNBFailureMsg=htmleNBFailureMsg
# Runtime statistics for console output and HTML
if runTime != '':
logging.debug(runTime)
logging.debug(userTime)
logging.debug(systemTime)
logging.debug(maxPhyMemUsage)
logging.debug(nbContextSwitches)
self.runtime_stats='<pre>'+runTime + '\n'+ userTime + '\n' + systemTime + '\n' + maxPhyMemUsage + '\n' + nbContextSwitches+'</pre>'
return global_status

View File

@@ -53,7 +53,7 @@ function details_table {
echo " <th>Message</th>" >> $3
echo " </tr>" >> $3
LIST_MESSAGES=`egrep "error:|warning:" $2 | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto"`
LIST_MESSAGES=`egrep "error:|warning:" $2 | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto|disabling jobserver mode"`
COMPLETE_MESSAGE="start"
for MESSAGE in $LIST_MESSAGES
do
@@ -146,7 +146,7 @@ function summary_table_row {
else
echo " <td bgcolor = \"red\" >$NB_ERRORS</th>" >> ./build_results.html
fi
NB_WARNINGS=`egrep "warning:" $2 | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto" | egrep -c "warning:"`
NB_WARNINGS=`egrep "warning:" $2 | egrep -v "jobserver unavailable|Clock skew detected.|flexran.proto|disabling jobserver mode" | egrep -c "warning:"`
if [ $NB_WARNINGS -eq 0 ]
then
echo " <td bgcolor = \"green\" >$NB_WARNINGS</th>" >> ./build_results.html

View File

@@ -470,7 +470,7 @@ function report_test {
then
NB_UE_TUNNEL_UP=`egrep -c "Interface oaitun_ue1 successfully configured" $UE_LOG`
else
NB_UE_TUNNEL_UP=`egrep -c "executing ifconfig oaitun_ue1" $UE_LOG`
NB_UE_TUNNEL_UP=`egrep -c "ip link set oaitun_ue1 up" $UE_LOG`
fi
if [ $NB_ENB_GOT_SYNC -gt 0 ] && [ $NB_UE_GOT_SYNC -gt 0 ] && [ $NB_ENB_SYNCED_WITH_UE -gt 0 ]
then
@@ -620,6 +620,101 @@ function report_test {
#IPERF_TESTS=`ls $ARCHIVES_LOC/${TMODE}_${BW}MHz_${CN_CONFIG}_iperf_ul*client*txt | grep -v mbms 2> /dev/null`
#analyzeIperfFiles
done
# FeMBMS Case
CN_CONFIG="noS1"
TMODE="fdd"
BW_CASES=(05)
for BW in ${BW_CASES[@]}
do
echo " <tr bgcolor = \"#8FBC8F\" >" >> ./test_simulator_results.html
echo " <td align = \"center\" colspan = 4 >Test FeMBMS without EPC (aka noS1): ${TMODE} -- ${BW}MHz </td>" >> ./test_simulator_results.html
echo " </tr>" >> ./test_simulator_results.html
ENB_LOG=$ARCHIVES_LOC/${TMODE}_${BW}MHz_${CN_CONFIG}_enb_fembms.log
UE_LOG=`echo $ENB_LOG | sed -e "s#enb#ue#"`
if [ -f $ENB_LOG ] && [ -f $UE_LOG ]
then
NAME_ENB=`echo $ENB_LOG | sed -e "s#$ARCHIVES_LOC/##"`
NAME_UE=`echo $UE_LOG | sed -e "s#$ARCHIVES_LOC/##"`
echo " <tr>" >> ./test_simulator_results.html
echo " <td>$NAME_ENB --- $NAME_UE</td>" >> ./test_simulator_results.html
echo " <td>N/A</td>" >> ./test_simulator_results.html
#NB_ENB_GOT_SYNC=`egrep -c "got sync" $ENB_LOG`
NB_ENB_TUNNEL_UP=`egrep -c "Interface oaitun_enb1 successfully configured" $ENB_LOG`
NB_ENB_MTUNNEL_UP=`egrep -c "Interface oaitun_enm1 successfully configured" $ENB_LOG`
#NB_UE_GOT_SYNC=`egrep -c "rfsimulator: Success" $UE_LOG`
#NB_ENB_SYNCED_WITH_UE=`egrep -c "Generating RRCConnectionReconfigurationComplete" $UE_LOG`
NB_UE_TUNNEL_UP=`egrep -c "Interface oaitun_ue1 successfully configured" $UE_LOG`
NB_UE_MTUNNEL_UP=`egrep -c "Interface oaitun_uem1 successfully configured" $UE_LOG`
NB_UE_MBMS_PUSH_MSG=`egrep -c "TRIED TO PUSH MBMS DATA TO" $UE_LOG`
#if [ $NB_ENB_GOT_SYNC -gt 0 ] && [ $NB_UE_GOT_SYNC -gt 0 ] && [ $NB_ENB_SYNCED_WITH_UE -gt 0 ] && [ $NB_UE_MBMS_PUSH_MSG -gt 0 ]
if [ $NB_UE_MBMS_PUSH_MSG -gt 0 ]
then
echo " <td bgcolor = \"green\" >OK</td>" >> ./test_simulator_results.html
else
echo " <td bgcolor = \"red\" >KO</td>" >> ./test_simulator_results.html
fi
echo " <td><pre>" >> ./test_simulator_results.html
#if [ $NB_ENB_GOT_SYNC -gt 0 ]
#then
# echo "<font color = \"blue\">- eNB --> got sync</font>" >> ./test_simulator_results.html
#else
# echo "<font color = \"red\"><b>- eNB NEVER got sync</b></font>" >> ./test_simulator_results.html
#fi
if [ $NB_ENB_TUNNEL_UP -gt 0 ]
then
echo "<font color = \"blue\">- eNB mounted oaitun_enb1 interface</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- eNB NEVER mounted oaitun_enb1 interface</b></font>" >> ./test_simulator_results.html
fi
if [ $NB_ENB_MTUNNEL_UP -gt 0 ]
then
echo "<font color = \"blue\">- eNB mounted oaitun_enm1 interface</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- eNB NEVER mounted oaitun_enm1 interface</b></font>" >> ./test_simulator_results.html
fi
#if [ $NB_UE_GOT_SYNC -gt 0 ]
#then
# echo "<font color = \"blue\">- LTE UE --> got sync</font>" >> ./test_simulator_results.html
#else
# echo "<font color = \"red\"><b>- LTE UE NEVER got sync</b></font>" >> ./test_simulator_results.html
#fi
#if [ $NB_ENB_SYNCED_WITH_UE -gt 0 ]
#then
# echo "<font color = \"blue\">- LTE UE attached to eNB</font>" >> ./test_simulator_results.html
#else
# echo "<font color = \"red\"><b>- LTE UE NEVER attached to eNB</b></font>" >> ./test_simulator_results.html
#fi
if [ $NB_UE_TUNNEL_UP -gt 0 ]
then
echo "<font color = \"blue\">- LTE UE mounted oaitun_ue1 interface</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- LTE UE NEVER mounted oaitun_ue1 interface</b></font>" >> ./test_simulator_results.html
fi
if [ $NB_UE_MTUNNEL_UP -gt 0 ]
then
echo "<font color = \"blue\">- LTE UE mounted oaitun_uem1 interface</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- LTE UE NEVER mounted oaitun_uem1 interface</b></font>" >> ./test_simulator_results.html
fi
if [ $NB_UE_MBMS_PUSH_MSG -gt 0 ]
then
echo "<font color = \"blue\">- LTE UE tried to push ${NB_UE_MBMS_PUSH_MSG} MBMS DATA</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- LTE UE NEVER pushed MBMS DATA</b></font>" >> ./test_simulator_results.html
fi
echo " </pre></td>" >> ./test_simulator_results.html
echo " </tr>" >> ./test_simulator_results.html
fi
#PING_LOGS=`ls $ARCHIVES_LOC/${TMODE}_${BW}MHz_${CN_CONFIG}_ping*.log 2> /dev/null`
#analyzePingFiles
#IPERF_TESTS=`ls $ARCHIVES_LOC/${TMODE}_${BW}MHz_${CN_CONFIG}_iperf_dl*client*txt | grep -v mbms 2> /dev/null`
#analyzeIperfFiles
#IPERF_TESTS=`ls $ARCHIVES_LOC/${TMODE}_${BW}MHz_${CN_CONFIG}_iperf_ul*client*txt | grep -v mbms 2> /dev/null`
#analyzeIperfFiles
done
echo " </table>" >> ./test_simulator_results.html
echo " </div>" >> ./test_simulator_results.html
@@ -670,6 +765,52 @@ function report_test {
echo " <td align = \"center\" colspan = 4 >Test without EPC (aka noS1): ${TMODE} -- ${BW}PRB </td>" >> ./test_simulator_results.html
fi
echo " </tr>" >> ./test_simulator_results.html
#RA test (--do-ra option)
#build log files names
RA_ENB_LOG=$ARCHIVES_LOC/${TMODE}_${BW}prb_${CN_CONFIG}_gnb_ra_test.log
RA_UE_LOG=$ARCHIVES_LOC/${TMODE}_${BW}prb_${CN_CONFIG}_ue_ra_test.log
if [ -f $RA_ENB_LOG ] && [ -f $RA_UE_LOG ]
then
#get rid of full path
NAME_ENB=`echo $RA_ENB_LOG | sed -e "s#$ARCHIVES_LOC/##"`
NAME_UE=`echo $RA_UE_LOG | sed -e "s#$ARCHIVES_LOC/##"`
echo " <tr>" >> ./test_simulator_results.html
echo " <td>$NAME_ENB --- $NAME_UE</td>" >> ./test_simulator_results.html
echo " <td>Check if RA proc succeeded</td>" >> ./test_simulator_results.html
#gNB RA check
GNB_RECEIVED=`egrep -c "\[RAPROC\] PUSCH with TC_RNTI (.+) received correctly" $RA_ENB_LOG`
#UE RA check
UE_RA_PROC_OK=`egrep -c "\[RAPROC\] RA procedure succeeded" $RA_UE_LOG`
if [ $GNB_RECEIVED -gt 0 ] && [ $UE_RA_PROC_OK -gt 0 ]
then
echo " <td bgcolor = \"green\" >OK</td>" >> ./test_simulator_results.html
else
echo " <td bgcolor = \"red\" >KO</td>" >> ./test_simulator_results.html
fi
echo " <td><pre>" >> ./test_simulator_results.html
if [ $GNB_RECEIVED -gt 0 ]
then
echo "<font color = \"blue\">- gNB --> RA received</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- gNB RA NOT RECEIVED</b></font>" >> ./test_simulator_results.html
fi
if [ $UE_RA_PROC_OK -gt 0 ]
then
echo "<font color = \"blue\">- NR UE --> RA procedure succeded</font>" >> ./test_simulator_results.html
else
echo "<font color = \"red\"><b>- NR UE RA procedure failed</b></font>" >> ./test_simulator_results.html
fi
echo " </pre></td>" >> ./test_simulator_results.html
echo " </tr>" >> ./test_simulator_results.html
fi
#SYNC test
ENB_LOG=$ARCHIVES_LOC/${TMODE}_${BW}prb_${CN_CONFIG}_gnb.log
UE_LOG=`echo $ENB_LOG | sed -e "s#gnb#ue#"`
if [ -f $ENB_LOG ] && [ -f $UE_LOG ]
@@ -724,8 +865,8 @@ function report_test {
echo " </pre></td>" >> ./test_simulator_results.html
echo " </tr>" >> ./test_simulator_results.html
fi
#PING_LOGS=`ls $ARCHIVES_LOC/${TMODE}_${BW}MHz_${UES}users_${CN_CONFIG}_ping*.log 2> /dev/null`
#analyzePingFiles
PING_LOGS=`ls $ARCHIVES_LOC/${TMODE}_${BW}prb_${CN_CONFIG}_ping*.log 2> /dev/null`
analyzePingFiles
IPERF_TESTS=`ls $ARCHIVES_LOC/${TMODE}_${BW}prb_${CN_CONFIG}_iperf_dl*client*txt 2> /dev/null`
analyzeIperfFiles

Binary file not shown.

Binary file not shown.

View File

@@ -89,6 +89,9 @@ function start_basic_sim_enb {
fi
done
ENB_SYNC=0
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_VM_IP_ADDR < $1
rm $1
if [ $i -lt 50 ]
then
@@ -151,6 +154,9 @@ function start_basic_sim_ue {
i=$[$i+1]
fi
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$2 < $1
rm $1
if [ $i -lt 50 ]
then
@@ -270,6 +276,43 @@ function check_ping_result {
fi
}
function check_ra_result {
local LOC_GNB_LOG=$1
local LOC_UE_LOG=$2
#if log files exist
if [ -f $LOC_GNB_LOG ] && [ -f $LOC_UE_LOG ]
then
#gNB RA test
#console check
echo "Checking gNB Log for RA success"
egrep "\[RAPROC\] PUSCH with TC_RNTI (.+) received correctly" $1
#script check
local GNB_COMPLETE=`egrep -c "\[RAPROC\] PUSCH with TC_RNTI (.+) received correctly" $1`
#UE RA test
#console check
echo 'Checking UE Log for RA success'
egrep "\[RAPROC\] RA procedure succeeded" $2
#script check
local UE_COMPLETE=`egrep -c "\[RAPROC\] RA procedure succeeded" $2`
#generate status
if [ $GNB_COMPLETE -eq 0 ] || [ $UE_COMPLETE -eq 0 ]
then
RA_STATUS=-1
echo "RA test FAILED, could not find the markers"
fi
#case where log files do not exist
else
echo "RA test log files not present"
RA_STATUS=-1
fi
}
# In DL: iperf server should be on UE side
# -B oaitun_ue{j}-IP-Addr
# iperf client should be on EPC (S1) or eNB (noS1) side
@@ -523,9 +566,9 @@ function install_epc_on_vm {
echo "############################################################"
echo "[ -f 01proxy ] && sudo cp 01proxy /etc/apt/apt.conf.d/" > $LOC_EPC_VM_CMDS
echo "touch /home/ubuntu/.hushlogin" >> $LOC_EPC_VM_CMDS
echo "echo \"sudo apt-get --yes --quiet install zip openjdk-8-jre libconfuse-dev libreadline-dev liblog4c-dev libgcrypt-dev libsctp-dev python2.7 python2.7-dev daemon iperf\"" >> $LOC_EPC_VM_CMDS
echo "echo \"sudo apt-get --yes --quiet install zip openjdk-8-jre libconfuse-dev libreadline-dev liblog4c-dev libgcrypt-dev libsctp-dev python2.7 python2.7-dev iperf\"" >> $LOC_EPC_VM_CMDS
echo "sudo apt-get update > zip-install.txt 2>&1" >> $LOC_EPC_VM_CMDS
echo "sudo apt-get --yes install zip openjdk-8-jre libconfuse-dev libreadline-dev liblog4c-dev libgcrypt-dev libsctp-dev python2.7 python2.7-dev daemon iperf >> zip-install.txt 2>&1" >> $LOC_EPC_VM_CMDS
echo "sudo apt-get --yes install zip openjdk-8-jre libconfuse-dev libreadline-dev liblog4c-dev libgcrypt-dev libsctp-dev python2.7 python2.7-dev iperf >> zip-install.txt 2>&1" >> $LOC_EPC_VM_CMDS
# Installing HSS
echo "echo \"cd /opt\"" >> $LOC_EPC_VM_CMDS
@@ -588,8 +631,6 @@ function start_epc {
echo "echo \"cd /opt/hss_sim0609\"" > $LOC_EPC_VM_CMDS
echo "cd /opt/hss_sim0609" >> $LOC_EPC_VM_CMDS
echo "sudo rm -f hss.log" >> $LOC_EPC_VM_CMDS
#echo "echo \"sudo daemon --unsafe --name=simulated_hss --chdir=/opt/hss_sim0609 ./starthss_real\"" >> $LOC_EPC_VM_CMDS
#echo "sudo daemon --unsafe --name=simulated_hss --chdir=/opt/hss_sim0609 ./starthss_real" >> $LOC_EPC_VM_CMDS
echo "echo \"screen -dm -S simulated_hss ./starthss_real\"" >> $LOC_EPC_VM_CMDS
echo "sudo su -c \"screen -dm -S simulated_hss ./starthss_real\"" >> $LOC_EPC_VM_CMDS
@@ -656,8 +697,6 @@ function terminate_epc {
echo "cd /opt/ltebox/tools" >> $1
echo "echo \"sudo ./stop_ltebox\"" >> $1
echo "sudo ./stop_ltebox" >> $1
echo "echo \"sudo daemon --name=simulated_hss --stop\"" >> $1
echo "sudo daemon --name=simulated_hss --stop" >> $1
echo "echo \"sudo killall --signal SIGKILL hss_sim\"" >> $1
echo "sudo killall --signal SIGKILL hss_sim" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$2 < $1
@@ -764,6 +803,9 @@ function start_l2_sim_enb {
i=$[$i+1]
fi
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_ENB_VM_IP_ADDR < $1
rm $1
ENB_SYNC=1
if [ $i -lt 50 ]
@@ -872,6 +914,9 @@ function start_l2_sim_ue {
i=$[$i+1]
fi
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_UE_VM_IP_ADDR < $1
rm $1
UE_SYNC=1
if [ $i -lt 50 ]
@@ -985,6 +1030,9 @@ function start_rf_sim_enb {
i=$[$i+1]
fi
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_ENB_VM_IP_ADDR < $1
rm $1
if [ $i -lt 50 ]
then
@@ -1114,6 +1162,9 @@ function start_rf_sim_ue {
i=$[$i+1]
fi
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_UE_VM_IP_ADDR < $1
rm $1
if [ $i -lt 50 ]
then
@@ -1158,11 +1209,19 @@ function start_rf_sim_gnb {
local LOC_CONF_FILE=$5
# 1 is with S1 and 0 without S1 aka noS1
local LOC_S1_CONFIGURATION=$6
#LOC_RA_TEST=1 will run the RA test check
local LOC_RA_TEST=$7
if [ -e rbconfig.raw ]; then rm -f rbconfig.raw; fi
if [ -e reconfig.raw ]; then rm -f reconfig.raw; fi
echo "cd /home/ubuntu/tmp" > $1
echo "echo \"sudo apt-get --yes --quiet install daemon \"" >> $1
echo "sudo apt-get --yes install daemon >> /home/ubuntu/tmp/cmake_targets/log/daemon-install.txt 2>&1" >> $1
echo "echo \"source oaienv\"" >> $1
echo "source oaienv" >> $1
echo "echo \"export RFSIMULATOR=server\"" >> $1
echo "export RFSIMULATOR=server" >> $1
echo "cd ci-scripts/conf_files/" >> $1
echo "cp $LOC_CONF_FILE ci-$LOC_CONF_FILE" >> $1
#echo "sed -i -e 's#N_RB_DL.*=.*;#N_RB_DL = $LOC_NB_RBS;#' -e 's#CI_MME_IP_ADDR#$LOC_EPC_IP_ADDR#' -e 's#CI_ENB_IP_ADDR#$LOC_ENB_VM_IP_ADDR#' -e 's#CI_UE_IP_ADDR#$LOC_UE_VM_IP_ADDR#' ci-$LOC_CONF_FILE" >> $1
@@ -1171,9 +1230,15 @@ function start_rf_sim_gnb {
echo "echo \"cd /home/ubuntu/tmp/cmake_targets/ran_build/build/\"" >> $1
echo "sudo chmod 777 /home/ubuntu/tmp/cmake_targets/ran_build/build/" >> $1
echo "cd /home/ubuntu/tmp/cmake_targets/ran_build/build/" >> $1
echo "sudo rm -f r*config.raw" >> $1
if [ $LOC_S1_CONFIGURATION -eq 0 ]
then
echo "echo \"RFSIMULATOR=server ./nr-softmodem -O /home/ubuntu/tmp/ci-scripts/conf_files/ci-$LOC_CONF_FILE --log_config.global_log_options level,nocolor --parallel-config PARALLEL_SINGLE_THREAD --noS1 --nokrnmod 1 --rfsim --phy-test\" > ./my-nr-softmodem-run.sh " >> $1
if [ $LOC_RA_TEST -eq 0 ] #no RA test => use --phy-test option
then
echo "echo \"./nr-softmodem -O /home/ubuntu/tmp/ci-scripts/conf_files/ci-$LOC_CONF_FILE --log_config.global_log_options level,nocolor --parallel-config PARALLEL_SINGLE_THREAD --noS1 --nokrnmod 1 --rfsim --phy-test\" > ./my-nr-softmodem-run.sh " >> $1
else #RA test => use --do-ra option
echo "echo \"./nr-softmodem -O /home/ubuntu/tmp/ci-scripts/conf_files/ci-$LOC_CONF_FILE --log_config.global_log_options level,nocolor --parallel-config PARALLEL_SINGLE_THREAD --rfsim --do-ra\" > ./my-nr-softmodem-run.sh " >> $1
fi
fi
echo "chmod 775 ./my-nr-softmodem-run.sh" >> $1
echo "cat ./my-nr-softmodem-run.sh" >> $1
@@ -1183,6 +1248,7 @@ function start_rf_sim_gnb {
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_GNB_VM_IP_ADDR < $1
rm $1
local i="0"
echo "egrep -c \"got sync\" /home/ubuntu/tmp/cmake_targets/log/$LOC_LOG_FILE" > $1
while [ $i -lt 10 ]
@@ -1205,7 +1271,9 @@ function start_rf_sim_gnb {
GNB_SYNC=1
echo "RF-SIM gNB is sync'ed: waiting for UE(s) to connect"
fi
if [ $LOC_S1_CONFIGURATION -eq 0 ]
# check noS1 config only outside RA test (as it does not support noS1)
if [ $LOC_S1_CONFIGURATION -eq 0 ] && [ $LOC_RA_TEST -eq 0 ]
then
echo "ifconfig oaitun_enb1 | egrep -c \"inet addr\"" > $1
# Checking oaitun_enb1 interface has now an IP address
@@ -1230,7 +1298,16 @@ function start_rf_sim_gnb {
echo "RF-SIM gNB oaitun_enb1 is UP and CONFIGURED"
fi
fi
sleep 10
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_GNB_VM_IP_ADDR < $1
rm $1
# Copy the RAW files from the gNB run for the NR-UE
scp -o StrictHostKeyChecking=no ubuntu@$LOC_GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/ran_build/build/rbconfig.raw .
scp -o StrictHostKeyChecking=no ubuntu@$LOC_GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/ran_build/build/reconfig.raw .
}
function start_rf_sim_nr_ue {
@@ -1241,14 +1318,30 @@ function start_rf_sim_nr_ue {
local LOC_FREQUENCY=$6
# 1 is with S1 and 0 without S1 aka noS1
local LOC_S1_CONFIGURATION=$7
#LOC_RA_TEST=1 will run the RA test check
local LOC_RA_TEST=$8
# Copy the RAW files from the gNB run
scp -o StrictHostKeyChecking=no rbconfig.raw ubuntu@$LOC_NR_UE_VM_IP_ADDR:/home/ubuntu/tmp
scp -o StrictHostKeyChecking=no reconfig.raw ubuntu@$LOC_NR_UE_VM_IP_ADDR:/home/ubuntu/tmp
echo "echo \"sudo apt-get --yes --quiet install daemon \"" > $1
echo "sudo apt-get --yes install daemon >> /home/ubuntu/tmp/cmake_targets/log/daemon-install.txt 2>&1" >> $1
echo "echo \"export RFSIMULATOR=${LOC_GNB_VM_IP_ADDR}\"" >> $1
echo "export RFSIMULATOR=${LOC_GNB_VM_IP_ADDR}" >> $1
echo "echo \"cd /home/ubuntu/tmp/cmake_targets/ran_build/build/\"" >> $1
echo "sudo chmod 777 /home/ubuntu/tmp/cmake_targets/ran_build/build/" >> $1
echo "sudo cp /home/ubuntu/tmp/r*config.raw /home/ubuntu/tmp/cmake_targets/ran_build/build/" >> $1
echo "sudo chmod 666 /home/ubuntu/tmp/cmake_targets/ran_build/build/r*config.raw" >> $1
echo "cd /home/ubuntu/tmp/cmake_targets/ran_build/build/" >> $1
if [ $LOC_S1_CONFIGURATION -eq 0 ]
then
echo "echo \"RFSIMULATOR=${LOC_GNB_VM_IP_ADDR} ./nr-uesoftmodem --nokrnmod 1 --rfsim --phy-test --rrc_config_path /home/ubuntu/tmp/ci-scripts/rrc-files --log_config.global_log_options level,nocolor --noS1\" > ./my-nr-softmodem-run.sh " >> $1
if [ $LOC_RA_TEST -eq 0 ] #no RA test => use --phy-test option
then
echo "echo \"./nr-uesoftmodem --nokrnmod 1 --rfsim --phy-test --rrc_config_path /home/ubuntu/tmp/cmake_targets/ran_build/build/ --log_config.global_log_options level,nocolor --noS1\" > ./my-nr-softmodem-run.sh " >> $1
else #RA test => use --do-ra option
echo "echo \"./nr-uesoftmodem --rfsim --do-ra --log_config.global_log_options level,nocolor --rrc_config_path /home/ubuntu/tmp/cmake_targets/ran_build/build/\" > ./my-nr-softmodem-run.sh " >> $1
fi
fi
echo "chmod 775 ./my-nr-softmodem-run.sh" >> $1
echo "cat ./my-nr-softmodem-run.sh" >> $1
@@ -1281,11 +1374,13 @@ function start_rf_sim_nr_ue {
else
echo "RF-SIM NR-UE is sync'ed w/ gNB"
fi
# Checking oaitun_ue1 interface has now an IP address
i="0"
echo "ifconfig oaitun_ue1 | egrep -c \"inet addr\"" > $1
while [ $i -lt 10 ]
do
# Checking oaitun_ue1 interface has now an IP address (only outside RA test)
if [ $LOC_RA_TEST -eq 0 ]
then
i="0"
echo "ifconfig oaitun_ue1 | egrep -c \"inet addr\"" > $1
while [ $i -lt 10 ]
do
sleep 5
CONNECTED=`ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_NR_UE_VM_IP_ADDR < $1`
if [ $CONNECTED -eq 1 ]
@@ -1294,16 +1389,20 @@ function start_rf_sim_nr_ue {
else
i=$[$i+1]
fi
done
rm $1
if [ $i -lt 50 ]
then
done
echo "echo \"free -m\"" > $1
echo "free -m" >> $1
ssh -T -o StrictHostKeyChecking=no ubuntu@$LOC_NR_UE_VM_IP_ADDR < $1
rm $1
if [ $i -lt 50 ]
then
NR_UE_SYNC=0
echo "RF-SIM NR-UE oaitun_ue1 is DOWN or NOT CONFIGURED"
else
else
echo "RF-SIM NR-UE oaitun_ue1 is UP and CONFIGURED"
fi
sleep 10
fi
sleep 10
fi
}
@@ -1991,6 +2090,70 @@ function run_test_on_vm {
done
####################
## FeMBMS CASE noS1 ##
####################
CONF_FILE=lte-fdd-fembms-basic-sim.conf
CN_CONFIG="noS1"
S1_NOS1_CFG=0
LTEBOX=0
TMODE="fdd"
FREQUENCY=2680
BW_CASES=(05)
FeMBMS_STATUS=0
for BW in ${BW_CASES[@]}
do
if [[ $BW =~ .*05.* ]]; then PRB=25; fi
if [[ $BW =~ .*10.* ]]; then PRB=50; fi
if [[ $BW =~ .*20.* ]]; then PRB=100; fi
echo "############################################################"
echo "${CN_CONFIG} : Starting the eNB with MSMS in ${TMODE}-${BW}MHz mode"
echo "############################################################"
CURRENT_ENB_LOG_FILE=${TMODE}_${BW}MHz_${CN_CONFIG}_enb_fembms.log
start_rf_sim_enb $ENB_VM_CMDS "$ENB_VM_IP_ADDR" "$EPC_VM_IP_ADDR" $CURRENT_ENB_LOG_FILE $PRB $CONF_FILE $S1_NOS1_CFG
echo "############################################################"
echo "${CN_CONFIG} : Starting the UE"
echo "############################################################"
CURRENT_UE_LOG_FILE=${TMODE}_${BW}MHz_${CN_CONFIG}_ue_fembms.log
start_rf_sim_ue $UE_VM_CMDS $UE_VM_IP_ADDR $ENB_VM_IP_ADDR $CURRENT_UE_LOG_FILE $PRB $FREQUENCY $S1_NOS1_CFG 1
if [ $UE_SYNC -eq 0 ]
then
echo "Problem w/ eNB and UE not syncing"
terminate_enb_ue_basic_sim $ENB_VM_CMDS $ENB_VM_IP_ADDR 1
terminate_enb_ue_basic_sim $UE_VM_CMDS $UE_VM_IP_ADDR 2
scp -o StrictHostKeyChecking=no ubuntu@$ENB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_ENB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_UE_LOG_FILE $ARCHIVES_LOC
STATUS=-1
break
fi
echo "############################################################"
echo "${CN_CONFIG} : iperf DL -- UE is server and eNB is client"
echo "############################################################"
get_enb_mbms_noS1_ip_addr $ENB_VM_CMDS $ENB_VM_IP_ADDR
IPERF_LOG_FILE=${TMODE}_${BW}MHz_${CN_CONFIG}_iperf_dl_fembms
get_ue_mbms_ip_addr $UE_VM_CMDS $UE_VM_IP_ADDR 1
THROUGHPUT=2
generic_iperf $UE_VM_CMDS $UE_VM_IP_ADDR $UE_IP_ADDR $ENB_VM_CMDS $ENB_VM_IP_ADDR $ENB_IP_ADDR $THROUGHPUT $IPERF_LOG_FILE 1 0
scp -o StrictHostKeyChecking=no ubuntu@$UE_VM_IP_ADDR:/home/ubuntu/${IPERF_LOG_FILE}_server.txt $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$ENB_VM_IP_ADDR:/home/ubuntu/${IPERF_LOG_FILE}_client.txt $ARCHIVES_LOC
#check_iperf $ARCHIVES_LOC/$IPERF_LOG_FILE $THROUGHPUT
echo "############################################################"
echo "${CN_CONFIG} : Terminate enb/ue simulators"
echo "############################################################"
terminate_enb_ue_basic_sim $ENB_VM_CMDS $ENB_VM_IP_ADDR 1
terminate_enb_ue_basic_sim $UE_VM_CMDS $UE_VM_IP_ADDR 2
scp -o StrictHostKeyChecking=no ubuntu@$ENB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_ENB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_UE_LOG_FILE $ARCHIVES_LOC
NB_UE_FeMBMS_MESSAGES=`egrep -c "TRIED TO PUSH MBMS DATA TO" $ARCHIVES_LOC/$CURRENT_UE_LOG_FILE`
if [ $NB_UE_FeMBMS_MESSAGES -eq 0 ]; then FeMBMS_STATUS=-1; fi
done
full_l2_sim_destroy
echo "############################################################"
@@ -2006,6 +2169,13 @@ function run_test_on_vm {
echo "LTE MBMS RFSIM seems to FAIL"
STATUS=-1
fi
if [ $FeMBMS_STATUS -eq 0 ]
then
echo "LTE FeMBMS RFSIM seems OK"
else
echo "LTE FeMBMS RFSIM seems to FAIL"
STATUS=-1
fi
if [ $STATUS -eq 0 ]
then
echo "LTE RFSIM seems OK"
@@ -2014,6 +2184,7 @@ function run_test_on_vm {
echo "LTE RFSIM seems to FAIL"
echo "LTE: TEST_KO" > $ARCHIVES_LOC/test_final_status.log
fi
fi
if [[ "$RUN_OPTIONS" == "complex" ]] && [[ $VM_NAME =~ .*-rf-sim.* ]]
@@ -2024,32 +2195,107 @@ function run_test_on_vm {
PRB=106
FREQUENCY=3510
if [ ! -d $ARCHIVES_LOC ]
then
mkdir --parents $ARCHIVES_LOC
fi
local try_cnt="0"
NR_STATUS=0
######### start of loop
while [ $try_cnt -lt 5 ]
######### start of RA TEST loop
while [ $try_cnt -lt 5 ] #5 because it hardly succeed within CI
do
SYNC_STATUS=0
PING_STATUS=0
IPERF_STATUS=0
RA_STATUS=0
rm -f $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}*ra_test.log
echo "############################################################"
echo "${CN_CONFIG} : Starting the gNB"
echo "############################################################"
CURRENT_GNB_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_gnb.log
start_rf_sim_gnb $GNB_VM_CMDS "$GNB_VM_IP_ADDR" $CURRENT_GNB_LOG_FILE $PRB $CONF_FILE $S1_NOS1_CFG
CURRENT_GNB_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_gnb_ra_test.log
#last argument = 1 is to enable --do-ra for RA test
start_rf_sim_gnb $GNB_VM_CMDS "$GNB_VM_IP_ADDR" $CURRENT_GNB_LOG_FILE $PRB $CONF_FILE $S1_NOS1_CFG 1
echo "############################################################"
echo "${CN_CONFIG} : Starting the NR-UE"
echo "############################################################"
CURRENT_NR_UE_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_ue.log
start_rf_sim_nr_ue $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR $GNB_VM_IP_ADDR $CURRENT_NR_UE_LOG_FILE $PRB $FREQUENCY $S1_NOS1_CFG
CURRENT_NR_UE_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_ue_ra_test.log
#last argument = 1 is to enable --do-ra for RA test
start_rf_sim_nr_ue $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR $GNB_VM_IP_ADDR $CURRENT_NR_UE_LOG_FILE $PRB $FREQUENCY $S1_NOS1_CFG 1
if [ $NR_UE_SYNC -eq 0 ]
then
echo "Problem w/ gNB and NR-UE not syncing"
terminate_enb_ue_basic_sim $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR 2
terminate_enb_ue_basic_sim $GNB_VM_CMDS $GNB_VM_IP_ADDR 1
scp -o StrictHostKeyChecking=no ubuntu@$GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_GNB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$NR_UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_NR_UE_LOG_FILE $ARCHIVES_LOC
SYNC_STATUS=-1
try_cnt=$[$try_cnt+1]
continue
fi
echo "############################################################"
echo "${CN_CONFIG} : Terminate gNB/NR-UE simulators"
echo "############################################################"
sleep 20
terminate_enb_ue_basic_sim $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR 2
terminate_enb_ue_basic_sim $GNB_VM_CMDS $GNB_VM_IP_ADDR 1
scp -o StrictHostKeyChecking=no ubuntu@$GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_GNB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$NR_UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_NR_UE_LOG_FILE $ARCHIVES_LOC
#check RA markers in gNB and NR UE log files
echo "############################################################"
echo "${CN_CONFIG} : Checking RA on gNB / NR-UE"
echo "############################################################"
# Proper check to be done when RA test is working!
check_ra_result $ARCHIVES_LOC/$CURRENT_GNB_LOG_FILE $ARCHIVES_LOC/$CURRENT_NR_UE_LOG_FILE
if [ $RA_STATUS -ne 0 ]
then
echo "RA test NOT OK"
try_cnt=$[$try_cnt+1]
else
try_cnt=$[$try_cnt+10]
fi
done
########### end RA test
sleep 30
######### start of PHY TEST loop
try_cnt="0"
while [ $try_cnt -lt 4 ]
do
SYNC_STATUS=0
PING_STATUS=0
IPERF_STATUS=0
rm -f $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_gnb.log $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_ue.log
rm -f $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_ping_gnb_from_nrue.log $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_ping_from_gnb_nrue.log
rm -f $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_iperf_dl*txt $ARCHIVES_LOC/tdd_${PRB}prb_${CN_CONFIG}_iperf_ul*txt
echo "############################################################"
echo "${CN_CONFIG} : Starting the gNB"
echo "############################################################"
CURRENT_GNB_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_gnb.log
start_rf_sim_gnb $GNB_VM_CMDS "$GNB_VM_IP_ADDR" $CURRENT_GNB_LOG_FILE $PRB $CONF_FILE $S1_NOS1_CFG 0
echo "############################################################"
echo "${CN_CONFIG} : Starting the NR-UE"
echo "############################################################"
CURRENT_NR_UE_LOG_FILE=tdd_${PRB}prb_${CN_CONFIG}_ue.log
start_rf_sim_nr_ue $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR $GNB_VM_IP_ADDR $CURRENT_NR_UE_LOG_FILE $PRB $FREQUENCY $S1_NOS1_CFG 0
if [ $NR_UE_SYNC -eq 0 ]
then
echo "Problem w/ gNB and NR-UE not syncing"
terminate_enb_ue_basic_sim $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR 2
terminate_enb_ue_basic_sim $GNB_VM_CMDS $GNB_VM_IP_ADDR 1
scp -o StrictHostKeyChecking=no ubuntu@$GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_GNB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$NR_UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_NR_UE_LOG_FILE $ARCHIVES_LOC
SYNC_STATUS=-1
try_cnt=$[$try_cnt+1]
continue
@@ -2089,6 +2335,8 @@ function run_test_on_vm {
echo "DL test not OK"
terminate_enb_ue_basic_sim $NR_UE_VM_CMDS $NR_UE_VM_IP_ADDR 2
terminate_enb_ue_basic_sim $GNB_VM_CMDS $GNB_VM_IP_ADDR 1
scp -o StrictHostKeyChecking=no ubuntu@$GNB_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_GNB_LOG_FILE $ARCHIVES_LOC
scp -o StrictHostKeyChecking=no ubuntu@$NR_UE_VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/$CURRENT_NR_UE_LOG_FILE $ARCHIVES_LOC
try_cnt=$[$try_cnt+1]
continue
fi
@@ -2128,6 +2376,7 @@ function run_test_on_vm {
echo "Checking run status"
echo "############################################################"
if [ $RA_STATUS -ne 0 ]; then NR_STATUS=-1; fi
if [ $SYNC_STATUS -ne 0 ]; then NR_STATUS=-1; fi
if [ $PING_STATUS -ne 0 ]; then NR_STATUS=-1; fi
if [ $IPERF_STATUS -ne 0 ]; then NR_STATUS=-1; fi

View File

@@ -101,6 +101,18 @@ class SSHConnection():
else:
sys.exit('SSH Connection Failed')
def cde_check_value(self, commandline, expected, timeout):
logging.debug(commandline)
self.ssh.timeout = timeout
self.ssh.sendline(commandline)
expected.append(pexpect.EOF)
expected.append(pexpect.TIMEOUT)
self.sshresponse = self.ssh.expect(expected)
return self.sshresponse
def command(self, commandline, expectedline, timeout):
logging.debug(commandline)
self.ssh.timeout = timeout

34
ci-scripts/xml_class_list.yml Executable file
View File

@@ -0,0 +1,34 @@
- Build_PhySim
- Run_PhySim
- Build_eNB
- WaitEndBuild_eNB
- Initialize_eNB
- Terminate_eNB
- Initialize_UE
- Terminate_UE
- Attach_UE
- Detach_UE
- Build_OAI_UE
- Initialize_OAI_UE
- Terminate_OAI_UE
- DataDisable_UE
- DataEnable_UE
- CheckStatusUE
- Ping
- Iperf
- Reboot_UE
- Initialize_FlexranCtrl
- Terminate_FlexranCtrl
- Initialize_HSS
- Terminate_HSS
- Initialize_MME
- Terminate_MME
- Initialize_SPGW
- Terminate_SPGW
- Initialize_CatM_module
- Terminate_CatM_module
- Attach_CatM_module
- Detach_CatM_module
- Ping_CatM_module
- IdleSleep
- Perform_X2_Handover

View File

@@ -0,0 +1,147 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>test-05-tm1</htmlTabRef>
<htmlTabName>Test-05MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>4</repeatCount>
<TestCaseRequestedList>
030201
040101
030101 040301 040501 040603 040604 040605 040606 040607 040641 040642 040643 040644 040401 040201 030201
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="030101">
<class>Initialize_eNB</class>
<desc>Initialize OCP-eNB (FDD/Band7/5MHz)</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/enb.band7.tm1.25PRB.usrpb210.conf</Initialize_eNB_args>
<air_interface>ocp</air_interface>
</testCase>
<testCase id="030201">
<class>Terminate_eNB</class>
<desc>Terminate OCP-eNB</desc>
<air_interface>ocp</air_interface>
</testCase>
<testCase id="040101">
<class>Initialize_UE</class>
<desc>Initialize UE</desc>
</testCase>
<testCase id="040201">
<class>Terminate_UE</class>
<desc>Terminate UE</desc>
</testCase>
<testCase id="040301">
<class>Attach_UE</class>
<desc>Attach UE</desc>
</testCase>
<testCase id="040401">
<class>Detach_UE</class>
<desc>Detach UE</desc>
</testCase>
<testCase id="040501">
<class>Ping</class>
<desc>ping (5MHz - 20 sec)</desc>
<ping_args>-c 20</ping_args>
<ping_packetloss_threshold>5</ping_packetloss_threshold>
</testCase>
<testCase id="040603">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(balanced profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040604">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(single-ue profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040605">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(unbalanced profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>unbalanced</iperf_profile>
</testCase>
<testCase id="040606">
<class>Iperf</class>
<desc>iperf (5MHz - DL/TCP)(30 sec)(single-ue profile)</desc>
<iperf_args>-t 30 -i 1 -fm</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040607">
<class>Iperf</class>
<desc>iperf (5MHz - DL/TCP)(30 sec)(balanced profile)</desc>
<iperf_args>-t 30 -i 1 -fm</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040641">
<class>Iperf</class>
<desc>iperf (5MHz - UL/9Mbps/UDP)(30 sec)(balanced profile)</desc>
<iperf_args>-u -b 9M -t 30 -i 1 -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040642">
<class>Iperf</class>
<desc>iperf (5MHz - UL/9Mbps/UDP)(30 sec)(single-ue profile)</desc>
<iperf_args>-u -b 9M -t 30 -i 1 -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040643">
<class>Iperf</class>
<desc>iperf (5MHz - UL/TCP)(30 sec)(single-ue profile)</desc>
<iperf_args>-t 30 -i 1 -fm -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040644">
<class>Iperf</class>
<desc>iperf (5MHz - UL/TCP)(30 sec)(balanced profile)</desc>
<iperf_args>-t 30 -i 1 -fm -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,38 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>build-tab</htmlTabRef>
<htmlTabName>Build</htmlTabName>
<htmlTabIcon>wrench</htmlTabIcon>
<TestCaseRequestedList>
010101
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="010101">
<class>Build_eNB</class>
<desc>Build eNB OCP (USRP)</desc>
<Build_eNB_args>-w USRP -c --eNBocp --ninja</Build_eNB_args>
</testCase>
</testCaseList>

View File

@@ -25,23 +25,10 @@
<htmlTabName>EPC-Start</htmlTabName>
<htmlTabIcon>log-in</htmlTabIcon>
<TestCaseRequestedList>
010101 090101
050101 060101 070101
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="010101">
<class>Build_eNB</class>
<desc>Build eNB (USRP)</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
</testCase>
<testCase id="090101">
<class>Build_OAI_UE</class>
<desc>Build OAI UE</desc>
<Build_OAI_UE_args>-w USRP --UE</Build_OAI_UE_args>
</testCase>
<testCase id="050101">
<class>Initialize_HSS</class>
<desc>Initialize HSS</desc>

View File

@@ -0,0 +1,82 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>test-05-tm1-fembms-nos1-tunnel</htmlTabRef>
<htmlTabName>Test-05MHz-FEMBMS-TM1-noS1-tunnel</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestCaseRequestedList>
030201 090109
030104 000001 090104 000002 040605 000001 090109 030201
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="000001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>10</idle_sleep_time_in_sec>
</testCase>
<testCase id="000002">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>15</idle_sleep_time_in_sec>
</testCase>
<testCase id="000003">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>60</idle_sleep_time_in_sec>
</testCase>
<testCase id="030104">
<class>Initialize_eNB</class>
<desc>Initialize eNB (FDD/Band7/5MHz/MBMS)</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/enb.band17.tm1.mbms.25PRB.usrpb210.conf --noS1 --eNBs.[0].rrc_inactivity_threshold 0 --nokrnmod 1 --eNBs.[0].component_carriers.[0].eutra_band 7 --eNBs.[0].component_carriers.[0].downlink_frequency 2680000000 --eNBs.[0].component_carriers.[0].uplink_frequency_offset -120000000 --eNBs.[0].component_carriers.[0].mbms_dedicated_serving_cell ENABLE --MCEs.[0].mbms_sched_info.mbms_area_config_list.[0].pmch_config_list.[0].allocated_sf_end 512</Initialize_eNB_args>
</testCase>
<testCase id="030201">
<class>Terminate_eNB</class>
<desc>Terminate eNB</desc>
</testCase>
<testCase id="090104">
<class>Initialize_OAI_UE</class>
<desc>Initialize OAI UE (FDD/Band7/5MHz/MBMS)</desc>
<Initialize_OAI_UE_args>-C 2680000000 -r 25 --ue-rxgain 120 --ue-txgain 0 --ue-max-power 0 --ue-scan-carrier --nokrnmod 1 --noS1</Initialize_OAI_UE_args>
</testCase>
<testCase id="090109">
<class>Terminate_OAI_UE</class>
<desc>Terminate OAI UE</desc>
</testCase>
<testCase id="040605">
<class>Iperf</class>
<desc>iperf (5MHz - DL/1.5Mbps/UDP/MBMS-sink)(20 sec)</desc>
<iperf_args>-c 10.0.2.2 -u -b 1.5M -t 20 -i 1 -fm -B 10.0.2.1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_options>sink</iperf_options>
</testCase>
</testCaseList>

View File

@@ -25,6 +25,7 @@
<htmlTabName>Test-LTE-M-10MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>1</repeatCount>
<TestUnstable>True</TestUnstable>
<TestCaseRequestedList>
030201
040102

View File

@@ -26,6 +26,8 @@
<htmlTabName>Test-05MHz-TM2</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestUnstable>True</TestUnstable>
<TestMinId>040608</TestMinId>
<TestCaseRequestedList>
030201
040101

View File

@@ -24,6 +24,8 @@
<htmlTabRef>test-10-tm1</htmlTabRef>
<htmlTabName>Test-10MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<TestUnstable>True</TestUnstable>
<TestMinId>040615</TestMinId>
<TestCaseRequestedList>
030201
040101

View File

@@ -25,6 +25,8 @@
<htmlTabName>Test-20MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>4</repeatCount>
<TestUnstable>True</TestUnstable>
<TestMinId>040623</TestMinId>
<TestCaseRequestedList>
030201
040101

View File

@@ -24,6 +24,8 @@
<htmlTabRef>test-20-tm1-defSched</htmlTabRef>
<htmlTabName>Test-20MHz-TM1-default-scheduler</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<TestUnstable>True</TestUnstable>
<TestMinId>040522</TestMinId>
<TestCaseRequestedList>
030201
040101

View File

@@ -24,6 +24,7 @@
<htmlTabRef>test-05-tm1-rrc-no-flex</htmlTabRef>
<htmlTabName>Test-05MHz-TM1-RRC-Inactivity</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestCaseRequestedList>
030201
040101

View File

@@ -0,0 +1,47 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>epc-closure</htmlTabRef>
<htmlTabName>EPC-Closure</htmlTabName>
<htmlTabIcon>log-out</htmlTabIcon>
<TestCaseRequestedList>
060000 060001 060002
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="060000">
<class>Terminate_HSS</class>
<desc>Terminate HSS</desc>
</testCase>
<testCase id="060001">
<class>Terminate_MME</class>
<desc>Terminate MME</desc>
</testCase>
<testCase id="060002">
<class>Terminate_SPGW</class>
<desc>Terminate SPGW</desc>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,48 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>epc-start-tab</htmlTabRef>
<htmlTabName>EPC-Start</htmlTabName>
<htmlTabIcon>log-in</htmlTabIcon>
<TestCaseRequestedList>
000100 000101 000102
</TestCaseRequestedList>
<TestCaseExclusionList>
</TestCaseExclusionList>
<testCase id="000100">
<class>Initialize_HSS</class>
<desc>Initialize HSS</desc>
</testCase>
<testCase id="000101">
<class>Initialize_MME</class>
<desc>Initialize MME</desc>
</testCase>
<testCase id="000102">
<class>Initialize_SPGW</class>
<desc>Initialize SPGW</desc>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,49 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>epc-start-tab</htmlTabRef>
<htmlTabName>EPC-Start</htmlTabName>
<htmlTabIcon>log-in</htmlTabIcon>
<TestCaseRequestedList>
000100 000101 000102
</TestCaseRequestedList>
<TestCaseExclusionList>
</TestCaseExclusionList>
<testCase id="000100">
<class>Initialize_HSS</class>
<desc>Initialize HSS</desc>
</testCase>
<testCase id="000101">
<class>Initialize_MME</class>
<desc>Initialize MME</desc>
<option>mme-verizon.conf</option>
</testCase>
<testCase id="000102">
<class>Initialize_SPGW</class>
<desc>Initialize SPGW</desc>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,66 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>build-tab</htmlTabRef>
<htmlTabName>Build</htmlTabName>
<htmlTabIcon>wrench</htmlTabIcon>
<TestCaseRequestedList>
000001 000002
000003 000004
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="000001">
<class>Build_eNB</class>
<desc>Build eNB</desc>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<backgroundBuild>True</backgroundBuild>
</testCase>
<testCase id="000004">
<class>WaitEndBuild_eNB</class>
<desc>Wait for end of Build eNB</desc>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="000002">
<class>Build_eNB</class>
<desc>Build gNB</desc>
<Build_eNB_args>-w USRP -c --gNB --ninja</Build_eNB_args>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
<backgroundBuild>True</backgroundBuild>
</testCase>
<testCase id="000003">
<class>WaitEndBuild_eNB</class>
<desc>Wait for end of Build gNB</desc>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,77 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>test-fr1-tm1</htmlTabRef>
<htmlTabName>Test-FR1-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>1</repeatCount>
<TestCaseRequestedList>
030000
040000
000001
070001
070000
</TestCaseRequestedList>
<TestCaseExclusionList>
</TestCaseExclusionList>
<testCase id="030000">
<class>Initialize_eNB</class>
<desc>Initialize eNB</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/enb.band7.tm1.fr1.25PRB.usrpb210.conf</Initialize_eNB_args>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<air_interface>lte</air_interface>
</testCase>
<testCase id="040000">
<class>Initialize_eNB</class>
<desc>Initialize gNB (3/4 sampling rate)</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpb210.conf -E</Initialize_eNB_args>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
<air_interface>nr</air_interface>
</testCase>
<testCase id="000001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>30</idle_sleep_time_in_sec>
</testCase>
<testCase id="070000">
<class>Terminate_eNB</class>
<desc>Terminate eNB</desc>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="070001">
<class>Terminate_eNB</class>
<desc>Terminate gNB</desc>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,137 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>TEST-FR1-TM1</htmlTabRef>
<htmlTabName>FR1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<TestCaseRequestedList>
010000
030000
040000
010001
000001
050000
050001
050002
050003
000001
010002
000001
070001
070000
010003
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="010000">
<class>Initialize_UE</class>
<desc>Initialize UE</desc>
</testCase>
<testCase id="010003">
<class>Terminate_UE</class>
<desc>Terminate UE</desc>
</testCase>
<testCase id="010001">
<class>Attach_UE</class>
<desc>Attach UE</desc>
</testCase>
<testCase id="010002">
<class>Detach_UE</class>
<desc>Detach UE</desc>
</testCase>
<testCase id="030000">
<class>Initialize_eNB</class>
<desc>Initialize eNB</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/enb.band7.tm1.fr1.25PRB.usrpb210.conf</Initialize_eNB_args>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<air_interface>lte</air_interface>
</testCase>
<testCase id="040000">
<class>Initialize_eNB</class>
<desc>Initialize gNB</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/gnb.band78.tm1.fr1.106PRB.usrpb210.conf -E</Initialize_eNB_args>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
<air_interface>nr</air_interface>
</testCase>
<testCase id="000001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>20</idle_sleep_time_in_sec>
</testCase>
<testCase id="050000">
<class>Ping</class>
<desc>Ping: 20pings in 20sec</desc>
<ping_args>-c 20</ping_args>
<ping_packetloss_threshold>0</ping_packetloss_threshold>
</testCase>
<testCase id="050001">
<class>Ping</class>
<desc>Ping: 5pings in 1sec</desc>
<ping_args>-c 5 -i 0.2</ping_args>
<ping_packetloss_threshold>0</ping_packetloss_threshold>
</testCase>
<testCase id="050002">
<class>Ping</class>
<desc>Ping: 100pings in 20sec</desc>
<ping_args>-c 100 -i 0.2</ping_args>
<ping_packetloss_threshold>0</ping_packetloss_threshold>
</testCase>
<testCase id="050003">$
<class>Ping</class>$
<desc>Ping: 100pings in 20sec size 1000</desc>$
<ping_args>-c 100 -i 0.2 -s 1000</ping_args>$
<ping_packetloss_threshold>0</ping_packetloss_threshold>$
</testCase>$
<testCase id="070000">
<class>Terminate_eNB</class>
<desc>Terminate eNB</desc>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<air_interface>lte</air_interface>
</testCase>
<testCase id="070001">
<class>Terminate_eNB</class>
<desc>Terminate gNB</desc>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
<air_interface>nr</air_interface>
</testCase>
</testCaseList>

View File

@@ -0,0 +1,151 @@
<!--
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
030101 040301 040501 040603 040604 040605 040606 040607 040641 040642 040643 040644 040401 040201 030201
-->
<testCaseList>
<htmlTabRef>test-05-tm1</htmlTabRef>
<htmlTabName>Test-05MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<TestCaseRequestedList>
030201
040101
030101 040301 000001 040501 040603 040401 030201
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="000001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>5</idle_sleep_time_in_sec>
</testCase>
<testCase id="030101">
<class>Initialize_eNB</class>
<desc>Initialize eNB (FDD/Band7/5MHz)</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/enb.band7.tm1.25PRB.usrpb210.conf --eNBs.[0].plmn_list.[0].mcc 311 --eNBs.[0].plmn_list.[0].mnc 480 --eNBs.[0].plmn_list.[0].mnc_length 3 --eNBs.[0].component_carriers.[0].Nid_cell 10</Initialize_eNB_args>
</testCase>
<testCase id="030201">
<class>Terminate_eNB</class>
<desc>Terminate eNB</desc>
</testCase>
<testCase id="040101">
<class>Initialize_UE</class>
<desc>Initialize UE</desc>
</testCase>
<testCase id="040201">
<class>Terminate_UE</class>
<desc>Terminate UE</desc>
</testCase>
<testCase id="040301">
<class>Attach_UE</class>
<desc>Attach UE</desc>
</testCase>
<testCase id="040401">
<class>Detach_UE</class>
<desc>Detach UE</desc>
</testCase>
<testCase id="040501">
<class>Ping</class>
<desc>ping (5MHz - 20 sec)</desc>
<ping_args>-c 20</ping_args>
<ping_packetloss_threshold>5</ping_packetloss_threshold>
</testCase>
<testCase id="040603">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(balanced profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040604">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(single-ue profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040605">
<class>Iperf</class>
<desc>iperf (5MHz - DL/15Mbps/UDP)(30 sec)(unbalanced profile)</desc>
<iperf_args>-u -b 15M -t 30 -i 1</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>unbalanced</iperf_profile>
</testCase>
<testCase id="040606">
<class>Iperf</class>
<desc>iperf (5MHz - DL/TCP)(30 sec)(single-ue profile)</desc>
<iperf_args>-t 30 -i 1 -fm</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040607">
<class>Iperf</class>
<desc>iperf (5MHz - DL/TCP)(30 sec)(balanced profile)</desc>
<iperf_args>-t 30 -i 1 -fm</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040641">
<class>Iperf</class>
<desc>iperf (5MHz - UL/9Mbps/UDP)(30 sec)(balanced profile)</desc>
<iperf_args>-u -b 9M -t 30 -i 1 -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
<testCase id="040642">
<class>Iperf</class>
<desc>iperf (5MHz - UL/9Mbps/UDP)(30 sec)(single-ue profile)</desc>
<iperf_args>-u -b 9M -t 30 -i 1 -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040643">
<class>Iperf</class>
<desc>iperf (5MHz - UL/TCP)(30 sec)(single-ue profile)</desc>
<iperf_args>-t 30 -i 1 -fm -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>single-ue</iperf_profile>
</testCase>
<testCase id="040644">
<class>Iperf</class>
<desc>iperf (5MHz - UL/TCP)(30 sec)(balanced profile)</desc>
<iperf_args>-t 30 -i 1 -fm -R</iperf_args>
<iperf_packetloss_threshold>50</iperf_packetloss_threshold>
<iperf_profile>balanced</iperf_profile>
</testCase>
</testCaseList>

View File

@@ -52,7 +52,7 @@
<testCase id="090102">
<class>Initialize_OAI_UE</class>
<desc>Initialize NR UE USRP</desc>
<Initialize_OAI_UE_args>--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --threadoffset 16 --rrc_config_path ci-scripts/rrc-files</Initialize_OAI_UE_args>
<Initialize_OAI_UE_args>--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 75 --threadoffset 16 --rrc_config_path .</Initialize_OAI_UE_args>
<air_interface>NR</air_interface>
</testCase>

View File

@@ -0,0 +1,71 @@
<!--
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
-->
<testCaseList>
<htmlTabRef>run-oai-gnb-nr-ue-tx-write-thread</htmlTabRef>
<htmlTabName>Run-gNB-and-NR-UE-TX-Write-Thread</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestCaseRequestedList>
090103 000001 090104 000002 090108 090109
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="090103">
<class>Initialize_eNB</class>
<desc>Initialize gNB USRP (Tx-Write-Threading enabled)</desc>
<Initialize_eNB_args>-O ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf --phy-test --usrp-tx-thread-config 1</Initialize_eNB_args>
<air_interface>NR</air_interface>
</testCase>
<testCase id="000001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>5</idle_sleep_time_in_sec>
</testCase>
<testCase id="000002">
<class>IdleSleep</class>
<desc>Waiting for NR UE to synchronize w/ gNB</desc>
<idle_sleep_time_in_sec>180</idle_sleep_time_in_sec>
</testCase>
<testCase id="090104">
<class>Initialize_OAI_UE</class>
<desc>Initialize NR UE USRP</desc>
<Initialize_OAI_UE_args>--phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --ue-rxgain 75 --threadoffset 16 --rrc_config_path .</Initialize_OAI_UE_args>
<air_interface>NR</air_interface>
</testCase>
<testCase id="090108">
<class>Terminate_OAI_UE</class>
<desc>Terminate NR UE</desc>
<air_interface>NR</air_interface>
</testCase>
<testCase id="090109">
<class>Terminate_eNB</class>
<desc>Terminate gNB</desc>
<air_interface>NR</air_interface>
</testCase>
</testCaseList>

View File

@@ -24,6 +24,7 @@
<htmlTabRef>gnb-build-tab</htmlTabRef>
<htmlTabName>Build-gNB</htmlTabName>
<htmlTabIcon>wrench</htmlTabIcon>
<repeatCount>4</repeatCount>
<TestCaseRequestedList>
010101
</TestCaseRequestedList>
@@ -33,7 +34,7 @@
<mode>TesteNB</mode>
<class>Build_eNB</class>
<desc>Build gNB (USRP)</desc>
<Build_eNB_args>--gNB -w USRP</Build_eNB_args>
<Build_eNB_args>--gNB -w USRP --ninja</Build_eNB_args>
<forced_workspace_cleanup>True</forced_workspace_cleanup>
</testCase>

View File

@@ -24,6 +24,9 @@
<htmlTabRef>test-10</htmlTabRef>
<htmlTabName>Test-10MHz</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestUnstable>True</TestUnstable>
<TestMinId>040612</TestMinId>
<TestCaseRequestedList>
030201
040101

View File

@@ -0,0 +1,161 @@
<!--
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
030105 040301 040502 040606 040601 040603 040608 040605 040646 040641 040643 040648 040645 040401 040201 030201
-->
<testCaseList>
<htmlTabRef>test-ldpc-gpu</htmlTabRef>
<htmlTabName>Test-ldpc-GPU</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>1</repeatCount>
<TestCaseRequestedList>000001 000002 000003 000004 000005 000006 000007 000008 000009 000010 000011 000012 000013 000014 000015 000016 000017 000018 000019 000020 000021</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="000001">
<class>Build_PhySim</class>
<desc>Build for physical simulator</desc>
<physim_build_args>--phy_simulators --ninja</physim_build_args>
<forced_workspace_cleanup>FALSE</forced_workspace_cleanup>
</testCase>
<testCase id="000002">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 3872 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000003">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 3872 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000004">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 4224 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000005">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 4224 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000006">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 4576 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000007">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 4576 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000008">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 4928 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000009">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 4928 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000010">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 5280 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000011">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 5280 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000012">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 5632 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000013">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 5632 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000014">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 6336 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000015">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 6336 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000016">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 7040 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000017">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 7040 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000018">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 7744 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000019">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 7744 -s10 -n100 -G 1</physim_run_args>
</testCase>
<testCase id="000020">
<class>Run_PhySim</class>
<desc>Run LDPC Test with CPU</desc>
<physim_run_args>-l 8448 -s10 -n100</physim_run_args>
</testCase>
<testCase id="000021">
<class>Run_PhySim</class>
<desc>Run LDPC Test with GPU</desc>
<physim_run_args>-l 8448 -s10 -n100 -G 1</physim_run_args>
</testCase>
</testCaseList>

View File

@@ -33,7 +33,7 @@
<testCase id="010101">
<class>Build_eNB</class>
<desc>Build RCC</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<backgroundBuild>True</backgroundBuild>
@@ -42,7 +42,7 @@
<testCase id="000101">
<class>WaitEndBuild_eNB</class>
<desc>Wait for end of Build RCC</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
@@ -50,7 +50,7 @@
<testCase id="010102">
<class>Build_eNB</class>
<desc>Build Master RRU</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
<backgroundBuild>True</backgroundBuild>
@@ -59,7 +59,7 @@
<testCase id="000102">
<class>WaitEndBuild_eNB</class>
<desc>Wait for end of Build Master RRU</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>1</eNB_instance>
<eNB_serverId>1</eNB_serverId>
</testCase>
@@ -67,7 +67,7 @@
<testCase id="010103">
<class>Build_eNB</class>
<desc>Build Slave RRU</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>2</eNB_instance>
<eNB_serverId>2</eNB_serverId>
<backgroundBuild>True</backgroundBuild>
@@ -76,7 +76,7 @@
<testCase id="000103">
<class>WaitEndBuild_eNB</class>
<desc>Wait for end of Build Slave RRU</desc>
<Build_eNB_args>-w USRP -c --eNB</Build_eNB_args>
<Build_eNB_args>-w USRP -c --eNB --ninja</Build_eNB_args>
<eNB_instance>2</eNB_instance>
<eNB_serverId>2</eNB_serverId>
</testCase>

View File

@@ -24,7 +24,7 @@
<htmlTabRef>test-multi-rru-10</htmlTabRef>
<htmlTabName>Test-Multi-RRU-10MHz</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>4</repeatCount>
<repeatCount>2</repeatCount>
<TestCaseRequestedList>
030211 030212 030213
030111 030112 030113

View File

@@ -24,6 +24,7 @@
<htmlTabRef>nr-ue-build-tab</htmlTabRef>
<htmlTabName>Build-NR-UE</htmlTabName>
<htmlTabIcon>wrench</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestCaseRequestedList>
010102
</TestCaseRequestedList>
@@ -33,7 +34,7 @@
<mode>TestUE</mode>
<class>Build_OAI_UE</class>
<desc>Build NR UE (USRP)</desc>
<Build_OAI_UE_args>--nrUE -w USRP</Build_OAI_UE_args>
<Build_OAI_UE_args>--nrUE -w USRP --ninja</Build_OAI_UE_args>
<clean_repository>false</clean_repository>
</testCase>

View File

@@ -26,6 +26,7 @@
<htmlTabName>Test-X2-HO-FDD-05MHz-TM1</htmlTabName>
<htmlTabIcon>tasks</htmlTabIcon>
<repeatCount>2</repeatCount>
<TestUnstable>True</TestUnstable>
<TestCaseRequestedList>
030201 030202
040101

File diff suppressed because it is too large Load Diff

View File

@@ -142,10 +142,14 @@ Obj.# Case# Test# Description
(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 51 11 nr_ulsim Test cases. (Test1: MCS 9),
(Test2: MCS 16),
(Test3: MCS 28)
01 51 11 nr_ulsim Test cases. (Test1: MCS 9 106 PRBs),
(Test2: MCS 16 50 PRBs),
(Test3: MCS 28 50 PRBs),
(Test4: MCS 9 217 PRBs),
(Test5: MCS 9 273 PRBs)
01 51 12 nr_prachsim Test cases.(Test1: 106 PRBs),
(Test2: 217 PRBs),
(Test3: 273 PRBs)

View File

@@ -1036,7 +1036,9 @@
<testCase id="015103">
<class>execution</class>
<desc>polartest Test cases. (Test1: PBCH polar test),
(Test2: DCI polar test)</desc>
(Test2: DCI polar test),
(Test3: UCI polar test,6-bit CRC),
(Test4: UCI polar test,11-bit CRC)</desc>
<pre_compile_prog></pre_compile_prog>
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
<compile_prog_args> --phy_simulators -c </compile_prog_args>
@@ -1044,8 +1046,10 @@
<pre_exec_args></pre_exec_args>
<main_exec> $OPENAIR_DIR/targets/bin/polartest.Rel15</main_exec>
<main_exec_args>-q -s-10 -f0
-q -s-10 -f0 -m1</main_exec_args>
<tags>polartest.test1 polartest.test2</tags>
-q -s-10 -f0 -m1
-q -s-2 -f2 -m2 -k12
-q -s-2 -f2 -m2 -k20</main_exec_args>
<tags>polartest.test1 polartest.test2 polartest.test3 polartest.test4</tags>
<search_expr_true>BLER= 0.000000</search_expr_true>
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
<nruns>3</nruns>
@@ -1067,9 +1071,9 @@
<main_exec> $OPENAIR_DIR/targets/bin/nr_pbchsim.Rel15</main_exec>
<main_exec_args>-s0 -S1 -n1000 -R106
-s0 -S1 -n10 -I -R106
-s0 -S1 -n1000 -R217
-s0 -S1 -n1000 -R217
-s0 -S1 -n10 -I -R217
-s0 -S1 -n1000 -R273
-s0 -S1 -n1000 -R273
-s0 -S1 -n10 -I -R273</main_exec_args>
<tags>nr_pbchsim.test1 nr_pbchsim.test2 nr_pbchsim.test3 nr_pbchsim.test4 nr_pbchsim.test5 nr_pbchsim.test6</tags>
<search_expr_true>PBCH test OK</search_expr_true>
@@ -1087,8 +1091,14 @@
(Test6: 217 PRB 100 PDSCH-PRBs),
(Test7: 217 PRB 80 PDSCH-Offset),
(Test8: 217 PRB 100 PDSCH-PRBs 110 PDSCH-Offset),
(Test9: 106 PRBs 50 PDSCH-PRBs MCS Index 27)
(Test10: 106 PRBs 50 PDSCH-PRBs MCS Index 16)</desc>
(Test9: 106 PRBs 50 PDSCH-PRBs MCS Index 27),
(Test10: 106 PRBs 50 PDSCH-PRBs MCS Index 16),
(Test11: HARQ test 25% TP (4 rounds),
(Test12: HARQ test 33% TP (3 rounds),
(Test13: HARQ test 50% TP (2 rounds),
(Test14: 3 PTRS, 8 Interpolated Symbols),
(Test15: 6 PTRS, 5 Interpolated Symbols),
(Test16: 11 PTRS, 0 Interpolated Symbols)</desc>
<pre_compile_prog></pre_compile_prog>
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
<compile_prog_args> --phy_simulators -c </compile_prog_args>
@@ -1104,8 +1114,14 @@
-n100 -R217 -a80 -s5
-n100 -R217 -a110 -s5 -b100
-n100 -e27 -s30
-n100 -e16 -s10</main_exec_args>
<tags>nr_dlsim.test1 nr_dlsim.test2 nr_dlsim.test3 nr_dlsim.test4 nr_dlsim.test5 nr_dlsim.test6 nr_dlsim.test7 nr_dlsim.test8 nr_dlsim.test9 nr_dlsim.test10</tags>
-n100 -e16 -s10
-n100 -s1 -t25
-n100 -s1 -t33
-n100 -s1 -t50
-n100 -s5 -T 2 2 2
-n100 -s5 -T 2 1 2
-n100 -s5 -T 2 0 4</main_exec_args>
<tags>nr_dlsim.test1 nr_dlsim.test2 nr_dlsim.test3 nr_dlsim.test4 nr_dlsim.test5 nr_dlsim.test6 nr_dlsim.test7 nr_dlsim.test8 nr_dlsim.test9 nr_dlsim.test10 nr_dlsim.test11 nr_dlsim.test12 nr_dlsim.test13 nr_dlsim.test14 nr_dlsim.test15 nr_dlsim.test16</tags>
<search_expr_true>PDSCH test OK</search_expr_true>
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
<nruns>3</nruns>
@@ -1179,15 +1195,20 @@
<desc>nr_pucchsim Test cases. (Test1: Format 0 1-bit ACK miss 106 PRB),
(Test2: Format 0 2-bit ACK miss 106 PRB),
(Test3: Format 0 2-bit ACK miss, 1-bit SR 106 PRB),
(Test4: Format 2 3-bit 106 PRB),
(Test5: Format 2 4-bit 106 PRB),
(Test6: Format 2 5-bit 106 PRB),
(Test7: Format 2 6-bit 106 PRB),
(Test8: Format 2 7-bit 106 PRB),
(Test9: Format 2 8-bit 106 PRB),
(Test10: Format 2 9-bit 106 PRB),
(Test11: Format 2 10-bit 106 PRB),
(Test12: Format 2 11-bit 106 PRB)</desc>
(Test4: Format 2 3-bit 2/106 PRB),
(Test5: Format 2 4-bit 2/106 PRB),
(Test6: Format 2 5-bit 2/106 PRB),
(Test7: Format 2 6-bit 2/106 PRB),
(Test8: Format 2 7-bit 2/106 PRB),
(Test9: Format 2 8-bit 2/106 PRB),
(Test10: Format 2 9-bit 2/106 PRB),
(Test11: Format 2 10-bit 2/106 PRB),
(Test12: Format 2 11-bit 2/106 PRB),
(Test13: Format 2 12-bit 8/106 PRB),
(Test14: Format 2 19-bit 8/106 PRB),
(Test15: Format 2 32-bit 8/106 PRB),
(Test16: Format 2 32-bit 16/106 PRB),
(Test17: Format 2 64-bit 16/106 PRB)</desc>
<pre_compile_prog></pre_compile_prog>
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
<compile_prog_args> --phy_simulators -c </compile_prog_args>
@@ -1206,8 +1227,12 @@
-R 106 -i 1 -P 2 -b 9 -s5 -n1000
-R 106 -i 1 -P 2 -b 10 -s6 -n1000
-R 106 -i 1 -P 2 -b 11 -s6 -n1000
</main_exec_args>
<tags>nr_pucchsim.test1 nr_pucchsim.test2 nr_pucchsim.test3 nr_pucchsim.test4 nr_pucchsim.test5 nr_pucchsim.test6 nr_pucchsim.test7 nr_pucchsim.test8 nr_pucchsim.test9 nr_pucchsim.test10 nr_pucchsim.test11 nr_pucchsim.test12 </tags>
-R 106 -i 1 -P 2 -q8 -b 12 -s-3 -n1000
-R 106 -i 1 -P 2 -q8 -b 19 -s-3 -n1000
-R 106 -i 1 -P 2 -q8 -b 32 -s-3 -n1000
-R 106 -i 1 -P 2 -q16 -b 32 -s-3 -n1000
-R 106 -i 1 -P 2 -q16 -b 64 -s-3 -n1000</main_exec_args>
<tags>nr_pucchsim.test1 nr_pucchsim.test2 nr_pucchsim.test3 nr_pucchsim.test4 nr_pucchsim.test5 nr_pucchsim.test6 nr_pucchsim.test7 nr_pucchsim.test8 nr_pucchsim.test9 nr_pucchsim.test10 nr_pucchsim.test11 nr_pucchsim.test12 nr_pucchsim.test13 nr_pucchsim.test14 nr_pucchsim.test15 nr_pucchsim.test16 nr_pucchsim.test17</tags>
<search_expr_true>PUCCH test OK</search_expr_true>
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
<nruns>3</nruns>
@@ -1257,7 +1282,10 @@
(Test2: MCS 16 50 PRBs),
(Test3: MCS 28 50 PRBs),
(Test4: MCS 9 217 PRBs),
(Test5: MCS 9 273 PRBs)</desc>
(Test5: MCS 9 273 PRBs),
(Test6: DMRS Type A, 3 DMRS, 4 PTRS, 5 Interpolated Symbols),
(Test7: DMRS Type B, 3 DMRS, 2 PTRS, 7 Interpolated Symbols),
(Test8: DMRS Type B, 3 DMRS, 2 PTRS, 3 Interpolated Symbols)</desc>
<pre_compile_prog></pre_compile_prog>
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
<compile_prog_args> --phy_simulators -c </compile_prog_args>
@@ -1268,13 +1296,42 @@
-n100 -m16 -s10
-n100 -m28 -s20
-n100 -m9 -R217 -r217 -s5
-n100 -m9 -R273 -r273 -s5</main_exec_args>
<tags>nr_ulsim.test1 nr_ulsim.test2 nr_ulsim.test3 nr_ulsim.test4 nr_ulsim.test5</tags>
-n100 -m9 -R273 -r273 -s5
-n100 -s5 -T 2 1 2 -U 2 0 2
-n100 -s5 -T 2 2 2 -U 2 1 2
-n100 -s5 -a4 -b8 -T 2 1 2 -U 2 1 3</main_exec_args>
<tags>nr_ulsim.test1 nr_ulsim.test2 nr_ulsim.test3 nr_ulsim.test4 nr_ulsim.test5 nr_ulsim.test6 nr_ulsim.test7 nr_ulsim.test8</tags>
<search_expr_true>PUSCH test OK</search_expr_true>
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
<nruns>3</nruns>
</testCase>
<testCase id="015112">
<class>execution</class>
<desc>nr_prachsim Test cases. (Test1: 30kHz SCS, 106 PRBs, Prach format A2),
(Test2: 30kHz SCS, 217 PRBs, Prach format A2),
(Test3: 30kHz SCS, 273 PRBs, Prach format A2),
(Test4: 30kHz SCS, 106 PRBs, Prach format 0),
(Test5: 120kHz SCS, 32 PRBs, Prach format A2),
(Test6: 120kHz SCS, 66 PRBs, Prach format A2)</desc>
<pre_compile_prog></pre_compile_prog>
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
<compile_prog_args> --phy_simulators -c </compile_prog_args>
<pre_exec>$OPENAIR_DIR/cmake_targets/autotests/tools/free_mem.bash</pre_exec>
<pre_exec_args></pre_exec_args>
<main_exec> $OPENAIR_DIR/targets/bin/nr_prachsim.Rel15</main_exec>
<main_exec_args>-a -s -30 -n 100 -p 63 -R 106
-a -s -30 -n 100 -p 63 -R 217
-a -s -30 -n 100 -p 63 -R 273
-a -s -30 -n 100 -p 63 -R 106 -c 4
-a -s -30 -n 100 -p 32 -R 32 -m 3 -c52
-a -s -30 -n 100 -p 32 -R 66 -m 3 -c52</main_exec_args>
<tags>nr_prachsim.test1 nr_prachsim.test2 nr_prachsim.test3 nr_prachsim.test4 nr_prachsim.test5 nr_prachsim.test6</tags>
<search_expr_true>PRACH test OK</search_expr_true>
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
<nruns>3</nruns>
</testCase>
<testCase id="015500" >
<class>lte-softmodem</class>
<desc></desc>

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

View File

@@ -147,6 +147,8 @@ eNBs =
enable_x2 = "no";
t_reloc_prep = 1000; /* unit: millisecond */
tx2_reloc_overall = 2000; /* unit: millisecond */
t_dc_prep = 1000; /* unit: millisecond */
t_dc_overall = 2000; /* unit: millisecond */
NETWORK_INTERFACES :
{

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