libosmogsm 1.7.0.32-e145
Osmocom GSM library
Loading...
Searching...
No Matches
gsm_08_58.h
Go to the documentation of this file.
4/*
5 * (C) 2008 by Harald Welte <laforge@gnumonks.org>
6 * All Rights Reserved
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 */
19
20#pragma once
21
22#include <stdint.h>
23
24#include <osmocom/core/endian.h>
25
30/* Channel Number 9.3.1 */
32#if OSMO_IS_BIG_ENDIAN
33 uint8_t cbits:5,
34 tn:3;
35#elif OSMO_IS_LITTLE_ENDIAN
36 uint8_t tn:3,
37 cbits:5;
38#endif
39 uint8_t chan_nr;
40} __attribute__ ((packed));
41#define ABIS_RSL_CHAN_NR_CBITS_Bm_ACCHs 0x01
42#define ABIS_RSL_CHAN_NR_CBITS_Lm_ACCHs(ss) (0x02 + (ss))
43#define ABIS_RSL_CHAN_NR_CBITS_SDCCH4_ACCH(ss) (0x04 + (ss))
44#define ABIS_RSL_CHAN_NR_CBITS_SDCCH8_ACCH(ss) (0x08 + (ss))
45#define ABIS_RSL_CHAN_NR_CBITS_BCCH 0x10
46#define ABIS_RSL_CHAN_NR_CBITS_RACH 0x11
47#define ABIS_RSL_CHAN_NR_CBITS_PCH_AGCH 0x12
48#define ABIS_RSL_CHAN_NR_CBITS_OSMO_PDCH 0x18 /*< non-standard, for dyn TS */
49#define ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH4 0x19 /*< non-standard, for CBCH/SDCCH4 */
50#define ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8 0x1a /*< non-standard, for CBCH/SDCCH8 */
51
52/* non-standard, Osmocom specific Bm/Lm equivalents for VAMOS */
53#define ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Bm_ACCHs 0x1d /*< VAMOS TCH/F */
54#define ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Lm_ACCHs(ss) (0x1e + (ss)) /*< VAMOS TCH/H */
55
56/* Link Identifier 9.3.2 */
58#if OSMO_IS_BIG_ENDIAN
59 uint8_t cbits:2,
60 na:1,
61 reserved:2,
62 sapi:3;
63#elif OSMO_IS_LITTLE_ENDIAN
64 uint8_t sapi:3,
65 reserved:2,
66 na:1,
67 cbits:2;
68#endif
69 uint8_t link_id;
70} __attribute__ ((packed));
71#define ABIS_RSL_LINK_ID_CBITS_FACCH_SDCCH 0x00
72#define ABIS_RSL_LINK_ID_CBITS_SACCH 0x01
73
76 uint8_t msg_discr;
77 uint8_t msg_type;
78 uint8_t data[0];
79} __attribute__ ((packed));
80
81/* RSL RLL header (Chapter 8.3) */
84 uint8_t ie_chan;
85 union {
86 uint8_t chan_nr; /* API backward compat */
88 };
89 uint8_t ie_link_id;
90 union {
91 uint8_t link_id; /* API backward compat */
93 };
94 uint8_t data[0];
95} __attribute__ ((packed));
96
97/* RSL Dedicated Channel header (Chapter 8.3 and 8.4) */
100 uint8_t ie_chan;
101 union {
102 uint8_t chan_nr; /* API backward compat */
104 };
105 uint8_t data[0];
106} __attribute__ ((packed));
107
108/* RSL Common Channel header (Chapter 8.5) */
111 uint8_t ie_chan;
112 union {
113 uint8_t chan_nr; /* API backward compat */
115 };
116 uint8_t data[0];
117} __attribute__ ((packed));
118
119/* Osmocom specific IE to negotiate repeated ACCH capabilities */
121#if OSMO_IS_LITTLE_ENDIAN
122 uint8_t dl_facch_cmd:1,
123 dl_facch_all:1,
124 dl_sacch:1,
125 ul_sacch:1,
126 rxqual:3,
127 reserved:1;
128#elif OSMO_IS_BIG_ENDIAN
129/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
130 uint8_t reserved:1, rxqual:3, ul_sacch:1, dl_sacch:1, dl_facch_all:1, dl_facch_cmd:1;
131#endif
132} __attribute__ ((packed));
133
134/* Osmocom specific IE to negotiate temporary overpower of ACCH channels */
136#if OSMO_IS_LITTLE_ENDIAN
137 uint8_t overpower_db:3,
138 rxqual:3,
139 facch_enable:1,
140 sacch_enable:1;
141#elif OSMO_IS_BIG_ENDIAN
142/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
143 uint8_t sacch_enable:1, facch_enable:1, rxqual:3, overpower_db:3;
144#endif
145} __attribute__ ((packed));
146
147/* Chapter 9.1 */
148/* RSL Message Discriminator: RLL */
149#define ABIS_RSL_MDISC_RLL 0x02
150/* RSL Message Discriminator: Dedicated Channel */
151#define ABIS_RSL_MDISC_DED_CHAN 0x08
152/* RSL Message Discriminator: Common Channel */
153#define ABIS_RSL_MDISC_COM_CHAN 0x0c
154/* RSL Message Discriminator: TRX Management */
155#define ABIS_RSL_MDISC_TRX 0x10
156/* RSL Message Discriminator: Location Service */
157#define ABIS_RSL_MDISC_LOC 0x20
158/* RSL Message Discriminator: ip.access */
159#define ABIS_RSL_MDISC_IPACCESS 0x7e
160#define ABIS_RSL_MDISC_TRANSP 0x01
161
162/* Check if given RSL message discriminator is transparent */
163#define ABIS_RSL_MDISC_IS_TRANSP(x) (x & 0x01)
164
165/* RSL Message Type (Chapter 9.1) */
167 /* Radio Link Layer Management */
179 RSL_MT_SUSP_REQ, /* non-standard elements */
183
184 /* Common Channel Management / TRX Management */
192 RSL_MT_CHAN_CONF, /* non-standard element */
193 /* empty */
200 RSL_MT_NOT_CMD, /* 0x1f */
201
202 /* Dedicate Channel Management */
235
236 /* ip.access specific RSL message types */
253 RSL_MT_IPAC_MEAS_PREPROC_DFT = 0x60, /*Extented Common Channel Management */
256 RSL_MT_IPAC_CRCX = 0x70, /* Bind to local BTS RTP port */
266
269
289
294
325 /* reserved */
331 RSL_IE_IMM_ASS_INFO, /* Phase 1 (3.6.0), later Full below */
357 /* Siemens vendor-specific */
366
367 /* Osmocom specific */
372
373 /* ip.access */
392};
393
394/* Ericsson specific IEs, clash with above partially, so they're not
395 * part of the enum */
396#define RSL_IE_ERIC_PAGING_GROUP 0x0e
397#define RSL_IE_ERIC_INST_NR 0x48
398#define RSL_IE_ERIC_PGSL_TIMERS 0x49
399#define RSL_IE_ERIC_REPEAT_DL_FACCH 0x4a
400#define RSL_IE_ERIC_POWER_INFO 0xf0
401#define RSL_IE_ERIC_MOBILE_ID 0xf1
402#define RSL_IE_ERIC_BCCH_MAPPING 0xf2
403#define RSL_IE_ERIC_PACKET_PAG_IND 0xf3
404#define RSL_IE_ERIC_CNTR_CTRL 0xf4
405#define RSL_IE_ERIC_CNTR_CTRL_ACK 0xf5
406#define RSL_IE_ERIC_CNTR_REPORT 0xf6
407#define RSL_IE_ERIC_ICP_CONN 0xf7
408#define RSL_IE_ERIC_EMR_SUPPORT 0xf8
409#define RSL_IE_ERIC_EGPRS_REQ_REF 0xf9
410#define RSL_IE_ERIC_VGCS_REL 0xfa
411#define RSL_IE_ERIC_REP_PER_NCH 0xfb
412#define RSL_IE_ERIC_NY2 0xfc
413#define RSL_IE_ERIC_T3115 0xfd
414#define RSL_IE_ERIC_ACTIVATE_FLAG 0xfe
415#define RSL_IE_ERIC_FULL_NCH_INFO 0xff
416
417/* IPAC MEAS_PREPROC AVERAGING METHOD */
418enum {
422 /* EWMA is an Osmocom specific extension */
424};
425
426/* IPAC MEAS_PREPROC AVERAGING PARAM ID */
427enum {
432
433/* IPAC MEAS_PREPROC HO CAUSES */
434enum {
453};
454
455/* Chapter 9.3.1 */
456#define RSL_CHAN_NR_MASK 0xf8
457#define RSL_CHAN_NR_1 0x08 /*< bit to add for 2nd,... lchan */
458#define RSL_CHAN_Bm_ACCHs 0x08
459#define RSL_CHAN_Lm_ACCHs 0x10 /* .. 0x18 */
460#define RSL_CHAN_SDCCH4_ACCH 0x20 /* .. 0x38 */
461#define RSL_CHAN_SDCCH8_ACCH 0x40 /* ...0x78 */
462#define RSL_CHAN_BCCH 0x80
463#define RSL_CHAN_RACH 0x88
464#define RSL_CHAN_PCH_AGCH 0x90
465#define RSL_CHAN_OSMO_PDCH 0xc0 /*< non-standard, for dyn TS */
466#define RSL_CHAN_OSMO_CBCH4 0xc8 /*< non-standard, for CBCH/SDCCH4 */
467#define RSL_CHAN_OSMO_CBCH8 0xd0 /*< non-standard, for CBCH/SDCCH8 */
468
469/* non-standard, Osmocom specific Bm/Lm equivalents for VAMOS */
470#define RSL_CHAN_OSMO_VAMOS_Bm_ACCHs 0xe8 /* VAMOS TCH/F */
471#define RSL_CHAN_OSMO_VAMOS_Lm_ACCHs 0xf0 /* VAMOS TCH/H */
472#define RSL_CHAN_OSMO_VAMOS_MASK 0xe0 /* VAMOS TCH/{F,H} */
473
474/* Chapter 9.3.3 */
475#define RSL_ACT_TYPE_INITIAL 0x00
476#define RSL_ACT_TYPE_REACT 0x80
477#define RSL_ACT_INTRA_IMM_ASS 0x00
478#define RSL_ACT_INTRA_NORM_ASS 0x01
479#define RSL_ACT_INTER_ASYNC 0x02
480#define RSL_ACT_INTER_SYNC 0x03
481#define RSL_ACT_SECOND_ADD 0x04
482#define RSL_ACT_SECOND_MULTI 0x05
483#define RSL_ACT_OSMO_PDCH 0x0f /*< non-standard, for dyn TS */
484
487 uint8_t dtx_dtu;
488 uint8_t spd_ind;
489 uint8_t chan_rt;
490 uint8_t chan_rate;
491} __attribute__ ((packed));
492#define RSL_CMOD_DTXu 0x01 /* uplink */
493#define RSL_CMOD_DTXd 0x02 /* downlink */
499#define RSL_CMOD_CRT_SDCCH 0x01
500#define RSL_CMOD_CRT_TCH_Bm 0x08 /* full-rate */
501#define RSL_CMOD_CRT_TCH_Lm 0x09 /* half-rate */
502#define RSL_CMOD_CRT_TCH_BI_Bm 0x0a /* full-rate: bi-directional (multislot) */
503#define RSL_CMOD_CRT_TCH_UNI_Bm 0x1a /* full-rate: uni-directional (multislot) */
504#define RSL_CMOD_CRT_TCH_GROUP_Bm 0x18 /* full-rate: group call channel */
505#define RSL_CMOD_CRT_TCH_GROUP_Lm 0x19 /* half-rate: group call channel */
506#define RSL_CMOD_CRT_TCH_BCAST_Bm 0x28 /* full-rate: broadcast call channel */
507#define RSL_CMOD_CRT_TCH_BCAST_Lm 0x29 /* half-rate: broadcast call channel */
508#define RSL_CMOD_CRT_OSMO_TCH_VAMOS_Bm 0x88 /* full-rate in VAMOS mode */
509#define RSL_CMOD_CRT_OSMO_TCH_VAMOS_Lm 0x89 /* half-rate in VAMOS mode */
510/* Speech */
511#define RSL_CMOD_SP_GSM1 0x01
512#define RSL_CMOD_SP_GSM2 0x11
513#define RSL_CMOD_SP_GSM3 0x21
514#define RSL_CMOD_SP_GSM4 0x31
515#define RSL_CMOD_SP_GSM5 0x09
516#define RSL_CMOD_SP_GSM6 0x0d
517/* non-transparent data (asymmetric) */
518#define RSL_CMOD_CSD_NTA_43k5_14k5 0x61 /* asymmetric 43.5 kbit/s (DL) + 14.5 kbit/s (UL) */
519#define RSL_CMOD_CSD_NTA_29k0_14k5 0x62 /* asymmetric 29.0 kbit/s (DL) + 14.5 kbit/s (UL) */
520#define RSL_CMOD_CSD_NTA_43k5_29k0 0x63 /* asymmetric 43.5 kbit/s (DL) + 29.0 kbit/s (UL) */
521#define RSL_CMOD_CSD_NTA_14k5_43k5 0x69 /* asymmetric 14.5 kbit/s (DL) + 43.5 kbit/s (UL) */
522#define RSL_CMOD_CSD_NTA_14k5_29k0 0x6a /* asymmetric 14.5 kbit/s (DL) + 29.0 kbit/s (UL) */
523#define RSL_CMOD_CSD_NTA_29k0_43k5 0x6b /* asymmetric 29.0 kbit/s (DL) + 43.5 kbit/s (UL) */
524/* non-transparent data */
525#define RSL_CMOD_CSD_NT_43k5 0x74
526#define RSL_CMOD_CSD_NT_28k8 0x71
527#define RSL_CMOD_CSD_NT_14k5 0x58
528#define RSL_CMOD_CSD_NT_12k0 0x50
529#define RSL_CMOD_CSD_NT_6k0 0x51
530/* legacy #defines with wrong name */
531#define RSL_CMOD_SP_NT_14k5 RSL_CMOD_CSD_NT_14k5
532#define RSL_CMOD_SP_NT_12k0 RSL_CMOD_CSD_NT_12k0
533#define RSL_CMOD_SP_NT_6k0 RSL_CMOD_CSD_NT_6k0
534/* transparent data */
535#define RSL_CMOD_CSD_T_32000 0x38
536#define RSL_CMOD_CSD_T_29000 0x39
537#define RSL_CMOD_CSD_T_14400 0x18
538#define RSL_CMOD_CSD_T_9600 0x10
539#define RSL_CMOD_CSD_T_4800 0x11
540#define RSL_CMOD_CSD_T_2400 0x12
541#define RSL_CMOD_CSD_T_1200 0x13
542#define RSL_CMOD_CSD_T_600 0x14
543#define RSL_CMOD_CSD_T_1200_75 0x15
544
547 /* GSM 04.08 10.5.2.5 */
548 struct {
549 uint8_t iei;
550 uint8_t chan_nr; /* enc_chan_nr */
551 uint8_t oct3;
552 uint8_t oct4;
554#if 0 /* spec says we need this but Abissim doesn't use it */
555 struct {
556 uint8_t tag;
557 uint8_t len;
558 } mobile_alloc;
559#endif
560} __attribute__ ((packed));
561
562/* Chapter 9.3.22 */
563#define RLL_CAUSE_T200_EXPIRED 0x01
564#define RLL_CAUSE_REEST_REQ 0x02
565#define RLL_CAUSE_UNSOL_UA_RESP 0x03
566#define RLL_CAUSE_UNSOL_DM_RESP 0x04
567#define RLL_CAUSE_UNSOL_DM_RESP_MF 0x05
568#define RLL_CAUSE_UNSOL_SPRV_RESP 0x06
569#define RLL_CAUSE_SEQ_ERR 0x07
570#define RLL_CAUSE_UFRM_INC_PARAM 0x08
571#define RLL_CAUSE_SFRM_INC_PARAM 0x09
572#define RLL_CAUSE_IFRM_INC_MBITS 0x0a
573#define RLL_CAUSE_IFRM_INC_LEN 0x0b
574#define RLL_CAUSE_FRM_UNIMPL 0x0c
575#define RLL_CAUSE_SABM_MF 0x0d
576#define RLL_CAUSE_SABM_INFO_NOTALL 0x0e
577
578/* Chapter 9.3.26 */
579#define RSL_ERRCLS_NORMAL 0x00
580#define RSL_ERRCLS_RESOURCE_UNAVAIL 0x20
581#define RSL_ERRCLS_SERVICE_UNAVAIL 0x30
582#define RSL_ERRCLS_SERVICE_UNIMPL 0x40
583#define RSL_ERRCLS_INVAL_MSG 0x50
584#define RSL_ERRCLS_PROTO_ERROR 0x60
585#define RSL_ERRCLS_INTERWORKING 0x70
586
587/* normal event */
588#define RSL_ERR_RADIO_IF_FAIL 0x00
589#define RSL_ERR_RADIO_LINK_FAIL 0x01
590#define RSL_ERR_HANDOVER_ACC_FAIL 0x02
591#define RSL_ERR_TALKER_ACC_FAIL 0x03
592#define RSL_ERR_OM_INTERVENTION 0x07
593#define RSL_ERR_NORMAL_UNSPEC 0x0f
594#define RSL_ERR_T_MSRFPCI_EXP 0x18
595/* resource unavailable */
596#define RSL_ERR_EQUIPMENT_FAIL 0x20
597#define RSL_ERR_RR_UNAVAIL 0x21
598#define RSL_ERR_TERR_CH_FAIL 0x22
599#define RSL_ERR_CCCH_OVERLOAD 0x23
600#define RSL_ERR_ACCH_OVERLOAD 0x24
601#define RSL_ERR_PROCESSOR_OVERLOAD 0x25
602#define RSL_ERR_BTS_NOT_EQUIPPED 0x27
603#define RSL_ERR_REMOTE_TRANSC_FAIL 0x28
604#define RSL_ERR_NOTIFICATION_OVERFL 0x29
605#define RSL_ERR_RES_UNAVAIL 0x2f
606/* service or option not available */
607#define RSL_ERR_TRANSC_UNAVAIL 0x30
608#define RSL_ERR_SERV_OPT_UNAVAIL 0x3f
609/* service or option not implemented */
610#define RSL_ERR_ENCR_UNIMPL 0x40
611#define RSL_ERR_SERV_OPT_UNIMPL 0x4f
612/* invalid message */
613#define RSL_ERR_RCH_ALR_ACTV_ALLOC 0x50
614#define RSL_ERR_INVALID_MESSAGE 0x5f
615/* protocol error */
616#define RSL_ERR_MSG_DISCR 0x60
617#define RSL_ERR_MSG_TYPE 0x61
618#define RSL_ERR_MSG_SEQ 0x62
619#define RSL_ERR_IE_ERROR 0x63
620#define RSL_ERR_MAND_IE_ERROR 0x64
621#define RSL_ERR_OPT_IE_ERROR 0x65
622#define RSL_ERR_IE_NONEXIST 0x66
623#define RSL_ERR_IE_LENGTH 0x67
624#define RSL_ERR_IE_CONTENT 0x68
625#define RSL_ERR_PROTO 0x6f
626/* interworking */
627#define RSL_ERR_INTERWORKING 0x7f
628
629/* Chapter 9.3.30 */
630#define RSL_SYSTEM_INFO_8 0x00
631#define RSL_SYSTEM_INFO_1 0x01
632#define RSL_SYSTEM_INFO_2 0x02
633#define RSL_SYSTEM_INFO_3 0x03
634#define RSL_SYSTEM_INFO_4 0x04
635#define RSL_SYSTEM_INFO_5 0x05
636#define RSL_SYSTEM_INFO_6 0x06
637#define RSL_SYSTEM_INFO_7 0x07
638#define RSL_SYSTEM_INFO_16 0x08
639#define RSL_SYSTEM_INFO_17 0x09
640#define RSL_SYSTEM_INFO_2bis 0x0a
641#define RSL_SYSTEM_INFO_2ter 0x0b
642#define RSL_SYSTEM_INFO_5bis 0x0d
643#define RSL_SYSTEM_INFO_5ter 0x0e
644#define RSL_SYSTEM_INFO_10 0x0f
645#define RSL_EXT_MEAS_ORDER 0x47
646#define RSL_MEAS_INFO 0x48
647#define RSL_SYSTEM_INFO_13 0x28
648#define RSL_ERIC_SYSTEM_INFO_13 0x0C
649#define RSL_SYSTEM_INFO_2quater 0x29
650#define RSL_SYSTEM_INFO_9 0x2a
651#define RSL_SYSTEM_INFO_18 0x2b
652#define RSL_SYSTEM_INFO_19 0x2c
653#define RSL_SYSTEM_INFO_20 0x2d
654
655/* Chapter 9.3.40 */
656#define RSL_CHANNEED_ANY 0x00
657#define RSL_CHANNEED_SDCCH 0x01
658#define RSL_CHANNEED_TCH_F 0x02
659#define RSL_CHANNEED_TCH_ForH 0x03
660
663#if OSMO_IS_LITTLE_ENDIAN
664 uint8_t last_block:2;
665 uint8_t spare:1;
666 uint8_t def_bcast:1;
667 uint8_t command:4;
668#elif OSMO_IS_BIG_ENDIAN
669/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
670 uint8_t command:4, def_bcast:1, spare:1, last_block:2;
671#endif
672} __attribute__ ((packed));
673/* ->command */
674#define RSL_CB_CMD_TYPE_NORMAL 0x00
675#define RSL_CB_CMD_TYPE_SCHEDULE 0x08
676#define RSL_CB_CMD_TYPE_DEFAULT 0x0e
677#define RSL_CB_CMD_TYPE_NULL 0x0f
678/* ->def_bcast */
679#define RSL_CB_CMD_DEFBCAST_NORMAL 0
680#define RSL_CB_CMD_DEFBCAST_NULL 1
681/* ->last_block */
682#define RSL_CB_CMD_LASTBLOCK_4 0
683#define RSL_CB_CMD_LASTBLOCK_1 1
684#define RSL_CB_CMD_LASTBLOCK_2 2
685#define RSL_CB_CMD_LASTBLOCK_3 3
686
687/* Chapter 3.3.2.3 Brocast control channel */
688/* CCCH-CONF, NC is not combined */
689#define RSL_BCCH_CCCH_CONF_1_NC 0x00
690#define RSL_BCCH_CCCH_CONF_1_C 0x01
691#define RSL_BCCH_CCCH_CONF_2_NC 0x02
692#define RSL_BCCH_CCCH_CONF_3_NC 0x04
693#define RSL_BCCH_CCCH_CONF_4_NC 0x06
694
695/* BS-PA-MFRMS */
696#define RSL_BS_PA_MFRMS_2 0x00
697#define RSL_BS_PA_MFRMS_3 0x01
698#define RSL_BS_PA_MFRMS_4 0x02
699#define RSL_BS_PA_MFRMS_5 0x03
700#define RSL_BS_PA_MFRMS_6 0x04
701#define RSL_BS_PA_MFRMS_7 0x05
702#define RSL_BS_PA_MFRMS_8 0x06
703#define RSL_BS_PA_MFRMS_9 0x07
704
705/* RSL_IE_IPAC_RTP_PAYLOAD[2] */
713
714/* RSL_IE_IPAC_SPEECH_MODE, lower four bits */
716 RSL_IPAC_SPEECH_GSM_FR = 0, /* GSM FR (Type 1, FS) */
717 RSL_IPAC_SPEECH_GSM_EFR = 1, /* GSM EFR (Type 2, FS) */
718 RSL_IPAC_SPEECH_GSM_AMR_FR = 2, /* GSM AMR/FR (Type 3, FS) */
719 RSL_IPAC_SPEECH_GSM_HR = 3, /* GSM HR (Type 1, HS) */
720 RSL_IPAC_SPEECH_GSM_AMR_HR = 5, /* GSM AMR/hr (Type 3, HS) */
721 RSL_IPAC_SPEECH_AS_RTP = 0xf, /* As specified by RTP Payload IE */
722};
723/* RSL_IE_IPAC_SPEECH_MODE, upper four bits */
725 RSL_IPAC_SPEECH_M_RXTX = 0, /* Send and Receive */
726 RSL_IPAC_SPEECH_M_RX = 1, /* Receive only */
727 RSL_IPAC_SPEECH_M_TX = 2, /* Send only */
728};
729
730/* RSL_IE_IPAC_RTP_CSD_FMT, lower four bits */
737/* RSL_IE_IPAC_RTP_CSD_FMT, upper four bits */
744
745/* Siemens vendor-specific RSL extensions */
752
766
767/* 9.3.20 Release Mode */
772
809
810/* Value of TLV IE RSL_IPAC_EIE_MEAS_AVG_CFG */
812#if OSMO_IS_LITTLE_ENDIAN
813 uint8_t h_reqave:5,
814 param_id:2,
815 reserved:1;
816 uint8_t h_reqt:5,
817 ave_method:3;
818 uint8_t params[0];
819#elif OSMO_IS_BIG_ENDIAN
820/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
821 uint8_t reserved:1, param_id:2, h_reqave:5;
822 uint8_t ave_method:3, h_reqt:5;
823 uint8_t params[0];
824#endif
825}__attribute__ ((packed));
826
827
829#if OSMO_IS_LITTLE_ENDIAN
830 uint8_t h_reqave:5,
831 ave_enabled:1,
832 reserved:2;
833 uint8_t h_reqt:5,
834 ave_method:3;
835#elif OSMO_IS_BIG_ENDIAN
836/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
837 uint8_t reserved:2, ave_enabled:1, h_reqave:5;
838 uint8_t ave_method:3, h_reqt:5;
839#endif
840}__attribute__ ((packed));
841/* Value of TLV IE RSL_IPAC_EIE_OSMO_MEAS_AVG_CFG: */
851
854#if OSMO_IS_LITTLE_ENDIAN
855 uint8_t l_rxlev:6, reserved_l_rxlev:2;
856 uint8_t u_rxlev:6, reserved_u_rxlev:2;
857 uint8_t u_rxqual:3, reserved_u_rxqual:1,
858 l_rxqual:3, reserved_l_rxqual:1;
859#elif OSMO_IS_BIG_ENDIAN
860/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
861 uint8_t reserved_l_rxlev:2, l_rxlev:6;
862 uint8_t reserved_u_rxlev:2, u_rxlev:6;
863 uint8_t reserved_l_rxqual:1, l_rxqual:3, reserved_u_rxqual:1, u_rxqual:3;
864#endif
865}__attribute__ ((packed));
866
869 /* Carrier-to-Interference (C/I), in dB: */
870 int8_t l_ci_fr; int8_t u_ci_fr; /* FR/EFR */
871 int8_t l_ci_hr; int8_t u_ci_hr; /* HR */
872 int8_t l_ci_amr_fr; int8_t u_ci_amr_fr; /* AMR FR */
873 int8_t l_ci_amr_hr; int8_t u_ci_amr_hr; /* AMR HR */
874 int8_t l_ci_sdcch; int8_t u_ci_sdcch; /* SDCCH */
875 int8_t l_ci_gprs; int8_t u_ci_gprs; /* GPRS */
876}__attribute__ ((packed));
877
880#if OSMO_IS_LITTLE_ENDIAN
881 uint8_t l_rxlev_ul_h:6,
882 reserved_l_rxlev_ul:2;
883 uint8_t l_rxlev_dl_h:6,
884 reserved_l_rxlev_dl:2;
885 uint8_t rxlev_ul_ih:6,
886 reserved_rxlev_ul:2;
887 uint8_t rxlev_dl_ih:6,
888 reserved_rxlev_dl:2;
889 uint8_t l_rxqual_ul_h:3,
890 reserved_rxlqual_ul:1,
891 l_rxqual_dl_h:3,
892 reserved_rxqual_dl:1;
893 uint8_t ms_range_max:6,
894 reserved_ms_range:2;
895#elif OSMO_IS_BIG_ENDIAN
896/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
897 uint8_t reserved_l_rxlev_ul:2, l_rxlev_ul_h:6;
898 uint8_t reserved_l_rxlev_dl:2, l_rxlev_dl_h:6;
899 uint8_t reserved_rxlev_ul:2, rxlev_ul_ih:6;
900 uint8_t reserved_rxlev_dl:2, rxlev_dl_ih:6;
901 uint8_t reserved_rxqual_dl:1, l_rxqual_dl_h:3, reserved_rxlqual_ul:1, l_rxqual_ul_h:3;
902 uint8_t reserved_ms_range:2, ms_range_max:6;
903#endif
904}__attribute__ ((packed));
905
908#if OSMO_IS_LITTLE_ENDIAN
909 uint8_t p1:5, reserved_p1:3;
910 uint8_t n1:5, reserved_n1:3;
911 uint8_t p2:5, reserved_p2:3;
912 uint8_t n2:5, reserved_n2:3;
913 uint8_t p3:5, reserved_p3:3;
914 uint8_t n3:5, reserved_n3:3;
915 uint8_t p4:5, reserved_p4:3;
916 uint8_t n4:5, reserved_n4:3;
917 uint8_t pc_interval:5, reserved_pc:3;
918 uint8_t red_step_size:4, inc_step_size:4;
919#elif OSMO_IS_BIG_ENDIAN
920/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
921 uint8_t reserved_p1:3, p1:5;
922 uint8_t reserved_n1:3, n1:5;
923 uint8_t reserved_p2:3, p2:5;
924 uint8_t reserved_n2:3, n2:5;
925 uint8_t reserved_p3:3, p3:5;
926 uint8_t reserved_n3:3, n3:5;
927 uint8_t reserved_p4:3, p4:5;
928 uint8_t reserved_n4:3, n4:5;
929 uint8_t reserved_pc:3, pc_interval:5;
930 uint8_t inc_step_size:4, red_step_size:4;
931#endif
932}__attribute__ ((packed));
933
936#if OSMO_IS_LITTLE_ENDIAN
937 uint8_t lower_p:5, reserved_lower_p:3;
938 uint8_t lower_n:5, reserved_lower_n:3;
939 uint8_t upper_p:5, reserved_upper_p:3;
940 uint8_t upper_n:5, reserved_upper_n:3;
941#elif OSMO_IS_BIG_ENDIAN
942/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
943 uint8_t reserved_lower_p:3, lower_p:5;
944 uint8_t reserved_lower_n:3, lower_n:5;
945 uint8_t reserved_upper_p:3, upper_p:5;
946 uint8_t reserved_upper_n:3, upper_n:5;
947#endif
948}__attribute__ ((packed));
958
961#if OSMO_IS_LITTLE_ENDIAN
962 uint8_t p5:5,
963 reserved_p5:3;
964 uint8_t n5:5,
965 reserved_n5:3;
966 uint8_t p6:5,
967 reserved_p6:3;
968 uint8_t n6:5,
969 reserved_n6:3;
970 uint8_t p7:5,
971 reserved_p7:3;
972 uint8_t n7:5,
973 reserved_n7:3;
974 uint8_t p8:5,
975 reserved_p8:3;
976 uint8_t n8:5,
977 reserved_n8:3;
978 uint8_t ho_interval:5,
979 reserved_ho:3;
980 uint8_t reserved;
981
982#elif OSMO_IS_BIG_ENDIAN
983/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
984 uint8_t reserved_p5:3, p5:5;
985 uint8_t reserved_n5:3, n5:5;
986 uint8_t reserved_p6:3, p6:5;
987 uint8_t reserved_n6:3, n6:5;
988 uint8_t reserved_p7:3, p7:5;
989 uint8_t reserved_n7:3, n7:5;
990 uint8_t reserved_p8:3, p8:5;
991 uint8_t reserved_n8:3, n8:5;
992 uint8_t reserved_ho:3, ho_interval:5;
993 uint8_t reserved;
994#endif
995}__attribute__ ((packed));
996
998#if OSMO_IS_LITTLE_ENDIAN
999 uint8_t bsic:6,
1000 reserved0:2;
1001 uint8_t bcch_freq:5,
1002 ba_used:1,
1003 s:1,
1004 reserved1:1;
1005#elif OSMO_IS_BIG_ENDIAN
1006/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
1007 uint8_t reserved0:2, bsic:6;
1008 uint8_t reserved1:1, s:1, ba_used:1, bcch_freq:5;
1009#endif
1010}__attribute__ ((packed));
1011
1013#if OSMO_IS_LITTLE_ENDIAN
1014 uint8_t rxlev_min_def:6,
1015 reserved_rxlev_min_def:2;
1016 uint8_t ho_margin_def:5,
1017 reserved_ho_margin_def:3;
1018 uint8_t ms_txpwr_max_def:5,
1019 reserved_ms_txpwr_max_def:3;
1020#elif OSMO_IS_BIG_ENDIAN
1021/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
1022 uint8_t reserved_rxlev_min_def:2, rxlev_min_def:6;
1023 uint8_t reserved_ho_margin_def:3, ho_margin_def:5;
1024 uint8_t reserved_ms_txpwr_max_def:3, ms_txpwr_max_def:5;
1025#endif
1026}__attribute__ ((packed));
1027
1029#if OSMO_IS_LITTLE_ENDIAN
1030 uint8_t sdcch_ho_gsm:1,
1031 sdcch_ho_umts:1,
1032 reserved:6;
1033#elif OSMO_IS_BIG_ENDIAN
1034/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
1035 uint8_t reserved:6, sdcch_ho_umts:1, sdcch_ho_gsm:1;
1036#endif
1037}__attribute__ ((packed));
1038
1049
1051#if OSMO_IS_LITTLE_ENDIAN
1052 uint8_t reserved:1,
1053 srr_sro:1,
1054 fpc_epc:1,
1055 ms_pwr:5;
1056 uint8_t ta;
1057#elif OSMO_IS_BIG_ENDIAN
1058/* auto-generated from the little endian part above (libosmocore/contrib/struct_endianess.py) */
1059 uint8_t ms_pwr:5, fpc_epc:1, srr_sro:1, reserved:1;
1060 uint8_t ta;
1061#endif
1062} __attribute__ ((packed));
1063
rsl_ipac_rtp_csd_format_d
Definition gsm_08_58.h:731
rsl_mrpci_pwrclass
Definition gsm_08_58.h:753
rsl_rel_mode
Definition gsm_08_58.h:768
abis_rsl_ie
RSL Information Element Identifiers (Chapter 9.3)
Definition gsm_08_58.h:296
abis_rsl_msgtype_ericsson
Ericsson vendor-specific RSL message types.
Definition gsm_08_58.h:291
enum abis_rsl_msgtype __attribute__
rsl_ipac_rtp_payload
Definition gsm_08_58.h:706
rsl_ipac_embedded_ie
ip.access specific embedded information elements
Definition gsm_08_58.h:774
rsl_ipac_speech_mode_m
Definition gsm_08_58.h:724
rsl_ipac_rtp_csd_format_ir
Definition gsm_08_58.h:738
rsl_cmod_spd
Definition gsm_08_58.h:494
rsl_mrpci_phase
Definition gsm_08_58.h:760
abis_rsl_msgtype_siemens
Siemens vendor-specific RSL message types.
Definition gsm_08_58.h:271
abis_rsl_msgtype
Definition gsm_08_58.h:166
rsl_ipac_speech_mode_s
Definition gsm_08_58.h:715
@ IPAC_MEDIAN_AVE
Definition gsm_08_58.h:421
@ IPAC_WEIGHTED_AVE
Definition gsm_08_58.h:420
@ IPAC_OSMO_EWMA_AVE
Definition gsm_08_58.h:423
@ IPAC_UNWEIGHTED_AVE
Definition gsm_08_58.h:419
@ RSL_IPAC_RTP_CSD_NON_TRAU
Definition gsm_08_58.h:733
@ RSL_IPAC_RTP_CSD_IWF_FREE
Definition gsm_08_58.h:735
@ RSL_IPAC_RTP_CSD_EXT_TRAU
Definition gsm_08_58.h:732
@ RSL_IPAC_RTP_CSD_TRAU_BTS
Definition gsm_08_58.h:734
@ RSL_MRPCI_PWRC_2
Definition gsm_08_58.h:755
@ RSL_MRPCI_PWRC_4
Definition gsm_08_58.h:757
@ RSL_MRPCI_PWRC_1
Definition gsm_08_58.h:754
@ RSL_MRPCI_PWRC_3
Definition gsm_08_58.h:756
@ RSL_MRPCI_PWRC_5
Definition gsm_08_58.h:758
@ RSL_REL_LOCAL_END
Definition gsm_08_58.h:770
@ RSL_REL_NORMAL
Definition gsm_08_58.h:769
@ RSL_IE_SACCH_INFO
Definition gsm_08_58.h:340
@ RSL_IE_RACH_LOAD
Definition gsm_08_58.h:314
@ RSL_IE_CAUSE
Definition gsm_08_58.h:322
@ RSL_IE_FULL_BCCH_INFO
Definition gsm_08_58.h:335
@ RSL_IE_CBCH_LOAD_INFO
Definition gsm_08_58.h:341
@ RSL_IE_FRAME_NUMBER
Definition gsm_08_58.h:304
@ RSL_IE_IPAC_RTP_MPLEX
Definition gsm_08_58.h:390
@ RSL_IE_ERR_MSG
Definition gsm_08_58.h:334
@ RSL_IE_SMSCB_INFO
Definition gsm_08_58.h:332
@ RSL_IE_CHAN_DESC
Definition gsm_08_58.h:344
@ RSL_IE_OSMO_REP_ACCH_CAP
Definition gsm_08_58.h:368
@ RSL_IE_PREPROC_MEAS
Definition gsm_08_58.h:330
@ RSL_IE_SIEMENS_ININ_CELL_HO_PAR
Definition gsm_08_58.h:360
@ RSL_IE_OSMO_OSMUX_CID
Definition gsm_08_58.h:371
@ RSL_IE_RTD
Definition gsm_08_58.h:354
@ RSL_IE_CMD_INDICATOR
Definition gsm_08_58.h:346
@ RSL_IE_MAIN_CHAN_REF
Definition gsm_08_58.h:349
@ RSL_IE_IMM_ASS_INFO
Definition gsm_08_58.h:331
@ RSL_IE_SIEMENS_TRACE_REF_NR
Definition gsm_08_58.h:361
@ RSL_IE_L1_INFO
Definition gsm_08_58.h:306
@ RSL_IE_MS_POWER
Definition gsm_08_58.h:309
@ RSL_IE_IPAC_LOCAL_PORT
Definition gsm_08_58.h:380
@ RSL_IE_LINK_IDENT
Definition gsm_08_58.h:298
@ RSL_IE_MR_CONTROL
Definition gsm_08_58.h:351
@ RSL_IE_ACCESS_DELAY
Definition gsm_08_58.h:313
@ RSL_IE_IPAC_RTP_JIT_BUF
Definition gsm_08_58.h:387
@ RSL_IE_SYSINFO_TYPE
Definition gsm_08_58.h:326
@ RSL_IE_MR_CONFIG
Definition gsm_08_58.h:350
@ RSL_IE_IPAC_RTP_PAYLOAD2
Definition gsm_08_58.h:389
@ RSL_IE_RESOURCE_INFO
Definition gsm_08_58.h:317
@ RSL_IE_SIEMENS_HIGHEST_RATE
Definition gsm_08_58.h:364
@ RSL_IE_NCH_DRX_INFO
Definition gsm_08_58.h:345
@ RSL_IE_IPAC_LOCAL_IP
Definition gsm_08_58.h:382
@ RSL_IE_IPAC_CONN_STAT
Definition gsm_08_58.h:383
@ RSL_IE_OSMO_TEMP_OVP_ACCH_CAP
Definition gsm_08_58.h:370
@ RSL_IE_SIEMENS_INT_TRACE_IDX
Definition gsm_08_58.h:362
@ RSL_IE_EMLPP_PRIO
Definition gsm_08_58.h:347
@ RSL_IE_ENCR_INFO
Definition gsm_08_58.h:303
@ RSL_IE_SIEMENS_L2_HDR_INFO
Definition gsm_08_58.h:363
@ RSL_IE_IPAC_RTP_MPLEX_ID
Definition gsm_08_58.h:391
@ RSL_IE_FULL_IMM_ASS_INFO
Definition gsm_08_58.h:339
@ RSL_IE_OSMO_TRAINING_SEQUENCE
Definition gsm_08_58.h:369
@ RSL_IE_CB_CMD_TYPE
Definition gsm_08_58.h:337
@ RSL_IE_UPLINK_MEAS
Definition gsm_08_58.h:321
@ RSL_IE_SIEMENS_PREF_AREA_TYPE
Definition gsm_08_58.h:359
@ RSL_IE_SIEMENS_MRPCI
Definition gsm_08_58.h:358
@ RSL_IE_UIC
Definition gsm_08_58.h:348
@ RSL_IE_IPAC_RTP_COMPR
Definition gsm_08_58.h:388
@ RSL_IE_HANDO_REF
Definition gsm_08_58.h:305
@ RSL_IE_LLP_APDU
Definition gsm_08_58.h:356
@ RSL_IE_IPAC_HO_C_PARMS
Definition gsm_08_58.h:384
@ RSL_IE_SMSCB_MSG
Definition gsm_08_58.h:338
@ RSL_IE_MS_IDENTITY
Definition gsm_08_58.h:308
@ RSL_IE_MS_POWER_PARAM
Definition gsm_08_58.h:327
@ RSL_IE_RLM_CAUSE
Definition gsm_08_58.h:318
@ RSL_IE_REQ_REFERENCE
Definition gsm_08_58.h:315
@ RSL_IE_IPAC_BSCMPL_TOUT
Definition gsm_08_58.h:376
@ RSL_IE_STARTNG_TIME
Definition gsm_08_58.h:319
@ RSL_IE_RELEASE_MODE
Definition gsm_08_58.h:316
@ RSL_IE_MSG_ID
Definition gsm_08_58.h:324
@ RSL_IE_SUP_CODEC_TYPES
Definition gsm_08_58.h:352
@ RSL_IE_PREPROC_PARAM
Definition gsm_08_58.h:329
@ RSL_IE_CHAN_MODE
Definition gsm_08_58.h:302
@ RSL_IE_IPAC_RTP_PAYLOAD
Definition gsm_08_58.h:379
@ RSL_IE_TFO_STATUS
Definition gsm_08_58.h:355
@ RSL_IE_SIEMENS_SUGGESTED_RATE
Definition gsm_08_58.h:365
@ RSL_IE_CODEC_CONFIG
Definition gsm_08_58.h:353
@ RSL_IE_PYHS_CONTEXT
Definition gsm_08_58.h:312
@ RSL_IE_IPAC_SPEECH_MODE
Definition gsm_08_58.h:381
@ RSL_IE_IPAC_CONN_ID
Definition gsm_08_58.h:385
@ RSL_IE_SMSCB_CHAN_INDICATOR
Definition gsm_08_58.h:342
@ RSL_IE_IPAC_PROXY_UDP
Definition gsm_08_58.h:375
@ RSL_IE_MEAS_RES_NR
Definition gsm_08_58.h:323
@ RSL_IE_IPAC_REMOTE_IP
Definition gsm_08_58.h:377
@ RSL_IE_CHAN_IDENT
Definition gsm_08_58.h:301
@ RSL_IE_IPAC_RTP_CSD_FMT
Definition gsm_08_58.h:386
@ RSL_IE_PAGING_LOAD
Definition gsm_08_58.h:311
@ RSL_IE_CHAN_NR
Definition gsm_08_58.h:297
@ RSL_IE_GROUP_CALL_REF
Definition gsm_08_58.h:343
@ RSL_IE_MS_TIMING_OFFSET
Definition gsm_08_58.h:333
@ RSL_IE_TIMING_ADVANCE
Definition gsm_08_58.h:320
@ RSL_IE_CHAN_NEEDED
Definition gsm_08_58.h:336
@ RSL_IE_IPAC_REMOTE_PORT
Definition gsm_08_58.h:378
@ RSL_IE_L3_INFO
Definition gsm_08_58.h:307
@ RSL_IE_ACT_TYPE
Definition gsm_08_58.h:299
@ RSL_IE_PAGING_GROUP
Definition gsm_08_58.h:310
@ RSL_IE_IPAC_SRTP_CONFIG
Definition gsm_08_58.h:374
@ RSL_IE_BS_POWER
Definition gsm_08_58.h:300
@ RSL_IE_BS_POWER_PARAM
Definition gsm_08_58.h:328
@ RSL_MT_ERICSSON_IMM_ASS_SENT
Definition gsm_08_58.h:292
@ RSL_IPAC_RTP_EFR
Definition gsm_08_58.h:708
@ RSL_IPAC_RTP_AMR
Definition gsm_08_58.h:709
@ RSL_IPAC_RTP_GSM
Definition gsm_08_58.h:707
@ RSL_IPAC_RTP_MUX
Definition gsm_08_58.h:711
@ RSL_IPAC_RTP_CSD
Definition gsm_08_58.h:710
@ IPAC_HO_RQD_CAUSE_ENQUIRY
Definition gsm_08_58.h:443
@ IPAC_HO_RQD_CAUSE_NORMAL3G
Definition gsm_08_58.h:445
@ IPAC_HO_RQD_CAUSE_RXLEV_UL_IH
Definition gsm_08_58.h:439
@ IPAC_HO_RQD_CAUSE_L_RXQUAL_DL_H
Definition gsm_08_58.h:438
@ IPAC_HO_RQD_CAUSE_EMERGENCY3G
Definition gsm_08_58.h:446
@ IPAC_HO_RQD_CAUSE_LOAD_DEMOTION
Definition gsm_08_58.h:451
@ IPAC_HO_RQD_CAUSE_QUALITY_PROMOTION
Definition gsm_08_58.h:449
@ IPAC_HO_RQD_CAUSE_L_RXLEV_UL_H
Definition gsm_08_58.h:435
@ IPAC_HO_RQD_CAUSE_L_RXQUAL_UL_H
Definition gsm_08_58.h:437
@ IPAC_HO_RQD_CAUSE_ENQUIRY_FAILED
Definition gsm_08_58.h:444
@ IPAC_HO_RQD_CAUSE_MAX
Definition gsm_08_58.h:452
@ IPAC_HO_RQD_CAUSE_L_RXLEV_DL_H
Definition gsm_08_58.h:436
@ IPAC_HO_RQD_CAUSE_POWER_BUDGET
Definition gsm_08_58.h:442
@ IPAC_HO_RQD_CAUSE_SERVICE_PREFERRED3G
Definition gsm_08_58.h:447
@ IPAC_HO_RQD_CAUSE_O_M_SHUTDOWN
Definition gsm_08_58.h:448
@ IPAC_HO_RQD_CAUSE_LOAD_PROMOTION
Definition gsm_08_58.h:450
@ IPAC_HO_RQD_CAUSE_RXLEV_DL_IH
Definition gsm_08_58.h:440
@ IPAC_HO_RQD_CAUSE_MAX_MS_RANGE
Definition gsm_08_58.h:441
@ RSL_IPAC_EIE_MASTER_KEY
Definition gsm_08_58.h:794
@ RSL_IPAC_EIE_MEAS_AVG_CFG
Definition gsm_08_58.h:779
@ RSL_IPAC_EIE_MASTER_SALT
Definition gsm_08_58.h:795
@ RSL_IPAC_EIE_NCELL_DEFAULTS
Definition gsm_08_58.h:783
@ RSL_IPAC_EIE_NUM_OF_MS
Definition gsm_08_58.h:790
@ RSL_IPAC_EIE_PC_THRESH_COMP
Definition gsm_08_58.h:785
@ RSL_IPAC_EIE_3G_HO_PARAM
Definition gsm_08_58.h:798
@ RSL_IPAC_EIE_NCELL_BA_CHG_LIST
Definition gsm_08_58.h:789
@ RSL_IPAC_EIE_FREQ_ERR
Definition gsm_08_58.h:777
@ RSL_IPAC_EIE_HO_THRESH_COMP
Definition gsm_08_58.h:786
@ RSL_IPAC_EIE_HO_CAND_EXT
Definition gsm_08_58.h:791
@ RSL_IPAC_EIE_MS_PWR_CTL
Definition gsm_08_58.h:781
@ RSL_IPAC_EIE_3G_NCELL_LIST
Definition gsm_08_58.h:799
@ RSL_IPAC_EIE_HO_CANDIDATES
Definition gsm_08_58.h:788
@ RSL_IPAC_EIE_AMR_CONV_THRESH
Definition gsm_08_58.h:801
@ RSL_IPAC_EIE_NCELL_LIST_EXT
Definition gsm_08_58.h:793
@ RSL_IPAC_EIE_NCELL_LIST
Definition gsm_08_58.h:784
@ RSL_IPAC_EIE_SDCCH_CTL_PARAM
Definition gsm_08_58.h:800
@ RSL_IPAC_EIE_NCELL_DEF_EXT
Definition gsm_08_58.h:792
@ RSL_IPAC_EIE_OSMO_PC_THRESH_COMP
Definition gsm_08_58.h:806
@ RSL_IPAC_EIE_HANDO_THRESH
Definition gsm_08_58.h:782
@ RSL_IPAC_EIE_MEAS_TRANS_RES
Definition gsm_08_58.h:797
@ RSL_IPAC_EIE_TIMING_ERR
Definition gsm_08_58.h:778
@ RSL_IPAC_EIE_RXLEV
Definition gsm_08_58.h:775
@ RSL_IPAC_EIE_OSMO_MS_PWR_CTL
Definition gsm_08_58.h:805
@ RSL_IPAC_EIE_OSMO_MEAS_AVG_CFG
Definition gsm_08_58.h:804
@ RSL_IPAC_EIE_RXQUAL
Definition gsm_08_58.h:776
@ RSL_IPAC_EIE_BS_PWR_CTL
Definition gsm_08_58.h:780
@ RSL_IPAC_EIE_HO_CAUSE
Definition gsm_08_58.h:787
@ IPAC_RXQUAL_AVE
Definition gsm_08_58.h:429
@ IPAC_RXLEV_AVE
Definition gsm_08_58.h:428
@ IPAC_MS_BTS_DIS_AVE
Definition gsm_08_58.h:430
@ RSL_IPAC_SPEECH_M_TX
Definition gsm_08_58.h:727
@ RSL_IPAC_SPEECH_M_RX
Definition gsm_08_58.h:726
@ RSL_IPAC_SPEECH_M_RXTX
Definition gsm_08_58.h:725
@ RSL_IPAC_RTP_CSD_IR_32k
Definition gsm_08_58.h:741
@ RSL_IPAC_RTP_CSD_IR_64k
Definition gsm_08_58.h:742
@ RSL_IPAC_RTP_CSD_IR_8k
Definition gsm_08_58.h:739
@ RSL_IPAC_RTP_CSD_IR_16k
Definition gsm_08_58.h:740
@ RSL_CMOD_SPD_SPEECH
Definition gsm_08_58.h:495
@ RSL_CMOD_SPD_SIGN
Definition gsm_08_58.h:497
@ RSL_CMOD_SPD_DATA
Definition gsm_08_58.h:496
@ RSL_MRPCI_PHASE_2
Definition gsm_08_58.h:763
@ RSL_MRPCI_PHASE_1
Definition gsm_08_58.h:761
@ RSL_MRPCI_PHASE_2PLUS
Definition gsm_08_58.h:764
@ RSL_MT_SIEMENS_HO_FAIL_IND
Definition gsm_08_58.h:282
@ RSL_MT_SIEMENS_STOP_TRACE_ACK
Definition gsm_08_58.h:283
@ RSL_MT_SIEMENS_FORCED_HO_REQ
Definition gsm_08_58.h:275
@ RSL_MT_SIEMENS_START_TRACE
Definition gsm_08_58.h:278
@ RSL_MT_SIEMENS_SET_SYS_INFO_10
Definition gsm_08_58.h:286
@ RSL_MT_SIEMENS_MODIF_COND_IND
Definition gsm_08_58.h:287
@ RSL_MT_SIEMENS_STOP_TRACE
Definition gsm_08_58.h:280
@ RSL_MT_SIEMENS_MRPCI
Definition gsm_08_58.h:272
@ RSL_MT_SIEMENS_TRMR
Definition gsm_08_58.h:281
@ RSL_MT_SIEMENS_START_TRACE_ACK
Definition gsm_08_58.h:279
@ RSL_MT_SIEMENS_UPLF
Definition gsm_08_58.h:284
@ RSL_MT_SIEMENS_INTERC_HO_COND_IND
Definition gsm_08_58.h:274
@ RSL_MT_SIEMENS_PREF_AREA
Definition gsm_08_58.h:277
@ RSL_MT_SIEMENS_PREF_AREA_REQ
Definition gsm_08_58.h:276
@ RSL_MT_SIEMENS_INTRAC_HO_COND_IND
Definition gsm_08_58.h:273
@ RSL_MT_SIEMENS_UPLB
Definition gsm_08_58.h:285
@ RSL_MT_MS_POWER_CONTROL
Definition gsm_08_58.h:217
@ RSL_MT_IMMEDIATE_ASSIGN_CMD
Definition gsm_08_58.h:190
@ RSL_MT_MR_CODEC_MOD_NACK
Definition gsm_08_58.h:230
@ RSL_MT_IPAC_CONNECT_MUX_ACK
Definition gsm_08_58.h:245
@ RSL_MT_IPAC_DISC_MUX
Definition gsm_08_58.h:250
@ RSL_MT_REL_IND
Definition gsm_08_58.h:176
@ RSL_MT_EST_IND
Definition gsm_08_58.h:173
@ RSL_MT_IPAC_CRCX_ACK
Definition gsm_08_58.h:257
@ RSL_MT_MODE_MODIFY_NACK
Definition gsm_08_58.h:213
@ RSL_MT_IPAC_BIND_MUX
Definition gsm_08_58.h:247
@ RSL_MT_NOT_CMD
Definition gsm_08_58.h:200
@ RSL_MT_MODE_MODIFY_REQ
Definition gsm_08_58.h:211
@ RSL_MT_IPAC_CRCX_NACK
Definition gsm_08_58.h:258
@ RSL_MT_BS_POWER_CONTROL
Definition gsm_08_58.h:218
@ RSL_MT_LOCATION_INFO
Definition gsm_08_58.h:234
@ RSL_MT_MEAS_RES
Definition gsm_08_58.h:210
@ RSL_MT_IPAC_HO_CAN_RES
Definition gsm_08_58.h:255
@ RSL_MT_EST_REQ
Definition gsm_08_58.h:171
@ RSL_MT_UNIT_DATA_IND
Definition gsm_08_58.h:178
@ RSL_MT_ENCR_CMD
Definition gsm_08_58.h:208
@ RSL_MT_IPAC_PDCH_DEACT
Definition gsm_08_58.h:241
@ RSL_MT_DATA_REQ
Definition gsm_08_58.h:168
@ RSL_MT_DATA_IND
Definition gsm_08_58.h:169
@ RSL_MT_RF_RES_IND
Definition gsm_08_58.h:194
@ RSL_MT_BCCH_INFO
Definition gsm_08_58.h:185
@ RSL_MT_IPAC_DIR_RETR_ENQ
Definition gsm_08_58.h:237
@ RSL_MT_UNIT_DATA_REQ
Definition gsm_08_58.h:177
@ RSL_MT_RTD_REP
Definition gsm_08_58.h:226
@ RSL_MT_OVERLOAD
Definition gsm_08_58.h:196
@ RSL_MT_RF_CHAN_REL_ACK
Definition gsm_08_58.h:221
@ RSL_MT_IPAC_PDCH_ACT_NACK
Definition gsm_08_58.h:240
@ RSL_MT_SUSP_REQ
Definition gsm_08_58.h:179
@ RSL_MT_IPAC_PDCH_ACT
Definition gsm_08_58.h:238
@ RSL_MT_OSMO_ETWS_CMD
Definition gsm_08_58.h:267
@ RSL_MT_MR_CODEC_MOD_ACK
Definition gsm_08_58.h:229
@ RSL_MT_IPAC_DLCX_ACK
Definition gsm_08_58.h:264
@ RSL_MT_IPAC_PDCH_ACT_ACK
Definition gsm_08_58.h:239
@ RSL_MT_CHAN_RQD
Definition gsm_08_58.h:187
@ RSL_MT_PHY_CONTEXT_REQ
Definition gsm_08_58.h:214
@ RSL_MT_RF_CHAN_REL
Definition gsm_08_58.h:216
@ RSL_MT_MR_CODEC_MOD_REQ
Definition gsm_08_58.h:228
@ RSL_MT_IPAC_MDCX_NACK
Definition gsm_08_58.h:261
@ RSL_MT_CHAN_ACTIV
Definition gsm_08_58.h:203
@ RSL_MT_IPAC_DLCX_IND
Definition gsm_08_58.h:262
@ RSL_MT_REMOTE_CODEC_CONF_REP
Definition gsm_08_58.h:225
@ RSL_MT_IPAC_DISC_MUX_ACK
Definition gsm_08_58.h:251
@ RSL_MT_REL_REQ
Definition gsm_08_58.h:174
@ RSL_MT_PRE_HANDO_NOTIF
Definition gsm_08_58.h:227
@ RSL_MT_IPAC_DLCX_NACK
Definition gsm_08_58.h:265
@ RSL_MT_SMS_BC_REQ
Definition gsm_08_58.h:191
@ RSL_MT_TFO_MOD_REQ
Definition gsm_08_58.h:233
@ RSL_MT_CHAN_ACTIV_ACK
Definition gsm_08_58.h:204
@ RSL_MT_CHAN_ACTIV_NACK
Definition gsm_08_58.h:205
@ RSL_MT_IPAC_MDCX
Definition gsm_08_58.h:259
@ RSL_MT_RES_REQ
Definition gsm_08_58.h:181
@ RSL_MT_CONN_FAIL
Definition gsm_08_58.h:206
@ RSL_MT_RECON_REQ
Definition gsm_08_58.h:182
@ RSL_MT_ERROR_REPORT
Definition gsm_08_58.h:197
@ RSL_MT_PHY_CONTEXT_CONF
Definition gsm_08_58.h:215
@ RSL_MT_IPAC_DISC_MUX_NACK
Definition gsm_08_58.h:252
@ RSL_MT_SMS_BC_CMD
Definition gsm_08_58.h:198
@ RSL_MT_CCCH_LOAD_IND
Definition gsm_08_58.h:186
@ RSL_MT_IPAC_CONNECT_MUX
Definition gsm_08_58.h:244
@ RSL_MT_HANDO_DET
Definition gsm_08_58.h:209
@ RSL_MT_IPAC_MEAS_PREPROC_DFT
Definition gsm_08_58.h:253
@ RSL_MT_REL_CONF
Definition gsm_08_58.h:175
@ RSL_MT_IPAC_CRCX
Definition gsm_08_58.h:256
@ RSL_MT_DEACTIVATE_SACCH
Definition gsm_08_58.h:207
@ RSL_MT_MODE_MODIFY_ACK
Definition gsm_08_58.h:212
@ RSL_MT_IPAC_BIND_MUX_NACK
Definition gsm_08_58.h:249
@ RSL_MT_IPAC_MDCX_ACK
Definition gsm_08_58.h:260
@ RSL_MT_SACCH_FILL
Definition gsm_08_58.h:195
@ RSL_MT_IPAC_CONNECT_MUX_NACK
Definition gsm_08_58.h:246
@ RSL_MT_SACCH_INFO_MODIFY
Definition gsm_08_58.h:222
@ RSL_MT_CBCH_LOAD_IND
Definition gsm_08_58.h:199
@ RSL_MT_IPAC_HO_CAN_ENQ
Definition gsm_08_58.h:254
@ RSL_MT_ERROR_IND
Definition gsm_08_58.h:170
@ RSL_MT_MR_CODEC_MOD_PER
Definition gsm_08_58.h:231
@ RSL_MT_IPAC_BIND_MUX_ACK
Definition gsm_08_58.h:248
@ RSL_MT_IPAC_PDCH_DEACT_ACK
Definition gsm_08_58.h:242
@ RSL_MT_SUSP_CONF
Definition gsm_08_58.h:180
@ RSL_MT_DELETE_IND
Definition gsm_08_58.h:188
@ RSL_MT_CHAN_CONF
Definition gsm_08_58.h:192
@ RSL_MT_PREPROC_MEAS_RES
Definition gsm_08_58.h:220
@ RSL_MT_EST_CONF
Definition gsm_08_58.h:172
@ RSL_MT_PAGING_CMD
Definition gsm_08_58.h:189
@ RSL_MT_TFO_REP
Definition gsm_08_58.h:232
@ RSL_MT_IPAC_PDCH_DEACT_NACK
Definition gsm_08_58.h:243
@ RSL_MT_LISTENER_DET
Definition gsm_08_58.h:224
@ RSL_MT_PREPROC_CONFIG
Definition gsm_08_58.h:219
@ RSL_MT_TALKER_DET
Definition gsm_08_58.h:223
@ RSL_MT_IPAC_DLCX
Definition gsm_08_58.h:263
@ RSL_IPAC_SPEECH_GSM_FR
Definition gsm_08_58.h:716
@ RSL_IPAC_SPEECH_GSM_HR
Definition gsm_08_58.h:719
@ RSL_IPAC_SPEECH_GSM_AMR_HR
Definition gsm_08_58.h:720
@ RSL_IPAC_SPEECH_GSM_AMR_FR
Definition gsm_08_58.h:718
@ RSL_IPAC_SPEECH_AS_RTP
Definition gsm_08_58.h:721
@ RSL_IPAC_SPEECH_GSM_EFR
Definition gsm_08_58.h:717
uint8_t len
Definition gsm_04_11.h:0
uint8_t params[0]
Definition gsm_08_58.h:6
union abis_rsl_link_id link_id_fields
RSL link identifier (value)
Definition gsm_08_58.h:9
union abis_rsl_chan_nr chan_nr_fields
RSL channel number (value)
Definition gsm_08_58.h:4
Definition gsm_08_58.h:109
uint8_t chan_nr
Definition gsm_08_58.h:113
struct abis_rsl_common_hdr c
Definition gsm_08_58.h:110
uint8_t data[0]
message payload data
Definition gsm_08_58.h:116
uint8_t ie_chan
RSL_IE_CHAN_NR (tag)
Definition gsm_08_58.h:111
RSL common header.
Definition gsm_08_58.h:75
uint8_t data[0]
actual payload data
Definition gsm_08_58.h:78
uint8_t msg_discr
message discriminator (ABIS_RSL_MDISC_*)
Definition gsm_08_58.h:76
uint8_t msg_type
message type (abis_rsl_msgtype)
Definition gsm_08_58.h:77
Definition gsm_08_58.h:98
uint8_t ie_chan
RSL_IE_CHAN_NR (tag)
Definition gsm_08_58.h:100
uint8_t data[0]
message payload data
Definition gsm_08_58.h:105
uint8_t chan_nr
Definition gsm_08_58.h:102
struct abis_rsl_common_hdr c
Definition gsm_08_58.h:99
Definition gsm_08_58.h:120
Definition gsm_08_58.h:135
Definition gsm_08_58.h:82
uint8_t ie_link_id
RSL_IE_LINK_IDENT (tag)
Definition gsm_08_58.h:89
struct abis_rsl_common_hdr c
Definition gsm_08_58.h:83
uint8_t data[0]
message payload data
Definition gsm_08_58.h:94
uint8_t chan_nr
Definition gsm_08_58.h:86
uint8_t ie_chan
RSL_IE_CHAN_NR (tag)
Definition gsm_08_58.h:84
uint8_t link_id
Definition gsm_08_58.h:91
Definition gsm_08_58.h:811
Definition gsm_08_58.h:1039
struct ipac_preproc_ho_ctl_param ho_ctl_param
Definition gsm_08_58.h:1047
struct ipac_preproc_ave_cfg ms_ave_cfg[3]
Definition gsm_08_58.h:1042
uint8_t meas_rep_mode
Definition gsm_08_58.h:1040
struct ipac_preproc_ncell_dflts ncell_dflts
Definition gsm_08_58.h:1046
struct ipac_preproc_ho_comp ho_comp
Definition gsm_08_58.h:1045
struct ipac_preproc_ho_thresh ho_thresh
Definition gsm_08_58.h:1044
uint32_t meas_mode_flags
Definition gsm_08_58.h:1041
struct ipac_preproc_ave_cfg ave_cfg
Definition gsm_08_58.h:1043
Definition gsm_08_58.h:997
HO Threshold Comparators.
Definition gsm_08_58.h:960
Definition gsm_08_58.h:1028
Handover Thresholds.
Definition gsm_08_58.h:879
Definition gsm_08_58.h:1012
Osmocom extension for: PC Threshold Comparators (RSL_IPAC_EIE_OSMO_PC_THRESH_COMP)
Definition gsm_08_58.h:935
PC Threshold Comparators (RSL_IPAC_EIE_PC_THRESH_COMP)
Definition gsm_08_58.h:907
MS/BS Power Control Thresholds (RSL_IPAC_EIE_MS_PWR_CTL)
Definition gsm_08_58.h:853
Definition gsm_08_58.h:828
Definition gsm_08_58.h:842
struct osmo_preproc_ave_cfg_field ci_hr
Definition gsm_08_58.h:844
struct osmo_preproc_ave_cfg_field ci_amr_hr
Definition gsm_08_58.h:846
struct osmo_preproc_ave_cfg_field ci_gprs
Definition gsm_08_58.h:848
struct osmo_preproc_ave_cfg_field ci_fr
Definition gsm_08_58.h:843
struct osmo_preproc_ave_cfg_field ci_sdcch
Definition gsm_08_58.h:847
struct osmo_preproc_ave_cfg_field ci_amr_fr
Definition gsm_08_58.h:845
uint8_t params[0]
Definition gsm_08_58.h:849
Definition gsm_08_58.h:949
struct ipac_preproc_pc_comp_field ci_sdcch
Definition gsm_08_58.h:955
struct ipac_preproc_pc_comp_field ci_hr
Definition gsm_08_58.h:952
struct ipac_preproc_pc_comp_field ci_gprs
Definition gsm_08_58.h:956
struct ipac_preproc_pc_comp_field ci_fr
Definition gsm_08_58.h:951
struct ipac_preproc_pc_comp_field ci_amr_hr
Definition gsm_08_58.h:954
struct ipac_preproc_pc_comp_field ci_amr_fr
Definition gsm_08_58.h:953
Osmocom extension for: MS/BS Power Control Thresholds (RSL_IPAC_EIE_OSMO_MS_PWR_CTL)
Definition gsm_08_58.h:868
int8_t l_ci_sdcch
Definition gsm_08_58.h:874
int8_t l_ci_fr
Definition gsm_08_58.h:870
int8_t l_ci_gprs
Definition gsm_08_58.h:875
int8_t u_ci_sdcch
Definition gsm_08_58.h:874
int8_t u_ci_hr
Definition gsm_08_58.h:871
int8_t l_ci_amr_hr
Definition gsm_08_58.h:873
int8_t l_ci_amr_fr
Definition gsm_08_58.h:872
int8_t l_ci_hr
Definition gsm_08_58.h:871
int8_t u_ci_amr_fr
Definition gsm_08_58.h:872
int8_t u_ci_fr
Definition gsm_08_58.h:870
int8_t u_ci_gprs
Definition gsm_08_58.h:875
int8_t u_ci_amr_hr
Definition gsm_08_58.h:873
RSL Cell Broadcast Command (Chapter 9.3.45)
Definition gsm_08_58.h:662
RSL Channel Identification IE (Chapter 9.3.5)
Definition gsm_08_58.h:546
uint8_t chan_nr
Definition gsm_08_58.h:550
uint8_t oct4
Definition gsm_08_58.h:552
uint8_t iei
Definition gsm_08_58.h:549
struct rsl_ie_chan_ident::@96 chan_desc
uint8_t oct3
Definition gsm_08_58.h:551
RSL Channel Mode IF (Chapter 9.3.6)
Definition gsm_08_58.h:486
uint8_t chan_rt
Definition gsm_08_58.h:489
uint8_t dtx_dtu
Definition gsm_08_58.h:487
uint8_t spd_ind
Definition gsm_08_58.h:488
uint8_t chan_rate
Definition gsm_08_58.h:490
Definition gsm_08_58.h:1050
Definition gsm_08_58.h:746
uint8_t power_class
Definition gsm_08_58.h:747
uint8_t gsm_phase
Definition gsm_08_58.h:750
uint8_t vgcs_capable
Definition gsm_08_58.h:748
uint8_t vbs_capable
Definition gsm_08_58.h:749
Definition gsm_08_58.h:31
uint8_t chan_nr
Definition gsm_08_58.h:39