diff options
author | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2022-06-06 01:43:28 +0600 |
---|---|---|
committer | fixeria <vyanitskiy@sysmocom.de> | 2022-06-30 16:36:41 +0000 |
commit | c2928ac269a55d2ea1a6ae7984ba9065f8c41db0 (patch) | |
tree | 6b51e4a323ab6083589934f399063dd4e22c088f /tests | |
parent | ff9d3a64dc8fec465140c244a816db22eea97b6b (diff) |
lchan_select: allow different alloc order for assignment and handover
A follow-up patch implements a special channel allocation mode, which is
only working for assignment (basically TCH selection for a voice call).
This mode cannot be employed for initial CHANNEL REQUEST or handover due
to the absence of an already established lchan.
Adding this mode to the existing VTY command syntax would be confusing:
channel allocator (ascending|desscending|dynamic)
^^^^^^^
so this patch extends the VTY syntax in a way that it becomes possible
to configure different channel allocator modes for different cases:
OsmoBSC(config-net-bts)# channel allocator mode ?
set-all Set a single mode for all variants
chan-req Channel allocation for CHANNEL REQUEST (RACH)
assignment Channel allocation for assignment
handover Channel allocation for handover
The old command syntax, which is basically 'set-all', is kept for
backwards compatibility, but marked as deprecated.
Change-Id: I3ae73b36ee9433cc768376b56f0765e5f416162f
Related: SYS#5460
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ctrl/osmo-bsc-apply-config-file.cfg | 2 | ||||
-rw-r--r-- | tests/ctrl/osmo-bsc-neigh-test.cfg | 4 | ||||
-rw-r--r-- | tests/handover/handover_test.c | 3 | ||||
-rw-r--r-- | tests/handover/test_dyn_ts_favor_static_ts_as_target.ho_vty | 2 | ||||
-rw-r--r-- | tests/osmo-bsc.vty | 13 |
5 files changed, 17 insertions, 7 deletions
diff --git a/tests/ctrl/osmo-bsc-apply-config-file.cfg b/tests/ctrl/osmo-bsc-apply-config-file.cfg index 1a069ce75..0094cd70d 100644 --- a/tests/ctrl/osmo-bsc-apply-config-file.cfg +++ b/tests/ctrl/osmo-bsc-apply-config-file.cfg @@ -9,7 +9,7 @@ network cell reselection hysteresis 4 rxlev access min 0 radio-link-timeout 32 - channel allocator ascending + channel allocator mode set-all ascending rach tx integer 9 rach max transmission 7 channel-description attach 1 diff --git a/tests/ctrl/osmo-bsc-neigh-test.cfg b/tests/ctrl/osmo-bsc-neigh-test.cfg index 93d7fca83..8c04db6d6 100644 --- a/tests/ctrl/osmo-bsc-neigh-test.cfg +++ b/tests/ctrl/osmo-bsc-neigh-test.cfg @@ -35,7 +35,7 @@ network cell reselection hysteresis 4 rxlev access min 0 radio-link-timeout 32 - channel allocator ascending + channel allocator mode set-all ascending rach tx integer 9 rach max transmission 7 channel-description attach 1 @@ -92,7 +92,7 @@ network cell reselection hysteresis 4 rxlev access min 0 radio-link-timeout 32 - channel allocator ascending + channel allocator mode set-all ascending rach tx integer 9 rach max transmission 7 channel-description attach 1 diff --git a/tests/handover/handover_test.c b/tests/handover/handover_test.c index d82ba9f90..77fa3712e 100644 --- a/tests/handover/handover_test.c +++ b/tests/handover/handover_test.c @@ -488,7 +488,8 @@ struct gsm_lchan *create_lchan(struct gsm_bts *bts, int full_rate, const char *c { struct gsm_lchan *lchan; - lchan = lchan_select_by_type(bts, (full_rate) ? GSM_LCHAN_TCH_F : GSM_LCHAN_TCH_H); + lchan = lchan_select_by_type(bts, (full_rate) ? GSM_LCHAN_TCH_F : GSM_LCHAN_TCH_H, + SELECT_FOR_HANDOVER); if (!lchan) { fprintf(stderr, "No resource for lchan\n"); exit(EXIT_FAILURE); diff --git a/tests/handover/test_dyn_ts_favor_static_ts_as_target.ho_vty b/tests/handover/test_dyn_ts_favor_static_ts_as_target.ho_vty index c50b00705..0c55a2c97 100644 --- a/tests/handover/test_dyn_ts_favor_static_ts_as_target.ho_vty +++ b/tests/handover/test_dyn_ts_favor_static_ts_as_target.ho_vty @@ -3,7 +3,7 @@ create-bts trx-count 1 timeslots c+s4 dyn TCH/H dyn TCH/H dyn TCH/H network bts 0 - channel allocator ascending + channel allocator mode set-all ascending set-ts-use trx 0 0 states * TCH/-H TCH/-H TCH/-H TCH/-H TCH/-H TCH/-H * diff --git a/tests/osmo-bsc.vty b/tests/osmo-bsc.vty index f2af32bca..e0b9bdc18 100644 --- a/tests/osmo-bsc.vty +++ b/tests/osmo-bsc.vty @@ -166,11 +166,20 @@ OsmoBSC(config-net-bts)# channel ? allocator Channel Allocator OsmoBSC(config-net-bts)# channel allocator ? - ascending Allocate Timeslots and Transceivers in ascending order - descending Allocate Timeslots and Transceivers in descending order + mode Channel allocation mode avoid-interference Configure whether reported interference levels from RES IND are used in channel allocation tch-signalling-policy Configure when TCH/H or TCH/F channels can be used to serve signalling if SDCCHs are exhausted +OsmoBSC(config-net-bts)# channel allocator mode ? + set-all Set a single mode for all variants + chan-req Channel allocation for CHANNEL REQUEST (RACH) + assignment Channel allocation for assignment + handover Channel allocation for handover + +OsmoBSC(config-net-bts)# channel allocator mode set-all ? + ascending Allocate Timeslots and Transceivers in ascending order + descending Allocate Timeslots and Transceivers in descending order + OsmoBSC(config-net-bts)# channel allocator avoid-interference ? 0 Ignore interference levels (default). Always assign lchans in a deterministic order. 1 In channel allocation, prefer lchans with less interference. |