diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2022-09-07 00:09:36 +0200 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2023-03-02 17:56:48 +0100 |
commit | 3db22c611681ebd5c170018fb493e8fb53a52a9e (patch) | |
tree | 4d4981c28fbc1f05f74c33dbea9361fe8e6ac1ec | |
parent | ce8d39d97cf640a43b80f21615478385b0874637 (diff) |
cosmetic: clarify test_codec_support_bts()
Change-Id: I13d9b158d08f4938c5aa47ef3134819a4b1f7d29
-rw-r--r-- | src/osmo-bsc/codec_pref.c | 38 |
1 files changed, 16 insertions, 22 deletions
diff --git a/src/osmo-bsc/codec_pref.c b/src/osmo-bsc/codec_pref.c index 581872ae0..11421a9dd 100644 --- a/src/osmo-bsc/codec_pref.c +++ b/src/osmo-bsc/codec_pref.c @@ -178,19 +178,22 @@ static bool test_codec_support_bts_rate(const struct gsm_bts *bts, const bool fu { unsigned int i; struct gsm_bts_trx *trx; - enum gsm_phys_chan_config pchan; llist_for_each_entry(trx, &bts->trx_list, list) { for (i = 0; i < TRX_NR_TS; i++) { - pchan = trx->ts[i].pchan_from_config; - if (pchan == GSM_PCHAN_OSMO_DYN) - return true; - else if (full_rate && pchan == GSM_PCHAN_TCH_F) - return true; - else if (full_rate && pchan == GSM_PCHAN_TCH_F_PDCH) - return true; - else if (!full_rate && pchan == GSM_PCHAN_TCH_H) + switch (trx->ts[i].pchan_from_config) { + case GSM_PCHAN_OSMO_DYN: return true; + case GSM_PCHAN_TCH_F: + case GSM_PCHAN_TCH_F_PDCH: + if (full_rate) + return true; + case GSM_PCHAN_TCH_H: + if (!full_rate) + return true; + default: + continue; + } } } @@ -220,21 +223,12 @@ static bool test_codec_support_bts(const struct gsm_bts *bts, uint8_t perm_spch) * selectively disable GSM-RF per BTS via VTY. */ return true; case GSM0808_PERM_FR2: - if (bts_codec->efr) - return true; - break; + return (bool)bts_codec->efr; case GSM0808_PERM_FR3: - if (bts_codec->amr) - return true; - break; - case GSM0808_PERM_HR1: - if (bts_codec->hr) - return true; - break; case GSM0808_PERM_HR3: - if (bts_codec->amr) - return true; - break; + return (bool)bts_codec->amr; + case GSM0808_PERM_HR1: + return (bool)bts_codec->hr; default: return false; } |