From a8d7ebb6fb147292e862921ce09bbe6b6b30ee51 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Mon, 27 May 2019 16:51:23 +0200 Subject: rsl: Add osmocom-specific extensions to RSL channel numbers for CBCH We don't really *need* it in libosmocore as such, but the lack of having all osmocom extensions listed here lead to using overlapping definitions: 0x18 was used for dynamic PDCH on the Abis side, but also for CBCH on the L1SAP side. Let's list them all here to increase visibility in case anyone wants to extend this further... Related: OS#4027 Change-Id: I93e557358cf1c1b622f77f906959df7ca6d5cb12 --- src/gsm/rsl.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/gsm') diff --git a/src/gsm/rsl.c b/src/gsm/rsl.c index 17774799..0409734e 100644 --- a/src/gsm/rsl.c +++ b/src/gsm/rsl.c @@ -209,6 +209,12 @@ int rsl_dec_chan_nr(uint8_t chan_nr, uint8_t *type, uint8_t *subch, uint8_t *tim } else if ((chan_nr & 0xf8) == RSL_CHAN_OSMO_PDCH) { *type = RSL_CHAN_OSMO_PDCH; *subch = 0; + } else if ((chan_nr & 0xf8) == RSL_CHAN_OSMO_CBCH4) { + *type = RSL_CHAN_OSMO_CBCH4; + *subch = 0; + } else if ((chan_nr & 0xf8) == RSL_CHAN_OSMO_CBCH8) { + *type = RSL_CHAN_OSMO_CBCH8; + *subch = 0; } else return -EINVAL; @@ -242,6 +248,10 @@ char *rsl_chan_nr_str_buf(char *buf, size_t buf_len, uint8_t chan_nr) snprintf(buf, buf_len, "PCH/AGCH on TS%d", ts); else if (cbits == 0x18) snprintf(buf, buf_len, "PDCH on TS%d", ts); + else if (cbits == 0x19) + snprintf(buf, buf_len, "CBCH(SDCCH/4) on TS%d", ts); + else if (cbits == 0x1a) + snprintf(buf, buf_len, "CBCH(SDCCH/8) on TS%d", ts); else snprintf(buf, buf_len, "UNKNOWN on TS%d", ts); -- cgit v1.2.3