mncc: Select the codec similar to the modify handling

In case the default TCH/F codec is "EFR" and we do an early
assignment from SDCCH to a TCH we would assign the TCH/H
codec. This is because the lchan_type will be neither a
TCH/H nor a TCH/F.

At the same time the _gsm48_lchan_modify code to check for
half vs. full-rate is the other way around. Align both.

It is full-rate if it is not a TCH_H. This will have some
other complications down the way (early assignment on
cells with only TCH/H). So the mode should not depend on
the _current_ channel but the kind of channel we want.
This commit is contained in:
Holger Hans Peter Freyther 2015-04-06 17:54:34 +02:00
parent b396b69cb2
commit 1e28eb83c0
1 changed files with 1 additions and 1 deletions

View File

@ -69,7 +69,7 @@ static uint8_t determine_lchan_mode(struct gsm_mncc *setup)
{
/* FIXME: check codec capabilities of the phone */
if (setup->lchan_type == GSM_LCHAN_TCH_F)
if (setup->lchan_type != GSM_LCHAN_TCH_H)
return mncc_int.def_codec[0];
else
return mncc_int.def_codec[1];