pcu: add TC_paging_cs_from_bts

1. BTS send a CS paging Request over pcu socket
2. Expect a CS paging frame

Related: OS#3927
Change-Id: Ia3ad503c243c9b3b162e204683fa4fa5447bbab3
diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn
index a2f9a92..ea2edf6 100644
--- a/library/RLCMAC_CSN1_Types.ttcn
+++ b/library/RLCMAC_CSN1_Types.ttcn
@@ -235,11 +235,13 @@
 		BIT1			persistence_levels_present,
 		PersistenceLevels	persistence_levels optional,
 		BIT1			nln_present,
-		uint2_t			nln optional
-		/* TODO: Repeated PageInfo */
+		uint2_t			nln optional,
+		BIT1			repeated_pageinfo_present,
+		PageInfo		repeated_pageinfo optional
 	} with {
 		variant (persistence_levels) "PRESENCE(persistence_levels_present = '1'B)"
 		variant (nln) "PRESENCE(nln_present = '1'B)"
+		variant (repeated_pageinfo) "PRESENCE(repeated_pageinfo_present = '1'B)"
 	};
 
 	/* 11.2.28 Uplink Ack/Nack */
diff --git a/library/RLCMAC_Types.ttcn b/library/RLCMAC_Types.ttcn
index 7043785..8f9f2a5 100644
--- a/library/RLCMAC_Types.ttcn
+++ b/library/RLCMAC_Types.ttcn
@@ -339,7 +339,7 @@
 		usf := usf
 	}
 
-	template RlcmacDlBlock tr_RLCMAC_DUMMY_CTRL(template uint3_t usf := ?) := {
+	template RlcmacDlBlock tr_RLCMAC_DUMMY_CTRL(template uint3_t usf := ?, template PageMode page_mode := ?) := {
 		ctrl := {
 			mac_hdr := {
 				payload_type := (MAC_PT_RLCMAC_NO_OPT, MAC_PT_RLCMAC_OPT),
@@ -352,7 +352,7 @@
 				msg_type := PACKET_DL_DUMMY_CTRL,
 				u := {
 					dl_dummy := {
-						page_mode := ?,
+						page_mode := page_mode,
 						persistence_levels_present := ?,
 						persistence_levels := *
 					}
@@ -418,6 +418,32 @@
 		}
 	}
 
+	template RlcmacDlBlock tr_RLCMAC_PACKET_PAG_REQ(template uint3_t usf := ?) := {
+		ctrl := {
+			mac_hdr := {
+				payload_type := MAC_PT_RLCMAC_NO_OPT,
+				rrbp:= ?,
+				rrbp_valid := ?,
+				usf := usf
+			},
+			opt := *,
+			payload := {
+				msg_type := PACKET_PAGING_REQUEST,
+				u := {
+					paging := {
+						page_mode := ?,
+						persistence_levels_present := ?,
+						persistence_levels := *,
+						nln_present := ?,
+						nln := *,
+						repeated_pageinfo_present := ?,
+						repeated_pageinfo := *
+					}
+				}
+			}
+		}
+	}
+
 	template RlcmacDlBlock tr_RLCMAC_DATA_RRBP := {
 		data := {
 			mac_hdr := {