library/RLCMAC_CSN1_Types: Extend support for PacketDlAssignment

Change-Id: I5788d9fffe768bb8ebbb3fc2d93ebf014648e9bf
diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn
index 1f1fb0a..ee02a8a 100644
--- a/library/RLCMAC_CSN1_Types.ttcn
+++ b/library/RLCMAC_CSN1_Types.ttcn
@@ -122,15 +122,59 @@
 		TenTlli			tlli
 	};
 
+	type record  PacketDlAssignmentRel1999SubStruct {
+		EgprsWindowSize		window_size,
+		BIT2			link_quality_meas_mode,
+		BIT1			bep_period2_present,
+		BIT4			bep_period2 optional
+	} with {
+		variant (bep_period2) "PRESENCE(bep_period2_present = '1'B)"
+	};
 	/* 11.2.7 Packet Downlink Assignment */
 	type record PacketDlAssignment {
 		PageMode		page_mode,
 		BIT1			pres1,
 		PersistenceLevels	persistence_levels optional,
-		GlobalTfiOrTlli		tfi_or_tlli
-		/* TODO */
+		GlobalTfiOrTlli		tfi_or_tlli,
+		BIT1			egprs2('0'B), /* TODO: implement union with egprs2 */
+		BIT2			mac_mode,
+		BIT2			rlc_mode,
+		BIT1			control_ack,
+		BIT8			timeslot_alloc,
+		PacketTimingAdvance	pkt_ta,
+		BIT1			p0_present,
+		uint4_t			p0 optional,
+		BIT1			reserved('0'B) optional,
+		BIT1			pr_mode optional,
+		BIT1			freq_par_present,
+		FrequencyParameters	freq_par optional,
+		BIT1			dl_tfi_ass_present,
+		uint5_t			dl_tfi_assignment optional,
+		BIT1			pwr_ctrl_present,
+		PowerControlParameters	pwr_ctrl optional,
+		BIT1			tbf_starting_time_present,
+		StartingFnDesc		tbf_starting_time optional,
+		BIT1			release1999('1'B),
+		BIT1			sub_present,
+		PacketDlAssignmentRel1999SubStruct sub optional,
+		BIT1			pkt_ext_ta_present,
+		BIT2			pkt_ext_ta optional,
+		BIT1			compact_reduced_ma_present,
+		COMPACTreducedMA	compact_reduced_ma optional
+		/* TODO: Additions for REL-5 */
 	} with {
 		variant (persistence_levels) "PRESENCE(pres1 = '1'B)"
+		variant (p0) "PRESENCE(p0_present = '1'B)"
+		variant (p0) "PRESENCE(p0_present = '1'B)"
+		variant (reserved) "PRESENCE(p0_present = '1'B)"
+		variant (pr_mode) "PRESENCE(p0_present = '1'B)"
+		variant (freq_par) "PRESENCE(freq_par_present = '1'B)"
+		variant (dl_tfi_assignment) "PRESENCE(dl_tfi_ass_present = '1'B)"
+		variant (pwr_ctrl) "PRESENCE(pwr_ctrl_present = '1'B)"
+		variant (tbf_starting_time) "PRESENCE(tbf_starting_time_present = '1'B)"
+		variant (sub) "PRESENCE(sub_present = '1'B)"
+		variant (pkt_ext_ta) "PRESENCE(pkt_ext_ta_present = '1'B)"
+		variant (compact_reduced_ma) "PRESENCE(compact_reduced_ma_present = '1'B)"
 	};
 
 	/* 11.2.29 Packet Uplink Assignment */