diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-01-14 16:20:57 +0100 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-01-18 11:57:14 +0100 |
commit | 793583ea2173c94b2dc779ab565fcf629a1d52b3 (patch) | |
tree | 8bf3d99424f0b5d879b9173c8120cd36fa53f2ce /src/bts.h | |
parent | f473ec9d7a250326abd71b910d810567dc976509 (diff) |
Fix configuration mess of initial_cs/mcs between PCUIF and VTY
Both values (optionally) set (forced) by VTY and the values received
from PCUIF were stored in the same variable, meaning that for instance
the PCUIF values wouldn't really be used if someone applied eg "no cs"
during runtime.
This commit does something similar to what was already done for the
max_(m)cs fields. We store PCUIF values in one place and VTY ones in
another place, and then trigger a bts object internal process to find
out exactly which initial CS should it be using.
Change-Id: I80a6ba401f9c0c85bdf6e0cc99a9d2008d31e1b0
Diffstat (limited to 'src/bts.h')
-rw-r--r-- | src/bts.h | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -87,6 +87,10 @@ struct gprs_rlcmac_bts { uint8_t bsic; uint8_t cs_mask; /* Allowed CS mask from BTS */ uint16_t mcs_mask; /* Allowed MCS mask from BTS */ + struct { /* information stored from last received PCUIF info_ind message */ + uint8_t initial_cs; + uint8_t initial_mcs; + } pcuif_info_ind; uint8_t initial_cs_dl, initial_cs_ul; uint8_t initial_mcs_dl, initial_mcs_ul; /* Timer defintions */ @@ -399,6 +403,8 @@ extern "C" { struct gprs_rlcmac_bts *bts_main_data(); struct rate_ctr_group *bts_main_data_stats(); struct osmo_stat_item_group *bts_main_data_stat_items(); + void bts_recalc_initial_cs(struct gprs_rlcmac_bts *bts); + void bts_recalc_initial_mcs(struct gprs_rlcmac_bts *bts); void bts_recalc_max_cs(struct gprs_rlcmac_bts *bts); void bts_recalc_max_mcs(struct gprs_rlcmac_bts *bts); struct GprsMs *bts_ms_by_imsi(struct BTS *bts, const char *imsi); |