diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 0d772b3..cfe2845 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -273,20 +273,44 @@
 	type record RSL_IE_ActivationType {
 		boolean		reactivation,
 		uint4_t		reserved,
-		uint3_t		a_bits
-	}
+		RSL_ActivationAbits a_bits
+	};
+	type enumerated RSL_ActivationAbits {
+		ACT_REL_TO_IMM_ASSIGN		('000'B),
+		ACT_REL_TO_NORM_ASSIGN		('001'B),
+		ACT_REL_TO_ASYNC_HANDOVER	('010'B),
+		ACT_REL_TO_SYNC_HANDOVER	('011'B),
+		ACT_REL_TO_ADDL_ASSIGN		('100'B),
+		ACT_REL_TO_MSLOT_CONFIG		('101'B),
+		ACT_REL_TO_OSMO_PDCH		('111'B)
+	} with { variant "FIELDLENGTH(3)" };
 
-	template RSL_IE_ActivationType t_RSL_IE_ActType := {
+	const RSL_IE_ActivationType t_RSL_IE_ActType_IA := {
 		reactivation := false,
 		reserved := 0,
-		a_bits := 0 /* related to immediate assignment */
+		a_bits := ACT_REL_TO_IMM_ASSIGN
+	}
+	const RSL_IE_ActivationType t_RSL_IE_ActType_ASS := {
+		reactivation := false,
+		reserved := 0,
+		a_bits := ACT_REL_TO_NORM_ASSIGN
+	}
+	const RSL_IE_ActivationType t_RSL_IE_ActType_HO_ASYNC := {
+		reactivation := false,
+		reserved := 0,
+		a_bits := ACT_REL_TO_ASYNC_HANDOVER
+	}
+	const RSL_IE_ActivationType t_RSL_IE_ActType_HO_SYNC := {
+		reactivation := false,
+		reserved := 0,
+		a_bits := ACT_REL_TO_SYNC_HANDOVER
 	}
 
 	/* osmocom-style dynamic PDCH */
-	template RSL_IE_ActivationType t_RSL_IE_ActType_PDCH := {
+	const RSL_IE_ActivationType t_RSL_IE_ActType_PDCH := {
 		reactivation := false,
 		reserved := 1,
-		a_bits := 7 /* related to immediate assignment */
+		a_bits := ACT_REL_TO_OSMO_PDCH
 	}
 
 	/* 9.3.6 */
@@ -1122,23 +1146,25 @@
 
 	/* 8.4.1 BSC -> BTS */
 	template (value) RSL_Message ts_RSL_CHAN_ACT(template (value) RslChannelNr chan_nr,
-						     template (value) RSL_IE_ChannelMode mode) := {
+						     template (value) RSL_IE_ChannelMode mode,
+						     template (value) RSL_IE_ActivationType at := t_RSL_IE_ActType_IA) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV,
 		ies :={
 			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}),
-			t_RSL_IE(RSL_IE_ACT_TYPE, RSL_IE_Body:{act_type := t_RSL_IE_ActType}),
+			t_RSL_IE(RSL_IE_ACT_TYPE, RSL_IE_Body:{act_type := at}),
 			t_RSL_IE(RSL_IE_CHAN_MODE, RSL_IE_Body:{chan_mode := mode})
 			/* lots of optional IEs */
 		}
 	}
 	template RSL_Message tr_RSL_CHAN_ACT(template RslChannelNr chan_nr,
-					     template RSL_IE_ChannelMode mode) := {
+					     template RSL_IE_ChannelMode mode,
+					     template (value) RSL_IE_ActivationType at := t_RSL_IE_ActType_IA) := {
 		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
-			tr_RSL_IE(RSL_IE_Body:{act_type := t_RSL_IE_ActType}),
+			tr_RSL_IE(RSL_IE_Body:{act_type := at}),
 			tr_RSL_IE(RSL_IE_Body:{chan_mode := mode}),
 			/* lots of optional IEs */
 			*
