diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-03-29 18:15:30 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2021-03-31 17:39:50 +0200 |
commit | 86580e1966b7272cad75c845607e45b8347cf758 (patch) | |
tree | 3b65144d5888c3c1eed7fbb5de9ee2c86bdfdcda /src/tbf_ul.cpp | |
parent | b5ae0811d1667e792fc3a4e550384791f4bca4c9 (diff) |
pdch_ulc: Store TBF poll reason
This allows easily checking the initial reason to trigger the poll when
either it is received or times out.
Later on this reason can be transformed into an FSM event and sent to
the related FSM.
Related: OS#5020
Change-Id: Ie8fefd1f47ad674ce597a8065b15284088956bde
Diffstat (limited to 'src/tbf_ul.cpp')
-rw-r--r-- | src/tbf_ul.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/tbf_ul.cpp b/src/tbf_ul.cpp index ba491f6d..063d0ff2 100644 --- a/src/tbf_ul.cpp +++ b/src/tbf_ul.cpp @@ -275,10 +275,10 @@ bool gprs_rlcmac_ul_tbf::ctrl_ack_to_toggle() return false; /* GPRS_RLCMAC_FLAG_TO_UL_ACK was unset, now set */ } -bool gprs_rlcmac_ul_tbf::handle_ctrl_ack() +bool gprs_rlcmac_ul_tbf::handle_ctrl_ack(enum pdch_ulc_tbf_poll_reason reason) { /* check if this control ack belongs to packet uplink ack */ - if (ul_ack_state_is(GPRS_RLCMAC_UL_ACK_WAIT_ACK)) { + if (reason == PDCH_ULC_POLL_UL_ACK && ul_ack_state_is(GPRS_RLCMAC_UL_ACK_WAIT_ACK)) { TBF_SET_ACK_STATE(this, GPRS_RLCMAC_UL_ACK_NONE); return true; } @@ -324,7 +324,7 @@ struct msgb *gprs_rlcmac_ul_tbf::create_ul_ack(uint32_t fn, uint8_t ts) m_contention_resolution_done = 1; if (final) { - set_polling(new_poll_fn, ts, GPRS_RLCMAC_POLL_UL_ACK); + set_polling(new_poll_fn, ts, PDCH_ULC_POLL_UL_ACK); /* waiting for final acknowledge */ m_final_ack_sent = 1; } else |