library/GSM_RR_Types: make ts_SacchL1Header easier to use

Move parameter 'fpc' at the end and assign false by default, so that
there is not need to pass false.  We never set it to true anyway.

Change-Id: I8a0ef562c2426a637fbb9fe3d50711ee7738d04f
This commit is contained in:
Vadim Yanitskiy 2022-07-30 23:45:02 +07:00 committed by fixeria
parent 3dfa807769
commit 68c4cff30e
3 changed files with 8 additions and 7 deletions

View File

@ -795,8 +795,7 @@ runs on ConnHdlr {
/* TITAN has weird (and often unusable) padding model, so we pad here manaully */
l3 := f_pad_oct(enc_GsmRrL3Message(meas_rep), 18, '00'O);
l2 := f_pad_oct(enc_LapdmFrameAB(valueof(ts_LAPDm_AB(0, meas_rep))), 21, '00'O);
l1h := ts_SacchL1Header(g_pars.l1_pars.ms_power_level, false,
g_pars.l1_pars.ms_actual_ta);
l1h := ts_SacchL1Header(g_pars.l1_pars.ms_power_level, g_pars.l1_pars.ms_actual_ta);
/* Send RR Measurement Report over the Um interface */
L1CTL.send(ts_L1CTL_DATA_REQ_SACCH(g_chan_nr, ts_RslLinkID_SACCH(0), l1h, l2));
@ -2109,8 +2108,7 @@ private altstep as_l1_sacch() runs on ConnHdlr {
log("LAPDm: ", lb);
var template (value) SacchL1Header l1h := ts_SacchL1Header(
g_pars.l1_pars.ms_power_level, false,
g_pars.l1_pars.ms_actual_ta);
g_pars.l1_pars.ms_power_level, g_pars.l1_pars.ms_actual_ta);
/* According to 3GPP TS 44.018, section 10.5.2.20, we should pad with zeroes */
var octetstring l2 := f_pad_oct(enc_LapdmFrameAB(valueof(lb)), 21, '00'O);
@ -6875,7 +6873,7 @@ private function f_tx_lapdm(template (value) LapdmFrame l,
/* TODO: we can use an extension of TTCN-3 for padding, i.e. PADDING('2B'O) */
if (valueof(link_id.c) == SACCH) {
/* Compose dummy L1 header */
l1h := ts_SacchL1Header(g_pars.l1_pars.ms_power_level, false, g_pars.l1_pars.ms_actual_ta);
l1h := ts_SacchL1Header(g_pars.l1_pars.ms_power_level, g_pars.l1_pars.ms_actual_ta);
L1CTL.send(ts_L1CTL_DATA_REQ_SACCH(g_chan_nr, link_id, l1h, f_pad_oct(l2, 21, '2B'O)));
} else {
/* If required, pad L2 frame with constant 0x2b filling */

View File

@ -198,7 +198,10 @@ module GSM_RR_Types {
external function dec_SacchL1Header(in octetstring stream) return SacchL1Header
with { extension "prototype(convert) decode(RAW)" };
template (value) SacchL1Header ts_SacchL1Header(uint5_t ms_power_lvl, boolean fpc, uint8_t actual_ta) := {
template (value) SacchL1Header
ts_SacchL1Header(uint5_t ms_power_lvl,
uint8_t actual_ta,
boolean fpc := false) := {
reserved := 0,
fpc := fpc,
ms_power_lvl := ms_power_lvl,

View File

@ -494,7 +494,7 @@ module LAPDm_RAW_PT {
link_id := valueof(ts_RslLinkID_SACCH(lpd.sapi));
buf := f_pad_oct(enc_LapdmFrame(lpd.lapdm), 21, '2B'O);
var SacchL1Header l1h := valueof(ts_SacchL1Header(ms_power_lvl,
false, timing_adv));
timing_adv));
L1CTL.send(ts_L1CTL_DATA_REQ_SACCH(chan_desc.chan_nr, link_id,
l1h, buf));
} else {