diff options
author | Harald Welte <laforge@gnumonks.org> | 2011-02-15 11:43:27 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2011-02-15 11:43:27 +0100 |
commit | 64c07d213c7bf09813a16a7aad8bacacfdc3011a (patch) | |
tree | bbe9ca631fd33046bb336391582ce9c1c3a589c4 /openbsc/include/openbsc | |
parent | b01bf33ad4a9ab21b6f0d6e88e1e28c38c23cdf7 (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')
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 11 |
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; |