osmo-bsc/src/osmo-bsc
Vadim Yanitskiy a019e9af8b lchan_select: implement dynamic selection mode for assignment
This change implements an additional channel allocation mode, which
can be employed during a TCH channel allocation for assignment.
Selection between ascending and descending order is performed
depending on pre-configured parameters:

* Uplink RxLev threshold and number of samples for averaging,
* C0 (BCCH carrier) channel load threshold.

This is useful in setups where Tx power of the RF carriers cannot be
adjusted +dynamically at run-time and thus BS Power Control cannot
be performed.  In such setups the BCCH carrier is transmitting at
relatively higher power than the other RF carriers.  The key idea
is to allocate channels in a smarter way, so that UEs with poor signal
would get channels on carriers with high Tx power, while UEs with good
signal could use carriers with lower Tx power.

Change-Id: I1b7a0d706976b73cc5c30a8714b830811addfe8d
Related: osmo-ttcn3-hacks.git Ia522f37c1c001b3a36f5145b8875fbb88311c2e5
Related: SYS#5460
2022-06-30 16:36:55 +00:00
..
Makefile.am Move all SMSCB/CBC vty code to its own file 2022-06-10 11:30:29 +00:00
a_reset.c add stat items bsc.0.num_msc:connected, .num_msc:total 2021-08-30 18:21:50 +02:00
abis_bs11.c dissolve libbsc: move all to src/osmo-bsc, link .o files 2018-06-07 19:09:06 +02:00
abis_nm.c Update current NM object state before signalling S_NM_STATECHG 2022-05-13 09:58:58 +00:00
abis_nm_ipaccess.c dissolve libbsc: move all to src/osmo-bsc, link .o files 2018-06-07 19:09:06 +02:00
abis_nm_vty.c Split bsc_vty.c creating bts_vty.c 2021-07-22 17:26:56 +00:00
abis_om2000.c Improve parsing of om2000 fault reports 2022-06-27 21:42:05 -05:00
abis_om2000_vty.c Split bsc_vty.c creating bts_vty.c 2021-07-22 17:26:56 +00:00
abis_osmo.c Support Neighbor Address Resolution over PCUIF IPA multiplex 2021-09-13 16:04:05 +02:00
abis_rsl.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
acc.c acc: Simplify start/stop by using new signal S_NM_RUNNING_CHG 2022-05-13 14:06:37 +02:00
assignment_fsm.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
bsc_ctrl_commands.c bsc_ctrl_commands: fix uninitialized value (mode) 2021-11-04 09:51:26 +01:00
bsc_ctrl_lookup.c treewide: remove FSF address 2021-12-14 12:51:44 +00:00
bsc_init.c code cleanup for all_allocated timers, no functional change 2022-06-02 14:17:35 +02:00
bsc_rf_ctrl.c fixup comments for 'rf_states' CTRL command 2021-09-15 18:05:20 +00:00
bsc_rll.c dissolve libbsc: move all to src/osmo-bsc, link .o files 2018-06-07 19:09:06 +02:00
bsc_sccp.c LCS: implement the bulk of Location Services 2020-10-09 00:26:02 +02:00
bsc_stats.c fix performance for chan_counts and all_allocated stats 2022-06-02 14:24:30 +02:00
bsc_subscr_conn_fsm.c fix rare segfault in MGCP client handling 2022-05-31 00:24:08 +02:00
bsc_subscriber.c bsc_subscr_name: print both IMSI and TMSI 2020-10-07 11:40:12 +00:00
bsc_vty.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
bssmap_reset.c bssmap_reset: make T4 user configurable 2022-02-08 11:51:42 +01:00
bts.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
bts_ericsson_rbs2000.c bts_model_*_start: move set_feature calls to _init 2022-04-28 12:14:28 +00:00
bts_init.c Replace all references to 'sysmobts' with 'osmo-bts' 2021-04-12 18:54:40 +00:00
bts_ipaccess_nanobts.c bts_ipa: Send NM_EV_OML_DOWN following object tree in order 2022-05-06 14:52:07 +02:00
bts_ipaccess_nanobts_omlattr.c Introduce VTY command 'ccch load-indication-period <0-255>' 2022-04-27 10:03:01 +00:00
bts_nokia_site.c abis_nm: Merge signals S_NM_STATECHG_ADM and S_NM_STATECHG_OPER 2022-05-05 14:51:10 +02:00
bts_osmobts.c Check VTY config against features reported by BTS 2022-05-02 15:21:28 +02:00
bts_siemens_bs11.c bts_model_*_start: move set_feature calls to _init 2022-04-28 12:14:28 +00:00
bts_sm.c Introduce NM GPRS NSVC FSM 2020-12-04 14:44:40 +01:00
bts_trx.c Check VTY config against features reported by BTS 2022-05-02 15:21:28 +02:00
bts_trx_vty.c bts_chan_load(): also calculate per-TRX channel load 2022-06-22 05:49:20 +07:00
bts_unknown.c Move struct gsm_bts: gsm_data.* => bts.* 2020-07-18 21:45:32 +00:00
bts_vty.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
cbch_scheduler.c smscb: Base cell operational life cycle on CBCH being operative 2022-06-16 19:07:14 +02:00
cbsp_link.c cbsp: Change log level ERROR->INFO on CBSP tx and link down 2022-06-29 15:14:10 +00:00
chan_alloc.c bts_chan_load(): also calculate per-TRX channel load 2022-06-22 05:49:20 +07:00
chan_counts.c fix performance for chan_counts and all_allocated stats 2022-06-02 14:24:30 +02:00
codec_pref.c Rename osmo dyn ts enums to contain SDCCH8 2021-07-06 07:16:15 +00:00
e1_config.c RSL link: explicitly select rsl_link based on lchan 2021-05-28 17:22:59 +00:00
gsm_04_08_rr.c gsm_04_08_rr: ensure lchan info is present in all logging messages 2022-06-27 18:21:03 +07:00
gsm_08_08.c logs: also record which BTS is signaling a SAPI REJECT 2022-06-20 13:28:46 +00:00
gsm_data.c drop log from ts_is_usable() 2022-06-02 14:17:35 +02:00
handover_cfg.c dissolve libbsc: move all to src/osmo-bsc, link .o files 2018-06-07 19:09:06 +02:00
handover_ctrl.c handover_ctrl: add control interface for handover settings 2021-07-19 10:44:05 +02:00
handover_decision.c hodec1: use same automatic FULL/SUBSET choice as in hodec2 2021-07-09 11:51:40 +00:00
handover_decision_2.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
handover_fsm.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
handover_logic.c replace ts_*_for_each_lchan() with ts_for_n_lchans() 2021-05-31 05:20:03 +00:00
handover_vty.c vty: add attributes to VTY commands indicating when they apply 2020-10-08 07:18:12 +00:00
lb.c fix uninitialized err pointer passed to osmo_bssap_le_dec() 2022-06-29 11:27:46 +00:00
lchan_fsm.c stats: track TCH/SDCCH lchans reaching fully-established state 2022-06-17 20:26:26 +00:00
lchan_rtp_fsm.c silence bogus error: event not permitted: READY_TO_SWITCH_RTP 2022-03-03 23:19:46 +00:00
lchan_select.c lchan_select: implement dynamic selection mode for assignment 2022-06-30 16:36:55 +00:00
lcs_loc_req.c fix uninitialized err pointer passed to osmo_bssap_le_dec() 2022-06-29 11:27:46 +00:00
lcs_ta_req.c lcs: fix bsc_subscr use_count leak 2022-01-04 13:33:26 +00:00
meas_feed.c Use osmo_fd_*_{disable,enable} 2020-11-11 20:15:22 +00:00
meas_rep.c hodec2: [2/2] implement automatic choice between FULL and SUBSET measurements 2021-07-09 11:51:40 +00:00
neighbor_ident.c neighbor_ident: add comment about Neighbor Address Resolution Service 2021-11-01 11:30:03 +01:00
neighbor_ident_ctrl.c heighbor_ident: add/del neighbor cells via ctrl interface 2021-11-03 17:25:28 +00:00
neighbor_ident_vty.c heighbor_ident: add/del neighbor cells via ctrl interface 2021-11-03 17:25:28 +00:00
net_init.c support "empty" SCCP N-Connect from MSC 2022-03-09 00:01:06 +01:00
nm_bb_transc_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_bts_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_bts_sm_fsm.c nm_statechg_signal_data: Convert state ptr to data 2022-05-06 14:50:24 +02:00
nm_channel_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_common_fsm.c Introduce new signal S_NM_RUNNING_CHG and implement it for rcarrier,bbtransc 2022-05-13 14:06:37 +02:00
nm_gprs_cell_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_gprs_nse_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_gprs_nsvc_fsm.c nm_*_fsm: Remove comment no longer applying 2022-06-02 11:44:52 +02:00
nm_rcarrier_fsm.c nm_rcarrier_fsm: Trigger S_NM_RUNNING_CHG when Admin st changes in op=Enabled 2022-06-02 12:51:35 +02:00
osmo_bsc_bssap.c bssap: always check return value of tlv_parse() 2022-04-25 16:09:25 +03:00
osmo_bsc_ctrl.c osmo_bsc_ctrl: make sure strtok results are checked 2021-11-11 09:00:39 +00:00
osmo_bsc_filter.c Use new stat item/ctr getter APIs 2021-06-04 17:48:43 +02:00
osmo_bsc_grace.c dissolve bsc_grace_paging_request() 2020-09-16 21:54:52 +00:00
osmo_bsc_lcls.c RSL chan_nr: replace OSMO_ASSERT with error handling 2021-06-10 16:15:35 +02:00
osmo_bsc_main.c smscb: Base cell operational life cycle on CBCH being operative 2022-06-16 19:07:14 +02:00
osmo_bsc_mgcp.c Use OSMO_FD_* instead of deprecated BSC_FD_* 2020-07-15 18:38:11 +02:00
osmo_bsc_msc.c fix typo in name of BSS_MAP_MSG_ASSIGNMENT_RQST 2022-03-09 07:15:51 +00:00
osmo_bsc_sigtran.c Get rid of lots of stubs [4/4] 2021-10-07 14:08:29 +02:00
paging.c paging: start/stop credit_timer based on C0 running 2022-05-13 14:06:37 +02:00
pcu_sock.c Fix compile errors on #warning with '-Wall' on gcc-11.2 2022-04-20 21:49:50 +02:00
penalty_timers.c switch handover penalty timers to CLOCK_MONOTONIC 2021-07-15 09:28:18 +00:00
power_control.c Move power control related definitions to power_control.h 2022-04-08 01:23:04 +03:00
smscb.c smscb: Tx CBSP FAILURE/RESTART for specific cell when it becomes (un)operational 2022-06-17 20:27:41 +00:00
smscb_vty.c Move all SMSCB/CBC vty code to its own file 2022-06-10 11:30:29 +00:00
system_information.c Always use reported features if available 2022-04-26 12:06:47 +00:00
timeslot_fsm.c fix performance for chan_counts and all_allocated stats 2022-06-02 14:24:30 +02:00