diff --git a/src/llc.h b/src/llc.h
index a371b68..bd542c0 100644
--- a/src/llc.h
+++ b/src/llc.h
@@ -48,30 +48,6 @@
 void llc_put_dummy_frame(struct gprs_llc *llc, size_t req_len);
 void llc_append_frame(struct gprs_llc *llc, const uint8_t *data, size_t len);
 
-struct MetaInfo {
-	struct timespec recv_time;
-	struct timespec expire_time;
-};
-/**
- * I store the LLC frames that come from the SGSN.
- */
-struct gprs_llc_queue {
-	uint32_t avg_queue_delay; /* Average delay of data going through the queue */
-	size_t queue_size;
-	size_t queue_octets;
-	struct llist_head queue; /* queued LLC DL data */
-};
-
-void llc_queue_calc_pdu_lifetime(struct gprs_rlcmac_bts *bts, const uint16_t pdu_delay_csec,
-		struct timespec *tv);
-bool llc_queue_is_frame_expired(const struct timespec *tv_now, const struct timespec *tv);
-
-void llc_queue_init(struct gprs_llc_queue *q);
-void llc_queue_clear(struct gprs_llc_queue *q, struct gprs_rlcmac_bts *bts);
-void llc_queue_move_and_merge(struct gprs_llc_queue *q, struct gprs_llc_queue *o);
-void llc_queue_enqueue(struct gprs_llc_queue *q, struct msgb *llc_msg, const struct timespec *expire_time);
-struct msgb *llc_queue_dequeue(struct gprs_llc_queue *q, const struct MetaInfo **info);
-
 static inline uint16_t llc_chunk_size(const struct gprs_llc *llc)
 {
 	return llc->length - llc->index;
@@ -104,6 +80,30 @@
 	return llc->length + chunk_size <= LLC_MAX_LEN;
 }
 
+struct MetaInfo {
+	struct timespec recv_time;
+	struct timespec expire_time;
+};
+/**
+ * I store the LLC frames that come from the SGSN.
+ */
+struct gprs_llc_queue {
+	uint32_t avg_queue_delay; /* Average delay of data going through the queue */
+	size_t queue_size;
+	size_t queue_octets;
+	struct llist_head queue; /* queued LLC DL data */
+};
+
+void llc_queue_calc_pdu_lifetime(struct gprs_rlcmac_bts *bts, const uint16_t pdu_delay_csec,
+		struct timespec *tv);
+bool llc_queue_is_frame_expired(const struct timespec *tv_now, const struct timespec *tv);
+
+void llc_queue_init(struct gprs_llc_queue *q);
+void llc_queue_clear(struct gprs_llc_queue *q, struct gprs_rlcmac_bts *bts);
+void llc_queue_move_and_merge(struct gprs_llc_queue *q, struct gprs_llc_queue *o);
+void llc_queue_enqueue(struct gprs_llc_queue *q, struct msgb *llc_msg, const struct timespec *expire_time);
+struct msgb *llc_queue_dequeue(struct gprs_llc_queue *q, const struct MetaInfo **info);
+
 static inline size_t llc_queue_size(const struct gprs_llc_queue *q)
 {
 	return q->queue_size;
