diff options
author | Andreas Eversberg <jolly@eversberg.eu> | 2013-03-26 08:20:43 +0100 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2017-12-01 03:37:42 +0100 |
commit | ba4bc50bac8e94982503af42c853295939bd76b5 (patch) | |
tree | 1570c68966978a8d10cdf4e67cfb99e10c2a4c82 /include/osmocom/bsc | |
parent | dad9f04a811c8e1800ecd08eddbcbb445e169be4 (diff) |
Add full AMR multirate IE support with VTY config for MS and BTS side
Diffstat (limited to 'include/osmocom/bsc')
-rw-r--r-- | include/osmocom/bsc/bsc_api.h | 2 | ||||
-rw-r--r-- | include/osmocom/bsc/gsm_04_08.h | 3 | ||||
-rw-r--r-- | include/osmocom/bsc/gsm_data_shared.h | 13 |
3 files changed, 14 insertions, 4 deletions
diff --git a/include/osmocom/bsc/bsc_api.h b/include/osmocom/bsc/bsc_api.h index f52984f39..b28d1980e 100644 --- a/include/osmocom/bsc/bsc_api.h +++ b/include/osmocom/bsc/bsc_api.h @@ -40,7 +40,7 @@ struct bsc_api { * not implemented AMR5.9 will be used. */ void (*mr_config)(struct gsm_subscriber_connection *conn, - struct gsm48_multi_rate_conf *conf); + uint8_t *mr_ms_lv, uint8_t *mr_bts_lv); }; int bsc_api_init(struct gsm_network *network, struct bsc_api *api); diff --git a/include/osmocom/bsc/gsm_04_08.h b/include/osmocom/bsc/gsm_04_08.h index 068672059..d071ad595 100644 --- a/include/osmocom/bsc/gsm_04_08.h +++ b/include/osmocom/bsc/gsm_04_08.h @@ -14,6 +14,7 @@ struct gsm_subscriber; struct gsm_network; struct gsm_trans; struct gsm_subscriber_connection; +struct amr_multirate_conf; #define GSM48_ALLOC_SIZE 2048 #define GSM48_ALLOC_HEADROOM 256 @@ -75,4 +76,6 @@ void allocate_security_operation(struct gsm_subscriber_connection *conn); int tch_frame_down(struct gsm_network *net, uint32_t callref, struct gsm_data_frame *data); +int gsm48_multirate_config(uint8_t *lv, struct amr_multirate_conf *mr, int ms); + #endif diff --git a/include/osmocom/bsc/gsm_data_shared.h b/include/osmocom/bsc/gsm_data_shared.h index ded00307a..07fa9823d 100644 --- a/include/osmocom/bsc/gsm_data_shared.h +++ b/include/osmocom/bsc/gsm_data_shared.h @@ -151,8 +151,10 @@ struct bts_codec_conf { struct amr_mode { uint8_t mode; - uint8_t threshold; - uint8_t hysteresis; + uint8_t threshold_ms; + uint8_t hysteresis_ms; + uint8_t threshold_bts; + uint8_t hysteresis_bts; }; struct amr_multirate_conf { uint8_t gsm48_ie[2]; @@ -207,7 +209,8 @@ struct gsm_lchan { } encr; /* AMR bits */ - struct gsm48_multi_rate_conf mr_conf; + uint8_t mr_ms_lv[7]; + uint8_t mr_bts_lv[7]; /* Established data link layer services */ uint8_t sapis[8]; @@ -713,6 +716,10 @@ struct gsm_bts { /* supported codecs beside FR */ struct bts_codec_conf codec; + + /* full and half rate multirate config */ + struct amr_multirate_conf mr_full; + struct amr_multirate_conf mr_half; #endif /* ROLE_BSC */ void *role; }; |