aboutsummaryrefslogtreecommitdiffstats
path: root/src/osmo-bts-litecell15
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-07-21 21:56:23 +0200
committerHarald Welte <laforge@gnumonks.org>2017-07-21 22:15:28 +0200
commit717cdf540558b95f31e4c8ea58d0fc9e06429228 (patch)
treedd55b087f46cdd03418b6338bfcfdae3da5a1bff /src/osmo-bts-litecell15
parent9530a404ce50fce6762dc64c12bb014fcfd43918 (diff)
Introduce GSMTAP categories
When looking at GSMTAP output so far, one is easily overwhelmed by way too much information being presented. A lot of is consists of DUMMY frames, which are probably of lowest interest, ever. A concept similar to the "gsmtap-sapi" of OsmoBTS is introduced, by which the user can configure which particular categories (uplink or downlink control or data, gprs or egprs, ...) he actually wants to see in his logs. Change-Id: I297183690e98a7234dfc1608c18847d8981306e4
Diffstat (limited to 'src/osmo-bts-litecell15')
-rw-r--r--src/osmo-bts-litecell15/lc15_l1_if.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/osmo-bts-litecell15/lc15_l1_if.c b/src/osmo-bts-litecell15/lc15_l1_if.c
index 12a977ba..c82ddba2 100644
--- a/src/osmo-bts-litecell15/lc15_l1_if.c
+++ b/src/osmo-bts-litecell15/lc15_l1_if.c
@@ -199,11 +199,6 @@ static int handle_ph_data_ind(struct lc15l1_hdl *fl1h,
if (data_ind->msgUnitParam.u8Size == 0)
return -1;
- gsmtap_send(fl1h->gsmtap, data_ind->u16Arfcn | GSMTAP_ARFCN_F_UPLINK,
- data_ind->u8Tn, GSMTAP_CHANNEL_PACCH, 0,
- data_ind->u32Fn, 0, 0, data_ind->msgUnitParam.u8Buffer+1,
- data_ind->msgUnitParam.u8Size-1);
-
get_meas(&meas, &data_ind->measParam);
bts_update_tbf_ta("PH-DATA", data_ind->u32Fn, fl1h->trx_no,
data_ind->u8Tn, qta2ta(meas.bto));
@@ -216,7 +211,7 @@ static int handle_ph_data_ind(struct lc15l1_hdl *fl1h,
!= GsmL1_PdtchPlType_Full)
break;
/* PDTCH / PACCH frame handling */
- pcu_rx_data_ind_pdtch(fl1h->trx_no, data_ind->u8Tn,
+ rc = pcu_rx_data_ind_pdtch(fl1h->trx_no, data_ind->u8Tn,
data_ind->msgUnitParam.u8Buffer + 1,
data_ind->msgUnitParam.u8Size - 1,
data_ind->u32Fn,
@@ -224,6 +219,7 @@ static int handle_ph_data_ind(struct lc15l1_hdl *fl1h,
break;
case GsmL1_Sapi_Ptcch:
// FIXME
+ rc = -1;
break;
default:
LOGP(DL1IF, LOGL_NOTICE, "Rx PH-DATA.ind for unknown L1 SAPI %s\n",
@@ -231,6 +227,13 @@ static int handle_ph_data_ind(struct lc15l1_hdl *fl1h,
break;
}
+ if (rc < 0) {
+ gsmtap_send(fl1h->gsmtap, data_ind->u16Arfcn | GSMTAP_ARFCN_F_UPLINK,
+ data_ind->u8Tn, GSMTAP_CHANNEL_PACCH, 0,
+ data_ind->u32Fn, 0, 0, data_ind->msgUnitParam.u8Buffer+1,
+ data_ind->msgUnitParam.u8Size-1);
+ }
+
return rc;
}
@@ -322,12 +325,6 @@ int l1if_pdch_req(void *obj, uint8_t ts, int is_ptcch, uint32_t fn,
msu_param->u8Size = len;
memcpy(msu_param->u8Buffer, data, len);
- gsmtap_send(fl1h->gsmtap, arfcn, data_req->u8Tn, GSMTAP_CHANNEL_PACCH,
- 0, data_req->u32Fn, 0, 0,
- data_req->msgUnitParam.u8Buffer,
- data_req->msgUnitParam.u8Size);
-
-
/* transmit */
if (osmo_wqueue_enqueue(&fl1h->write_q[MQ_PDTCH_WRITE], msg) != 0) {
LOGP(DL1IF, LOGL_ERROR, "PDTCH queue full. dropping message.\n");