aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/osmo-bts/bts.h3
-rw-r--r--include/osmo-bts/gsm_data.h8
2 files changed, 11 insertions, 0 deletions
diff --git a/include/osmo-bts/bts.h b/include/osmo-bts/bts.h
index 9e16e050..2f63e37f 100644
--- a/include/osmo-bts/bts.h
+++ b/include/osmo-bts/bts.h
@@ -45,5 +45,8 @@ struct gsm_time *get_time(struct gsm_bts *bts);
int bts_main(int argc, char **argv);
+int bts_supports_cm(struct gsm_bts_role_bts *bts,
+ enum gsm_phys_chan_config pchan, enum gsm48_chan_mode cm);
+
#endif /* _BTS_H */
diff --git a/include/osmo-bts/gsm_data.h b/include/osmo-bts/gsm_data.h
index dcffcf65..853b4454 100644
--- a/include/osmo-bts/gsm_data.h
+++ b/include/osmo-bts/gsm_data.h
@@ -33,6 +33,11 @@ struct gsm_network {
struct pcu_sock_state *pcu_state;
};
+struct bts_cm {
+ enum gsm_phys_chan_config pchan;
+ enum gsm48_chan_mode cm;
+};
+
/* data structure for BTS related data specific to the BTS role */
struct gsm_bts_role_bts {
struct {
@@ -89,6 +94,7 @@ struct gsm_bts_role_bts {
bool rtp_jitter_adaptive;
struct {
uint8_t ciphers; /* flags A5/1==0x1, A5/2==0x2, A5/3==0x4 */
+ const struct bts_cm *cm; /* Table with supp. ch rate/mode combinations */
} support;
struct {
uint8_t tc4_ctr;
@@ -146,4 +152,6 @@ int bts_supports_cipher(struct gsm_bts_role_bts *bts, int rsl_cipher);
bool ts_is_pdch(const struct gsm_bts_trx_ts *ts);
+int bts_model_check_cm_mode(enum gsm_phys_chan_config pchan, enum gsm48_chan_mode cm);
+
#endif /* _GSM_DATA_H */