validate RSL "channel rate and type" against VGCS/VBS flags
We already have specfied (but not yet implemented BTS_FEAT_{VBS,VGCS}). Let's add code to validate "channel rate and type" compatibility in bts_supports_cm() once a BTS model would actually exhibit those feature flags. Change-Id: I5e7f65b44cef6e2f7ad4f152f80a1686a4f511e3 Related: OS#4851
This commit is contained in:
parent
f0510b6207
commit
44c94fdeae
|
@ -791,6 +791,16 @@ int bts_supports_cm(const struct gsm_bts *bts,
|
|||
return 1;
|
||||
case RSL_CMOD_SPD_SPEECH:
|
||||
break;
|
||||
case RSL_CMOD_CRT_TCH_GROUP_Bm:
|
||||
case RSL_CMOD_CRT_TCH_GROUP_Lm:
|
||||
if (!osmo_bts_has_feature(bts->features, BTS_FEAT_VGCS))
|
||||
return 0;
|
||||
break;
|
||||
case RSL_CMOD_CRT_TCH_BCAST_Bm:
|
||||
case RSL_CMOD_CRT_TCH_BCAST_Lm:
|
||||
if (!osmo_bts_has_feature(bts->features, BTS_FEAT_VBS))
|
||||
return 0;
|
||||
break;
|
||||
case RSL_CMOD_SPD_DATA:
|
||||
default:
|
||||
return 0;
|
||||
|
@ -804,6 +814,8 @@ int bts_supports_cm(const struct gsm_bts *bts,
|
|||
return 0;
|
||||
/* fall-through */
|
||||
case RSL_CMOD_CRT_TCH_Bm:
|
||||
case RSL_CMOD_CRT_TCH_GROUP_Bm:
|
||||
case RSL_CMOD_CRT_TCH_BCAST_Bm:
|
||||
switch (cm->chan_rate) {
|
||||
case RSL_CMOD_SP_GSM1:
|
||||
feature = BTS_FEAT_SPEECH_F_V1;
|
||||
|
@ -825,6 +837,8 @@ int bts_supports_cm(const struct gsm_bts *bts,
|
|||
return 0;
|
||||
/* fall-through */
|
||||
case RSL_CMOD_CRT_TCH_Lm:
|
||||
case RSL_CMOD_CRT_TCH_GROUP_Lm:
|
||||
case RSL_CMOD_CRT_TCH_BCAST_Lm:
|
||||
switch (cm->chan_rate) {
|
||||
case RSL_CMOD_SP_GSM1:
|
||||
feature = BTS_FEAT_SPEECH_H_V1;
|
||||
|
|
Loading…
Reference in New Issue