fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmocom-bb/+/35915?usp=email )
Change subject: mobile: use osmo_csd_chan_mode_rate_desc[] from libosmogsm ......................................................................
mobile: use osmo_csd_chan_mode_rate_desc[] from libosmogsm
Change-Id: I862329fbf19c515be88f2c23989b3991886a2cf4 Depends: libosmocore.git Ie230e09d496c9b791981d8ee04902fc9966ed6d7 Related: OS#4396 --- M src/host/layer23/src/mobile/tch_data.c 1 file changed, 15 insertions(+), 40 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/15/35915/1
diff --git a/src/host/layer23/src/mobile/tch_data.c b/src/host/layer23/src/mobile/tch_data.c index b6b3be6..9a190ac 100644 --- a/src/host/layer23/src/mobile/tch_data.c +++ b/src/host/layer23/src/mobile/tch_data.c @@ -38,42 +38,6 @@
#include <l1ctl_proto.h>
-struct csd_v110_frame_desc { - uint16_t num_blocks; - uint16_t num_bits; -}; - -struct csd_v110_lchan_desc { - struct csd_v110_frame_desc fr; - struct csd_v110_frame_desc hr; -}; - -/* key is enum gsm48_chan_mode, so assuming a value in range 0..255 */ -const struct csd_v110_lchan_desc csd_v110_lchan_desc[256] = { -#if 0 - [GSM48_CMODE_DATA_14k5] = { - /* TCH/F14.4: 290 bits every 20 ms (14.5 kbit/s) */ - .fr = { .num_blocks = 1, .num_bits = 290 }, - }, -#endif - [GSM48_CMODE_DATA_12k0] = { - /* TCH/F9.6: 4 * 60 bits every 20 ms (12.0 kbit/s) */ - .fr = { .num_blocks = 4, .num_bits = 60 }, - }, - [GSM48_CMODE_DATA_6k0] = { - /* TCH/F4.8: 2 * 60 bits every 20 ms (6.0 kbit/s) */ - .fr = { .num_blocks = 2, .num_bits = 60 }, - /* TCH/H4.8: 4 * 60 bits every 40 ms (6.0 kbit/s) */ - .hr = { .num_blocks = 4, .num_bits = 60 }, - }, - [GSM48_CMODE_DATA_3k6] = { - /* TCH/F2.4: 2 * 36 bits every 20 ms (3.6 kbit/s) */ - .fr = { .num_blocks = 2, .num_bits = 36 }, - /* TCH/H2.4: 4 * 36 bits every 40 ms (3.6 kbit/s) */ - .hr = { .num_blocks = 4, .num_bits = 36 }, - }, -}; - struct tch_csd_sock_state *tch_csd_sock_init(struct osmocom_ms *ms); void tch_csd_sock_recv(struct tch_csd_sock_state *state, struct msgb *msg); void tch_csd_sock_send(struct tch_csd_sock_state *state, struct msgb *msg); @@ -295,9 +259,9 @@ size_t data_len;
if ((cd->chan_nr & RSL_CHAN_NR_MASK) == RSL_CHAN_Bm_ACCHs) - desc = &csd_v110_lchan_desc[cd->mode].fr; + desc = &osmo_csd_chan_mode_rate_desc[cd->mode].fr; else /* RSL_CHAN_Lm_ACCHs */ - desc = &csd_v110_lchan_desc[cd->mode].hr; + desc = &osmo_csd_chan_mode_rate_desc[cd->mode].hr; if (OSMO_UNLIKELY(desc->num_blocks == 0)) return -ENOTSUP;
@@ -355,9 +319,9 @@ size_t data_len;
if ((cd->chan_nr & RSL_CHAN_NR_MASK) == RSL_CHAN_Bm_ACCHs) - desc = &csd_v110_lchan_desc[cd->mode].fr; + desc = &osmo_csd_chan_mode_rate_desc[cd->mode].fr; else /* RSL_CHAN_Lm_ACCHs */ - desc = &csd_v110_lchan_desc[cd->mode].hr; + desc = &osmo_csd_chan_mode_rate_desc[cd->mode].hr; if (OSMO_UNLIKELY(desc->num_blocks == 0)) return -ENOTSUP;