From 5feace65840c1a3ecc84a0f6370419ac83bd4bf4 Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Thu, 14 May 2020 16:44:18 +0200 Subject: [PATCH] pcu: Use BS_CV_MAX in f_tx_rlcmac_ul_n_blocks Also increment BSN with each new submitted packet. Change-Id: I685d1535154197bb85e18875e0a4d41122a24fa0 --- pcu/PCU_Tests.ttcn | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn index 044d3685d..a5506508b 100644 --- a/pcu/PCU_Tests.ttcn +++ b/pcu/PCU_Tests.ttcn @@ -136,6 +136,9 @@ type component RAW_PCU_Test_CT extends bssgp_CT { var uint8_t g_mcs_max_dl := 9; var uint8_t g_mcs_max_ul := 9; + /* Value at which Countdown Procedure starts. Announced by network (GPRS Cell Options as per TS 04.60 Chapter 12.24) */ + var uint4_t g_bs_cv_max := 4; + var boolean g_egprs_only := false; var boolean g_force_two_phase_access := false; @@ -533,8 +536,8 @@ private function f_tx_rlcmac_ul_n_blocks(uint5_t tfi, integer num_blocks := 1, t runs on RAW_PCU_Test_CT { var template (value) RlcmacUlBlock ul_data := t_RLCMAC_UL_DATA( tfi := tfi, - cv := num_blocks - 1, /* num UL blocks to be sent (to be overridden in loop) */ - bsn := 0, /* TODO: what should be here? */ + cv := 15, /* num UL blocks to be sent (to be overridden in loop) */ + bsn := 0, /* TODO: what should be initial value? */ blocks := { /* To be generated in loop */ }); if (not istemplatekind(tlli, "omit")) { @@ -544,7 +547,12 @@ runs on RAW_PCU_Test_CT { for (var integer i := 0; i < num_blocks; i := i + 1) { /* Prepare a new UL block (CV, random payload) */ - ul_data.data.mac_hdr.countdown := (num_blocks - i - 1); + var integer cv := num_blocks - i - 1; + if (cv > g_bs_cv_max) { + cv := 15; + } + ul_data.data.mac_hdr.countdown := cv; + ul_data.data.mac_hdr.bsn := i; ul_data.data.blocks := { valueof(t_RLCMAC_LLCBLOCK(f_rnd_octstring(10))) }; f_tx_rlcmac_ul_block(ul_data); }