BTS_Tests: make Training Sequence Code configurable

Change-Id: Ifc09d4192584048d39ebfa22824eda69320fa2c5
diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index 68503dd..32a110a 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -116,6 +116,8 @@
 	FreqHopConfig mp_fh_config;
 	/* configuration for each individual transceiver */
 	TrxPars mp_trx_pars; /* see BTS_Tests.default */
+	/* default Training Sequence Code */
+	GsmTsc mp_tsc_def := 7;
 }
 
 type record of RslChannelNr ChannelNrs;
@@ -285,6 +287,8 @@
 	RSL_IE_EncryptionInfo encr optional,
 	BtsBand bts0_band optional,
 
+	/* Training Sequence Code */
+	GsmTsc tsc,
 	/* Frequency hopping parameters */
 	FreqHopPars fhp
 };
@@ -795,6 +799,7 @@
 	spec := omit,
 	encr := omit,
 	bts0_band := omit,
+	tsc := mp_tsc_def,
 	fhp := {
 		enabled := false,
 		maio_hsn := ts_HsnMaio(0, 0),
@@ -2177,12 +2182,10 @@
 /* Tune to a dedicated channel: L1CTL only */
 private function f_l1ctl_est_dchan(L1CTL_PT pt, ConnHdlrPars pars) {
 	if (not pars.fhp.enabled) {
-		pt.send(ts_L1CTL_DM_EST_REQ_H0(pars.chan_nr,
-						7 /* TODO: mp_tsc */,
+		pt.send(ts_L1CTL_DM_EST_REQ_H0(pars.chan_nr, pars.tsc,
 						mp_trx_pars[0].arfcn));
 	} else {
-		pt.send(ts_L1CTL_DM_EST_REQ_H1(pars.chan_nr,
-						7 /* TODO: mp_tsc */,
+		pt.send(ts_L1CTL_DM_EST_REQ_H1(pars.chan_nr, pars.tsc,
 						pars.fhp.maio_hsn.hsn,
 						pars.fhp.maio_hsn.maio,
 						pars.fhp.ma));
@@ -2204,9 +2207,9 @@
 
 	/* Craft channel description (with or without frequency hopping parameters) */
 	if (g_pars.fhp.enabled) {
-		ch_desc := valueof(ts_ChanDescH1(g_pars.chan_nr, g_pars.fhp.maio_hsn));
+		ch_desc := valueof(ts_ChanDescH1(g_pars.chan_nr, g_pars.fhp.maio_hsn, g_pars.tsc));
 	} else {
-		ch_desc := valueof(ts_ChanDescH0(g_pars.chan_nr, mp_trx_pars[0].arfcn));
+		ch_desc := valueof(ts_ChanDescH0(g_pars.chan_nr, mp_trx_pars[0].arfcn, g_pars.tsc));
 	}
 
 	/* Send IMM.ASS via CCHAN */
@@ -3764,7 +3767,8 @@
 
 	for (var integer i := 0; i < num_total; i := i+1) {
 		var ChannelDescription ch_desc := valueof(ts_ChanDescH0(ts_RslChanNr_SDCCH4(0, 0),
-									mp_trx_pars[0].arfcn));
+									mp_trx_pars[0].arfcn,
+									mp_tsc_def));
 		var GsmRrMessage ia := valueof(ts_IMM_ASS(42, i, 5, ch_desc, c_MA_null));
 		var octetstring ia_enc := enc_GsmRrMessage(ia);
 		RSL_CCHAN.send(ts_ASP_RSL_UD(ts_RSL_IMM_ASSIGN(ia_enc, 0)));