aboutsummaryrefslogtreecommitdiffstats
path: root/src/libbsc/gsm_data.c
diff options
context:
space:
mode:
authorPhilipp Maier <pmaier@sysmocom.de>2018-02-21 13:24:36 +0100
committerHarald Welte <laforge@gnumonks.org>2018-03-12 10:18:05 +0000
commit8c498fc26b1ce4cf5aa864d6e7d712e946549f2c (patch)
tree2bcf5169374a5df6663cef55fb98aeaa614d4951 /src/libbsc/gsm_data.c
parentd6012ffc196d880bf9b5fb128b6ae005012ef7f1 (diff)
gsm_data: use feature list from libosmocore
In order to avoid code duplication the feature list (bit masks) and the desciptive value strings as well as the function to set and get the feature bits have been moved to libosmocore. - use feature list functionality provided by libosmocore Depends: libosmocore Change-Id Id0c35aef11aa49aa40abe7deef1f9dbd12210776 Change-Id: I3e80517539cc5d0e5d8189d434a5e3cc0fdea1a0
Diffstat (limited to 'src/libbsc/gsm_data.c')
-rw-r--r--src/libbsc/gsm_data.c29
1 files changed, 2 insertions, 27 deletions
diff --git a/src/libbsc/gsm_data.c b/src/libbsc/gsm_data.c
index 686e9c54e..03c2fce98 100644
--- a/src/libbsc/gsm_data.c
+++ b/src/libbsc/gsm_data.c
@@ -146,29 +146,17 @@ const char *bts_gprs_mode_name(enum bts_gprs_mode mode)
int bts_gprs_mode_is_compat(struct gsm_bts *bts, enum bts_gprs_mode mode)
{
if (mode != BTS_GPRS_NONE &&
- !gsm_btsmodel_has_feature(bts->model, BTS_FEAT_GPRS)) {
+ !osmo_bts_has_feature(&bts->model->features, BTS_FEAT_GPRS)) {
return 0;
}
if (mode == BTS_GPRS_EGPRS &&
- !gsm_btsmodel_has_feature(bts->model, BTS_FEAT_EGPRS)) {
+ !osmo_bts_has_feature(&bts->model->features, BTS_FEAT_EGPRS)) {
return 0;
}
return 1;
}
-int gsm_btsmodel_set_feature(struct gsm_bts_model *model, enum gsm_bts_features feat)
-{
- OSMO_ASSERT(_NUM_BTS_FEAT < MAX_BTS_FEATURES);
- return bitvec_set_bit_pos(&model->features, feat, 1);
-}
-
-bool gsm_btsmodel_has_feature(struct gsm_bts_model *model, enum gsm_bts_features feat)
-{
- OSMO_ASSERT(_NUM_BTS_FEAT < MAX_BTS_FEATURES);
- return bitvec_get_bit_pos(&model->features, feat);
-}
-
int gsm_set_bts_type(struct gsm_bts *bts, enum gsm_bts_type type)
{
struct gsm_bts_model *model;
@@ -505,19 +493,6 @@ const char *btstype2str(enum gsm_bts_type type)
return get_value_string(bts_type_names, type);
}
-const struct value_string gsm_bts_features_descs[] = {
- { BTS_FEAT_HSCSD, "HSCSD" },
- { BTS_FEAT_GPRS, "GPRS" },
- { BTS_FEAT_EGPRS, "EGPRS" },
- { BTS_FEAT_ECSD, "ECSD" },
- { BTS_FEAT_HOPPING, "Frequency Hopping" },
- { BTS_FEAT_MULTI_TSC, "Multi-TSC" },
- { BTS_FEAT_OML_ALERTS, "OML Alerts" },
- { BTS_FEAT_AGCH_PCH_PROP, "AGCH/PCH proportional allocation" },
- { BTS_FEAT_CBCH, "CBCH" },
- { 0, NULL }
-};
-
const struct value_string gsm_chreq_descs[] = {
{ GSM_CHREQ_REASON_EMERG, "emergency call" },
{ GSM_CHREQ_REASON_PAG, "answer to paging" },