L1CTL_Types: Add support to set L1 Header params during SACCH tx
Change-Id: Id014f790ee2ede8ae796c37b1c6b25c4af9034d2
This commit is contained in:
parent
98e0315878
commit
0aad596264
|
@ -158,6 +158,21 @@ module GSM_RR_Types {
|
||||||
message_type := msg_type
|
message_type := msg_type
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* TS 44.004 7.2.1 */
|
||||||
|
type record SacchL1Header {
|
||||||
|
uint2_t reserved,
|
||||||
|
boolean fpc,
|
||||||
|
uint5_t ms_power_lvl,
|
||||||
|
uint8_t actual_ta
|
||||||
|
} with { variant "FIELDORDER(msb)" };
|
||||||
|
|
||||||
|
template (value) SacchL1Header ts_SacchL1Header(uint5_t ms_power_lvl, boolean fpc, uint8_t actual_ta) := {
|
||||||
|
reserved := 0,
|
||||||
|
fpc := fpc,
|
||||||
|
ms_power_lvl := ms_power_lvl,
|
||||||
|
actual_ta := actual_ta
|
||||||
|
};
|
||||||
|
|
||||||
type record MaioHsn {
|
type record MaioHsn {
|
||||||
} with { variant "" };
|
} with { variant "" };
|
||||||
|
|
||||||
|
|
|
@ -263,6 +263,11 @@ module L1CTL_Types {
|
||||||
OCT2 padding
|
OCT2 padding
|
||||||
} with { variant "" };
|
} with { variant "" };
|
||||||
|
|
||||||
|
type record L1ctlDataReq {
|
||||||
|
SacchL1Header l1header optional,
|
||||||
|
octetstring l2_payload
|
||||||
|
} with { variant "" };
|
||||||
|
|
||||||
type record L1ctlH1 {
|
type record L1ctlH1 {
|
||||||
uint8_t hsn,
|
uint8_t hsn,
|
||||||
uint8_t maio,
|
uint8_t maio,
|
||||||
|
@ -320,6 +325,7 @@ module L1CTL_Types {
|
||||||
L1CtlCryptoReq crypto_req,
|
L1CtlCryptoReq crypto_req,
|
||||||
L1ctlTrafficReq traffic_req,
|
L1ctlTrafficReq traffic_req,
|
||||||
L1ctlTbfCfgReq tbf_cfg_req,
|
L1ctlTbfCfgReq tbf_cfg_req,
|
||||||
|
L1ctlDataReq data_req,
|
||||||
octetstring other
|
octetstring other
|
||||||
} with {
|
} with {
|
||||||
variant (other) "BYTEORDER(first)"
|
variant (other) "BYTEORDER(first)"
|
||||||
|
@ -351,6 +357,7 @@ module L1CTL_Types {
|
||||||
crypto_req, header.msg_type = L1CTL_CRYPTO_REQ;
|
crypto_req, header.msg_type = L1CTL_CRYPTO_REQ;
|
||||||
traffic_req, header.msg_type = L1CTL_TRAFFIC_REQ;
|
traffic_req, header.msg_type = L1CTL_TRAFFIC_REQ;
|
||||||
tbf_cfg_req, header.msg_type = L1CTL_TBF_CFG_REQ;
|
tbf_cfg_req, header.msg_type = L1CTL_TBF_CFG_REQ;
|
||||||
|
data_req, header.msg_type = L1CTL_DATA_REQ;
|
||||||
other, OTHERWISE;
|
other, OTHERWISE;
|
||||||
)" };
|
)" };
|
||||||
|
|
||||||
|
@ -542,6 +549,22 @@ module L1CTL_Types {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template (value) L1ctlUlMessage ts_L1CTL_DATA_REQ_SACCH(template (value) RslChannelNr chan_nr,
|
||||||
|
template (value) RslLinkId link_id,
|
||||||
|
L1ctlDataReq data_req) := {
|
||||||
|
header := ts_L1ctlHeader(L1CTL_DATA_REQ),
|
||||||
|
ul_info := {
|
||||||
|
chan_nr := chan_nr,
|
||||||
|
link_id := link_id,
|
||||||
|
padding := '0000'O
|
||||||
|
},
|
||||||
|
ul_info_tbf := omit,
|
||||||
|
ul_info_abs := omit,
|
||||||
|
payload := {
|
||||||
|
data_req := data_req
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
template (value) L1ctlUlMessage ts_L1CTL_TBF_CFG_REQ(boolean is_uplink, TfiUsfArr tfi_usf) := {
|
template (value) L1ctlUlMessage ts_L1CTL_TBF_CFG_REQ(boolean is_uplink, TfiUsfArr tfi_usf) := {
|
||||||
header := ts_L1ctlHeader(L1CTL_TBF_CFG_REQ),
|
header := ts_L1ctlHeader(L1CTL_TBF_CFG_REQ),
|
||||||
ul_info := omit,
|
ul_info := omit,
|
||||||
|
|
Loading…
Reference in New Issue