aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2019-10-29 13:19:00 +0100
committerPau Espin Pedrol <pespin@sysmocom.de>2019-10-29 13:19:03 +0100
commitcc1a7a07c1928cfd356dbd5690b7769d87403239 (patch)
tree7b0eef58e9037e5ed0977bc513da90e727e0aca3
parent6b9e0e4e8834428f85f169106ed7b6141f5b185b (diff)
rsl.c: Clean up some repeated use of long chains of pointers
Further accesses will be addter in forthcoming commit, so let's first store the pointers in variables to clean up the code. Change-Id: Ie5ea0f44dfb5731cab7e8e5a3dd3d791ee703df7
-rw-r--r--src/osmo-bsc/abis_rsl.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/osmo-bsc/abis_rsl.c b/src/osmo-bsc/abis_rsl.c
index 575f91dd3..6ffa41526 100644
--- a/src/osmo-bsc/abis_rsl.c
+++ b/src/osmo-bsc/abis_rsl.c
@@ -295,12 +295,14 @@ int rsl_chan_bs_power_ctrl(struct gsm_lchan *lchan, unsigned int fpc, int db)
int rsl_chan_ms_power_ctrl(struct gsm_lchan *lchan, unsigned int fpc, int dbm)
{
+ struct gsm_bts_trx *trx = lchan->ts->trx;
+ struct gsm_bts *bts = trx->bts;
struct abis_rsl_dchan_hdr *dh;
struct msgb *msg;
uint8_t chan_nr = gsm_lchan2chan_nr(lchan);
int ctl_lvl;
- ctl_lvl = ms_pwr_ctl_lvl(lchan->ts->trx->bts->band, dbm);
+ ctl_lvl = ms_pwr_ctl_lvl(bts->band, dbm);
if (ctl_lvl < 0)
return ctl_lvl;
@@ -319,7 +321,7 @@ int rsl_chan_ms_power_ctrl(struct gsm_lchan *lchan, unsigned int fpc, int dbm)
/* indicate MS power control to be performed by BTS: */
msgb_tl_put(msg, RSL_IE_MS_POWER_PARAM);
- msg->dst = lchan->ts->trx->rsl_link;
+ msg->dst = trx->rsl_link;
return abis_rsl_sendmsg(msg);
}
@@ -460,6 +462,8 @@ static void mr_config_for_bts(struct gsm_lchan *lchan, struct msgb *msg)
/* Chapter 8.4.1 */
int rsl_tx_chan_activ(struct gsm_lchan *lchan, uint8_t act_type, uint8_t ho_ref)
{
+ struct gsm_bts_trx *trx = lchan->ts->trx;
+ struct gsm_bts *bts = trx->bts;
struct abis_rsl_dchan_hdr *dh;
struct msgb *msg;
int rc;
@@ -487,7 +491,7 @@ int rsl_tx_chan_activ(struct gsm_lchan *lchan, uint8_t act_type, uint8_t ho_ref)
ta = lchan->rqd_ta;
/* BS11 requires TA shifted by 2 bits */
- if (lchan->ts->trx->bts->type == GSM_BTS_TYPE_BS11)
+ if (bts->type == GSM_BTS_TYPE_BS11)
ta <<= 2;
memset(&cd, 0, sizeof(cd));
@@ -548,9 +552,9 @@ int rsl_tx_chan_activ(struct gsm_lchan *lchan, uint8_t act_type, uint8_t ho_ref)
mr_config_for_bts(lchan, msg);
- msg->dst = lchan->ts->trx->rsl_link;
+ msg->dst = trx->rsl_link;
- rate_ctr_inc(&lchan->ts->trx->bts->bts_ctrs->ctr[BTS_CTR_CHAN_ACT_TOTAL]);
+ rate_ctr_inc(&bts->bts_ctrs->ctr[BTS_CTR_CHAN_ACT_TOTAL]);
return abis_rsl_sendmsg(msg);
}