Move UL allocation&assign functions to gprs_ms.c
Similar structure as what we have with DL-TBF.
Change-Id: I256aeede2a2678c9738539fb6ec4db9766fa85e4
diff --git a/src/tbf_fsm.c b/src/tbf_fsm.c
index 9118fd7..a8e7886 100644
--- a/src/tbf_fsm.c
+++ b/src/tbf_fsm.c
@@ -99,8 +99,13 @@
switch (event) {
case TBF_EV_ASSIGN_ADD_CCCH:
mod_ass_type(ctx, GPRS_RLCMAC_FLAG_CCCH, true);
- tbf_fsm_state_chg(fi, tbf_direction(ctx->tbf) == GPRS_RLCMAC_DL_TBF ?
- TBF_ST_ASSIGN : TBF_ST_FLOW);
+ if (tbf_direction(ctx->tbf) == GPRS_RLCMAC_UL_TBF) {
+ struct gprs_rlcmac_ul_tbf *ul_tbf = tbf_as_ul_tbf(ctx->tbf);
+ tbf_fsm_state_chg(fi, TBF_ST_FLOW);
+ ul_tbf_contention_resolution_start(ul_tbf);
+ } else {
+ tbf_fsm_state_chg(fi, TBF_ST_ASSIGN);
+ }
break;
case TBF_EV_ASSIGN_ADD_PACCH:
mod_ass_type(ctx, GPRS_RLCMAC_FLAG_PACCH, true);