libosmogsm  UNKNOWN
Osmocom GSM library
l1sap.h
1 #pragma once
2 
3 #include <osmocom/core/prim.h>
4 
6 enum osmo_ph_prim {
7  PRIM_PH_DATA,
8  PRIM_PH_RACH,
9  PRIM_PH_CONN,
10  PRIM_PH_EMPTY_FRAME,
11  PRIM_PH_RTS,
12  PRIM_MPH_INFO,
13  PRIM_TCH,
14  PRIM_TCH_RTS,
15 };
16 
17 extern const struct value_string osmo_ph_prim_names[];
18 
20 enum osmo_mph_info_type {
21  PRIM_INFO_TIME,
22  PRIM_INFO_MEAS,
23  PRIM_INFO_ACTIVATE,
24  PRIM_INFO_DEACTIVATE,
25  PRIM_INFO_MODIFY,
26  PRIM_INFO_ACT_CIPH,
27  PRIM_INFO_DEACT_CIPH,
28 };
29 
31 enum osmo_ph_pres_info_type {
32  PRES_INFO_INVALID = 0,
33  PRES_INFO_HEADER = 1,
34  PRES_INFO_FIRST = 3,
35  PRES_INFO_SECOND = 5,
36  PRES_INFO_BOTH = 7,
37  PRES_INFO_UNKNOWN
38 };
39 
42  uint8_t ra;
43  uint8_t ta;
44  uint8_t tx_power;
46  uint16_t offset;
47 };
48 
50 enum ph_burst_type {
51  GSM_L1_BURST_TYPE_NONE = 0,
52  GSM_L1_BURST_TYPE_ACCESS_0,
53  GSM_L1_BURST_TYPE_ACCESS_1,
54  GSM_L1_BURST_TYPE_ACCESS_2
55 };
56 
59  uint8_t chan_nr;
60  uint16_t ra;
61  uint8_t acc_delay;
62  uint32_t fn;
63  uint8_t is_11bit;
64  enum ph_burst_type burst_type;
65 };
66 
68 struct ph_data_param {
69  uint8_t link_id;
70  uint8_t chan_nr;
71  uint32_t fn;
72  int8_t rssi;
73  uint16_t ber10k;
74  int16_t ta_offs_qbits; /* !< \brief Burst TA Offset in quarter bits */
75  int16_t lqual_cb; /* !< \brief Link quality in centiBel */
76  enum osmo_ph_pres_info_type pdch_presence_info;
77 };
78 
80 struct ph_tch_param {
81  uint8_t chan_nr;
82  uint32_t fn;
83  int8_t rssi;
84  uint8_t marker;
85 };
86 
89  uint32_t fn;
90 };
91 
94  uint32_t fn;
95 };
96 
99  uint8_t chan_nr;
100  uint16_t ber10k;
101  int16_t ta_offs_qbits;
102  int16_t c_i_cb;
103  uint8_t is_sub:1;
104  uint8_t inv_rssi;
105 };
106 
109  uint8_t chan_nr;
110  uint8_t sacch_only;
111 };
112 
115  uint8_t chan_nr;
116  uint8_t cause;
117 };
118 
121  uint8_t chan_nr;
122  uint8_t downlink;
123  uint8_t uplink;
124 };
125 
128  enum osmo_mph_info_type type;
129  union {
130  struct info_time_ind_param time_ind;
131  struct info_meas_ind_param meas_ind;
132  struct info_act_req_param act_req;
133  struct info_act_cnf_param act_cnf;
134  struct info_ciph_req_param ciph_req;
135  } u;
136 };
137 
140  struct osmo_prim_hdr oph;
141  union {
142  struct ph_data_param data;
143  struct ph_tch_param tch;
144  struct ph_rach_req_param rach_req;
145  struct ph_rach_ind_param rach_ind;
146  struct ph_conn_ind_param conn_ind;
147  struct mph_info_param info;
148  } u;
149 };
int8_t rssi
RSSI of receivedindication.
Definition: l1sap.h:72
uint8_t uplink
Apply to uplink.
Definition: l1sap.h:123
uint32_t fn
GSM Frame Number.
Definition: l1sap.h:89
uint8_t link_id
Link Identifier (Like RSL)
Definition: l1sap.h:69
int16_t ta_offs_qbits
timing advance offset (in qbits)
Definition: l1sap.h:101
int16_t c_i_cb
C/I ratio in 0.1 dB.
Definition: l1sap.h:102
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:115
for PH-[UNIT]DATA.{req,ind} | PH-RTS.ind
Definition: l1sap.h:68
uint8_t sacch_only
Definition: l1sap.h:110
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:121
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:70
for PH-CONN.ind
Definition: l1sap.h:88
uint8_t ta
Timing Advance.
Definition: l1sap.h:43
for {ACTIVATE,DEACTIVATE} MPH-INFO.cnf
Definition: l1sap.h:114
uint8_t downlink
Apply to downlink.
Definition: l1sap.h:122
uint8_t inv_rssi
RSSI in dBm * -1.
Definition: l1sap.h:104
uint8_t is_11bit
no.of bits in RACH
Definition: l1sap.h:63
for MEAS MPH-INFO.ind
Definition: l1sap.h:98
for {ACTIVATE,DEACTIVATE,MODIFY} MPH-INFO.req
Definition: l1sap.h:108
uint16_t offset
Timing Offset.
Definition: l1sap.h:46
for MPH-INFO.ind
Definition: l1sap.h:127
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:81
uint8_t cause
RSL cause in case of nack.
Definition: l1sap.h:116
uint16_t ber10k
BER in units of 0.01%.
Definition: l1sap.h:73
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:99
uint8_t data[0]
actual payload data
Definition: gsm_08_58.h:443
for PH-RANDOM_ACCESS.req
Definition: l1sap.h:41
uint32_t fn
GSM Frame Number.
Definition: l1sap.h:82
int8_t rssi
RSSI of received indication.
Definition: l1sap.h:83
for TIME MPH-INFO.ind
Definition: l1sap.h:93
uint32_t fn
GSM Frame Number.
Definition: l1sap.h:94
uint8_t acc_delay
Delay in bit periods.
Definition: l1sap.h:61
uint32_t fn
GSM Frame Number at time of RA.
Definition: l1sap.h:62
for TCH.{req,ind} | TCH-RTS.ind
Definition: l1sap.h:80
uint16_t ra
Random Access.
Definition: l1sap.h:60
uint8_t marker
RTP Marker bit (speech onset indicator)
Definition: l1sap.h:84
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:59
uint16_t ber10k
BER in units of 0.01%.
Definition: l1sap.h:100
uint32_t fn
GSM Frame Number.
Definition: l1sap.h:71
uint8_t is_sub
flags
Definition: l1sap.h:103
for {ACTIVATE,DEACTIVATE} MPH-INFO.{req,cnf}
Definition: l1sap.h:120
uint8_t chan_nr
Channel Number (Like RSL)
Definition: l1sap.h:109
uint8_t is_combined_ccch
Are we using a combined CCCH?
Definition: l1sap.h:45
primitive header for PH-SAP primitives
Definition: l1sap.h:139
uint8_t ra
Random Access.
Definition: l1sap.h:42
uint8_t tx_power
Transmit Power.
Definition: l1sap.h:44
for PH-RANDOM_ACCESS.ind
Definition: l1sap.h:58