summaryrefslogtreecommitdiffstats
path: root/src/target/firmware/include/layer1/mframe_sched.h
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2010-02-28 10:12:14 +0100
committerHarald Welte <laforge@gnumonks.org>2010-02-28 10:12:14 +0100
commitb909a3b8a6aa55e659687ec97a7de1bc43b2975a (patch)
tree305015254b7ec8e8245166e1556c344ebd1572b8 /src/target/firmware/include/layer1/mframe_sched.h
parent89e05fd346eec9a2202cb010ba5f60cdbfd23658 (diff)
Add multiframe-level scheduler (mframe_sched.[ch])
This scheduler enables us to schedule repeating events that occur every multiframe. It e.g. includes definitions for BCCH and CCCH reading. The mframe_sched is layered on top of the tdma_sched.
Diffstat (limited to 'src/target/firmware/include/layer1/mframe_sched.h')
-rw-r--r--src/target/firmware/include/layer1/mframe_sched.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/target/firmware/include/layer1/mframe_sched.h b/src/target/firmware/include/layer1/mframe_sched.h
new file mode 100644
index 00000000..79b0be04
--- /dev/null
+++ b/src/target/firmware/include/layer1/mframe_sched.h
@@ -0,0 +1,26 @@
+
+#include <stdint.h>
+
+enum mframe_task {
+ MF_TASK_BCCH_NORM,
+ MF_TASK_BCCH_EXT,
+ MF_TASK_CCCH,
+ MF_TASK_CCCH_COMB,
+
+ MF_TASK_SDCCH4_0,
+ MF_TASK_SDCCH4_1,
+ MF_TASK_SDCCH4_2,
+ MF_TASK_SDCCH4_3,
+
+ MF_TASK_SDCCH8_0,
+ MF_TASK_SDCCH8_1,
+ MF_TASK_SDCCH8_2,
+ MF_TASK_SDCCH8_3,
+ MF_TASK_SDCCH8_4,
+ MF_TASK_SDCCH8_5,
+ MF_TASK_SDCCH8_6,
+ MF_TASK_SDCCH8_7,
+};
+
+/* Schedule mframe_sched_items according to current MF TASK list */
+void mframe_schedule(uint32_t task_bitmask);