log reception of PCU_IF_MSG_PAG_REQ messages from osmo-pcu
osmo-pcu currently sends paging requests in PCU_IF_MSG_DATA_REQ messages, rather than PCU_IF_MSG_PAG_REQ. Clarify a comment which already alluded to this, and leave an explicit log entry if a PCU_IF_MSG_PAG_REQ message is received. Change-Id: I75fd8f051f943d876b5614fa088fff7e56b310ab Related: OS#3018
This commit is contained in:
parent
954e4d8321
commit
0257f52835
|
@ -481,13 +481,7 @@ static int pcu_rx_data_req(struct gsm_bts *bts, uint8_t msg_type,
|
||||||
|
|
||||||
switch (data_req->sapi) {
|
switch (data_req->sapi) {
|
||||||
case PCU_IF_SAPI_PCH:
|
case PCU_IF_SAPI_PCH:
|
||||||
if (msg_type == PCU_IF_MSG_PAG_REQ) {
|
paging_add_imm_ass(bts->paging_state, data_req->data, data_req->len);
|
||||||
/* FIXME: Add function to schedule paging request.
|
|
||||||
* This might not be required, if PCU_IF_MSG_DATA_REQ
|
|
||||||
* is used instead. */
|
|
||||||
} else {
|
|
||||||
paging_add_imm_ass(bts->paging_state, data_req->data, data_req->len);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case PCU_IF_SAPI_AGCH:
|
case PCU_IF_SAPI_AGCH:
|
||||||
msg = msgb_alloc(data_req->len, "pcu_agch");
|
msg = msgb_alloc(data_req->len, "pcu_agch");
|
||||||
|
@ -543,6 +537,24 @@ static int pcu_rx_data_req(struct gsm_bts *bts, uint8_t msg_type,
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int pcu_rx_pag_req(struct gsm_bts *bts, uint8_t msg_type,
|
||||||
|
struct gsm_pcu_if_pag_req *pag_req)
|
||||||
|
{
|
||||||
|
int rc = 0;
|
||||||
|
|
||||||
|
OSMO_ASSERT(msg_type == PCU_IF_MSG_PAG_REQ);
|
||||||
|
|
||||||
|
/* FIXME: Add function to schedule paging request.
|
||||||
|
* At present, osmo-pcu sends paging requests in PCU_IF_MSG_DATA_REQ
|
||||||
|
* messages which are processed by pcu_rx_data_req().
|
||||||
|
* This code path is not triggered in practice. */
|
||||||
|
LOGP(DPCU, LOGL_NOTICE, "Paging request received: chan_needed=%d length=%d "
|
||||||
|
"(dropping message because support for PCU_IF_MSG_PAG_REQ is not yet implemented)\n",
|
||||||
|
pag_req->chan_needed, pag_req->identity_lv[0]);
|
||||||
|
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
int pcu_tx_si13(const struct gsm_bts *bts, bool enable)
|
int pcu_tx_si13(const struct gsm_bts *bts, bool enable)
|
||||||
{
|
{
|
||||||
/* the SI is per-BTS so it doesn't matter which TRX we use */
|
/* the SI is per-BTS so it doesn't matter which TRX we use */
|
||||||
|
@ -631,9 +643,11 @@ static int pcu_rx(struct gsm_network *net, uint8_t msg_type,
|
||||||
|
|
||||||
switch (msg_type) {
|
switch (msg_type) {
|
||||||
case PCU_IF_MSG_DATA_REQ:
|
case PCU_IF_MSG_DATA_REQ:
|
||||||
case PCU_IF_MSG_PAG_REQ:
|
|
||||||
rc = pcu_rx_data_req(bts, msg_type, &pcu_prim->u.data_req);
|
rc = pcu_rx_data_req(bts, msg_type, &pcu_prim->u.data_req);
|
||||||
break;
|
break;
|
||||||
|
case PCU_IF_MSG_PAG_REQ:
|
||||||
|
rc = pcu_rx_pag_req(bts, msg_type, &pcu_prim->u.pag_req);
|
||||||
|
break;
|
||||||
case PCU_IF_MSG_ACT_REQ:
|
case PCU_IF_MSG_ACT_REQ:
|
||||||
rc = pcu_rx_act_req(bts, &pcu_prim->u.act_req);
|
rc = pcu_rx_act_req(bts, &pcu_prim->u.act_req);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue