fixeria has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-bts/+/27772 )
Change subject: struct amr_multirate_conf: remove ms_mode[], raname bts_mode[]
......................................................................
struct amr_multirate_conf: remove ms_mode[], raname bts_mode[]
Looks like this structure was copied from openbsc/osmo-bsc as-is.
The ms_mode[] makes no sense in the context of BTS, so remove it
and rename bts_mode[] to mode[] for the sake of brevity.
Change-Id: I7442360ed857554440a0b9854f2d2bbab9dc5a71
Related: SYS#5917, OS#4984
---
M include/osmo-bts/lchan.h
M src/common/amr.c
M src/osmo-bts-sysmo/tch.c
M src/osmo-bts-trx/amr_loop.c
M src/osmo-bts-trx/l1_if.c
M src/osmo-bts-virtual/l1_if.c
M tests/amr/amr_test.c
7 files changed, 37 insertions(+), 38 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/72/27772/1
diff --git a/include/osmo-bts/lchan.h b/include/osmo-bts/lchan.h
index 3aaa75a..9cdc6f7 100644
--- a/include/osmo-bts/lchan.h
+++ b/include/osmo-bts/lchan.h
@@ -67,8 +67,7 @@
struct amr_multirate_conf {
uint8_t gsm48_ie[2];
- struct amr_mode ms_mode[4];
- struct amr_mode bts_mode[4];
+ struct amr_mode mode[4];
uint8_t num_modes;
};
diff --git a/src/common/amr.c b/src/common/amr.c
index acf1c37..47c9dcb 100644
--- a/src/common/amr.c
+++ b/src/common/amr.c
@@ -95,9 +95,9 @@
for (i = 0; i < amr_mrc->num_modes; i++)
LOGPC(ss, logl, ", mode[%u] = %u/%u/%u",
- i, amr_mrc->bts_mode[i].mode,
- amr_mrc->bts_mode[i].threshold,
- amr_mrc->bts_mode[i].hysteresis);
+ i, amr_mrc->mode[i].mode,
+ amr_mrc->mode[i].threshold,
+ amr_mrc->mode[i].hysteresis);
LOGPC(ss, logl, "\n");
}
@@ -106,7 +106,7 @@
{
unsigned int i;
for (i = 0; i < amr_mrc->num_modes; i++) {
- if (amr_mrc->bts_mode[i].mode == cmi)
+ if (amr_mrc->mode[i].mode == cmi)
return i;
}
return -EINVAL;
@@ -196,7 +196,7 @@
for (i = 0; i < 8; i++) {
if (mr_conf[1] & (1 << i)) {
- amr_mrc->bts_mode[j++].mode = i;
+ amr_mrc->mode[j++].mode = i;
}
}
@@ -204,18 +204,18 @@
mr_conf += 2;
if (num_codecs >= 2) {
- amr_mrc->bts_mode[0].threshold = mr_conf[0] & 0x3F;
- amr_mrc->bts_mode[0].hysteresis = mr_conf[1] >> 4;
+ amr_mrc->mode[0].threshold = mr_conf[0] & 0x3F;
+ amr_mrc->mode[0].hysteresis = mr_conf[1] >> 4;
}
if (num_codecs >= 3) {
- amr_mrc->bts_mode[1].threshold =
+ amr_mrc->mode[1].threshold =
((mr_conf[1] & 0xF) << 2) | (mr_conf[2] >> 6);
- amr_mrc->bts_mode[1].hysteresis = (mr_conf[2] >> 2) & 0xF;
+ amr_mrc->mode[1].hysteresis = (mr_conf[2] >> 2) & 0xF;
}
if (num_codecs >= 4) {
- amr_mrc->bts_mode[2].threshold =
+ amr_mrc->mode[2].threshold =
((mr_conf[2] & 0x3) << 4) | (mr_conf[3] >> 4);
- amr_mrc->bts_mode[2].hysteresis = mr_conf[3] & 0xF;
+ amr_mrc->mode[2].hysteresis = mr_conf[3] & 0xF;
}
return num_codecs;
@@ -272,7 +272,7 @@
memcpy(lchan->tch.amr_mr.gsm48_ie, mr_cfg,
sizeof(lchan->tch.amr_mr.gsm48_ie));
- memcpy(&lchan->tch.amr_mr.bts_mode[0], &bts_mode[0],
- sizeof(lchan->tch.amr_mr.bts_mode));
+ memcpy(&lchan->tch.amr_mr.mode[0], &bts_mode[0],
+ sizeof(lchan->tch.amr_mr.mode));
lchan->tch.amr_mr.num_modes = num_modes;
}
diff --git a/src/osmo-bts-sysmo/tch.c b/src/osmo-bts-sysmo/tch.c
index eb719f1..a390c8c 100644
--- a/src/osmo-bts-sysmo/tch.c
+++ b/src/osmo-bts-sysmo/tch.c
@@ -298,7 +298,7 @@
LOGP(DL1P, LOGL_NOTICE, "L1->RTP: overriding CMR IDX %u\n", cmr_idx);
cmr = AMR_CMR_NONE;
} else {
- cmr = amr_mrc->bts_mode[cmr_idx].mode;
+ cmr = amr_mrc->mode[cmr_idx].mode;
lchan->tch.last_cmr = cmr;
}
diff --git a/src/osmo-bts-trx/amr_loop.c b/src/osmo-bts-trx/amr_loop.c
index afb9c37..d6e6aac 100644
--- a/src/osmo-bts-trx/amr_loop.c
+++ b/src/osmo-bts-trx/amr_loop.c
@@ -78,7 +78,7 @@
if (chan_state->dl_cmr > 0) {
/* degrade, if ber is above threshold FIXME: C/I */
if (ber >
- lchan->tch.amr_mr.bts_mode[chan_state->dl_cmr-1].threshold) {
+ lchan->tch.amr_mr.mode[chan_state->dl_cmr-1].threshold) {
LOGPLCHAN(lchan, DLOOP, LOGL_DEBUG, "Degrading due to BER %.6f "
"from codec id %d to %d\n", ber, chan_state->dl_cmr,
chan_state->dl_cmr - 1);
@@ -87,8 +87,8 @@
} else if (chan_state->dl_cmr < chan_state->codecs - 1) {
/* degrade, if ber is above threshold FIXME: C/I*/
if (ber <
- lchan->tch.amr_mr.bts_mode[chan_state->dl_cmr].threshold
- - lchan->tch.amr_mr.bts_mode[chan_state->dl_cmr].hysteresis) {
+ lchan->tch.amr_mr.mode[chan_state->dl_cmr].threshold
+ - lchan->tch.amr_mr.mode[chan_state->dl_cmr].hysteresis) {
LOGPLCHAN(lchan, DLOOP, LOGL_DEBUG, "Upgrading due to BER %.6f "
"from codec id %d to %d\n", ber, chan_state->dl_cmr,
chan_state->dl_cmr + 1);
diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c
index 5ac3e31..92180b5 100644
--- a/src/osmo-bts-trx/l1_if.c
+++ b/src/osmo-bts-trx/l1_if.c
@@ -428,10 +428,10 @@
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
lchan->tch.amr_mr.num_modes,
- lchan->tch.amr_mr.bts_mode[0].mode,
- lchan->tch.amr_mr.bts_mode[1].mode,
- lchan->tch.amr_mr.bts_mode[2].mode,
- lchan->tch.amr_mr.bts_mode[3].mode,
+ lchan->tch.amr_mr.mode[0].mode,
+ lchan->tch.amr_mr.mode[1].mode,
+ lchan->tch.amr_mr.mode[2].mode,
+ lchan->tch.amr_mr.mode[3].mode,
amr_get_initial_mode(lchan),
(lchan->ho.active == 1));
/* set lchan active */
@@ -457,10 +457,10 @@
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
lchan->tch.amr_mr.num_modes,
- lchan->tch.amr_mr.bts_mode[0].mode,
- lchan->tch.amr_mr.bts_mode[1].mode,
- lchan->tch.amr_mr.bts_mode[2].mode,
- lchan->tch.amr_mr.bts_mode[3].mode,
+ lchan->tch.amr_mr.mode[0].mode,
+ lchan->tch.amr_mr.mode[1].mode,
+ lchan->tch.amr_mr.mode[2].mode,
+ lchan->tch.amr_mr.mode[3].mode,
amr_get_initial_mode(lchan),
0);
break;
diff --git a/src/osmo-bts-virtual/l1_if.c b/src/osmo-bts-virtual/l1_if.c
index 0d36db1..bba274d 100644
--- a/src/osmo-bts-virtual/l1_if.c
+++ b/src/osmo-bts-virtual/l1_if.c
@@ -384,10 +384,10 @@
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
lchan->tch.amr_mr.num_modes,
- lchan->tch.amr_mr.bts_mode[0].mode,
- lchan->tch.amr_mr.bts_mode[1].mode,
- lchan->tch.amr_mr.bts_mode[2].mode,
- lchan->tch.amr_mr.bts_mode[3].mode,
+ lchan->tch.amr_mr.mode[0].mode,
+ lchan->tch.amr_mr.mode[1].mode,
+ lchan->tch.amr_mr.mode[2].mode,
+ lchan->tch.amr_mr.mode[3].mode,
amr_get_initial_mode(lchan),
(lchan->ho.active == 1));
/* set lchan active */
@@ -410,10 +410,10 @@
trx_sched_set_mode(lchan->ts, chan_nr,
lchan->rsl_cmode, lchan->tch_mode,
lchan->tch.amr_mr.num_modes,
- lchan->tch.amr_mr.bts_mode[0].mode,
- lchan->tch.amr_mr.bts_mode[1].mode,
- lchan->tch.amr_mr.bts_mode[2].mode,
- lchan->tch.amr_mr.bts_mode[3].mode,
+ lchan->tch.amr_mr.mode[0].mode,
+ lchan->tch.amr_mr.mode[1].mode,
+ lchan->tch.amr_mr.mode[2].mode,
+ lchan->tch.amr_mr.mode[3].mode,
amr_get_initial_mode(lchan),
0);
break;
diff --git a/tests/amr/amr_test.c b/tests/amr/amr_test.c
index 941212a..480ff73 100644
--- a/tests/amr/amr_test.c
+++ b/tests/amr/amr_test.c
@@ -159,9 +159,9 @@
printf("amr_parse_mr_conf() -> num_modes=%u\n", mrc.num_modes);
for (i = 0; i < mrc.num_modes; i++) {
printf(" Mode[%u] = %u/%u/%u\n",
- i, mrc.bts_mode[i].mode,
- mrc.bts_mode[i].threshold,
- mrc.bts_mode[i].hysteresis);
+ i, mrc.mode[i].mode,
+ mrc.mode[i].threshold,
+ mrc.mode[i].hysteresis);
}
mrc_enc[1] = 0xff; /* all codec modes active */
--
To view, visit
https://gerrit.osmocom.org/c/osmo-bts/+/27772
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I7442360ed857554440a0b9854f2d2bbab9dc5a71
Gerrit-Change-Number: 27772
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange