Introduce osmo_tdef infra and timer VTY commands

This will allow for configuration of some of the timers by the user,
and allow him to inspect current values being used.
It will be also useful for TTCN3 tests which may want to test some of
the timers without having to wait for lots of time.

Timers are splitted into 2 groups: BTS controlled ones and PCU controlled
ones. The BTS controlled ones are read-only by the user (hence no
"timer" VTY command is provided to change them).

TbfTest.err output changes due to timers being set up correctly as a
consequence of changes. Other application such as pcu_emu.cpp and
pcu_main.cpp had to previosuly set the initial values by hand (and did
so), but apparently TbfTest.c was missing that part, which is now fixed
for free.

Depends: libosmocore.git Id56a1226d724a374f04231df85fe5b49ffd2c43c
Change-Id: I5cfb9ef01706124be262d4536617b9edb4601dd5
diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index 510a65c..a7671c9 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -499,7 +499,7 @@
 		TBF_SET_ASS_ON(this, GPRS_RLCMAC_FLAG_PACCH, true);
 
 		/* start timer */
-		T_START(this, T0, T_ASS_PACCH_SEC, 0, "assignment (PACCH)", true);
+		T_START(this, T0, -2001, "assignment (PACCH)", true);
 	} else {
 		LOGPTBFDL(this, LOGL_DEBUG, "Send dowlink assignment on PCH, no TBF exist (IMSI=%s)\n",
 			  imsi());
@@ -843,7 +843,7 @@
 			m_tx_counter = 0;
 			/* start timer whenever we send the final block */
 			if (is_final)
-				T_START(this, T3191, bts_data()->t3191, 0, "final block (DL-TBF)", true);
+				T_START(this, T3191, 3191, "final block (DL-TBF)", true);
 
 			state_flags &= ~(1 << GPRS_RLCMAC_FLAG_TO_DL_ACK); /* clear poll timeout flag */
 
@@ -1104,8 +1104,7 @@
 	TBF_SET_STATE(this, GPRS_RLCMAC_WAIT_RELEASE);
 
 	/* start T3193 */
-	T_START(this, T3193, bts_data()->t3193_msec / 1000, (bts_data()->t3193_msec % 1000) * 1000,
-		  "release (DL-TBF)", true);
+	T_START(this, T3193, 3193, "release (DL-TBF)", true);
 
 	/* reset rlc states */
 	m_tx_counter = 0;