diff options
author | Max <msuraev@sysmocom.de> | 2016-06-17 13:10:38 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-06-18 11:35:12 +0000 |
commit | 61372a20de695a151611753689ee9a3018b101f6 (patch) | |
tree | 7b1b1e69c4c79262eb03806da79457d59cf98020 /src/common/l1sap.c | |
parent | c3fb0dcc8cd01a84942d06267003478b972feadb (diff) |
Move copy-pasted code into common part
Related: OS#1750
Change-Id: Ic4342eaf7e32a0e9a5f2b16dd196a1f5f03152a9
Diffstat (limited to 'src/common/l1sap.c')
-rw-r--r-- | src/common/l1sap.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c index 0af73436..0a6bc49d 100644 --- a/src/common/l1sap.c +++ b/src/common/l1sap.c @@ -104,6 +104,26 @@ struct msgb *l1sap_msgb_alloc(unsigned int l2_len) return msg; } +int add_l1sap_header(struct gsm_bts_trx *trx, struct msgb *rmsg, + struct gsm_lchan *lchan, uint8_t chan_nr, uint32_t fn) +{ + struct osmo_phsap_prim *l1sap; + + LOGP(DL1C, LOGL_DEBUG, "%s Rx -> RTP: %s\n", + gsm_lchan_name(lchan), osmo_hexdump(rmsg->data, rmsg->len)); + + rmsg->l2h = rmsg->data; + msgb_push(rmsg, sizeof(*l1sap)); + rmsg->l1h = rmsg->data; + l1sap = msgb_l1sap_prim(rmsg); + osmo_prim_init(&l1sap->oph, SAP_GSM_PH, PRIM_TCH, PRIM_OP_INDICATION, + rmsg); + l1sap->u.tch.chan_nr = chan_nr; + l1sap->u.tch.fn = fn; + + return l1sap_up(trx, l1sap); +} + static int l1sap_tx_ciph_req(struct gsm_bts_trx *trx, uint8_t chan_nr, uint8_t downlink, uint8_t uplink) { |