generalize function for calculation of the paging group
This commit is contained in:
parent
bc82f92a8d
commit
1cf43ece12
|
@ -54,19 +54,20 @@ void *tall_paging_ctx;
|
|||
|
||||
#define PAGING_TIMER 0, 500000
|
||||
|
||||
static unsigned int calculate_group(struct gsm_bts *bts, struct gsm_subscriber *subscr)
|
||||
static unsigned int
|
||||
gsm0502_calc_paging_group(struct gsm48_control_channel_descr *chan_desc, uint64_t imsi)
|
||||
{
|
||||
int ccch_conf;
|
||||
int bs_cc_chans;
|
||||
int blocks;
|
||||
unsigned int group;
|
||||
|
||||
ccch_conf = bts->si_common.chan_desc.ccch_conf;
|
||||
ccch_conf = chan_desc->ccch_conf;
|
||||
bs_cc_chans = rsl_ccch_conf_to_bs_cc_chans(ccch_conf);
|
||||
/* code word + 2, as 2 channels equals 0x0 */
|
||||
blocks = gsm48_number_of_paging_subchannels(&bts->si_common.chan_desc);
|
||||
group = gsm0502_get_paging_group(str_to_imsi(subscr->imsi),
|
||||
bs_cc_chans, blocks);
|
||||
blocks = gsm48_number_of_paging_subchannels(chan_desc);
|
||||
group = gsm0502_get_paging_group(imsi, bs_cc_chans, blocks);
|
||||
|
||||
return group;
|
||||
}
|
||||
|
||||
|
@ -87,6 +88,7 @@ static void page_ms(struct gsm_paging_request *request)
|
|||
uint8_t mi[128];
|
||||
unsigned int mi_len;
|
||||
unsigned int page_group;
|
||||
struct gsm_bts *bts = request->bts;
|
||||
|
||||
LOGP(DPAG, LOGL_INFO, "Going to send paging commands: imsi: '%s' tmsi: '0x%x'\n",
|
||||
request->subscr->imsi, request->subscr->tmsi);
|
||||
|
@ -96,8 +98,9 @@ static void page_ms(struct gsm_paging_request *request)
|
|||
else
|
||||
mi_len = gsm48_generate_mid_from_tmsi(mi, request->subscr->tmsi);
|
||||
|
||||
page_group = calculate_group(request->bts, request->subscr);
|
||||
gsm0808_page(request->bts, page_group, mi_len, mi, request->chan_type);
|
||||
page_group = gsm0502_calc_paging_group(&bts->si_common.chan_desc,
|
||||
str_to_imsi(request->subscr->imsi));
|
||||
gsm0808_page(bts, page_group, mi_len, mi, request->chan_type);
|
||||
}
|
||||
|
||||
static void paging_schedule_if_needed(struct gsm_bts_paging_state *paging_bts)
|
||||
|
|
Loading…
Reference in New Issue