X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=src%2Fhost%2Flayer23%2Finclude%2Fosmocom%2Fbb%2Fmobile%2Fsysinfo.h;h=07daafa7fef06895d1460555938138f16f6ecf75;hb=1ac1852ffc806708f86a50073b9661a9ed19c336;hp=ae7678e629b5809878131f002ae9b5808f0eefec;hpb=8f553d57cb44c8797d456a27adfb6637aa1bd1c6;p=osmocom-bb.git diff --git a/src/host/layer23/include/osmocom/bb/mobile/sysinfo.h b/src/host/layer23/include/osmocom/bb/mobile/sysinfo.h index ae7678e..07daafa 100644 --- a/src/host/layer23/include/osmocom/bb/mobile/sysinfo.h +++ b/src/host/layer23/include/osmocom/bb/mobile/sysinfo.h @@ -40,6 +40,7 @@ struct gsm48_sysinfo { uint8_t hopp_len; /* serving cell */ + uint8_t bsic; uint16_t cell_id; uint16_t mcc, mnc, lac; /* LAI */ uint8_t max_retrans; /* decoded */ @@ -97,12 +98,15 @@ struct gsm48_sysinfo { uint8_t nb_ext_ind_si2bis; uint8_t nb_ba_ind_si2bis; uint8_t nb_multi_rep_si2ter; /* see GSM 05.08 8.4.3 */ + uint8_t nb_ba_ind_si2ter; uint8_t nb_ext_ind_si5; uint8_t nb_ba_ind_si5; uint8_t nb_ext_ind_si5bis; uint8_t nb_ba_ind_si5bis; uint8_t nb_multi_rep_si5ter; - uint8_t nb_ncc_permitted; + uint8_t nb_ba_ind_si5ter; + uint8_t nb_ncc_permitted_si2; + uint8_t nb_ncc_permitted_si6; uint8_t nb_max_retrans; /* decoded */ uint8_t nb_tx_integer; /* decoded */ uint8_t nb_reest_denied; /* 1 = denied */ @@ -112,5 +116,34 @@ struct gsm48_sysinfo { int gsm48_sysinfo_dump(struct gsm48_sysinfo *s, uint16_t arfcn, void (*print)(void *, const char *, ...), void *priv); +int gsm48_decode_lai(struct gsm48_loc_area_id *lai, uint16_t *mcc, + uint16_t *mnc, uint16_t *lac); +int gsm48_decode_chan_h0(struct gsm48_chan_desc *cd, uint8_t *tsc, + uint16_t *arfcn); +int gsm48_decode_chan_h1(struct gsm48_chan_desc *cd, uint8_t *tsc, + uint8_t *maio, uint8_t *hsn); +int gsm48_decode_sysinfo1(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_1 *si, int len); +int gsm48_decode_sysinfo2(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_2 *si, int len); +int gsm48_decode_sysinfo2bis(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_2bis *si, int len); +int gsm48_decode_sysinfo2ter(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_2ter *si, int len); +int gsm48_decode_sysinfo3(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_3 *si, int len); +int gsm48_decode_sysinfo4(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_4 *si, int len); +int gsm48_decode_sysinfo5(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_5 *si, int len); +int gsm48_decode_sysinfo5bis(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_5bis *si, int len); +int gsm48_decode_sysinfo5ter(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_5ter *si, int len); +int gsm48_decode_sysinfo6(struct gsm48_sysinfo *s, + struct gsm48_system_information_type_6 *si, int len); +int gsm48_decode_mobile_alloc(struct gsm_sysinfo_freq *freq, + uint8_t *ma, uint8_t len, uint16_t *hopping, uint8_t *hopp_len, + int si4); #endif /* _SYSINFO_H */