This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Neels Hofmeyr gerrit-no-reply at lists.osmocom.orgNeels Hofmeyr has uploaded this change for review. ( https://gerrit.osmocom.org/9284 Change subject: use libosmocore's gsm0808_permitted_speech(), gsm0808_chosen_channel() ...................................................................... use libosmocore's gsm0808_permitted_speech(), gsm0808_chosen_channel() The guts of bssap_speech_from_lchan() and lchan_to_chosen_channel() have been moved to libosmocore; call that. The functions become mere wrappers to feed the right lchan members. Depends: I8a3cc5d4548e9a78d945d54c69ccced251edcec9 (libosmocore) Change-Id: Ib5c940a9dae11c5e26d4b47fa9d95fef889ad2f6 --- M src/libbsc/bsc_subscr_conn_fsm.c 1 file changed, 5 insertions(+), 72 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/84/9284/1 diff --git a/src/libbsc/bsc_subscr_conn_fsm.c b/src/libbsc/bsc_subscr_conn_fsm.c index 7617dba..e1706d2 100644 --- a/src/libbsc/bsc_subscr_conn_fsm.c +++ b/src/libbsc/bsc_subscr_conn_fsm.c @@ -147,82 +147,15 @@ /* See TS 48.008 3.2.2.11 Channel Type Octet 5 */ static int bssap_speech_from_lchan(const struct gsm_lchan *lchan) { - switch (lchan->type) { - case GSM_LCHAN_TCH_H: - switch (lchan->tch_mode) { - case GSM48_CMODE_SPEECH_V1: - return 0x05; - case GSM48_CMODE_SPEECH_AMR: - return 0x25; - default: - return -1; - } - break; - case GSM_LCHAN_TCH_F: - switch (lchan->tch_mode) { - case GSM48_CMODE_SPEECH_V1: - return 0x01; - case GSM48_CMODE_SPEECH_EFR: - return 0x11; - case GSM48_CMODE_SPEECH_AMR: - return 0x21; - default: - return -1; - } - break; - default: - return -1; - } + return gsm0808_permitted_speech(lchan->type, lchan->tch_mode); } -/* GSM 08.08 3.2.2.33 */ static uint8_t lchan_to_chosen_channel(struct gsm_lchan *lchan) { - uint8_t channel_mode = 0, channel = 0; - - switch (lchan->tch_mode) { - case GSM48_CMODE_SPEECH_V1: - case GSM48_CMODE_SPEECH_EFR: - case GSM48_CMODE_SPEECH_AMR: - channel_mode = 0x9; - break; - case GSM48_CMODE_SIGN: - channel_mode = 0x8; - break; - case GSM48_CMODE_DATA_14k5: - channel_mode = 0xe; - break; - case GSM48_CMODE_DATA_12k0: - channel_mode = 0xb; - break; - case GSM48_CMODE_DATA_6k0: - channel_mode = 0xc; - break; - case GSM48_CMODE_DATA_3k6: - channel_mode = 0xd; - break; - } - - switch (lchan->type) { - case GSM_LCHAN_NONE: - channel = 0x0; - break; - case GSM_LCHAN_SDCCH: - channel = 0x1; - break; - case GSM_LCHAN_TCH_F: - channel = 0x8; - break; - case GSM_LCHAN_TCH_H: - channel = 0x9; - break; - case GSM_LCHAN_UNKNOWN: - default: - LOGP(DMSC, LOGL_ERROR, "Unknown lchan type: %p\n", lchan); - break; - } - - return channel_mode << 4 | channel; + uint8_t chosen_channel = gsm0808_chosen_channel(lchan->tch_mode, lchan->type); + if (!chosen_channel) + LOGP(DMSC, LOGL_ERROR, "Unknown lchan type or TCH mode: %s\n", gsm_lchan_name(lchan)); + return chosen_channel; } /* Generate and send assignment complete message */ -- To view, visit https://gerrit.osmocom.org/9284 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ib5c940a9dae11c5e26d4b47fa9d95fef889ad2f6 Gerrit-Change-Number: 9284 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20180524/89dc5b78/attachment.htm>