aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmo-bts/gsm_data.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/osmo-bts/gsm_data.h')
-rw-r--r--include/osmo-bts/gsm_data.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/osmo-bts/gsm_data.h b/include/osmo-bts/gsm_data.h
index aee56a9a..c7a0fc61 100644
--- a/include/osmo-bts/gsm_data.h
+++ b/include/osmo-bts/gsm_data.h
@@ -7,6 +7,11 @@
#include <osmo-bts/paging.h>
+#define GSM_BTS_AGCH_QUEUE_THRESH_LEVEL_DEFAULT 41
+#define GSM_BTS_AGCH_QUEUE_THRESH_LEVEL_DISABLE 999999
+#define GSM_BTS_AGCH_QUEUE_LOW_LEVEL_DEFAULT 41
+#define GSM_BTS_AGCH_QUEUE_HIGH_LEVEL_DEFAULT 91
+
struct pcu_sock_state;
struct gsm_network {
@@ -48,8 +53,23 @@ struct gsm_bts_role_bts {
} load;
uint8_t ny1;
uint8_t max_ta;
+
+ /* AGCH queuing */
struct llist_head agch_queue;
int agch_queue_length;
+ int agch_max_queue_length;
+
+ int agch_queue_thresh_level; /* Cleanup threshold in percent of max len */
+ int agch_queue_low_level; /* Low water mark in percent of max len */
+ int agch_queue_high_level; /* High water mark in percent of max len */
+
+ /* TODO: Use a rate counter group instead */
+ uint64_t agch_queue_dropped_msgs;
+ uint64_t agch_queue_merged_msgs;
+ uint64_t agch_queue_rejected_msgs;
+ uint64_t agch_queue_agch_msgs;
+ uint64_t agch_queue_pch_msgs;
+
struct paging_state *paging_state;
char *bsc_oml_host;
unsigned int rtp_jitter_buf_ms;