libosmogsm 1.11.0.26-c59d.202505152026
Osmocom GSM library
|
GSM 04.08 System Information (SI) encoding and decoding. More...
#include <errno.h>
#include <string.h>
#include <stdio.h>
#include <osmocom/core/bitvec.h>
#include <osmocom/core/utils.h>
#include <osmocom/gsm/sysinfo.h>
#include <osmocom/gsm/protocol/gsm_04_08.h>
#include <osmocom/gsm/protocol/gsm_08_58.h>
Variables | |
static const uint8_t | sitype2rsl [_MAX_SYSINFO_TYPE] |
static const uint8_t | rsl2sitype [256] |
const struct value_string | osmo_sitype_strs [_MAX_SYSINFO_TYPE] |
GSM 04.08 System Information (SI) encoding and decoding.
3GPP TS 04.08 version 7.21.0 Release 1998 / ETSI TS 100 940 V7.21.0
int osmo_earfcn_add | ( | struct osmo_earfcn_si2q * | e, |
uint16_t | arfcn, | ||
uint8_t | meas_bw | ||
) |
Add pair of arfcn and measurement bandwith value to earfcn struct.
[in,out] | e | earfcn struct |
[in] | arfcn | EARFCN value, 16 bits |
[in] | meas_bw | measurement bandwith value |
References arfcn, len, and OSMO_EARFCN_INVALID.
size_t osmo_earfcn_bit_size | ( | const struct osmo_earfcn_si2q * | e | ) |
Return number of bits necessary to represent earfcn struct as Repeated E-UTRAN Neighbour Cells IE from 3GPP TS 44.018 Table 10.5.2.33b.1.
[in,out] | e | earfcn struct |
References len, and osmo_earfcn_bit_size_ext().
size_t osmo_earfcn_bit_size_ext | ( | const struct osmo_earfcn_si2q * | e, |
size_t | offset | ||
) |
Return number of bits necessary to represent earfcn struct as Repeated E-UTRAN Neighbour Cells IE from 3GPP TS 44.018 Table 10.5.2.33b.1.
[in,out] | e | earfcn struct |
[in] | offset | into earfcn struct: how many EARFCNs to skip while estimating size |
References len, OSMO_EARFCN_INVALID, and OSMO_EARFCN_MEAS_INVALID.
Referenced by osmo_earfcn_bit_size().
int osmo_earfcn_del | ( | struct osmo_earfcn_si2q * | e, |
uint16_t | arfcn | ||
) |
Delete arfcn (and corresponding measurement bandwith) from earfcn struct.
[in,out] | e | earfcn struct |
[in] | arfcn | EARFCN value, 16 bits |
References arfcn, len, OSMO_EARFCN_INVALID, and OSMO_EARFCN_MEAS_INVALID.
void osmo_earfcn_init | ( | struct osmo_earfcn_si2q * | e | ) |
Initialize earfcn struct.
[in,out] | e | earfcn struct |
References len, OSMO_EARFCN_INVALID, and OSMO_EARFCN_MEAS_INVALID.
enum osmo_sysinfo_type osmo_rsl2sitype | ( | uint8_t | rsl_si | ) |
References len, and rsl2sitype.
uint8_t osmo_sitype2rsl | ( | enum osmo_sysinfo_type | si_type | ) |
References len, and sitype2rsl.
osmo_static_assert | ( | sizeof(struct gsm48_rach_control) | = =3 , |
_si_rach_control | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_1) | = =22 , |
_si1_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_10) | = =1 , |
_si10_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_13) | = =3 , |
_si13_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_2) | = =23 , |
_si2_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_3) | = =19 , |
_si3_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_4) | = =13 , |
_si4_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_5) | = =18 , |
_si5_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_6) | = =11 , |
_si6_size | |||
) |
References osmo_static_assert().
osmo_static_assert | ( | sizeof(struct gsm48_system_information_type_header) | = =3 , |
_si_header_size | |||
) |
References osmo_static_assert().
const struct value_string osmo_sitype_strs[_MAX_SYSINFO_TYPE] |
Referenced by osmo_rsl2sitype().
|
static |
Referenced by osmo_sitype2rsl().