path: root/include
diff options
authorMax <msuraev@sysmocom.de>2016-09-27 19:47:08 +0200
committerMax <msuraev@sysmocom.de>2016-09-30 18:57:00 +0200
commit9959f45d90166331dc8196c603184888bbe7f1e8 (patch)
tree1816bbd0edc32cceda96001e6d64d192dd838691 /include
parent7dffd553df0ca48f52d6faca70aa3e9cf2760840 (diff)
DTX: further AMR SID cache fixes (lc15, sysmo)
* consolidate AMR CMR and CMI handling in common/amr.c * use it in save_last_sid() * remove dead code * properly compute RTP payload length for AMR * use save_last_sid() for FR & HR as well * invalidate cached SID if SPEECH frame is received Fixes: OS #1800, #1801 Change-Id: I5a1c1ad0b0a295a50e67775a4db85f1d331755ed
Diffstat (limited to 'include')
2 files changed, 5 insertions, 3 deletions
diff --git a/include/osmo-bts/amr.h b/include/osmo-bts/amr.h
index 6bdc41fc..f3132874 100644
--- a/include/osmo-bts/amr.h
+++ b/include/osmo-bts/amr.h
@@ -11,7 +11,8 @@ void amr_log_mr_conf(int ss, int logl, const char *pfx,
int amr_parse_mr_conf(struct amr_multirate_conf *amr_mrc,
const uint8_t *mr_conf, unsigned int len);
-int get_amr_mode_idx(const struct amr_multirate_conf *amr_mrc, uint8_t cmi);
+void amr_set_mode_pref(uint8_t *data, const struct amr_multirate_conf *amr_mrc,
+ uint8_t cmi, uint8_t cmr);
unsigned int amr_get_initial_mode(struct gsm_lchan *lchan);
#endif /* _OSMO_BTS_AMR_H */
diff --git a/include/osmo-bts/msg_utils.h b/include/osmo-bts/msg_utils.h
index 14c23205..f07623d5 100644
--- a/include/osmo-bts/msg_utils.h
+++ b/include/osmo-bts/msg_utils.h
@@ -26,8 +26,9 @@ enum {
void lchan_set_marker(bool t, struct gsm_lchan *lchan);
-void save_last_sid(struct gsm_lchan *lchan, uint8_t *l1_payload, size_t length,
- uint32_t fn, bool update);
+void save_last_sid(struct gsm_lchan *lchan, const uint8_t *l1_payload,
+ size_t length, uint32_t fn, int update, uint8_t cmr,
+ int8_t cmi);
uint8_t repeat_last_sid(struct gsm_lchan *lchan, uint8_t *dst, uint32_t fn);
int msg_verify_ipa_structure(struct msgb *msg);
int msg_verify_oml_structure(struct msgb *msg);