aboutsummaryrefslogtreecommitdiffstats
path: root/include/osmo-bts
diff options
context:
space:
mode:
Diffstat (limited to 'include/osmo-bts')
-rw-r--r--include/osmo-bts/cbch.h8
-rw-r--r--include/osmo-bts/gsm_data_shared.h4
-rw-r--r--include/osmo-bts/rsl.h2
3 files changed, 14 insertions, 0 deletions
diff --git a/include/osmo-bts/cbch.h b/include/osmo-bts/cbch.h
index af5fd9a3..6bba5fa2 100644
--- a/include/osmo-bts/cbch.h
+++ b/include/osmo-bts/cbch.h
@@ -6,6 +6,14 @@
#include <osmo-bts/gsm_data.h>
#include <osmo-bts/bts.h>
+enum {
+ CBCH_CTR_RCVD_QUEUED,
+ CBCH_CTR_RCVD_DROPPED,
+ CBCH_CTR_SENT_SINGLE,
+ CBCH_CTR_SENT_DEFAULT,
+ CBCH_CTR_SENT_NULL,
+};
+
/* incoming SMS broadcast command from RSL */
int bts_process_smscb_cmd(struct gsm_bts *bts, struct rsl_ie_cb_cmd_type cmd_type,
bool extended_cbch, uint8_t msg_len, const uint8_t *msg);
diff --git a/include/osmo-bts/gsm_data_shared.h b/include/osmo-bts/gsm_data_shared.h
index 860c296c..415e6bc0 100644
--- a/include/osmo-bts/gsm_data_shared.h
+++ b/include/osmo-bts/gsm_data_shared.h
@@ -542,6 +542,7 @@ struct gprs_rlc_cfg {
struct bts_smscb_state {
struct llist_head queue; /* list of struct smscb_msg */
int queue_len;
+ struct rate_ctr_group *ctrs;
struct smscb_msg *cur_msg; /* current SMS-CB */
struct smscb_msg *default_msg; /* default broadcast message; NULL if none */
};
@@ -744,6 +745,9 @@ struct gsm_bts {
/* State for SMSCB (Cell Broadcast) for BASIC and EXTENDED channel */
struct bts_smscb_state smscb_basic;
struct bts_smscb_state smscb_extended;
+ int smscb_queue_tgt_len; /* ideal/target queue length */
+ int smscb_queue_max_len; /* maximum queue length */
+ int smscb_queue_hyst; /* hysteresis for CBCH laod indications */
float min_qual_rach; /* minimum quality for RACH bursts */
float min_qual_norm; /* minimum quality for normal daata */
diff --git a/include/osmo-bts/rsl.h b/include/osmo-bts/rsl.h
index 0361841d..186018eb 100644
--- a/include/osmo-bts/rsl.h
+++ b/include/osmo-bts/rsl.h
@@ -43,4 +43,6 @@ void cb_ts_disconnected(struct gsm_bts_trx_ts *ts);
void cb_ts_connected(struct gsm_bts_trx_ts *ts, int rc);
void ipacc_dyn_pdch_complete(struct gsm_bts_trx_ts *ts, int rc);
+int rsl_tx_cbch_load_indication(struct gsm_bts *bts, bool ext_cbch, bool overflow, uint8_t amount);
+
#endif // _RSL_H */