diff options
Diffstat (limited to 'src/pcu_l1_if.cpp')
-rw-r--r-- | src/pcu_l1_if.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/pcu_l1_if.cpp b/src/pcu_l1_if.cpp index e5fbad98..352fc0d3 100644 --- a/src/pcu_l1_if.cpp +++ b/src/pcu_l1_if.cpp @@ -139,19 +139,14 @@ void pcu_l1if_tx_ptcch(msgb *msg, uint8_t trx, uint8_t ts, uint16_t arfcn, msgb_free(msg); } -void pcu_l1if_tx_agch(bitvec * block, int plen) +void pcu_l1if_tx_agch(uint8_t *data) { - uint8_t data[23]; /* prefix PLEN */ - - /* FIXME: why does OpenBTS has no PLEN and no fill in message? */ - bitvec_pack(block, data + 1); - data[0] = (plen << 2) | 0x01; pcu_tx_data_req(0, 0, PCU_IF_SAPI_AGCH, 0, 0, 0, data, 23); } -void pcu_l1if_tx_pch(bitvec * block, int plen, char *imsi) +void pcu_l1if_tx_pch(uint8_t *data, char *imsi) { - uint8_t data[23+3]; /* prefix PLEN */ + uint8_t pch_data[23+3]; /* paging group */ if (!imsi || strlen(imsi) < 3) @@ -161,8 +156,7 @@ void pcu_l1if_tx_pch(bitvec * block, int plen, char *imsi) data[1] = imsi[1]; data[2] = imsi[2]; - bitvec_pack(block, data + 3+1); - data[3] = (plen << 2) | 0x01; + memcpy(pch_data + 3, data, 23); pcu_tx_data_req(0, 0, PCU_IF_SAPI_PCH, 0, 0, 0, data, 23+3); } |