diff options
author | Philipp Maier <pmaier@sysmocom.de> | 2016-12-02 19:04:34 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-05-25 14:04:08 +0200 |
commit | f8aeb2cccb767c8823e1c851efd8de86a226033e (patch) | |
tree | ce1e791393a0bbf7c66c7519d25f4dd40832c33a /openbsc/include | |
parent | f14cb3535cf469632b5da63f35b31aa79fd0c5c3 (diff) |
pcu_sock: Forward imm.ass PCU originated messages
The PCU sends imm.ass messages in response to a rach request. Those
messages need to be forwarded to RSL in order to get them send. This
commit introduces the required functionality for that
Change-Id: Ice099c4ed7008200ed179e581aba1899c6c29455
Diffstat (limited to 'openbsc/include')
-rw-r--r-- | openbsc/include/openbsc/pcu_if.h | 4 | ||||
-rw-r--r-- | openbsc/include/openbsc/pcuif_proto.h | 17 |
2 files changed, 21 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/pcu_if.h b/openbsc/include/openbsc/pcu_if.h index 68d417411..0c355b7a6 100644 --- a/openbsc/include/openbsc/pcu_if.h +++ b/openbsc/include/openbsc/pcu_if.h @@ -24,6 +24,10 @@ int pcu_tx_rach_ind(struct gsm_bts *bts, int16_t qta, uint16_t ra, uint32_t fn, /* Confirm the sending of an immediate assignment to the pcu */ int pcu_tx_imm_ass_sent(struct gsm_bts *bts, uint32_t tlli); + +/* Confirm the sending of an immediate assignment to the pcu */ +int pcu_tx_imm_ass_sent(struct gsm_bts *bts, uint32_t tlli); + /* Open connection to PCU */ int pcu_sock_init(const char *path, struct gsm_bts *bts); diff --git a/openbsc/include/openbsc/pcuif_proto.h b/openbsc/include/openbsc/pcuif_proto.h index 3fc500b5a..eb28d66bc 100644 --- a/openbsc/include/openbsc/pcuif_proto.h +++ b/openbsc/include/openbsc/pcuif_proto.h @@ -7,6 +7,7 @@ #define PCU_IF_MSG_DATA_REQ 0x00 /* send data to given channel */ #define PCU_IF_MSG_DATA_CNF 0x01 /* confirm (e.g. transmission on PCH) */ #define PCU_IF_MSG_DATA_IND 0x02 /* receive data from given channel */ +#define PCU_IF_MSG_DATA_CNF_DT 0x11 /* confirm (with direct tlli) */ #define PCU_IF_MSG_RTS_REQ 0x10 /* ready to send request */ #define PCU_IF_MSG_RACH_IND 0x22 /* receive RACH */ #define PCU_IF_MSG_INFO_IND 0x32 /* retrieve BTS info */ @@ -56,6 +57,21 @@ struct gsm_pcu_if_data { int16_t lqual_cb; /* !< \brief Link quality in centiBel */ } __attribute__ ((packed)); +/* data confirmation with direct tlli (instead of raw mac block with tlli) */ +struct gsm_pcu_if_data_cnf_dt { + uint8_t sapi; + uint32_t tlli; + uint32_t fn; + uint16_t arfcn; + uint8_t trx_nr; + uint8_t ts_nr; + uint8_t block_nr; + int8_t rssi; + uint16_t ber10k; /*!< \brief BER in units of 0.01% */ + int16_t ta_offs_qbits; /* !< \brief Burst TA Offset in quarter bits */ + int16_t lqual_cb; /* !< \brief Link quality in centiBel */ +} __attribute__ ((packed)); + struct gsm_pcu_if_rts_req { uint8_t sapi; uint8_t spare[3]; @@ -146,6 +162,7 @@ struct gsm_pcu_if { union { struct gsm_pcu_if_data data_req; struct gsm_pcu_if_data data_cnf; + struct gsm_pcu_if_data_cnf_dt data_cnf_dt; struct gsm_pcu_if_data data_ind; struct gsm_pcu_if_rts_req rts_req; struct gsm_pcu_if_rach_ind rach_ind; |