diff --git a/src/bts.cpp b/src/bts.cpp
index aa713fe..50df92e 100644
--- a/src/bts.cpp
+++ b/src/bts.cpp
@@ -871,7 +871,6 @@
 	struct gprs_rlcmac_trx *trx;
 	uint32_t sb_fn = 0;
 	uint8_t usf = 7;
-	uint8_t tsc = 0;
 	int plen, rc;
 
 	/* Allocate a bit-vector for RR Immediate Assignment [Reject] */
@@ -924,7 +923,6 @@
 
 		pdch = sba->pdch;
 		sb_fn = sba->fn;
-		tsc = pdch->tsc;
 		LOGP(DRLCMAC, LOGL_DEBUG, "Allocated a single block at "
 		     "SBFn=%u TRX=%u TS=%u\n", sb_fn, pdch->trx->trx_no, pdch->ts_no);
 	} else {
@@ -938,14 +936,13 @@
 		tbf->set_ta(ta);
 		pdch = &tbf->trx->pdch[tbf->first_ts];
 		usf = tbf->m_usf[pdch->ts_no];
-		tsc = tbf->tsc();
 	}
 	trx = pdch->trx;
 
 	LOGP(DRLCMAC, LOGL_DEBUG, "Tx Immediate Assignment on AGCH: "
 	     "TRX=%u (ARFCN %u) TS=%u TA=%u TSC=%u TFI=%d USF=%d\n",
 	     trx->trx_no, trx->arfcn & ~ARFCN_FLAG_MASK,
-	     pdch->ts_no, ta, tsc, tbf ? tbf->tfi() : -1, usf);
+	     pdch->ts_no, ta, pdch->tsc, tbf ? tbf->tfi() : -1, usf);
 	plen = Encoding::write_immediate_assignment(pdch, tbf, bv,
 		false, rip->ra, Fn, ta, usf, false, sb_fn,
 		bts_get_ms_pwr_alpha(bts), bts->pcu->vty.gamma, -1,
diff --git a/src/tbf.cpp b/src/tbf.cpp
index 2343862..361e631 100644
--- a/src/tbf.cpp
+++ b/src/tbf.cpp
@@ -758,11 +758,6 @@
 		llist_add(tbf_trx_list((struct gprs_rlcmac_tbf *)this), &trx->dl_tbfs);
 }
 
-uint8_t gprs_rlcmac_tbf::tsc() const
-{
-	return trx->pdch[first_ts].tsc;
-}
-
 uint8_t gprs_rlcmac_tbf::dl_slots() const
 {
 	uint8_t slots = 0;
diff --git a/src/tbf.h b/src/tbf.h
index cab9364..4013ab0 100644
--- a/src/tbf.h
+++ b/src/tbf.h
@@ -180,8 +180,6 @@
 	GprsMs *ms() const;
 	void set_ms(GprsMs *ms);
 
-	uint8_t tsc() const;
-
 	bool n_inc(enum tbf_counters n);
 	void n_reset(enum tbf_counters n);
 
