diff options
author | Andreas Eversberg <jolly@eversberg.eu> | 2012-07-26 08:13:06 +0200 |
---|---|---|
committer | Andreas Eversberg <jolly@eversberg.eu> | 2012-07-26 08:13:06 +0200 |
commit | 08e93cdc3fe54df7753170e973d119c6bbbb6181 (patch) | |
tree | f62e27afb71797381204c1d8035bb1a01059285e /src/gprs_bssgp_pcu.cpp | |
parent | 4b55962e556b344131dce67fde2b46a602da8c81 (diff) |
Use final_ack_sent and contention_resolution_done to define ongoing UL TBF
Both flags can be used to determine wether assignment must be sent on PCH
or on AGCH. Before contention resolution is done, mobile will ignore
downlink assinment. When final uplink acknowledge was sent, the mobile
will go back to PCH after reception of akcnowledge.
Diffstat (limited to 'src/gprs_bssgp_pcu.cpp')
-rw-r--r-- | src/gprs_bssgp_pcu.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/gprs_bssgp_pcu.cpp b/src/gprs_bssgp_pcu.cpp index c4d27e85..9b977f29 100644 --- a/src/gprs_bssgp_pcu.cpp +++ b/src/gprs_bssgp_pcu.cpp @@ -177,9 +177,8 @@ int gprs_bssgp_pcu_rx_dl_ud(struct msgb *msg, struct tlv_parsed *tp) /* check for uplink data, so we copy our informations */ tbf = tbf_by_tlli(tlli, GPRS_RLCMAC_UL_TBF); - if (tbf && tbf->contention_resolution_done - && (tbf->state != GPRS_RLCMAC_FINISHED - || tbf->ul_ack_state != GPRS_RLCMAC_UL_ACK_WAIT_ACK)) { + if (tbf && tbf->dir.ul.contention_resolution_done + && !tbf->dir.ul.final_ack_sent) { use_trx = tbf->trx; first_ts = tbf->first_ts; ta = tbf->ta; |