RBS2000 RSL: Support for sending RSL PAGING CMD for GPRS
Change-Id: I66541f9b20e7fd67fbec329283fc3c821c970a56
This commit is contained in:
parent
f7e9a349ef
commit
baaf3e242e
|
@ -22,6 +22,7 @@
|
|||
#ifndef _RSL_H
|
||||
#define _RSL_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <osmocom/gsm/protocol/gsm_08_58.h>
|
||||
#include <osmocom/gsm/gsm_utils.h>
|
||||
|
||||
|
@ -49,7 +50,7 @@ int rsl_chan_activate_lchan(struct gsm_lchan *lchan, uint8_t act_type,
|
|||
int rsl_chan_mode_modify_req(struct gsm_lchan *ts);
|
||||
int rsl_encryption_cmd(struct msgb *msg);
|
||||
int rsl_paging_cmd(struct gsm_bts *bts, uint8_t paging_group, uint8_t len,
|
||||
uint8_t *ms_ident, uint8_t chan_needed);
|
||||
uint8_t *ms_ident, uint8_t chan_needed, bool is_gprs);
|
||||
int rsl_imm_assign_cmd(struct gsm_bts *bts, uint8_t len, uint8_t *val);
|
||||
|
||||
int rsl_data_request(struct msgb *msg, uint8_t link_id);
|
||||
|
|
|
@ -1007,7 +1007,7 @@ static int rsl_rx_rf_chan_rel_ack(struct gsm_lchan *lchan)
|
|||
}
|
||||
|
||||
int rsl_paging_cmd(struct gsm_bts *bts, uint8_t paging_group, uint8_t len,
|
||||
uint8_t *ms_ident, uint8_t chan_needed)
|
||||
uint8_t *ms_ident, uint8_t chan_needed, bool is_gprs)
|
||||
{
|
||||
struct abis_rsl_dchan_hdr *dh;
|
||||
struct msgb *msg = rsl_msgb_alloc();
|
||||
|
@ -1020,6 +1020,11 @@ int rsl_paging_cmd(struct gsm_bts *bts, uint8_t paging_group, uint8_t len,
|
|||
msgb_tlv_put(msg, RSL_IE_MS_IDENTITY, len-2, ms_ident+2);
|
||||
msgb_tv_put(msg, RSL_IE_CHAN_NEEDED, chan_needed);
|
||||
|
||||
/* Ericsson wants to have this IE in case a paging message
|
||||
* relates to packet paging */
|
||||
if (bts->type == GSM_BTS_TYPE_RBS2000 && is_gprs)
|
||||
msgb_tv_put(msg, RSL_IE_ERIC_PACKET_PAG_IND, 0);
|
||||
|
||||
msg->dst = bts->c0->rsl_link;
|
||||
|
||||
return abis_rsl_sendmsg(msg);
|
||||
|
|
|
@ -419,7 +419,7 @@ error:
|
|||
int gsm0808_page(struct gsm_bts *bts, unsigned int page_group, unsigned int mi_len,
|
||||
uint8_t *mi, int chan_type)
|
||||
{
|
||||
return rsl_paging_cmd(bts, page_group, mi_len, mi, chan_type);
|
||||
return rsl_paging_cmd(bts, page_group, mi_len, mi, chan_type, false);
|
||||
}
|
||||
|
||||
static void handle_ass_compl(struct gsm_subscriber_connection *conn,
|
||||
|
|
Loading…
Reference in New Issue