Convert ms_first_common_ts to struct gprs_rlcmac_pdch

This way it contains full information about the TS, not only the TN.

Change-Id: I19373939ec104d371e3e91422f018a8175cb0f89
diff --git a/src/gprs_ms.c b/src/gprs_ms.c
index 073dd4a..29d226f 100644
--- a/src/gprs_ms.c
+++ b/src/gprs_ms.c
@@ -120,7 +120,6 @@
 	ms->current_cs_ul = UNKNOWN;
 	ms->current_cs_dl = UNKNOWN;
 	ms->is_idle = true;
-	ms->first_common_ts = TBF_TS_UNSET;
 	INIT_LLIST_HEAD(&ms->list);
 	INIT_LLIST_HEAD(&ms->old_tbfs);
 
@@ -384,7 +383,7 @@
 
 	if (!ms->dl_tbf && !ms->ul_tbf) {
 		ms_set_reserved_slots(ms, NULL, 0, 0);
-		ms->first_common_ts = TBF_TS_UNSET;
+		ms->first_common_ts = NULL;
 
 		if (ms_tlli(ms) != 0)
 			ms_release_timer_start(ms);
@@ -920,15 +919,15 @@
 	return cs;
 }
 
-int8_t ms_first_common_ts(const struct GprsMs *ms)
+struct gprs_rlcmac_pdch *ms_first_common_ts(const struct GprsMs *ms)
 {
 	return ms->first_common_ts;
 }
 
-void ms_set_first_common_ts(struct GprsMs *ms, uint8_t first_common_ts)
+void ms_set_first_common_ts(struct GprsMs *ms, struct gprs_rlcmac_pdch *pdch)
 {
-	OSMO_ASSERT(first_common_ts < 8);
-	ms->first_common_ts = first_common_ts;
+	OSMO_ASSERT(pdch);
+	ms->first_common_ts = pdch;
 }
 
 uint8_t ms_dl_slots(const struct GprsMs *ms)