aboutsummaryrefslogtreecommitdiffstats
path: root/src/gprs_ms.h
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2022-10-26 19:44:07 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2022-10-27 13:52:59 +0200
commit14beef6cfe93cc4e03643aaf698217be9b849a6e (patch)
tree6a89d6f5145d85eb9c1f5a32feb8136614bc3a38 /src/gprs_ms.h
parentd6bb6190d3731d2c0fd620e8ac061bd5bb20b5dc (diff)
Move LLC enqueuing and retransmit timer to MS object
The LLC queue is already in the MS object. The LLC timer and most of the logic to enqueue its data is independent from the TBF. Change-Id: I56b89fcac838d8eb732b629734d5e458e9c806d1
Diffstat (limited to 'src/gprs_ms.h')
-rw-r--r--src/gprs_ms.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gprs_ms.h b/src/gprs_ms.h
index cc92e2ab..703e84bc 100644
--- a/src/gprs_ms.h
+++ b/src/gprs_ms.h
@@ -79,6 +79,7 @@ struct GprsMs {
enum CodingScheme current_cs_dl;
struct gprs_llc_queue llc_queue;
+ struct osmo_timer_list llc_timer;
bool is_idle;
int ref;
@@ -143,6 +144,8 @@ int ms_nacc_start(struct GprsMs *ms, Packet_Cell_Change_Notification_t *notif);
bool ms_nacc_rts(const struct GprsMs *ms);
struct msgb *ms_nacc_create_rlcmac_msg(struct GprsMs *ms, struct gprs_rlcmac_tbf *tbf, uint32_t fn, uint8_t ts);
+int ms_append_llc_dl_data(struct GprsMs *ms, uint16_t pdu_delay_csec, const uint8_t *data, uint16_t len);
+
static inline bool ms_is_idle(const struct GprsMs *ms)
{
return !ms->ul_tbf && !ms->dl_tbf && !ms->ref && llist_empty(&ms->old_tbfs);