GPRS_Components: use more suitable SAPI for DL TBF assignment
The function that assigns the downlink TBF f_ms_exp_dl_tbf_ass_ccch()
uses SAPI PCU_IF_SAPI_AGCH as default but actually downlink TBFs are
assigned via the PCH. This means we have to put PCU_IF_SAPI_PCH into the
parameter list on every function call, so it makes sense to change the
default to PCU_IF_SAPI_PCH and omit the SAPI when calling the function
Related: OS#5927
Change-Id: I49c59bad0162cb303669f6108201f154918b1db3
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 76926ae..2598e7b 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -447,7 +447,7 @@
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -480,7 +480,7 @@
/* New data arrives, PCU should page the MS since no TBF active exists: */
/* Send some more data, it will never reach the MS */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
f_shutdown(__BFILE__, __LINE__, final := true);
}
@@ -593,7 +593,7 @@
/* SGSN sends some DL data, PCU will initiate Packet Downlink
* Assignment on CCCH (PCH). We don't care about the payload. */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, f_rnd_octstring(10)));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Make sure that Timing Advance is 0 (the actual value is not known yet).
* As per 3GPP S 44.018, section 3.5.3.1.2, the network *shall* initiate
@@ -1060,7 +1060,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1103,7 +1103,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
f_sleep(X2002);
@@ -1333,7 +1333,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_egprs_def));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1727,7 +1727,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1786,7 +1786,7 @@
/* The TBF should be freed now, so new data should trigger an Assignment: */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data2));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1828,7 +1828,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1861,7 +1861,7 @@
/* The TBF should be freed now, so new data should trigger an Assignment: */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data2));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1907,7 +1907,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -1981,7 +1981,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2054,7 +2054,7 @@
/* after T_3195 timeout, TBF is released */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data2));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2119,7 +2119,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2435,7 +2435,7 @@
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2625,7 +2625,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2780,7 +2780,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2789,7 +2789,7 @@
/* Now we don't ack the dl block (emulate MS failed receiveing IMM ASS
* or GPRS DL, or DL ACK was lost for some reason). As a result, PCU
* should retrigger IMM ASS + GPRS DL procedure after poll timeout. */
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -2831,7 +2831,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
f_sleep(X2002);
@@ -3028,7 +3028,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data1));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -3047,7 +3047,7 @@
}
/* PCU starts whole process again */
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -3132,7 +3132,7 @@
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi7));
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi8));
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data_sapi1));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
f_sleep(X2002);
@@ -3574,7 +3574,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, racap_tmpl));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -3853,7 +3853,7 @@
/* Now SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, imsi := ts_BSSGP_IMSI(ms.imsi)));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
@@ -3945,7 +3945,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, ms_racap));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
f_sleep(X2002);
@@ -4040,7 +4040,7 @@
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
f_sleep(X2002);
f_rx_rlcmac_dl_block_exp_data(dl_block, dl_fn, data, 0);
@@ -4107,7 +4107,7 @@
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Now the PCU is waiting for the MS to move to PDCH in order to send data to it (timer X2002).
* The MS decides it want to send new Ul TBF so it send RACH req to ask for it: */
@@ -4187,7 +4187,7 @@
/* UL ACK/NACK sets poll+rrbp requesting PACKET CONTROL ACK */
f_ms_tx_ul_block(ms, ts_RLCMAC_CTRL_ACK(ms.tlli), sched_fn);
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Now the PCU is waiting for the MS to move to PDCH in order to send data to it (timer X2002).
* The MS decides it want to send new Ul TBF so it send RACH req to ask for it: */
@@ -4652,7 +4652,7 @@
/* SGSN sends some DL data, PCU will page on CCCH (PCH) */
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, f_rnd_octstring(12)));
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
f_TC_pcuif_fh_check_imm_ass(valueof(info_ind), ms.dl_tbf.rr_imm_ass);
f_shutdown(__BFILE__, __LINE__, final := true);
@@ -7137,7 +7137,7 @@
} else {
BSSGP[0].send(ts_BSSGP_DL_UD(ms.tlli, data, bssgp_ms_racap_gprs));
}
- f_ms_exp_dl_tbf_ass_ccch(ms, PCU_IF_SAPI_PCH);
+ f_ms_exp_dl_tbf_ass_ccch(ms);
/* Wait timer X2002 and DL block is available after CCCH IMM ASS */
f_sleep(X2002);