aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2020-05-19 18:51:58 +0200
committerpespin <pespin@sysmocom.de>2020-05-20 10:46:14 +0000
commit984d09fb2fff703fffad3e478d506fca3c66636b (patch)
tree6c79947cd041413becb5175579e0a149cd9b7244
parentb05d16fe8ece16d46f8ded2efcf300e9f4eb5a45 (diff)
library/RLCMAC_CSN1_Types: Extend support for PacketDlAssignment
-rw-r--r--library/RLCMAC_CSN1_Types.ttcn48
-rw-r--r--library/RLCMAC_Templates.ttcn27
2 files changed, 72 insertions, 3 deletions
diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn
index 1f1fb0a2..ee02a8a8 100644
--- a/library/RLCMAC_CSN1_Types.ttcn
+++ b/library/RLCMAC_CSN1_Types.ttcn
@@ -122,15 +122,59 @@ module RLCMAC_CSN1_Types {
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 */
diff --git a/library/RLCMAC_Templates.ttcn b/library/RLCMAC_Templates.ttcn
index 0ffa840e..e2abd84a 100644
--- a/library/RLCMAC_Templates.ttcn
+++ b/library/RLCMAC_Templates.ttcn
@@ -444,7 +444,32 @@ module RLCMAC_Templates {
page_mode := ?,
pres1 := ?,
persistence_levels := *,
- tfi_or_tlli := ?
+ tfi_or_tlli := ?,
+ egprs2 := '0'B,
+ mac_mode := ?,
+ rlc_mode := ?,
+ control_ack := ?,
+ timeslot_alloc := ?,
+ pkt_ta := ?,
+ p0_present := ?,
+ p0 := *,
+ reserved := *,
+ pr_mode := *,
+ freq_par_present := ?,
+ freq_par := *,
+ dl_tfi_ass_present := ?,
+ dl_tfi_assignment := *,
+ pwr_ctrl_present := ?,
+ pwr_ctrl := *,
+ tbf_starting_time_present := ?,
+ tbf_starting_time := *,
+ release1999 := '1'B,
+ sub_present := ?,
+ sub := *,
+ pkt_ext_ta_present := ?,
+ pkt_ext_ta := *,
+ compact_reduced_ma_present := ?,
+ compact_reduced_ma := *
}
}
}