gsm_08_58.h: add Osmocom specific Bm/Lm CBITs for VAMOS

Change-Id: If33c1695922d110c0d2c60d5c0136caf2587194e
Related: SYS#4895, OS#4941, SYS#5315, OS#4940
diff --git a/src/gsm/rsl.c b/src/gsm/rsl.c
index 706fb54..a7fa81d 100644
--- a/src/gsm/rsl.c
+++ b/src/gsm/rsl.c
@@ -159,6 +159,7 @@
 
 	switch (type) {
 	case RSL_CHAN_Lm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Lm_ACCHs:
 		subch &= 0x01;
 		break;
 	case RSL_CHAN_SDCCH4_ACCH:
@@ -195,6 +196,7 @@
 	case RSL_CHAN_OSMO_PDCH:
 	case RSL_CHAN_OSMO_CBCH4:
 	case RSL_CHAN_OSMO_CBCH8:
+	case RSL_CHAN_OSMO_VAMOS_Bm_ACCHs:
 		*type = chan_nr & RSL_CHAN_NR_MASK;
 		*subch = 0;
 		break;
@@ -208,6 +210,9 @@
 		} else if ((chan_nr & 0xc0) == RSL_CHAN_SDCCH8_ACCH) {
 			*type = RSL_CHAN_SDCCH8_ACCH;
 			*subch = (chan_nr >> 3) & 0x7;
+		} else if ((chan_nr & 0xf0) == RSL_CHAN_OSMO_VAMOS_Lm_ACCHs) {
+			*type = RSL_CHAN_OSMO_VAMOS_Lm_ACCHs;
+			*subch = (chan_nr >> 3) & 0x1;
 		} else
 			return -EINVAL;
 	}
@@ -246,6 +251,10 @@
 		snprintf(buf, buf_len, "CBCH(SDCCH/4) on TS%d", ts);
 	else if (cbits == ABIS_RSL_CHAN_NR_CBITS_OSMO_CBCH8)
 		snprintf(buf, buf_len, "CBCH(SDCCH/8) on TS%d", ts);
+	else if (cbits == ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Bm_ACCHs)
+		snprintf(buf, buf_len, "VAMOS TCH/F on TS%d", ts);
+	else if ((cbits & 0x1e) == ABIS_RSL_CHAN_NR_CBITS_OSMO_VAMOS_Lm_ACCHs(0))
+		snprintf(buf, buf_len, "VAMOS TCH/H(%u) on TS%d", cbits & 0x01, ts);
 	else
 		snprintf(buf, buf_len, "UNKNOWN on TS%d", ts);
 
diff --git a/src/gsmtap_util.c b/src/gsmtap_util.c
index 336e1d0..9ae06d6 100644
--- a/src/gsmtap_util.c
+++ b/src/gsmtap_util.c
@@ -63,12 +63,14 @@
 
 	switch (rsl_chantype) {
 	case RSL_CHAN_Bm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Bm_ACCHs:
 		if (user_plane)
 			ret = GSMTAP_CHANNEL_VOICE_F;
 		else
 			ret = GSMTAP_CHANNEL_FACCH_F;
 		break;
 	case RSL_CHAN_Lm_ACCHs:
+	case RSL_CHAN_OSMO_VAMOS_Lm_ACCHs:
 		if (user_plane)
 			ret = GSMTAP_CHANNEL_VOICE_H;
 		else