diff --git a/include/osmocore/rsl.h b/include/osmocore/rsl.h
index 0da0520..4c5f75b 100644
--- a/include/osmocore/rsl.h
+++ b/include/osmocore/rsl.h
@@ -13,6 +13,8 @@
 
 /* encode channel number as per Section 9.3.1 */
 uint8_t rsl_enc_chan_nr(uint8_t type, uint8_t subch, uint8_t timeslot);
+/* decode channel number as per Section 9.3.1 */
+int rsl_dec_chan_nr(uint8_t chan_nr, uint8_t *type, uint8_t *subch, uint8_t *timeslot);
 
 const struct value_string rsl_rlm_cause_strs[];
 
diff --git a/src/rsl.c b/src/rsl.c
index 58afc9d..ca2f7de 100644
--- a/src/rsl.c
+++ b/src/rsl.c
@@ -21,6 +21,9 @@
  *
  */
 
+#include <stdint.h>
+#include <errno.h>
+
 #include <osmocore/tlv.h>
 #include <osmocore/rsl.h>
 
@@ -142,6 +145,37 @@
 	return ret;
 }
 
+int rsl_dec_chan_nr(uint8_t chan_nr, uint8_t *type, uint8_t *subch, uint8_t *timeslot)
+{
+	*timeslot = chan_nr & 0x7;
+
+	if ((chan_nr & 0xf8) == RSL_CHAN_Bm_ACCHs) {
+		*type = RSL_CHAN_Bm_ACCHs;
+		*subch = 0;
+	} else if ((chan_nr & 0xf0) == RSL_CHAN_Lm_ACCHs) {
+		*type = RSL_CHAN_Lm_ACCHs;
+		*subch = (chan_nr >> 3) & 0x1;
+	} else if ((chan_nr & 0xe0) == RSL_CHAN_SDCCH4_ACCH) {
+		*type = RSL_CHAN_SDCCH4_ACCH;
+		*subch = (chan_nr >> 3) & 0x3;
+	} else if ((chan_nr & 0xc0) == RSL_CHAN_SDCCH8_ACCH) {
+		*type = RSL_CHAN_SDCCH8_ACCH;
+		*subch = (chan_nr >> 3) & 0x7;
+	} else if (chan_nr == 0x10) {
+		*type = RSL_CHAN_BCCH;
+		*subch = 0;
+	} else if (chan_nr == 0x11) {
+		*type = RSL_CHAN_RACH;
+		*subch = 0;
+	} else if (chan_nr == 0x12) {
+		*type = RSL_CHAN_PCH_AGCH;
+		*subch = 0;
+	} else
+		return -EINVAL;
+
+	return 0;
+}
+
 /* FIXME: convert to value_string */
 static const char *rsl_err_vals[0xff] = {
 	[RSL_ERR_RADIO_IF_FAIL] =	"Radio Interface Failure",
