Vadim Yanitskiy has uploaded this change for review. ( 
https://gerrit.osmocom.org/13734


Change subject: library/L1CTL_Types.ttcn: add L1CTL_EXT_RACH_REQ message
......................................................................

library/L1CTL_Types.ttcn: add L1CTL_EXT_RACH_REQ message

According to 3GPP TS 04.60, section 11.2.5a, the extended (11-bit)
Access Burst on RACH/PRACH is used by the MS to indicate its EGPRS
capability. One of the alternative synch. sequences (see 3GPP TS
05.02, TS1 and TS2) shall be used.

Change-Id: If037cb2f2687697f168d10a033eeb20d20183328
Related: OS#1854
---
M library/L1CTL_Types.ttcn
1 file changed, 42 insertions(+), 1 deletion(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks 
refs/changes/34/13734/1

diff --git a/library/L1CTL_Types.ttcn b/library/L1CTL_Types.ttcn
index ae800b0..6ffbbb8 100644
--- a/library/L1CTL_Types.ttcn
+++ b/library/L1CTL_Types.ttcn
@@ -47,7 +47,8 @@
                L1CTL_TBF_CFG_CONF,
                L1CTL_DATA_TBF_REQ,
                L1CTL_DATA_TBF_CONF,
-               L1CTL_DATA_ABS_REQ
+               L1CTL_EXT_RACH_REQ,
+               L1CTL_DATA_ABS_REQ /*!< FIXME: no such message in OsmocomBB */
        } with { variant "FIELDLENGTH(8)" };

        type enumerated L1ctlCcchMode {
@@ -256,6 +257,19 @@
                uint16_t        offset
        } with { variant "" };

+       type enumerated L1ctlRachSynchSeq {
+               RACH_SYNCH_SEQ_TS0 (0),
+               RACH_SYNCH_SEQ_TS1,
+               RACH_SYNCH_SEQ_TS2
+       } with { variant "FIELDLENGTH(8)" };
+
+       type record L1ctlExtRachReq {
+               uint16_t                ra11,
+               L1ctlRachSynchSeq       synch_seq,
+               uint8_t                 combined,
+               uint16_t                offset
+       } with { variant "" };
+
        type record L1ctlParReq {
                int8_t          ta,
                uint8_t         tx_power,
@@ -317,6 +331,7 @@
                L1ctlCcchModeReq        ccch_mode_req,
                L1ctlTchModeReq         tch_mode_req,
                L1ctlRachReq            rach_req,
+               L1ctlExtRachReq         ext_rach_req,
                L1ctlParReq             par_req,
                L1ctlDmEstReq           dm_est_req,
                L1ctlReset              reset_req,
@@ -337,6 +352,7 @@
                L1ctlUlAbsInfo  ul_info_abs optional,
                L1ctlUlPayload  payload
        } with { variant (ul_info) "PRESENCE(header.msg_type = L1CTL_RACH_REQ,
+                                            header.msg_type = 
L1CTL_EXT_RACH_REQ,
                                             header.msg_type = L1CTL_PARAM_REQ,
                                             header.msg_type = L1CTL_CRYPTO_REQ,
                                             header.msg_type = L1CTL_DATA_REQ,
@@ -350,6 +366,7 @@
                                             ccch_mode_req, header.msg_type = 
L1CTL_CCCH_MODE_REQ;
                                             tch_mode_req, header.msg_type = 
L1CTL_TCH_MODE_REQ;
                                             rach_req, header.msg_type = 
L1CTL_RACH_REQ;
+                                            ext_rach_req, header.msg_type = 
L1CTL_EXT_RACH_REQ;
                                             par_req, header.msg_type = 
L1CTL_PARAM_REQ;
                                             dm_est_req, header.msg_type = 
L1CTL_DM_EST_REQ;
                                             reset_req, header.msg_type = 
L1CTL_RESET_REQ;
@@ -464,6 +481,7 @@
        template L1ctlUlMessage ts_L1CTL_RACH_REQ(uint8_t ra, uint8_t combined, 
uint16_t offset) := {
                header := ts_L1ctlHeader(L1CTL_RACH_REQ),
                ul_info := {
+                       /* FIXME: both RSL chan_nr and link_id should be 
configurable */
                        chan_nr := t_RslChanNr_RACH(0),
                        link_id := ts_RslLinkID_DCCH(0),
                        padding := '0000'O
@@ -479,6 +497,29 @@
                }
        }

+       template L1ctlUlMessage ts_L1CTL_EXT_RACH_REQ(
+               uint16_t ra11, L1ctlRachSynchSeq seq,
+               uint8_t combined, uint16_t offset
+       ) := {
+               header := ts_L1ctlHeader(L1CTL_EXT_RACH_REQ),
+               ul_info := {
+                       /* FIXME: both RSL chan_nr and link_id should be 
configurable */
+                       chan_nr := t_RslChanNr_RACH(0),
+                       link_id := ts_RslLinkID_DCCH(0),
+                       padding := '0000'O
+               },
+               ul_info_tbf := omit,
+               ul_info_abs := omit,
+               payload := {
+                       ext_rach_req := {
+                               ra11 := ra11,
+                               synch_seq := seq,
+                               combined := combined,
+                               offset := offset
+                       }
+               }
+       }
+
        template L1ctlUlMessage ts_L1CTL_PAR_REQ(uint8_t ta, uint8_t tx_power) 
:= {
                header := ts_L1ctlHeader(L1CTL_PARAM_REQ),
                ul_info := {

--
To view, visit https://gerrit.osmocom.org/13734
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: If037cb2f2687697f168d10a033eeb20d20183328
Gerrit-Change-Number: 13734
Gerrit-PatchSet: 1
Gerrit-Owner: Vadim Yanitskiy <[email protected]>

Reply via email to