PCUIF: upgrade to PCUIF v12

We have added an additional bts_model field to the PCUIF_info_ind. This
also means that we have to increment the PCUIF version number since
adding fields is a major change to the protocol. This patch updates the
related TTCN3 record and also increments the PCUIF version number.

Related: OS#6191
Depends: osmo-pcu.git I48eb75f65ab54fdec41ef913e24c1f18cd4a4047
Change-Id: Ib1516e66c70f021adee49f41bd707803fc06f9cf
diff --git a/bts/BTS_Tests.default b/bts/BTS_Tests.default
index 7c5230b..578aa36 100644
--- a/bts/BTS_Tests.default
+++ b/bts/BTS_Tests.default
@@ -29,7 +29,7 @@
 
 [MODULE_PARAMETERS]
 Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoBTS";
-PCUIF_Types.mp_pcuif_version := 11;
+PCUIF_Types.mp_pcuif_version := 12;
 
 # Configuration for each individual transceiver
 BTS_Tests.mp_trx_pars := {
diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn
index 8fb0be3..12c704f 100644
--- a/library/PCUIF_Types.ttcn
+++ b/library/PCUIF_Types.ttcn
@@ -17,11 +17,11 @@
 
 modulepar {
 	/* PCUIF version supported by the IUT */
-	PCUIF_Version mp_pcuif_version := 11;
+	PCUIF_Version mp_pcuif_version := 12;
 };
 
 const charstring PCU_SOCK_DEFAULT := "/tmp/pcu_bts";
-type integer PCUIF_Version (9..11); /* supported versions */
+type integer PCUIF_Version (9..12); /* supported versions */
 
 type enumerated PCUIF_MsgType {
 	PCU_IF_MSG_DATA_REQ		('00'O),
@@ -78,6 +78,16 @@
 	BIT3		spare2
 } with { variant "" };
 
+type enumerated PCUIF_bts_model {
+	PCU_IF_BTS_MODEL_UNSPEC		('00'O),
+	PCU_IF_BTS_MODEL_LC15		('01'O),
+	PCU_IF_BTS_MODEL_OC2G		('02'O),
+	PCU_IF_BTS_MODEL_OCTPHY		('03'O),
+	PCU_IF_BTS_MODEL_SYSMO		('04'O),
+	PCU_IF_BTS_MODEL_TRX		('05'O),
+	PCU_IF_BTS_MODEL_RBS		('06'O)
+} with { variant "FIELDLENGTH(8)" };
+
 type enumerated PCUIF_TextType {
 	PCU_VERSION			(0),
 	PCU_OML_ALERT			(1)
@@ -200,7 +210,9 @@
 	record length(2) of uint16_t	nsvci,
 	record length(2) of uint16_t	local_port,
 	record length(2) of uint16_t	remote_port,
-	PCUIF_RemoteAddr		remote_addr
+	PCUIF_RemoteAddr		remote_addr,
+
+	PCUIF_bts_model	bts_model
 } with { variant "" };
 
 type enumerated PCUIF_AddrType {
@@ -979,7 +991,8 @@
 			nsvci := ?,
 			local_port := ?,
 			remote_port := ?,
-			remote_addr := ?
+			remote_addr := ?,
+			bts_model := ?
 		}
 	}
 }
diff --git a/pcu/PCU_Tests.default b/pcu/PCU_Tests.default
index 07d1ffc..c72720b 100644
--- a/pcu/PCU_Tests.default
+++ b/pcu/PCU_Tests.default
@@ -29,7 +29,7 @@
 	}
 };
 Osmocom_VTY_Functions.mp_prompt_prefix := "OsmoPCU";
-PCUIF_Types.mp_pcuif_version := 11;
+PCUIF_Types.mp_pcuif_version := 12;
 
 [TESTPORT_PARAMETERS]
 *.PCU.socket_type := "SEQPACKET"
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index ffad7e6..fb935d9 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -111,7 +111,8 @@
 	local_port := { mp_nsconfig.nsvc[0].provider.ip.remote_udp_port, 0 },
 	remote_port := { mp_nsconfig.nsvc[0].provider.ip.local_udp_port, 0 },
 	remote_addr := f_PCUIF_RemoteAddr(
-		f_PCUIF_AF2addr_type(mp_nsconfig.nsvc[0].provider.ip.address_family), mp_nsconfig.nsvc[0].provider.ip.local_ip)
+		f_PCUIF_AF2addr_type(mp_nsconfig.nsvc[0].provider.ip.address_family), mp_nsconfig.nsvc[0].provider.ip.local_ip),
+	bts_model := PCU_IF_BTS_MODEL_UNSPEC
 }
 
 /* Passed in RAN-INFO message from emulated neighbor using RIM */
diff --git a/pcu/PCU_Tests_SNS.cfg b/pcu/PCU_Tests_SNS.cfg
index c7c5771..bd0875b 100644
--- a/pcu/PCU_Tests_SNS.cfg
+++ b/pcu/PCU_Tests_SNS.cfg
@@ -54,7 +54,7 @@
 		}
 	}
 }
-PCUIF_Types.mp_pcuif_version := 11
+PCUIF_Types.mp_pcuif_version := 12
 
 [TESTPORT_PARAMETERS]
 
diff --git a/pcu/PCU_Tests_SNSv6.cfg b/pcu/PCU_Tests_SNSv6.cfg
index 02d04f3..3093c2c 100644
--- a/pcu/PCU_Tests_SNSv6.cfg
+++ b/pcu/PCU_Tests_SNSv6.cfg
@@ -26,7 +26,7 @@
 		}
 	}
 }
-PCUIF_Types.mp_pcuif_version := 11
+PCUIF_Types.mp_pcuif_version := 12
 
 [TESTPORT_PARAMETERS]