+#define EDF_BYTES_FOR_TIME 4 // It is uint32_t
+//#define EDF_TIME_RANGE 0xffffffff
+
+#define EDF_ABS_DEADLINE_MAX ((1 << (EDF_BYTES_FOR_TIME*4)) - 1)
+#define EDF_PRIORITY_MAX 255
+
+/**
+ * The scheduler has two separete policies for for tasks using deadlines
+ * tasks using priorities. The priority driven tasks are always scheduled as less
+ * important than the deadline driven ones.
+ * We can distinguish them by looking at the MSB of their priority. Priority diven
+ * have 1 and deadline driven have 0.
+ */
+#define EDF_HYBRID_MASK (1 << (EDF_BYTES_FOR_TIME*8 - 1)) //This is MSB
+