aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/osmo-bts/bts.h1
-rw-r--r--include/osmo-bts/bts_model.h2
-rw-r--r--include/osmo-bts/rsl.h2
-rw-r--r--src/common/bts.c7
-rw-r--r--src/common/rsl.c3
-rw-r--r--src/osmo-bts-sysmo/oml.c11
6 files changed, 12 insertions, 14 deletions
diff --git a/include/osmo-bts/bts.h b/include/osmo-bts/bts.h
index bfa2dc3e..0b91ccbc 100644
--- a/include/osmo-bts/bts.h
+++ b/include/osmo-bts/bts.h
@@ -41,6 +41,7 @@ void bts_update_status(enum bts_global_status which, int on);
int trx_ms_pwr_ctrl_is_osmo(struct gsm_bts_trx *trx);
+struct gsm_time *get_time(struct gsm_bts *bts);
#endif /* _BTS_H */
diff --git a/include/osmo-bts/bts_model.h b/include/osmo-bts/bts_model.h
index cabb7059..35e95175 100644
--- a/include/osmo-bts/bts_model.h
+++ b/include/osmo-bts/bts_model.h
@@ -12,8 +12,6 @@
int bts_model_init(struct gsm_bts *bts);
-struct gsm_time *bts_model_get_time(struct gsm_bts *bts);
-
int bts_model_check_oml(struct gsm_bts *bts, uint8_t msg_type,
struct tlv_parsed *old_attr, struct tlv_parsed *new_attr,
void *obj);
diff --git a/include/osmo-bts/rsl.h b/include/osmo-bts/rsl.h
index 6e8122fe..42ea6ef7 100644
--- a/include/osmo-bts/rsl.h
+++ b/include/osmo-bts/rsl.h
@@ -17,7 +17,7 @@ int rsl_tx_chan_rqd(struct gsm_bts_trx *trx, struct gsm_time *gtime,
uint8_t ra, uint8_t acc_delay);
int rsl_tx_est_ind(struct gsm_lchan *lchan, uint8_t link_id, uint8_t *data, int len);
-int rsl_tx_chan_act_ack(struct gsm_lchan *lchan, struct gsm_time *gtime);
+int rsl_tx_chan_act_ack(struct gsm_lchan *lchan);
int rsl_tx_chan_act_nack(struct gsm_lchan *lchan, uint8_t cause);
int rsl_tx_conn_fail(struct gsm_lchan *lchan, uint8_t cause);
int rsl_tx_rf_rel_ack(struct gsm_lchan *lchan);
diff --git a/src/common/bts.c b/src/common/bts.c
index 65b115a8..9abbe121 100644
--- a/src/common/bts.c
+++ b/src/common/bts.c
@@ -611,3 +611,10 @@ int trx_ms_pwr_ctrl_is_osmo(struct gsm_bts_trx *trx)
{
return trx->ms_power_control == 1;
}
+
+struct gsm_time *get_time(struct gsm_bts *bts)
+{
+ struct gsm_bts_role_bts *btsb = bts->role;
+
+ return &btsb->gsm_time;
+}
diff --git a/src/common/rsl.c b/src/common/rsl.c
index 9f1cf29b..07bd4d0b 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -543,8 +543,9 @@ int rsl_tx_rf_rel_ack(struct gsm_lchan *lchan)
}
/* 8.4.2 sending CHANnel ACTIVation ACKnowledge */
-int rsl_tx_chan_act_ack(struct gsm_lchan *lchan, struct gsm_time *gtime)
+int rsl_tx_chan_act_ack(struct gsm_lchan *lchan)
{
+ struct gsm_time *gtime = get_time(lchan->ts->trx->bts);
struct msgb *msg;
uint8_t chan_nr = gsm_lchan2chan_nr(lchan);
uint8_t ie[2];
diff --git a/src/osmo-bts-sysmo/oml.c b/src/osmo-bts-sysmo/oml.c
index b1e3ac5c..81ec19e9 100644
--- a/src/osmo-bts-sysmo/oml.c
+++ b/src/osmo-bts-sysmo/oml.c
@@ -984,10 +984,8 @@ static int sapi_activate_cb(struct gsm_lchan *lchan, int status)
if (lchan->state != LCHAN_S_ACT_REQ)
return 0;
- struct gsm_time *time;
lchan_set_state(lchan, LCHAN_S_ACTIVE);
- time = bts_model_get_time(lchan->ts->trx->bts);
- rsl_tx_chan_act_ack(lchan, time);
+ rsl_tx_chan_act_ack(lchan);
/* set the initial ciphering parameters for both directions */
l1if_set_ciphering(fl1h, lchan, 0);
@@ -1556,13 +1554,6 @@ static int lchan_deactivate_sacch(struct gsm_lchan *lchan)
return 0;
}
-struct gsm_time *bts_model_get_time(struct gsm_bts *bts)
-{
- struct femtol1_hdl *fl1h = trx_femtol1_hdl(bts->c0);
-
- return &fl1h->gsm_time;
-}
-
/* callback from OML */
int bts_model_check_oml(struct gsm_bts *bts, uint8_t msg_type,
struct tlv_parsed *old_attr, struct tlv_parsed *new_attr,