aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVadim Yanitskiy <vyanitskiy@sysmocom.de>2020-11-26 11:15:31 +0100
committerfixeria <vyanitskiy@sysmocom.de>2020-12-02 13:56:49 +0000
commite9b66487615e5bf9fad7da4faa3a7f50c4081a00 (patch)
tree3a7eedcd56a272e187f444b0440fa34650b81557
parentbts: rename MS_UL_PF_ALGO_{NONE,EWMA} to BTS_PF_ALGO_{NONE,EWMA} (diff)
downloadOsmoBTS-e9b66487615e5bf9fad7da4faa3a7f50c4081a00.tar.xz
OsmoBTS-e9b66487615e5bf9fad7da4faa3a7f50c4081a00.zip
bts: generalize a struct for UL/DL power control parameters
Change-Id: I504de17fb3c1300c2a3faa6d7d3a9eb1b74b214b Related: SYS#4918
-rw-r--r--include/osmo-bts/bts.h35
1 files changed, 19 insertions, 16 deletions
diff --git a/include/osmo-bts/bts.h b/include/osmo-bts/bts.h
index 37d4c7d8..129764e6 100644
--- a/include/osmo-bts/bts.h
+++ b/include/osmo-bts/bts.h
@@ -101,6 +101,24 @@ enum bts_pf_algo {
BTS_PF_ALGO_EWMA,
};
+/* UL/DL power control parameters */
+struct bts_power_ctrl_params {
+ /* Target value to strive to */
+ int target;
+ /* Tolerated deviation from target */
+ int hysteresis;
+ /* RxLev filtering algorithm */
+ enum bts_pf_algo pf_algo;
+ /* (Optional) filtering parameters */
+ union {
+ /* Exponentially Weighted Moving Average */
+ struct {
+ /* Smoothing factor: higher the value - less smoothing */
+ uint8_t alpha; /* 1 .. 99 (in %) */
+ } ewma;
+ } pf;
+};
+
/* BTS Site Manager */
struct gsm_bts_sm {
struct gsm_abis_mo mo;
@@ -300,22 +318,7 @@ struct gsm_bts {
} radio_link_timeout;
/* Uplink power control */
- struct {
- /* Target value to strive to */
- int target;
- /* Tolerated deviation from target */
- int hysteresis;
- /* UL RSSI filtering algorithm */
- enum bts_pf_algo pf_algo;
- /* (Optional) filtering parameters */
- union {
- /* Exponentially Weighted Moving Average */
- struct {
- /* Smoothing factor: higher the value - less smoothing */
- uint8_t alpha; /* 1 .. 99 (in %) */
- } ewma;
- } pf;
- } ul_power_ctrl;
+ struct bts_power_ctrl_params ul_power_ctrl;
/* used by the sysmoBTS to adjust band */
uint8_t auto_band;