summaryrefslogtreecommitdiffstats
path: root/src/host/layer23/src/mobile/gsm322.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/host/layer23/src/mobile/gsm322.c')
-rw-r--r--src/host/layer23/src/mobile/gsm322.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/host/layer23/src/mobile/gsm322.c b/src/host/layer23/src/mobile/gsm322.c
index bfe63296..cfd70d8b 100644
--- a/src/host/layer23/src/mobile/gsm322.c
+++ b/src/host/layer23/src/mobile/gsm322.c
@@ -1867,7 +1867,7 @@ static int gsm322_cs_select(struct osmocom_ms *ms, int index, uint16_t mcc,
/* check C1 criteria not fullfilled */
// TODO: class 3 DCS mobile
- band = gsm_arfcn2band(index2arfcn(i));
+ gsm_arfcn2band_rc(index2arfcn(i), &band);
class = class_of_band(ms, band);
c1 = calculate_c1(DCS, rxlev2dbm(cs->list[i].rxlev),
s->rxlev_acc_min_db,
@@ -4129,7 +4129,8 @@ static int gsm322_nb_check(struct osmocom_ms *ms, int any)
struct gsm48_sysinfo *s;
int i = 0, reselect = 0;
uint16_t acc_class;
- int band, class;
+ int class;
+ enum gsm_band band;
struct gsm322_neighbour *nb;
time_t now;
char arfcn_text[10];
@@ -4200,7 +4201,7 @@ static int gsm322_nb_check(struct osmocom_ms *ms, int any)
nb->prio_low = 1;
/* get C1 & C2 */
- band = gsm_arfcn2band(nb->arfcn);
+ gsm_arfcn2band_rc(nb->arfcn, &band);
class = class_of_band(ms, band);
nb->c1 = calculate_c1(DNB, nb->rla_c_dbm, s->rxlev_acc_min_db,
ms_pwr_dbm(band, s->ms_txpwr_max_cch),
@@ -4697,9 +4698,11 @@ static int gsm322_nb_new_rxlev(struct gsm322_cellsel *cs)
struct llist_head sorted;
struct llist_head *lh, *lh2;
struct gsm48_sysinfo *s = &cs->sel_si;
- int band = gsm_arfcn2band(cs->arfcn);
- int class = class_of_band(cs->ms, band);
+ enum gsm_band band;
+ int class;
+ gsm_arfcn2band_rc(cs->arfcn, &band);
+ class = class_of_band(cs->ms, band);
/* calculate the RAL_C of serving cell */
if (cs->rxlev_count) {