From 17954da56c2642229068da93b00b92a30e7a7be3 Mon Sep 17 00:00:00 2001 From: Vadim Yanitskiy Date: Sat, 5 Oct 2019 23:21:33 +0700 Subject: [PATCH] pcuif_proto.h: extend RACH.ind with TRX / TS numbers Since there can be multiple PDCH channels configured on different timeslots, different TRXes, and BTSes, the PTCCH/U handling code in OsmoPCU needs to know the exact origin of a given RACH.ind. Otherwise, it is not known which subscriber originated a given PTCCH/U indication, and hence it is impossible to send PTCCH/D Timing Advance notification properly. Fortunately, we can extend the RACH.ind message without even bumping the protocol version, because every single PDU has a fixed size defined by the largest message - INFO.ind. In case if the actual message payload is smaller, the rest is filled with a constant padding byte (0x00). Older versions of OsmoPCU will consider the new fields as padding, while the messages from older OsmoBTS versions will always have both fields set to 0x00. Since C0/TS0 cannot be configured to PDCH, this can be easily detected on the other end. Change-Id: If209001885ffb14b64a8e808df3700d85a4b2ef9 Related: OS#1545 --- include/osmocom/pcu/pcuif_proto.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/osmocom/pcu/pcuif_proto.h b/include/osmocom/pcu/pcuif_proto.h index fd989a5e..e88607e6 100644 --- a/include/osmocom/pcu/pcuif_proto.h +++ b/include/osmocom/pcu/pcuif_proto.h @@ -108,6 +108,8 @@ struct gsm_pcu_if_rach_ind { uint16_t arfcn; uint8_t is_11bit; uint8_t burst_type; + uint8_t trx_nr; + uint8_t ts_nr; } __attribute__ ((packed)); struct gsm_pcu_if_info_trx {