summaryrefslogtreecommitdiffstats
path: root/src/host/layer23/include/osmocom/bb/mobile
diff options
context:
space:
mode:
authorAndreas.Eversberg <jolly@eversberg.eu>2010-10-03 10:51:31 +0000
committerAndreas.Eversberg <jolly@eversberg.eu>2010-10-03 10:51:31 +0000
commitf0c807a6828e60236de21e39748bd4eb6034c3f7 (patch)
tree720b3729c0142e1ac644b8a2effdb0cdc55afee5 /src/host/layer23/include/osmocom/bb/mobile
parent813c098ebd6bf1187e64764f8ed4c2e2980909ba (diff)
[layer23] Rework of "support"-features, features can be disabled now
Supported features of hardware (support.c) can be disabled by config. This way the full featured mobile can be downgraded to indicate less features to the network, like disabling speech support or crypto support.
Diffstat (limited to 'src/host/layer23/include/osmocom/bb/mobile')
-rw-r--r--src/host/layer23/include/osmocom/bb/mobile/settings.h24
-rw-r--r--src/host/layer23/include/osmocom/bb/mobile/support.h12
-rw-r--r--src/host/layer23/include/osmocom/bb/mobile/vty.h1
3 files changed, 28 insertions, 9 deletions
diff --git a/src/host/layer23/include/osmocom/bb/mobile/settings.h b/src/host/layer23/include/osmocom/bb/mobile/settings.h
index 131e04f7..4c66f348 100644
--- a/src/host/layer23/include/osmocom/bb/mobile/settings.h
+++ b/src/host/layer23/include/osmocom/bb/mobile/settings.h
@@ -15,7 +15,6 @@ struct gsm_settings {
/* network search */
int plmn_mode; /* PLMN_MODE_* */
- int8_t min_rxlev_db; /* min DB to access */
/* SIM */
int sim_type; /* selects card on power on */
@@ -42,6 +41,29 @@ struct gsm_settings {
uint8_t stick;
uint16_t stick_arfcn;
uint8_t no_lupd;
+
+ /* supported by configuration */
+ uint8_t sms_ptp;
+ uint8_t a5_1;
+ uint8_t a5_2;
+ uint8_t a5_3;
+ uint8_t a5_4;
+ uint8_t a5_5;
+ uint8_t a5_6;
+ uint8_t a5_7;
+ uint8_t p_gsm;
+ uint8_t e_gsm;
+ uint8_t r_gsm;
+ uint8_t dcs;
+ uint8_t class_900;
+ uint8_t class_dcs;
+ uint8_t full_v1;
+ uint8_t full_v2;
+ uint8_t full_v3;
+ uint8_t half_v1;
+ uint8_t half_v3;
+ uint8_t ch_cap; /* channel capability */
+ int8_t min_rxlev_db; /* min DB to access */
};
int gsm_settings_init(struct osmocom_ms *ms);
diff --git a/src/host/layer23/include/osmocom/bb/mobile/support.h b/src/host/layer23/include/osmocom/bb/mobile/support.h
index e10888f3..b609b7da 100644
--- a/src/host/layer23/include/osmocom/bb/mobile/support.h
+++ b/src/host/layer23/include/osmocom/bb/mobile/support.h
@@ -17,9 +17,6 @@
struct gsm_support {
struct osmocom_ms *ms;
- /* rf power capability */
- uint8_t pwr_lev_900; /* and < 900 */
- uint8_t pwr_lev_1800; /* DCS and PCS */
/* controlled early classmark sending */
uint8_t es_ind;
/* revision level */
@@ -52,10 +49,9 @@ struct gsm_support {
uint8_t p_gsm;
uint8_t e_gsm;
uint8_t r_gsm;
- uint8_t r_capa;
- uint8_t low_capa;
- uint8_t dcs_1800;
- uint8_t dcs_capa;
+ uint8_t dcs;
+ uint8_t class_900;
+ uint8_t class_dcs;
uint8_t freq_map[128];
/* multi slot support */
uint8_t ms_sup;
@@ -98,7 +94,7 @@ struct gsm_support_scan_max {
extern struct gsm_support_scan_max gsm_sup_smax[];
void gsm_support_init(struct osmocom_ms *ms);
-void gsm_support_dump(struct gsm_support *sup,
+void gsm_support_dump(struct osmocom_ms *ms,
void (*print)(void *, const char *, ...), void *priv);
#endif /* _SUPPORT_H */
diff --git a/src/host/layer23/include/osmocom/bb/mobile/vty.h b/src/host/layer23/include/osmocom/bb/mobile/vty.h
index 70faef5b..1f1341bc 100644
--- a/src/host/layer23/include/osmocom/bb/mobile/vty.h
+++ b/src/host/layer23/include/osmocom/bb/mobile/vty.h
@@ -9,6 +9,7 @@
enum ms_vty_node {
MS_NODE = _LAST_OSMOVTY_NODE + 1,
TESTSIM_NODE,
+ SUPPORT_NODE,
};
enum node_type ms_vty_go_parent(struct vty *vty);