aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2013-10-26 18:39:36 +0200
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2013-10-30 21:24:11 +0100
commit65be4808af7ca16a72446eb48ab9f33f8fa771db (patch)
tree3d3cda0f7ebfdc211ce6b49942958bf1d1fc04c6
parent6673005215decb4d54f4770b35e799aac2ef4136 (diff)
pdch: Remove the the bts parameter from rcv_data_block_acknowledged
-rw-r--r--src/bts.cpp14
-rw-r--r--src/bts.h15
2 files changed, 21 insertions, 8 deletions
diff --git a/src/bts.cpp b/src/bts.cpp
index 089ef288..570058e6 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -354,7 +354,7 @@ void gprs_rlcmac_pdch::add_paging(struct gprs_rlcmac_paging *pag)
*
* The blocks are defragmented and forwarded as LLC frames, if complete.
*/
-int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
+int gprs_rlcmac_pdch::rcv_data_block_acknowledged(
uint8_t trx, uint8_t ts,
uint8_t *data, uint8_t len, int8_t rssi)
{
@@ -385,7 +385,7 @@ int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
}
/* find TBF inst from given TFI */
- tbf = tbf_by_tfi(bts, rh->tfi, trx, GPRS_RLCMAC_UL_TBF);
+ tbf = tbf_by_tfi(bts_data(), rh->tfi, trx, GPRS_RLCMAC_UL_TBF);
if (!tbf) {
LOGP(DRLCMACUL, LOGL_NOTICE, "UL DATA unknown TBF=%d\n",
rh->tfi);
@@ -417,7 +417,7 @@ int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
}
LOGP(DRLCMACUL, LOGL_INFO, "Decoded premier TLLI=0x%08x of "
"UL DATA TBF=%d.\n", tbf->tlli, rh->tfi);
- if ((dl_tbf = bts->bts->tbf_by_tlli(tbf->tlli, GPRS_RLCMAC_DL_TBF))) {
+ if ((dl_tbf = bts()->tbf_by_tlli(tbf->tlli, GPRS_RLCMAC_DL_TBF))) {
LOGP(DRLCMACUL, LOGL_NOTICE, "Got RACH from "
"TLLI=0x%08x while DL TBF=%d still exists. "
"Killing pending DL TBF\n", tbf->tlli,
@@ -426,7 +426,7 @@ int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
}
/* tbf_by_tlli will not find your TLLI, because it is not
* yet marked valid */
- if ((ul_tbf = bts->bts->tbf_by_tlli(tbf->tlli, GPRS_RLCMAC_UL_TBF))) {
+ if ((ul_tbf = bts()->tbf_by_tlli(tbf->tlli, GPRS_RLCMAC_UL_TBF))) {
LOGP(DRLCMACUL, LOGL_NOTICE, "Got RACH from "
"TLLI=0x%08x while UL TBF=%d still exists. "
"Killing pending UL TBF\n", tbf->tlli,
@@ -436,7 +436,7 @@ int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
/* mark TLLI valid now */
tbf->tlli_valid = 1;
/* store current timing advance */
- bts->bts->timing_advance()->remember(tbf->tlli, tbf->ta);
+ bts()->timing_advance()->remember(tbf->tlli, tbf->ta);
/* already have TLLI, but we stille get another one */
} else if (rh->ti) {
uint32_t tlli;
@@ -458,7 +458,7 @@ int gprs_rlcmac_pdch::rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
mod_sns_half = (tbf->sns >> 1) - 1;
/* restart T3169 */
- tbf_timer_start(tbf, 3169, bts->t3169, 0);
+ tbf_timer_start(tbf, 3169, bts_data()->t3169, 0);
/* Increment RX-counter */
tbf->dir.ul.rx_counter++;
@@ -834,7 +834,7 @@ int gprs_rlcmac_pdch::rcv_block(uint8_t *data, uint8_t len, uint32_t fn, int8_t
switch (payload) {
case GPRS_RLCMAC_DATA_BLOCK:
- rc = rcv_data_block_acknowledged(bts, trx_no, ts_no, data, len, rssi);
+ rc = rcv_data_block_acknowledged(trx_no, ts_no, data, len, rssi);
break;
case GPRS_RLCMAC_CONTROL_BLOCK:
block = bitvec_alloc(len);
diff --git a/src/bts.h b/src/bts.h
index 541b9b20..c4e8d3de 100644
--- a/src/bts.h
+++ b/src/bts.h
@@ -56,6 +56,9 @@ struct gprs_rlcmac_pdch {
/* dispatching of messages */
int rcv_block(uint8_t *data, uint8_t len, uint32_t fn, int8_t rssi);
+
+ gprs_rlcmac_bts *bts_data() const;
+ BTS *bts() const;
#endif
uint8_t m_is_enabled; /* TS is enabled */
@@ -73,7 +76,7 @@ struct gprs_rlcmac_pdch {
#ifdef __cplusplus
private:
- int rcv_data_block_acknowledged(struct gprs_rlcmac_bts *bts,
+ int rcv_data_block_acknowledged(
uint8_t trx, uint8_t ts,
uint8_t *data, uint8_t len, int8_t rssi);
int rcv_control_block(struct gprs_rlcmac_bts *bts,
@@ -192,6 +195,16 @@ inline SBAController *BTS::sba()
{
return &m_sba;
}
+
+inline BTS *gprs_rlcmac_pdch::bts() const
+{
+ return trx->bts;
+}
+
+inline gprs_rlcmac_bts *gprs_rlcmac_pdch::bts_data() const
+{
+ return trx->bts->bts_data();
+}
#endif
#ifdef __cplusplus