aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc/gsm_data.h
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2011-02-15 11:43:27 +0100
committerHarald Welte <laforge@gnumonks.org>2011-02-15 11:43:27 +0100
commit64c07d213c7bf09813a16a7aad8bacacfdc3011a (patch)
treebbe9ca631fd33046bb336391582ce9c1c3a589c4 /openbsc/include/openbsc/gsm_data.h
parentb01bf33ad4a9ab21b6f0d6e88e1e28c38c23cdf7 (diff)
Allow configuration of SI5 neighbor list != SI2 neighbor list
This introducecs the new VTY command "neighbor-list mode manual-si5" in combination with "si5 neighbor-list (add|del) arfcn <0-1024>", which allows you to (optionally) have neighbor channel lists that differ in SI5 and in SI2.
Diffstat (limited to 'openbsc/include/openbsc/gsm_data.h')
-rw-r--r--openbsc/include/openbsc/gsm_data.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h
index f40bcbdd3..03e7a7c83 100644
--- a/openbsc/include/openbsc/gsm_data.h
+++ b/openbsc/include/openbsc/gsm_data.h
@@ -491,6 +491,12 @@ struct gsm_bts_gprs_nsvc {
struct gsm_nm_state nm_state;
};
+enum neigh_list_manual_mode {
+ NL_MODE_AUTOMATIC = 0,
+ NL_MODE_MANUAL = 1,
+ NL_MODE_MANUAL_SI5SEP = 2, /* SI2 and SI5 have separate neighbor lists */
+};
+
/* One BTS */
struct gsm_bts {
/* list header in net->bts_list */
@@ -542,7 +548,7 @@ struct gsm_bts {
struct gsm_nm_state nm_state;
} site_mgr;
- int neigh_list_manual_mode;
+ enum neigh_list_manual_mode neigh_list_manual_mode;
/* parameters from which we build SYSTEM INFORMATION */
struct {
struct gsm48_rach_control rach_control;
@@ -553,10 +559,13 @@ struct gsm_bts {
struct gsm48_control_channel_descr chan_desc;
struct bitvec neigh_list;
struct bitvec cell_alloc;
+ struct bitvec si5_neigh_list;
struct {
/* bitmask large enough for all possible ARFCN's */
u_int8_t neigh_list[1024/8];
u_int8_t cell_alloc[1024/8];
+ /* If the user wants a different neighbor list in SI5 than in SI2 */
+ u_int8_t si5_neigh_list[1024/8];
} data;
} si_common;