aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2020-05-14 16:44:18 +0200
committerlaforge <laforge@osmocom.org>2020-05-17 07:26:34 +0000
commit5feace65840c1a3ecc84a0f6370419ac83bd4bf4 (patch)
treebb88e849eb13f49bba71bd967d46c01bd8780023
parent0c0bf8731b872b5da7c0b921f10637514f224ecb (diff)
pcu: Use BS_CV_MAX in f_tx_rlcmac_ul_n_blocks
Also increment BSN with each new submitted packet. Change-Id: I685d1535154197bb85e18875e0a4d41122a24fa0
-rw-r--r--pcu/PCU_Tests.ttcn14
1 files changed, 11 insertions, 3 deletions
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 044d3685..a5506508 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);
}